`bind '"\Ci": menu-complete'` 有什么作用?

`bind '"\Ci": menu-complete'` 有什么作用?

我想通过交替当前目录中的文件来填写需要文件参数的命令。所以我跟着吉尔斯的回复

将密钥绑定Tabmenu-complete 命令而不是默认的complete.将以下行放入您的~/.bashrc

bind '"\C-i": menu-complete'

是否"\C-i"代表 Tab关键?这是哪里指定的?我以为"\C-i"代表Ctrl-i.

在我运行命令后bind '"\C-i": menu-complete',该 Tab键似乎在 bash 中无法用于任何目的(包括任何类型的自动完成)。我是否想念该命令的用途?

如何撤消该命令,即使该Tab键再次适用于自动完成的默认样式?为了恢复,我运行了以下命令,其中一些命令是偶然的,但它们似乎都不适用于恢复:

bind -u 'menu-complete'
bind -u 'complete'
bind '"TAB": complete'
bind '"\TAB": complete'

答案1

Ctrl+I是在各个方面完全相同的Tab(这是Tab密钥生成的)。我尝试遵循吉尔斯的建议,我仍然可以选择完整的文件名等,尽管它现在的行为略有不同(每次按Tab都会给出下一个建议的完成)。

要将其重置为默认值,请使用

bind '"\C-i": complete'

相关内容