我的 tmux 命令键为 Ca。C-Left/C-Right 在单词之间跳转(或无论它叫什么)在 urxvt 中单独使用时效果很好,但在 urxvt/tmux 下,它会分别打印“5D”和“5C”表示左/右。如何配置 tmux 以使单词跳转有效(在 X 上使用 urxvt 或在 tty 中)?
答案1
将其添加到您的.Xdefaults
URxvt.keysym.Control-Up: \033[1;5A
URxvt.keysym.Control-Down: \033[1;5B
URxvt.keysym.Control-Left: \033[1;5D
URxvt.keysym.Control-Right: \033[1;5C
URxvt 现在将发送与 XTerm 相同的转义序列。
这将确保当您使用.inputrc
SSH 连接到远程机器时,字跳转也能正常工作。
要使 urxvt 更像 xterm,请参阅http://www.netswarm.net/misc/urxvt-xtermcompat.txt
答案2
摘录自bash 和 Emacs 中的 Ctrl-left 和 Ctrl-right:
Sometimes the small things make a big difference. I noticed that the control-left
and control-right keys weren’t working in bash or Emacs on my FreeBSD box
accessed over X11.app on OS X. Easily fixed.
.inputrc
"\e[1;5C": forward-word # Ctrl+right => forward word
"\e[1;5D": backward-word # Ctrl+left => backward word
.emacs
(global-set-key "\M-[1;5C" 'forward-word) ; Ctrl+right => forward word
(global-set-key "\M-[1;5D" 'backward-word) ; Ctrl+left => backward word
- 我想您需要在每个程序中执行此操作并更改其键绑定。
- 我不知道为什么
tmux
会破坏经过的击键。
答案3
如果你使用 zsh,请将其添加到你的~/.zshrc
bindkey "5C" forward-word
bindkey "5D" backward-word
答案4
在这里回答:https://superuser.com/a/395273/65499
C-b :set-window-option xterm-keys on