emacsとvimの両方でtmuxを使用する

emacsとvimの両方でtmuxを使用する

tmux に最適なデフォルトのキー バインディングは何ですか。また、emacs を使用する場合もあれば、vim を使用する場合 (Linux Mint 12 の場合)、その理由は何ですか。Ctrl-b は問題ありませんが、bash シェルおよび emacs と少し競合します。

答え1

関連する投稿で良い答えを見つけました:screen または tmux にとって最も競合の少ないプレフィックス/エスケープ シーケンスは何ですか?

そして、Ctrl-\ を使用しました。以下は私の ~/.tmux-conf です。

set-window-option -g mode-keys vi
set-window-option -g window-status-current-bg blue
set-window-option -g automatic-rename on
set-option -g status-keys vi
set-option -g history-limit 100000
set-option -g base-index 1
set-option -s escape-time 0
setw -g mode-mouse on
set-option -g mouse-select-pane on

# We won't worry about sending C-\ to any programs
# bind-key C-\ send-prefix

# hit C-\ twice to go to last window
bind-key C-\ last-window
bind-key b set-option status

bind-key / command-prompt "split-window 'exec man %%'"
# vim's definition of a horizontal/vertical split is reversed from tmux's
bind s split-window -v
bind v split-window -h

# move around panes with hjkl, as one would in vim after pressing ctrl-w
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R

# resize panes like vim
bind < resize-pane -L 10
bind > resize-pane -R 10
bind - resize-pane -D 10
bind + resize-pane -U 10

# C-b is not acceptable, due to emacs, bash, and vim
unbind-key C-b
set-option -g prefix C-\

答え2

私は を強く好みますC-]。これは vi バインディングと競合せず、Emacs のデフォルトabort-recursive-editバインディングと競合します。私はそれをめったに使用せず、かなり厄介な状況でのみ使用するので、2 回入力しても大した問題にはなりません。

答え3

私はしばらくの間 Ctrl-/ を使ってきましたが、少なくとも vim/bash では何かと競合することは見つかりませんでした。私は emacs を使用していないので、emacs で重要なものと競合するかどうかはわかりません。

また、ちょっとした注意点として、これが実際に送信するキーなので、これを動作させるには C-_ にバインドする必要があったと思います。

答え4

私は C-\ を使用します。一重引用符でエスケープする必要があることに注意してください。

unbind-key C-b
set-option -g prefix C-'\'

関連情報