我在 Vi 模式下运行 Tmux。复制模式下的类似 Vi 的导航工作正常。但是,我无法选择任何文本。v 和 V 都无法切换到类似 Vi 的文本选择模式。
我错过了什么?
顺便问一下,在复制模式下可以显示行号吗?
PS:我在 Mac OS 上运行 Tmux 和 Z shell
答案1
简短回答:space开始选择并enter复制。
为了将来参考,我从 tmux 手册页中获得了以下信息:
Function vi emacs
Back to indentation ^ M-m
Clear selection Escape C-g
Copy selection Enter M-w
Cursor down j Down
Cursor left h Left
Cursor right l Right
Cursor to bottom line L
Cursor to middle line M M-r
Cursor to top line H M-R
Cursor up k Up
Delete entire line d C-u
Delete to end of line D C-k
End of line $ C-e
Goto line : g
Half page down C-d M-Down
Half page up C-u M-Up
Next page C-f Page down
Next word w M-f
Paste buffer p C-y
Previous page C-b Page up
Previous word b M-b
Quit mode q Escape
Scroll down C-Down or J C-Down
Scroll up C-Up or K C-Up
Search again n n
Search backward ? C-r
Search forward / C-s
Start of line 0 C-a
Start selection Space C-Space
Transpose chars C-t
更新:该tmux list-keys
命令还将列出您拥有的任何自定义键绑定。
答案2
使用空格键开始选择,使用回车键结束选择。
复制:
- Ctrlb[
- Space
- Enter
粘贴:
- Ctrlb]
答案3
上游 (2.4+) tmux 改变了如何绑定开始选择。要为 OP 要求的内容创建绑定,请使用-T
和 send-keys -X
:
# Use v to trigger selection
bind-key -T copy-mode-vi v send-keys -X begin-selection
# Use y to yank current selection
bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel
答案4
我发现进入 vi 模式很容易成为我的瓶颈,为此我使用以下命令:
setw -g mode-keys vi
set-window-option -g mode-keys vi
unbind [
bind-key -n F2 copy-mode