tmux.confでバージョンに応じて読み込ませる設定を変える
Pocket

最近、ローカルにおいてあるtmux.confをリモートサーバで利用することが多いのだけど、その時にリモートサーバのtmuxのバージョンが古いとうまく動かないことがある。
そのため、特定の設定についてtmux.conf側でバージョンに応じて読み込みをさせる必要がでてきた。

調べて知ったのだが、実はtmuxではShellのコマンドを叩くことができるようで、以下の様に一度tmuxのバージョンを変数に代入したりして、それを参照させて分岐させることができるようだ。

Sponsored Links

# 環境変数TMUX_VERSIONにバージョンを代入
run-shell "tmux setenv -g TMUX_VERSION $(tmux -V | cut -c 6-)"

# TMUXのバージョンに応じて処理を切り替える
if-shell -b '[ "$(echo "$TMUX_VERSION < 2.1" | bc)" = 1 ]' \
    "set -g mouse-select-pane on; set -g mode-mouse on; \
     set -g mouse-resize-pane on; set -g mouse-select-window on"

if-shell -b '[ "$(echo "$TMUX_VERSION >= 2.1" | bc)" = 1 ]' \
    "set -g mouse on"

 

知らなかった。
これを利用すれば、バージョンごとに読み込ませる設定を指定できそうだ。

 

Pocket

Written by blacknon

インフラエンジニア(…のつもり)。 仕事で使うならクライアントはWindowsよりはUNIXの方が好き。 大体いつも眠い。

Leave a Comment

メールアドレスが公開されることはありません。

*