手元のPCではtpmを使ってtmux pluginの管理を行っています。
そういえば各プラグインのバージョンを見たいなあと思ったので、チュートリアルにほんのちょろっと手を加えて各プラグインのHEAD Commitを表示する tmux plugin を作ってみました。
ディレクトリは以下の構成になります。
. ├── my_plugin.tmux └── scripts └── tmux_list_plugins.sh 1 directory, 2 files
tmuxを起動した状態で ./my_plugin.tmux
を実行した後に <Bindkey> T
を打つと以下のようなリストが表示されます。
tmux-better-mouse-mode 4c686e5 Fixed quotes in bind-key WheelDownPane causing #23. tmux-continuum 499b6a7 Merge pull request #17 from jarosser06/rm_hardcoded_home tmux-resurrect 3a31bfb Use 'xargs rm' instead of 'find -delete' tmux-sessionist 7218406 Accept strings with spaces in a prompt tmux-yank feb9611 Add @override_copy_command to force copy command. tpm c8ac32a Update README.md (#66)
いい感じですね 😄 tpmで管理するならばこれをGitレポジトリにpushして、.tmux.confに定義してあげれば良いです。tmux pluginがどこにインストールされているかというのを今まで知らなかったのですが、 デフォルトでは $HOME/.tmux/plugins/
もしくは .tmux.conf で TMUX_PLUGIN_MANAGER_PATH
という変数にセットしたパスになります。 で、tpmでプラグインをインストールすると先ほどのパスに各プラグインがgit cloneされます。作ったプラグインでは愚直に(?)プラグインごとに git log
を叩いて先頭のコミットを抽出するという作業を行っています。
シェルスクリプトでお手軽に書けるのがいいですね。