transient でいろんなコマンドをつくってみた
現在は ELPA への登録を目指している ようであり、ゆくゆくは Emacs のコアへの導入もあるかもしれない。個人的にもこの活動は好意をもって注視している。
ところで casual-suite が使っているインプットメソッドの transient。Magit のインタフェイスとしてユーザにはおなじみのアレだが、Emacs 28.1 でコアに導入されて以来、ここ一年くらいで活用事例を多く見るようになった印象がある。私もエンドユーザとしてはいつもお世話になっているものの、ライブラリ利用はしたことがなかったので興味がわいていくつかのコマンドを実装してみた。
そのひとつが yt-dlp をパラメタ調整しながら構築できるようにしたこちら。ダウンロードファイルのサイズやフォーマット、ファイル名などをアドホックに指定することができる。実装してみると意外とこれが大変だった。Elispのオブジェクト指向ライブラリ EIEIO などの知識が不足していたこともあり、transient-showcase などを参考にしながら何とか動くものができた。
しかし一度実装経験を積むと、あとは型にはめていくだけなので他にもコマンドをつくりたくなる。ffmpeg や pandoc をパラメタ調整しながら実施できる便利なコマンドたちができた。Choi 氏が連続していろいろな casual-xxx パッケージをつくった気持ちがよくわかった。