我正在努力变得更加精通tmux,但我遇到了(在我看来),一个奇怪的问题。这是我的tmux.conf:
1 TERM=screen-256color
2 set-option -g default-terminal $TERM
3
4 TMUX_COLOUR_BORDER="colour237"
5 TMUX_COLOUR_ACTIVE="colour231"
6 TMUX_COLOUR_INACTIVE="colour16"
7
8 set-window-option -g window-status-activity-bg $TMUX_COLOUR_BORDER
9 set-window-option -g window-status-activity-fg $TMUX_COLOUR_ACTIVE
10 set-window-option -g window-status-current-format "#[fg=$TMUX_COLOUR_ACTIVE]#I:#W#F"
11 set-window-option -g window-status-format "#[fg=$TMUX_COLOUR_INACTIVE]#I:#W#F"
12
13
14 set -g prefix C-a
15
16 bind-key o split-window -v
17 bind-key e split-window -h
18
19 bind-key w kill-pane
我正在尝试在两个窗格之间复制粘贴。所以,我按Ctrl-a- [,然后按Ctrl-空格键。问题是,我没有看到块的视觉选择,并且alt-w也不起作用(因为我猜它甚至没有进入复制模式)。我的tmux.conf中是否有明显的错误?你能发现我做错了吗?
答案 0 :(得分:9)
tmux有一个选项mode-keys
,您可以在手册页中找到它。
默认为emacs
,但如果您的$EDITOR
是vim / vi,则tmux将使用vi
。
因此密钥绑定将采用vi模式。
E.g。你的Alt-w
将无效,它是emacs绑定。你可以在tmux手册页中看到一个关键字绑定表。
一些与您的问题有关:
Function vi emacs
Copy selection Enter M-w
Start selection Space C-Space
所以你应该使用vi-mode键。
我也使用了vim模式,并在我的tmux.conf中进行了一些自定义(使其与vim相同),也许你可以尝试一下:
bind-key -t vi-copy 'v' begin-selection # Begin selection in copy mode.
bind-key -t vi-copy 'C-v' rectangle-toggle # Begin selection in copy mode.
bind-key -t vi-copy 'y' copy-selection # Yank selection in copy mode.
答案 1 :(得分:-1)
如果有帮助,我有一个正确的 tmux 配置(具有 vi ,如选择和复制/粘贴的设置),但是需要在我的环境中设置这两个环境变量 .zshrc 文件(使用 Zsh 和 Neovim ):
export EDITOR='nvim'
export VISUAL='nvim'