Tmux滚动模式:vim键盘绑定?

时间:2018-08-01 17:56:58

标签: tmux

因此,如果我在Tmux中,并且有一堆输出到达终端,则可以按以下命令滚动浏览它:

ctrl-b [

现在,我必须举起双手并转到箭头键向上滚动。

如何在滚动模式下映射vim键?

2 个答案:

答案 0 :(得分:3)

不确定您拥有哪个tmux。这适用于1.8和2.6,这是我被迫使用的两个。

run-shell "tmux setenv -g TMUX_VERSION $(tmux -V | cut -c 6-)"
if-shell -b '[ "$(echo "$TMUX_VERSION < 2.4" | bc)" = 1 ]' \
  "setw -g mode-keys vi; \
  bind-key Escape copy-mode; \
  bind-key -t vi-copy v begin-selection; \
  bind-key -t vi-copy V select-line; \
  bind-key -t vi-copy y copy-pipe 'xclip -in -selection clipboard'"

if-shell -b '[ "$(echo "$TMUX_VERSION >= 2.4" | bc)" = 1 ]' \
  "set-window-option -g mode-keys vi; \
  bind-key -T copy-mode-vi v send -X begin-selection; \
  bind-key -T copy-mode-vi V send -X select-line; \
  bind-key -T copy-mode-vi y send -X copy-pipe-and-cancel 'xclip -in -selection clipboard'"

此处与hjkl相关的部分仅是setw -g mode-keys vi(对于1.8)和set-window-option -g mode-keys vi(对于2.6)(它们甚至可能是别名,并且不确定在两个版本中都适用)。话虽这么说,vVxclip的映射绝对有用。

答案 1 :(得分:0)

为了补充已接受的答案,我发现以下.tmux.conf行可以满足我的大部分需求:

set-window-option -g mode-keys vi
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R