Edited at

Tmux 1.9でウィンドウ分割後もカレントディレクトリに留まる

More than 5 years have passed since last update.


背景

Tmux 1.9で、new-windowその他の挙動が変更されました。新しく作られたウィンドウやペーンは、すべてホームディレクトリから始まるようになったのです。個人的には、new-windowに関してはこの挙動のほうが好ましい場合もあるかなと思います(別プロジェクトの作業環境を作る場合などは一旦ホームディレクトリに戻るのは合理的です、そしてnew-windowを使う場合はプロジェクトを変更するケースも多いでしょう)。しかし、split-windowに関しては納得できませんでした。通常ウィンドウを分割する場合、同じプロジェクトで複数のペーンを使いたいケースがほとんどではないでしょうか。ならば、同じディレクトリに留まっていてほしい。


やってみた

split-windowには%"がバインディングされているので、それを変更します。


.tmux.conf

# 1.9 changed the behaviour of split-window and new-window.

# I prefer the old style for split-window.
unbind %
bind-key % split-window -h -c "#{pane_current_path}"
unbind '"'
bind-key '"' split-window -v -c "#{pane_current_path}"


注意事項

試してないのですが、1.8以前では以上のコードは動作しないようです。if-shellコマンドでバージョン判定ができるようですので、それでやるしかないようです。少し面倒ですね。


参考資料

https://coderwall.com/p/tjo3ig