BMX2WAV(と他ツール)開発日記

主にBMX2WAVの開発についての記録ブログ

記録

出力ファイル指定テンプレートの仕様で関数の閉じ方を %%関数名%%{...}%% で行けるように実装した。

それで整理したら出力ファイル指定テンプレートで使える変数と関数は

  • @@input_file_path@@
  • @@bmx2wav_directory@@
  • @@auto_extension@@
  • %%basename%%{...}%%
  • %%dirname%%{...}%%
  • %%remove_extension%%{...}%%

実はこれで網羅しているのでは…?となった。いやマジで網羅しているっぽいが。

記録

スクリプトファイルの運用を変えるように実装した。
今までの構成だとアップデートの際にファイルを上書きするとユーザスクリプトを上書きしてしまう運用だったのでそうしないようにと。

github の issue で指摘されていた input_bms_directory_basename や input_bms_parent_directory_basename の件だけど、
これだとやたら変数名が増えてしまって良くない気がしたので関数みたいのを導入するのはどうだろうか。
例えば今自作ライブラリに実装済みの文字列置き換えエンジンがあってそれを使うとこんな感じで行ける。

%%basename%%{...}%%basename%%
%%dirname%%{...}%%dirname%%

とあるように %%関数名%%{...}%%関数名%% と記述すると ... の中身を編集できるという。なので上記の input_bms_directory_basename は

%%basename%%{%%dirname%%{@@input_bms@@}%%dirname%%}%%basename%%

入力すると入力BMSディレクトリ名が取得できるようになる。
閉じ方がちょっと冗長な気がするので %%関数名%%{...}%% で行ける行きたいが問題があるかどうかちょい判らず。しばらく考えて行けそう問題無さそうならそう実装しよう。