如何在tmux copy-mode中将hjkl方向键映射为jkl;?
解决tmux copy-mode下jkl;替代hjkl移动光标的配置问题
你原来的动作命令写法没有错误,配置不生效通常是几个常见原因导致的,按以下步骤调整即可:
完整可用配置
将以下内容写入你的.tmux.conf配置文件:
# 首先设置窗口模式默认使用vi按键体系,这步是很多人漏配的核心原因 set-window-option -g mode-keys vi # 解绑copy-mode-vi下原有的hjkl绑定 unbind -T copy-mode-vi h unbind -T copy-mode-vi j unbind -T copy-mode-vi k unbind -T copy-mode-vi l # 绑定jkl;对应左、下、上、右移动 bind -T copy-mode-vi j send-keys -X move-left bind -T copy-mode-vi k send-keys -X move-down bind -T copy-mode-vi l send-keys -X move-up # 分号绑定用单引号包裹避免转义问题,比\;兼容性更好 bind -T copy-mode-vi ';' send-keys -X move-right
生效配置
修改完配置后执行以下命令重载配置即可生效,不需要重启tmux:
tmux source ~/.tmux.conf
低版本tmux(2.4以下)适配
如果你使用的是2.4以下的旧版本tmux,绑定语法不同,使用以下配置即可:
set-window-option -g mode-keys vi unbind -t vi-copy h unbind -t vi-copy j unbind -t vi-copy k unbind -t vi-copy l bind -t vi-copy j cursor-left bind -t vi-copy k cursor-down bind -t vi-copy l cursor-up bind -t vi-copy ';' cursor-right
内容的提问来源于stack exchange,提问作者Paweł Chabros
相关产品推荐
相关产品推荐

