foobar2000 のファイル名変更で NTFS 未サポート文字を全角に変換

foobar2000 - Title formatting help 日本語版


foobar2000 は楽曲に入力されたタグからかなり自由度の高い文字列を生成する強力なフォーマット構文をサポートしており,これによってタグからファイル名を生成して楽曲のファイル名を変更することも可能である.
しかし,Masstagger > "Rename, move or copy files" によるファイル名変更において Windows 2000, XP (NTFS) で未サポートの以下の文字は自動的に _ (アンダースコア) に変換されてしまう.

\/:*?"<>|

そこで,これらの文字を全角に変換するよう構文を書いたが,$replace 関数の中に / を含むと

[SYNTAX ERROR IN FORMATTING STRING]

と怒られてうまくいかなかった.

foobar2000 Wiki for Japanese Users で質問したところ,/ (スラッシュ) や \ (バックスラッシュ) は $char(47), $char(97) として回避しなければならないことが分かった.

これらを踏まえて最終的にうまくいった構文は以下の通り.

$replace(%title%,$char(92),¥,$char(47),/,:,:,*,*,?,?,",”,<,<,>,>,|,|)