Bash Complete — 单击文档
来自菜鸟教程
Click/docs/6.x/bashcomplete
Bash 完成
2.0 版中的新功能。
从 Click 2.0 开始,任何 Click 脚本都内置了对 Bash 完成的支持。 对于此完成何时可用有某些限制,但在大多数情况下它应该可以正常工作。
限制
Bash 补全仅在正确安装脚本且不通过 python
命令执行时才可用。 有关如何执行此操作的信息,请参阅 Setuptools 集成 。 此外,Click 目前仅支持 Bash 的补全。
目前,Bash 补全是一个不可定制的内部功能。 这在未来的版本中可能会放宽。
它完成了什么
一般来说,Bash 补全支持会补全子命令和参数。 子命令总是被列出,而参数只有在至少提供了一个破折号时才列出。 例子:
激活
为了激活 Bash 补全,您需要通知 Bash 补全可用于您的脚本,以及如何完成。 任何 Click 应用程序都会自动提供支持。 其工作的一般方式是通过一个名为 _<PROG_NAME>_COMPLETE
的魔法环境变量,其中 <PROG_NAME>
是您的应用程序可执行文件的大写名称,破折号由下划线代替。
如果您的工具名为 foo-bar
,则魔法变量名为 _FOO_BAR_COMPLETE
。 通过使用 source
值导出它,它会吐出可以简单激活的激活脚本。
例如,要为您的 foo-bar
脚本启用 Bash 补全,您需要将以下内容放入 .bashrc
:
从这一点开始,您的脚本将启用 Bash 完成。
激活脚本
上面的激活示例将始终在启动时调用您的应用程序。 如果您有许多应用程序,这可能会显着减慢 shell 激活时间。 或者,您也可以发送一个包含该内容的文件,这正是 Git 和其他系统正在做的。
这可以很容易地完成:
然后你会把它放到你的 bashrc 中: