映射字符键

Hea*_*ray 3 bash readline key-mapping

我实在不明白bash对控制字符的使用。我了解简单的事情,例如使用转义序列添加颜色,但不知道如何执行诸如绑定键之类的事情.inputrc

例如,有没有办法输入类似的内容Shifta并看看我应该如何表示它.inputrc

就像这个家伙在这里所做的那样: http://linuxart.com/log/archives/2005/10/13/super-useful-inputrc

bil*_*jmc 5

作为参考,这里是 archive.org 的 OP 问题中(死)链接的副本。其中显示的代码是 emacs lisp 风格的代码。我对他们了解不多。当然,剥猫皮的方法不止一种,但以下可能是最简单的:

首先,使用showkey -a获取键盘序列的十六进制表示形式。例如,当我按 时CtrlShift~,我得到:

^^       30 0036 0x1e
Run Code Online (Sandbox Code Playgroud)

所以,我的十六进制表示是0x1e. 然后我可以添加一行到我的~/.inputrc

"\x1e": beginning-of-line
Run Code Online (Sandbox Code Playgroud)

下次我打开 bash shell(或任何使用 readline 的程序)时,键入CtrlShift~会将光标移动到行的开头。您还可以执行以下操作:

"\x1b\x5a": "type this text whenever I press alt+shift+z"
Run Code Online (Sandbox Code Playgroud)