Extensible CLI parser.
Project description
nr.cliparser
– Extensible CLI parser.
Work in progress
Example
import nr.cliparser
parser = nr.cliparser.Parser()
parser.argument('-h', nargs=0, help='Show this help.')
parser.argument('script', nargs='?', help='A script to run.')
parser.argument('argv', nargs='...', help='Arguments for the script.')
install = parser.subparser('--install', help='Install a packge.')
install.argument('ref', nargs='?', multiple=True, help='A package reference.')
install.argument('-e', metavar='ref', help='A package reference to install editable.', multiple=True)
install.argument('-g', nargs=0, help='Install globally.')
install.argument('-r', nargs=0, help='Install into root.')
args = parser.parse()
if args['h']:
parser.print_help()
exit()
print(args)
$ python3 example.py -h
usage: example -h [script] ... --install [ [ref] -e <ref> -g -r ]
-h Show this help.
[script] A script to run.
... Arguments for the script. 8-
--install [ ... ] Install a packge.
[ref] A package reference.
-e <ref> A package reference to install editable.
-g Install globally.
-r Install into root.
$ python3 example.py --install -e scope@package
{'install': {'e': ['scope@package'], 'ref': [], 'g': False, 'r': False}, 'h': False, 'script': None, 'argv': []}
Changes
v0.1.1 (2018-09-20)
- Fix Python 2 compatibility
v0.1.0 (2018-09-20)
- Initial release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
nr.cliparser-0.1.1.tar.gz
(8.2 kB
view details)
File details
Details for the file nr.cliparser-0.1.1.tar.gz
.
File metadata
- Download URL: nr.cliparser-0.1.1.tar.gz
- Upload date:
- Size: 8.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.19.5 CPython/3.6.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d51fe87d0ed90947ca81c87b22bb208f4f146163d295ab62f2ecf496963518c9 |
|
MD5 | 9ea321be06c76bda6c4c417608cefca8 |
|
BLAKE2b-256 | 776cd545e67365c3d1f5a22e5f68c9b6469b77310c16207118397da8a0e50082 |