是否有可能为 Bash 提供第二种配置,complete
使其独立于标准TAB
触发配置运行?
我已经编写了专门为我的目的定制的 Bash 文件名补全脚本,但我不想用TAB
它替换补全。相反,我想将其映射到不同的键(例如Ctrl+F
或一个F#
键),以便我可以在需要时轻松使用它,但TAB
在大多数情况下继续使用完成。
目前我有一行.bashrc
用于测试我的脚本,它工作正常:
complete -o nospace -o filenames -C /path/to/complete_script commands_list
如何配置自定义键来触发完成脚本而不干扰TAB
完成?
答案1
如果您的自定义完成仅设计用于commands_list
,则这应该有效:将complete
命令绑定到第二个组合键,并检查$COMP_KEY
脚本中的值(这是键序列中最后一个字符的十进制字符代码)。如果是9
(常规选项卡),则执行默认的文件名完成。