【发布时间】:2015-12-31 13:26:04
【问题描述】:
是否可以自动检测组合键的转义序列?
,即不是运行cat,然后手动按ctrl+right 或ctrl+left 以分别检测转义序列为^[[5C 或^[[5D,它可以自动化吗?在这种情况下,我们可以通过管道将 fn(ctrl+left) 或 fn(ctrl+right) 作为输入发送到 cat 并获取输出(第一次,当 ^[[5C 或 ^[[5D 未知时)直接。
fn(char a[]='ctrl+right') {..outputs the actual keypress signal for the input string a.. ;} | cat; fn=?
这个问题与我的另一个问题 https://stackoverflow.com/questions/34547008/reverse-map-the-keys-binding-value-to-the-key-combination 完全相反。
我要求它自动为开发人员在终端中设置键绑定的过程,这样他们就不需要手动运行所有可能的组合,就像我们现在必须做的那样 (as seen here)
【问题讨论】:
-
我不明白这个问题。
cat是您找出按键转义序列的方法。您是否在问如何将 wordsctrl+right转换为适当的键序列? -
是的。不是手动按 ctrl+left 进入键盘,有什么方法可以让我以编程方式发送它。如果可能的话,是否也可以用于所有键组合
-
这里有什么意义?这不正是文档中 terminfo 选项的作用吗?
标签: shell terminal kernel key-bindings