2019-03-13-01-編集と閲覧のファイル名をカスタマイズ可能にする
>> Site top >> weblog >> 月別アーカイブ >> 2019年03月のlog >> 2019-03-13-01-編集と閲覧のファイル名をカスタマイズ可能にする
最終更新日付:2019/03/13 01:00:00
編集と閲覧のファイル名をカスタマイズ可能にする
2019 年 03 月 13 日
これだ。ずっと小さなストレスになっていたことを解決するというのは、まぁなんていうか、偉業ではないにせよ、大事な一歩だと思う。steam はデータを閲覧/編集する際、内部でデータを一意に識別する 64bit 値を11桁の文字列にしてファイル名として使用している。しかし、Emacs で複数のデータを同時に開いていると、どれが何だかまったくわからなくなってしまうのだ。
良く使うデータはなんとなく覚えてしまうもので、不便と感じるほどでもなく使えてはいた。しかし、そんなことに脳のリソースを使うのもバカバカしいし、小さいながらもストレスだったのだ。そんなわけで、steam が閲覧/編集ファイルの名前を生成するルールをカスタマイズしたいとずっと思っていた。今回それを片付けた、という話。
カスタマイズの方法は迷ったが、steam が提供するスクリプト機能を使用することにした。ざっくり、以下の仕様。
- script コマンドで実行可能であること(guile script はひとまず対象外)
- パラメータとして、閲覧/編集対象データの ID 文字列を受け取る
- ファイル名を生成して標準出力に書き出すことが期待される
- 上記で標準出力に書き出されたファイル名は、末尾に改行文字があれば除去される
- それ以外に改行文字、タブ文字、スラッシュ、バックスラッシュなどの不正文字があればエラーとみなす
- 空文字列の場合もエラーとみなす
- エラーと判定された場合は、従来のルールで生成したファイル名が使用される
ひとまず、これで十分だと思っている。あとは使用している環境に応じてスクリプトを工夫すれば良い。たとえば、昼間の職場では Redmine を使っているが、あれはチケットがナンバリングで識別されるため、steam のタスクはプライオリティ欄に Redmine のチケット番号を入れて紐付けている。だから、ファイル名の生成スクリプトでそれを使えば簡単に識別できる‥‥‥といった具合。プライベートでの使用では同時にたくさんのファイルを開くことはあまりないのでこの機能は使わないかもしれないが、他にも以下のような使い方を想定している。
- group フィールドを利用する
- スケジュールなら日付文字列からスラッシュを除去した文字列を使う
- ユーザー定義フィールドに EDITKEY というのを用意しておき、それを使う
‥‥‥などなど。実際に実装して使ってみるまではパフォーマンスが心配だったが、それは杞憂に終わった。自分で作っておいてなんだけど、簡素な分さくさくと動いてくれるようだ。
コメント
このページのタグ
Page tag : fist
Copyright(C) 2005-2021 project-enigma.
Generated by CL-PREFAB.