Build a CLI parser with subcommands
Project description
CliMaker
Python package which allows to define a CLI argument parser (with subcommands) with a schema.
The only dependency is the argparse
library.
Tested (a bit) with Python 3.6+
Please, create an issue if you have a bug-report or find this package needs an improvement. (It definitely needs an improvement.)
Installation
pip install climaker
Example
import sys
from climaker import Parser, Subcommands, Arguments, Arg
# Define commands structure
spec = Subcommands({
'bake': Subcommands({
'cake': Arguments([
Arg('-s', '--size', type_=int, default=10),
Arg('--color', default='pink'),
]),
'cookie': Arguments([
Arg('--kind', default='biscuit'),
]),
}),
'eat': Arguments([
Arg('edible', default='cookie'),
])
})
# Create a parser
parser = Parser(spec)
# Parse arguments
action = parser.parse_arguments(sys.argv[1:])
print(action.command)
# ['bake', 'cake']
print(action.params)
# {'size': 10, 'color': 'pink'}
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 Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.