在许多其他修改中,我将我的重新映射Caps Lock
到Hyper
,这是来自
太空学员键盘。
但是我找不到如何在 Tmux 中使用它进行键绑定的示例,Tmux 具有类似 Emacs 的键绑定定义,例如C-k
在两者中都定义了 Ctrl-k,所以我尝试了H-k
在 Emacs 中完美运行,但作为事实证明,不在 Tmux 中。
我的确切绑定定义.tmux.conf
bind-key -T copy-mode H-k send-keys -X -N 30 scroll-down
结果出现以下错误:
/home/attila/.tmux.conf:21: unknown key: H-k
我知道有一个技巧可以模仿该Hyper
键作为同时按下所有其他修饰键,但是我使用X角,所以这不是一个选择。
答案1
您的终端不支持“hyper”修饰符,更不用说tmux了。
tmux 是一个 TUI 应用程序。它只知道终端发送给它的内容。终端,在 POSIX 通用终端接口范例中,只发送字符;普通字符、控制字符、转义序列和控制序列。不存在原始击键和单独传输的修饰键信息的概念。 tmux 与其他 TUI 应用程序一样,不涉及任何此类概念。
由终端和终端仿真器响应于功能键和扩展键而发送的一些控制序列可以包括指定瞬时修改器状态的参数。但他们普遍遵循的 DEC VT 约定只有⇧ Level 2 Shift, ⎇ Alt, 和⎈ Control。它没有“超级”修饰符的概念,DEC 终端没有这样的键。它甚至根本没有这种用于字母数字键的特殊控制序列的概念;仅适用于计算器、编辑、光标和功能键盘上的(某些)键。
进一步阅读
答案2
编号man tmux
列出了可识别的按键:
键绑定 tmux 允许将命令绑定到大多数键,无论有或没有前缀键。
当指定键时,大多数代表它们自己(例如“A”到
“Z”)。 Ctrl 键可能带有“C-”或“^”前缀,Alt(元)带有“M-”前缀。此外,还接受以下特殊键名称:Up、Down、
Left、Right、BSpace、BTab、DC(删除)、End、Enter、Escape、F1 至 F12、Home、IC(插入)、NPage/PageDown/PgDn 、 PPage/PageUp/PgUp、空格和 Tab。
您还可以阅读接受的密钥列表来源。