久々に開発環境をいじってて brew upgrade tmux
したら色々ぶっ壊れてつらい。
具体的には以下のブログを参考に、 pane の swap を screen 風にしていた設定が効かなくなってしまった。
## paneの入れ替えをscreenっぽく
bind-key C-n swap-window -t:+ \; swap-pane -s:-
bind-key C-p swap-window -t:- \; swap-pane -s:+
こういう使い方をしていた。
# 状態 1
window 1 A|[B] <- window 1 の pane B がアクティブ
window 2 C <- window 2 に pane C が単独で存在
C-b C-n
を入力し、以下のような配置になっていた(これまで)。
# 状態 2 (tmux 2.8)
window 1 A|[C] <- window 1 の pane B があったところが pane C になる
window 2 B <- window 2 には pane B が単独で存在
ところが tmux 2.9a 以降ではこんな風になってしまう。
# 状態 2 (tmux 2.9a)
window 1 [B] <- window 1 pane B が単独で存在しアクティブ
window 2 A|C <- window 2 に pane A と C 単独で存在
このほかにも tmux-powerline が綺麗に動かなくなったりして色々厳しい。 tmux は 2.8 までが安定している気がする。
仕事ではほとんどコード書かなくなってしまったのでたまの休みで時間があるときになんかやろうとするとこういうトラブルに遭遇して死んでしまう。プログラミングスキルのみならず開発環境の維持・セットアップにいたるまで、プログラミングに関連するあれこれは料理人が日々包丁の手入れをするように常日頃から磨いていないとさび付いてしまう。
追記
tmux の件は以下なんかを参考にしてみようかな。
さらに追記(2019-08-25T11:34:25)
.tmux.conf
を以下のようにしたら解決した。
bind-key C-n swap-pane -t:-
bind-key C-p swap-pane -t:+
むしろ最近の変更で tmux の pane スワップの挙動が自分の好み( screen 風)に近づいたみたい😅