2020年2月2日日曜日

拡張コメントでゼロ埋めソート

音楽ファイルや画像ファイルの連番が

1-ゆらゆら.flac
2-新しい友達 II.flac
3-トムソンガゼルになりたかった.flac
4-新しい友達.flac
5-大観覧車.flac
6-君と仲良くなるためのメロディ.flac
7-灯台.flac
8-あの日に帰りたい.flac
9-へんないきもの.flac
10-ホラーすぎる彼女です.flac
11-マジカル走れ走れYO!.flac
12-ロードムービー.flac

となっている場合、名前順ソートだと

1-ゆらゆら.flac
10-ホラーすぎる彼女です.flac
11-マジカル走れ走れYO!.flac
12-ロードムービー.flac
2-新しい友達 II.flac
3-トムソンガゼルになりたかった.flac
4-新しい友達.flac
5-大観覧車.flac
6-君と仲良くなるためのメロディ.flac
7-灯台.flac
8-あの日に帰りたい.flac
9-へんないきもの.flac

と順序が崩れてしまう。拡張コメントを利用して、順序どおりにソートするようにする。
以下を編集して取込。

_Command = {
zeropadding = *ifmatch "option:e,attribute:d+" %: *return 9999
  *ifmatch "!/^\d/",%FC %: *return 9999
  *string o,hoge=%*regexp(%FBC,"s/^(\d+).*/0000$1/") %: *return %*regexp(%so"hoge","s/^0*(\d{4})/$1/")
}
KC_main = {
COMMENTEVENT1 , *comment 1,all extract,%%*zeropadding
}

zero-paddingは、冒頭の数値をゼロ埋めして返すコマンド。例えば「1-ゆらゆら.flac」を与えると「0001」が返ってくる。数値がなければ一律に「9999」を返す。
次に、ソートを実行したいフォルダで、以下を実行。

*sortentry -thispath 24,1,0,B11111,1

すると、COMMENTEVENT1が呼び出され、各項目にzeropaddingによる拡張コメントが追加された後に、拡張コメントを用いたソートがなされる。

追記 2020-02-07


拡張コメントを利用しなくても、デフォルトでできるみたいだ。

ソートメニューから「詳細」を選択し、数値順を選ぶ。




0 件のコメント:

コメントを投稿