tmuxでプラグインのインストール方法――おすすめプラグインも紹介
tmuxはそのままでも便利ですが、プラグインを入れるともっと便利になります。というわけでtmuxのプラグインの入れ方やおすすめプラグインを解説します。
tmux関係の記事は他にも書いています。「まだ知らないぞ」ってことがあれば一緒にご覧ください。
※この記事はバージョン3.5a
のtmuxに基づいて書いています。
プラグインとは
プラグインという名前で想像つくと思いますが、いわゆるブラウザの拡張機能のように 機能を追加できるしくみ です。
tmuxのセッションをセーブデータのように保存できるプラグインや、ステータスラインにバッテリー残量を簡単に表示するためのプラグインもあります。
プラグインのインストール方法
tmuxのプラグインを使うにはtpm(Tmux Plugin Manager)がおすすめです。プラグインマネージャーを使わないと インストールやアップデートがやや手間 です。ミニマリストで依存減らしたい方は、foo-plugin.tmux
のようなファイルを読み込めばプラグインマネージャーが無くとも使えます。
プラグインマネージャーの導入
tpmに書いてあるとおりcloneします。
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
tmux.conf内で自動インストールしたい人
この書き方であれば、tpmとプラグインのインストールを自動でやってくれます。
setenv -g TMUX_PLUGIN_MANAGER_PATH '$HOME/.tmux/plugins/'if "test ! -d ~/.tmux/plugins/tpm" \ "run 'git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm && \ ~/.tmux/plugins/tpm/bin/install_plugins'"
参考:Automatic installation issue and workaround · Issue #105 · tmux-plugins/tpm
プラグインマネージャーを設定
# 自動インストールしてる人はそれよりも後に書く
set-option -g @plugin 'tmux-plugins/tpm'# 使いたいプラグインを書くset-option -g @plugin 'tmux-plugins/foo-bar-buz'set-option -g @plugin 'example/piyo'
# ↓はtmux.confの最後に書くrun '~/.tmux/plugins/tpm/tpm'
↓文法に違和感を覚えた人向け(クリックで開閉)
「この書き方だと1行ごとに@plugin
を上書きしていて、リストになってなくない?」と思った人もいるでしょう。そのとおりです。
実際に@plugin
の値を表示すると一番最後に書いたやつだけが表示されます。
tmux show-options -g @plugin
@plugin example/piyo
じゃあどうして読み込めるのか。実装を見てみると、どうやらtmux.conf
を 文字列として読み込みこんで正規表現で抜き出してリスト化 しているようです。
実際にインストールする
自動インストールしてない人は、設定したら次の手順を実行してください。
- 設定ファイルを再読み込み
- prefix + shift + i を入力
新しいプラグインをインストールしたときもこれをやっておきます。
プラグインのアップデート方法
prefix + shift + u を入力します。
おすすめ紹介
公式ではlistというリポジトリでプラグインが紹介されています。ここでは筆者のおすすめのプラグインを書いておきます。
セッションの自動保存と自動復活
「tmuxってセッション管理あって面倒だな〜」という方におすすめなのがtmux-continuumとtmux-resurrectです。
resurrectを使うと、「セッションのレイアウト・ディレクトリ・実行プログラム」を任意のタイミングで保存・復帰できます。continuumはその自動版です。
tmux-resurrectとtmux-continuumの導入
set-option -g @plugin 'tmux-plugins/tmux-resurrect'set-option -g @plugin 'tmux-plugins/tmux-continuum'
# 自動復帰をオンset-option -g @continuum-restore 'on'
tmux-resurrectとtmux-continuumの使い方
全部「自動保存・復帰」に任せるなら、特別な操作は必要ないです。tmux-continuumにより、15分間隔で自動保存されます。
手動で保存・復帰したいなら次のキーバインドを押します。
- 手動保存:prefix + ctrl + s
- 手動復帰:prefix + ctrl + r
普段は自動で、たまに手動というのもアリです。
手動保存のキーバインドを変更する
筆者は「手動保存のキーバインド」を間違えて押すことが多かったため、デフォルトのものは解除してprefix + option + sに変更しました。
# resurrect-saveのデフォルトである prefix + C-s を解除unbind-key -T prefix C-sset-option -g @resurrect-save 'M-s'
tmux-resurrectの復活に失敗したら
誤って手動保存するなど、意図しないタイミングで保存されることがあります。
そういうときの対応は、別の記事tmux-resurrectの復活に失敗した時の対応にて解説しています。
その他よく見るやつ
筆者は使っていませんが、よく見かけるやつも載せておきます。
トラブルシューティング
何かあれば随時更新します。
プラグインがうまく動かない
tpmの処理が一番最後に書かれているか確認してください。
# ...run '~/.tmux/plugins/tpm/tpm'
最後以外に書いてしまうと、一部の設定が反映されません。
プラグインをアンインストールしたい
~/.tmux/plugins/〇〇
を削除するか、設定ファイルから記述を削除後にprefix + alt + uを押します。
筆者が最初のtmuxのプラグインを入れた時は、dotfilesも作りたてだったなぁ〜という懐かしい記憶。