如何从控制字符切换到按键并返回

如何从控制字符切换到按键并返回

获取特定键(由描述性名称或按下相应的键指定)与所\e[7~使用的代码之间的双向字典的最佳方法是什么.inputrc,反之亦然。

我读过了https://superuser.com/a/269471/728074但这并没有多大帮助。不仅必须在或的输出中查找指定的任何键会很麻烦infocmp -L -1infocmp -L -1 xterm而且.inputrc它似乎甚至不包含我在.inputrc文件中找到的键。例如,.inputrc在这些命令的输出中找不到找到的键“\e[7~”。该问题和答案中给出的其他示例也是如此。

我也读过https://unix.stackexchange.com/questions/76566/where-do-i-find-a-list-of-terminal-key-codes-to-remap-shortcuts-in-bash,但运行sed -n l时,例如 home 键显示的键与.inputrc文件建议我应该找到的键不同。


sed -n l

然后按 home 键并输入以下内容:

^[[H
\033[H$

答案1

您链接的答案非常全面且正确。

基本上^[[H\033[H是完全相同的序列,只是同一字符的不同表示形式: 八进制是+033的二进制代码。Ctrl[

第一行是终端设备输出的本地终端回显,第二行是sed输出的(不包括$)。

这不应该在其他地方有不同规定。

相关内容