ナンモワカランアザラシ

技術的なアレコレを自分の言葉で書いて保管・公開しておくための静かなインターネット

tmuxのデフォルトシェルにfishを指定したいのだけど環境によってfishのpathが異なるから困る

いわゆるdotfilesの話だ。 .tmux.confを複数環境で共有したいのだが、使いたいシェルのpathが異なる場合がある。

fishのpathが/usr/bin/fishだったり/opt/homebrew/bin/fishだったりする。前者はubuntu on wsl2で、後者はmacだ。 .tmux.confだとwhich fishの内容で動的に指定することができないので、tmuxコマンドをラップすることで解決した。

abbr tmux 'tmux set-option -g default-shell (which fish) \; new-session'

abbrなのでtmuxと打つだけで補完してくれる。which fishの結果を変数に与えながら新しいセッションを開ける。