argcomplete 项目使用教程
argcompletePython and tab completion, better together.项目地址:https://gitcode.com/gh_mirrors/ar/argcomplete
项目的目录结构及介绍
argcomplete 项目的目录结构如下:
argcomplete/
├── argcomplete/
│ ├── __init__.py
│ ├── __main__.py
│ ├── completers.py
│ ├── shells.py
│ └── tests/
│ ├── __init__.py
│ ├── test_argcomplete.py
│ └── test_shells.py
├── docs/
│ ├── conf.py
│ ├── index.rst
│ └── ...
├── examples/
│ ├── example.py
│ └── ...
├── .gitignore
├── LICENSE
├── README.md
├── setup.cfg
├── setup.py
└── tox.ini
目录结构介绍
argcomplete/
: 项目的主要代码目录,包含核心功能实现。__init__.py
: 包的初始化文件。__main__.py
: 主程序入口文件。completers.py
: 完成器相关功能实现。shells.py
: 支持的 shell 相关功能实现。tests/
: 测试代码目录。test_argcomplete.py
: 针对 argcomplete 功能的测试。test_shells.py
: 针对 shells 功能的测试。
docs/
: 项目文档目录,包含 Sphinx 文档配置和源文件。examples/
: 示例代码目录,包含使用 argcomplete 的示例程序。.gitignore
: Git 忽略文件配置。LICENSE
: 项目许可证文件。README.md
: 项目说明文档。setup.cfg
: 安装配置文件。setup.py
: 安装脚本。tox.ini
: 自动化测试配置文件。
项目的启动文件介绍
项目的启动文件是 argcomplete/__main__.py
。这个文件定义了 argcomplete 的主入口点,可以通过 python -m argcomplete
来运行。
启动文件内容
# argcomplete/__main__.py
from . import main
if __name__ == "__main__":
main()
这个文件导入了 main
函数并作为程序的入口点。main
函数定义在 argcomplete/__init__.py
中,负责处理命令行参数和启动 argcomplete 的功能。
项目的配置文件介绍
项目的配置文件主要包括 setup.cfg
和 tox.ini
。
setup.cfg
setup.cfg
是用于配置 setuptools 的文件,定义了项目的元数据、依赖关系和安装选项。
[metadata]
name = argcomplete
version = attr: argcomplete.__version__
description = Bash tab completion for argparse
long_description = file: README.md
long_description_content_type = text/markdown
author = Andrey Kislyuk
author_email = kislyuk@gmail.com
url = https://github.com/kislyuk/argcomplete
license = Apache Software License
classifiers =
Development Status :: 5 - Production/Stable
Intended Audience :: Developers
License :: OSI Approved :: Apache Software License
Operating System :: MacOS :: MacOS X
Operating System :: POSIX
Programming Language :: Python
Programming Language :: Python :: 3
Programming Language :: Python :: 3.6
Programming Language :: Python :: 3.7
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9
Topic :: Software Development :: Libraries :: Python Modules
[options]
packages = find:
install_requires =
importlib-metadata >= 0.23; python_version < "3.8"
[options.entry_points]
console_scripts =
activate-global-python-argcomplete = argcomplete.shell:main
[flake8]
max-line-length = 100
ignore = E203, E266, E501, W503
tox.ini
tox.ini
是用于配置 tox 的文件,定义了自动化测试的环境和命令。
[tox]
envlist = py36,py37,py38,py39
skipsdist = true
[testenv]
deps =
pytest
argcompletePython and tab completion, better together.项目地址:https://gitcode.com/gh_mirrors/ar/argcomplete