只需要增加下面几行代码,就能让你的库的命令行支持自动补全:然后你的包安装后,对应的命令行程序就可以用eval "$(register-python-argcomplete )"来补全了。⚠️注意:如果程序执行到argcomplete.autocomplete() 被调用的地方耗时很久的话,用户按tab就会有明显的延迟感。所以尽量将
本文将介绍Python中的 argcomplete 模块,它是一个功能强大的命令行参数自动完成工具,可以让命令行应用更易于使用和理解。 1. 引言 命令行应用的用户体验 命令行应用程序是许多开发人员和系统管理员日常工作中的重要组成部分。然而,使用这些工具时,用户通常需要记住各种参数和选项,这可能会导致用户错误输入,减慢工作效率,...
偶然看到argcomplete[1]这个库,按tab键就可以给Python的命令行添加自动补全,简直是使用Python的一个神器。 具体来说,argcomplete有下面的特点: 官方支持支持bash和zsh两种shell,对tcsh和fish有第三方贡献者提供的支持(不好意思Windows用户这里又被当做二等公民了 ) 可以对python命令和pip命令进行补全 其他任何以argparse...
一旦应用程序配置好了argcomplete,用户只需按下“Tab”键即可自动完成选项和参数。例如,当用户输入myapp --he[TAB]时,argcomplete将自动将--he完成为--help。 5. 高级 argcomplete 特性 子命令自动完成 如果命令行应用程序支持子命令(例如Git),argcomplete也可以自动完成子命令。这可以让用户更容易地浏览和执行各种操...
偶然看到argcomplete[1]这个库,按tab键就可以给Python的命令行添加自动补全,简直是使用Python的一个神器。 具体来说,argcomplete有下面的特点: 官方支持支持bash和zsh两种shell,对tcsh和fish有第三方贡献者提供的支持(不好意思Windows用户这里又被当做二等公民了 ) ...
Argcomplete 是一个强大的Python库,可以大幅改善命令行应用程序的用户体验。它提供了简单的方式来自动完成参数和选项,减少了用户输入错误的可能性,提高了工作效率。 在命令行应用程序开发中,提供良好的用户体验是至关重要的。一个有效的方式是使用命令补全工具,它可以大幅改善用户与命令行应用程序的交互。
在使用Python命令或者Python的命令行工具的时候,一个痛点是没有补全。比如python -m后面输入包名字,就没有提示,每次想运行一个http server的时候,都需要搜索一下http服务的包名。另外,像pip、pipx等命令也没有提示,使用不太方便。而argcomplete这个库,按tab键就可以给Python的命令行添加自动补全,简直是使用...
argcomplete-3.2.2/argcomplete/packages/_argparse.py", line 299, in _parse_known_args start_index = consume_optional(start_index) ~~~^^^ File "/builddir/build/BUILD/argcomplete-3.2.2/argcomplete/packages/_argparse.py", line 165, in consume_optional action, option_string, explicit_arg = opt...
eval "$(register-python-argcomplete pmg)"以下是一些典型用法的示例:如果在发表的成果中使用了pymatgen,请按照以下格式引用:Shyue Ping Ong, William Davidson Richards, Anubhav Jain, Geoffroy Hautier, Michael Kocher, Shreyas Cholia, Dan Gunter, Vincent Chevrier, Kristin A. Persson, Gerbrand Ceder. ...
argcomplete - Bash/zsh tab completion for argparse Tab complete all the things! Argcomplete provides easy, extensible command line tab completion of arguments for your Python application. It makes two assumptions: You're using bash or zsh as your shell (limited support exists for other shells - ...