我发现 Bash shell 支持一种与“传统”自动完成不同的自动完成,其中所有可能性都列在下一行中。
使用“传统”自动完成功能,如果我键入ch
然后按下Tab
键,我会得到如下信息:
$ ch
chacl chgrp chmod chown chvt
但是,如果我将以下行添加到我的/etc/inputrc
(将 Tab 键重新映射到内置menu-complete
函数):
Tab: menu-complete
然后 shell 的行为发生了变化:要完成的单词被替换为“内联”,从可能的完成列表中找到一个匹配项,如果我再次按 Tab 键,该单词将被下一个匹配项替换。
我发现这很有用,但我仍然想保留传统的自动完成并将其绑定到 key combination Ctrl + Tab
。/etc/inputrc
因此,根据readline
库文档的建议,我在文件中添加了以下行:
Ctrl-Tab: complete
但是,添加这一行似乎只能同时Tab
调用Ctrl-Tab
传统complete
函数。
有谁知道我做错了什么?
提前致谢!