2023年1月14日土曜日

PC ファイル名と文字制約

ファイル名。
使って良い字と、そうで無い字。
一応、覚えてはいる心算でも、えっ?、と思う事もあります。
偶には、確認して見ましょう。


実は、GIMP の Bug Report で ?な質問 があったのです。
OS Windows 10 環境下で、
ファイル名先頭に チルダ (~) を使うと保存やエクスポート出来ない、と。

別に試した訳では無いのですが、
検索して見ると、
関連しそうなもの が見付かったので、
報告して置きました。

  URL:https://gitlab.gnome.org/GNOME/gimp/-/issues/9043

其処に書いた内容を日本語で(少し補足有)。

隠しファイルに対する Windows 7 のバグと思しき機能に関連している可能性があります。  
  (ただし、Windows 8 以降は対応済み) 。
https://devblogs.microsoft.com/oldnewthing/20170526-00/?p=96235

ライブラリのターゲットが Windows 7 を含む場合、扱いが難しい... (かも知れない)。

そうなのです。
純粋に、Windows 10 上なら、~test.bmp も作成出来る訳でしょうが、
もし、GLib 等の ライブラリ が Windows 7 をも ターゲット とするなら、
厭らしい事になって仕舞いますから、
仮に、Window 10 上であっても、
エラー擬きで除外処理されていても、不思議では無いのでは、と。

因みに、
Linux 上では、~/ で ホーム ディレクトリ を表す様ですね。


尚、
Windows 10/11 の 21H2 以降、ファイル名での日本語も UTF-8 に変わった様です。
昔の環境では、Shift-JIS だった記憶が ... 。

例えば、
Web から取得したファイル等で、日本語混じりのファイル名 を自動生成させた場合、
Explorer の 検索 が上手く機能し無いケースがありましたが、
恐らく、UTF-8 / Shift-JIS 等の エンコーディング が絡んでいるのでしょうね。

ASCII なら、一意に決まりますので、
ファイル名は なるべく 英数半角で が無難なのは 今も一緒なのでしょう。

「ファイル名 日本語 エンコーディング」 で検索すれば、
色々な解説が見付かりますね。


さて、
音楽 CD を PC に取り込むと、一部の文字が 置換 されたファイル名になります。
そう、OS で 許されていない文字 が含まれるから。
Jazz 等 では、 曲名の最後に ' ? ' が附いたり、
音源が追加である事を知らせる ' * ' が附いたりします。
其のままでは保存出来無いので、置換する訳ですね。
でも、曲のメタデータには 元の形 で入ります。
そう、正確には、メタデータを参照し無いといけない!、と。



ファイルを扱う アプリ・ソフト・ツール での制約事項もあり、
使え無い 以外にも 避けた方が無難な文字 も存在します。

Windows で身近な例は Program File でしょうか。
(ファイルでは無く フォルダの例 ですが。)
cmd.exe 等で扱うには "Program File" と 括らないと、
引数区分の ' ' と誤認識されるのでしたね。

ファイル名に 半角スペースを入れると 同じ事が起きます。

スクリプト系の言語は 皆 固有の 特殊機能 を持たせた文字が存在します。
そして、厄介な事に、 其れ等は 皆同じ では無い! のでした。


此の様に、 ファイル名の文字に絡む約束事は多岐に渡ります。

OS にも絡む 制約事になるのすが、
Windows を使っていても、Network 越しの制約も受けます。
先にある 保管場所が Windows OS とは限りませんから。



ですから、
偶には、「ファイル名 使え無い文字」 等で検索し、
広範囲の情報を 確認 して置くと良いと思います。

結構、忘れて仕舞い勝ちな 事柄 かと。



0 件のコメント:

コメントを投稿