对于bash
,我会将用于补全的 Tab 键修改为转义键。我知道键绑定是在/etc/inputrc
.
但我不知道这样的事情是否可行:
`"\e" : complete`
我想这样做是因为我的用户来自 Solaris,其中转义键可以自动完成。
答案1
是的,可以更改键绑定或向complete
功能添加键绑定。该函数通常默认绑定到(与+Tab相同),后跟另一个.但是,无法将密钥本身绑定到任何 Readline 函数。这是因为该密钥很特殊,并且在 Readline 中有几个特定的用途。CtrliEscEscEscEsc
该Esc键用作其他键序列的前缀,因此Esc单独输入 an 仅设置 Readline 识别的完整键序列的初始部分。要查看 bash 中识别的所有 - 前缀序列的列表Esc,例如:
bind -p | grep '"\\e'
由于 Unix 终端的处理方式,Esc带有 - 前缀的按键序列通常与 - 键组合相同Alt。所以Esc后面的跟+u完全相同。Altu
该Esc键还用于退出 Readline 的交互式历史搜索模式。
答案2
双击 Escape 与单击 Tab 具有相同的效果。这样,escape就已经配置完成了。