note63

事情

やっぱtmuxにした

byobuやめてtmuxにした。
byobuは最初っからいろいろ設定されてるのがやっぱ気持ち悪かったのとウィンドウ切り替えにファンクションキーを使うのがなんかいやだった...

ということでtmuxを入れたけど、そのときに書いた設定をメモっておく。

インストールしよう

まずはインストールから。
これも相変わらずHomebrewから最新版が入ります。

$ brew install tmux

設定

1. prefixを変更する

Ctrl-bはemacsキーバインドと被るため変更する。
ほとんどのtmuxユーザがCtrl-tに割り当てているようなので真似する。

unbind-key C-b
# -gをつけることで全セッションに対してグローバルな設定になる
set-option -g prefix C-t 
bind-key C-t send-prefix

2. .tmux.confの再読み込みコマンド

変更するごとにtmuxを再起動するのは鬱なので設定。
bind keyでプレフィックスキー+keyをバインドすることができる。
複数コマンドを実行する場合は間に' \;'を挟む(スペースを忘れずに!)。

bind r source-file ~/.tmux.conf \; display-message "Reload tmux Config!!"

3. display番号からペインを変えたい

desplay-panes(デフォだとqにバインドされている)を実行すると各ペインの番号が表示され、その番号を入力するとペインを帰ることができる。
でもデフォだとすごく短いので時間を伸ばす。

set display-panes-time 10000

4. リピート時間を伸ばす

-rオプションをつけてバインドされたキーはプレフィックスキーが入力されたあと一定時間の間連続で入力できる。
デフォだと500msなのでそれを変更する。

set repeat-time 1000

5. ステータスバーのレイアウトを変更する

tmux-powerlineを使った。
長くなるのから別記事にする。

6. その他細かいキーバインドの変更

自分向けによく使う(であろう)キーバインドを変更。
正直このほうが直感的で蛮人ウケしそう。

# qにkill-paneを割り当てるために変更
bind i display-panes
# clock-modeは使わないのでunbindする
unbind t

bind C-q confirm-before "kill-window"
bind q   confirm-before "kill-pane"

bind -r C-p select-pane -U
bind -r C-n select-pane -D
bind -r C-b select-pane -L
bind -r C-f select-pane -R
bind -r Up      resize-pane -U 5
bind -r Down    resize-pane -D 5
bind -r Left    resize-pane -L 5
bind -r Right   resize-pane -R 5

bind C-v split-window -h
bind C-h split-window -v
bind C-w choose-window

clock-modeはこんな感じのやつ


tmux clock mode as working pain indicator - YouTube

参考