Ctrl + 箭头键在 tmux 中工作

Wal*_*alf 8 keyboard-shortcuts terminal tmux

当我通过 SSH 连接到我们的服务器时,control + 箭头序列对我来说工作正常:Ctrl+V然后Ctrl+ updownright、分别left给出^[OA^[OB^[OC^[OD。在 tmux 中,我得到^[[A^[[B^[[C^[[D

\n

我通过 PuTTY 连接到 Ubuntu,但是\xe2\x80\xa6

\n
    \n
  • 我有正确的终端集(putty因为ncurses-term已安装)。所有其他组合键都在主 shell 中工作。

    \n
  • \n
  • 我正在使用正确的字符集 (UTF-8)。

    \n
  • \n
  • 我肯定会得到一个 256 色终端(我已经尝试过多次调用TERM=... tmux

    \n
  • \n
  • 我已阅读 tmux 常见问题解答,其中提到使用此配置:

    \n
     set -g terminal-overrides "xterm*:kLFT5=\\eOD:kRIT5=\\eOC:kUP5=\\eOA:kDN5=\\eOB:smkx@:rmkx@"\n
    Run Code Online (Sandbox Code Playgroud)\n
  • \n
\n

使我的配置像这样:

\n
    set -g default-terminal "screen-256color"\n    set -g terminal-overrides "screen*:kLFT5=\\eOD:kRIT5=\\eOC:kUP5=\\eOA:kDN5=\\eOB:smkx@:rmkx@"\n    set-window-option -g xterm-keys on\n
Run Code Online (Sandbox Code Playgroud)\n

因为screen在其他地方推荐过(尽管我putty也在那里尝试过。

\n

我发现唯一有效的是tput rmkx在 中运行tmux,但我不知道这是否是正确的解决方案,它还有什么其他影响,其他程序是否会更改此设置,甚至不知道应该如何正确设置它,.tmux.conf以便我不必一直手动输入它。

\n

Tho*_*key 5

这类似于如何在腻子上启用 GNU 屏幕的控制组合键?,但涉及不同的方面。

快速检查一下,问题似乎出在这一行之间的冲突

set-window-option -g xterm-keys on
Run Code Online (Sandbox Code Playgroud)

和这个:

set -g terminal-overrides "screen*:kLFT5=\eOD:kRIT5=\eOC:kUP5=\eOA:kDN5=\eOB:smkx@:rmkx@"
Run Code Online (Sandbox Code Playgroud)

删除set-window-option使您的配置对我有用。