tmux 自分用記録

いまさらながら tmux を使ってみた。

自分用のメモを書いておく。

  • ウィンドウとペイン
    • Emacs でいうウィンドウとバッファに相当
    • コピーモードのキーバインドはデフォルトだと Emacs になってる。
    • ペインの移動についても Emacs 風。(C-o とか + カーソルキーで移動できるのも windmove-default-keybindings 風だと思えば。)

ということで、Emacs派な人との親和性は高そうではある。

分類 操作 Key 補足
ウィンドウ 作成 -c  
選択 -TAB 次のウィンドウへ
-[n,p] 次(next)/前(previous)のウィンドウへ
-l 最後(last)に操作したウィンドウへ
-[0-9] 指定した番号のウィンドウへ
削除 -&  
名前変更 -,  
ペイン 横分割 -"  
縦分割 -%  
移動 -[o,Up,Down,Left,Right]  
削除 -x  
複数ペイン同時操作 :set-window-options synchronize-panes ON/OFFトグル
編集 コピーモード開始 -[  
コピー 始点選択 C-[Space,Enter] Emacs Mode の場合
コピー 終点選択 M-w Emacs Mode の場合
貼り付け -]  
セッション デタッチ -d  
アタッチ tmux attach [-t ]  
一覧 tmux ls  
全般 ヘルプ -?  

設定ファイル (~/.tmux.conf)

  • 日本語環境
set-window-option -g utf8 on
  • コピーモードの動作
set-window-option -g mode-keys vi
  • 自動的にウィンドウ名を変えない
set-window-option -g automatic-rename off
  • バッファとかヒストリとかのサイズを変更
set-option -g buffer-limit 20
set-option -g history-limit 5000
  • Prefix key (default: C-b)の変更
unbind C-b
set-option -g prefix C-t
bind C-t send-prefix
  • マウスでペインを選択・ペインサイズを変更
    • これ設定するとtmuxがマウスイベント奪うみたいのでマウスを使った terminal の文字列コピペとかやりたいなら注意。
set-option -g mouse-select-pane
set-option -g mouse-resize-pane
  • synchronize-pane のショートカット
bind e setw synchronize-panes on
bind E setw synchronize-panes off

基本操作としてはこんなところかな…。

どうでもいいけどはてなで表を書くのが激しく面倒だよねえ。はてな記法の表組みは本当に表を書くだけでセルの結合とかもないし、それが嫌なら table tag って…間はないのか間は。pukiwiki くらいの機能があったらいいのに。