tmuxのコピーモードに惹かれて使ってみたのですが、すごく便利。
vimキーバインドでのコピーモードの使い方をまとめておこうと思います。
.tmux.confの設定についてはこちらの記事を参考にさせてもらいました。
tmux.conf
# prefixキーをC-qに変更
set -g prefix C-q
# C-bのキーバインドを解除
unbind C-b
# vimのキーバインドでペインを移動する
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
# コピーモードを設定する
# コピーモードでvimキーバインドを使う
setw -g mode-keys vi
# 'v' で選択を始める
bind -T copy-mode-vi v send -X begin-selection
# | でペインを縦分割する
bind | split-window -h
# - でペインを縦分割する
bind - split-window -v
prefix
はCtrl + q
で設定しているので、それに準じて記述します。
コピーモード
コピーモードの開始コマンドのprefix + [
, prefix + ]
の役割が相対している訳ではないので、
理解するのに少し時間がかかりました。
コマンド | 説明 |
---|---|
prefix + [ | コピーモード開始 |
prefix + ] | コピーされた内容を貼り付ける(コピーモードを終了後) |
コピーモード中の操作
操作 | 説明 |
---|---|
space | コピー位置開始 |
Enter | ハイライトされた部分をコピーし、コピーモードを終了 |
q | コピーモードを終了 |
ESC または ctrl + { | ハイライトをキャンセル |
Ctrl + u | 上方に移動 |
Ctrl + d | 下方に移動 |
* 先に.tmux.conf
に書いたものは説明を省いています
その他、コピーモード中に使えるvi操作
e, b, w, 0, gg, G, $, ^, /, ?
などなど
検索はターミナルに出力された全範囲が行われるので?
の方が便利でした。y
をヤンクに設定して使ってみましたが、Enter
のままで使う方が入力キーを減らせて良さそう。