按ctrl-tabterminator 与按 具有相同的效果tab,但是当我在设置中看到键绑定时,没有任何内容映射到ctrl-tab,那么为什么要ctrl-tab保留呢?
现在,如果我使用 xterm,我就知道解决这个问题的方法。所以本质上我想看看是否有类似的解决方法。解决方案是这样的,
将以下行添加到 .Xresources:
*vt100.translations: #override \n\
Ctrl ~Shift <Key>Tab: string(0x1b) string("[27;5;9~") \n \
Ctrl Shift <Key>Tab: string(0x1b) string("[27;6;9~") \n
重新加载
xrdb ~/.Xresources
并添加以下行。在这里,我尝试使用 ctrl-tab 和 ctrl-shift-tab 循环浏览屏幕窗口
# Ctrl-Tab
bindkey "^[[27;5;9~" next
# Ctrl-Shift-Tab
bindkey "^[[27;6;9~" prev
答案1
终端向应用程序发送字符,而不是按键。键被编码为字符或字符序列;大多数功能键发送以转义字符(字符 27 = 033 = 0x1b ^[
== )开头的序列\e
。
没有与组合键Ctrl+相对应的标准转义序列Tab,因此大多数终端都会发送字符 9 == ^I
TAB = \t
,就像普通的 一样Tab。
正如您所发现的,您可以将 xterm 配置为通过 X 资源发送不同的转义序列。 Terminator 源自 Gnome-terminal,它几乎没有定制功能(与 Gnome 的其余部分一样)。据我所知,它不提供这样的配置功能。