在~/.tmux.conf,与
bind-key v split-window "vim"
Run Code Online (Sandbox Code Playgroud)
我可以在拆分窗口中启动 vim。
如何在 tmux 中使用两个键bind-key?
例子:
bind-key vG split-window "vim +$"
Run Code Online (Sandbox Code Playgroud)
你不能。tmux只允许单键绑定(单独、使用bind-key -n或跟随前缀键)。
但是,您可以尝试将“v”绑定到以下调用command-prompt:
bind-key v command-prompt "tmux-vim.bash %%"
Run Code Online (Sandbox Code Playgroud)
哪里tmux-vim.bash看起来像
if [ $1 = "G" ]; then
tmux split-window "vim +$"
fi
Run Code Online (Sandbox Code Playgroud)
然后,在输入 v 进入命令提示符后,您只需输入“G”并按 Enter。“G”将作为参数传递给tmux-vim.bash,该脚本将负责执行tmux您(最初)想要与“vG”关联的命令。
只有一种正确的解决方案:
# you can use "vim +$" as well, but I don't think that +$ prefix have any sense without the file path argument...
bind -T multiKeyBindings G split-window "vim"
bind v switch-client -T multiKeyBindings
Run Code Online (Sandbox Code Playgroud)
如果您希望可以传递自定义参数,则应改用此参数:
bind -T multiKeyBindings G command-prompt 'split-window "vim %%"'
bind v switch-client -T multiKeyBindings
Run Code Online (Sandbox Code Playgroud)
更多例子:
# Toggle maximizing of current pane by typing PREFIX mm
bind -T multiKeyBindings m resize-pane -Z
bind m switch-client -T multiKeyBindings
# or without PREFIX
bind -T multiKeyBindings m resize-pane -Z
bind -n m switch-client -T multiKeyBindings
# rename current window by typing PREFIX mr
bind -T multiKeyBindings r command-prompt 'rename-window %%'
bind -n m switch-client -T multiKeyBindings
Run Code Online (Sandbox Code Playgroud)
您应该为每个多键绑定使用唯一的键板名称。例子:
bind -T multiKeyBinding1 G split-window "vim"
bind v switch-client -T multiKeyBinding1
bind -T multiKeyBinding2 m resize-pane -Z
bind -n m switch-client -T multiKeyBinding2
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6848 次 |
| 最近记录: |