Simple command-line parser.
Project description
This small python package implements a simple object-oriented layer on top of python’s argparse, offering a more intuitive and easier way to build command-line interfaces.
Quick Start
Installing Oi package.
pip install oicli
Usage example
Given the commands bellow:
$ myapp user list
$ myapp user add --name Wilson --email wilson@codeminus.org
The parser would look like this:
import oi
app = oi.App('myapp')
user_cmd = oi.Command(app, 'user')
user_list_cmd = oi.Command(user_cmd, 'list')
user_add_cmd = oi.Command(user_cmd, 'add')
user_add_cmd.add_argument('--name')
user_add_cmd.add_argument('--email')
print(app.parse_args())
Running the application with the code above:
$ myapp user
Namespace(command='user')
$ myapp user list
Namespace(command='user_list')
$ myapp user add --name Wilson --email wilson@codeminus.org
Namespace(command='user_add', email='wilson@codeminus.org', name='Wilson')
Notice the command attribute of the Namespace. It correspond to the name of the command invoked. The sub-command name is appended to its parent command to ensure a unique identifier is created.
What does “Oi” mean? Well… What does it mean to you? Try the wiki.
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
oicli-0.3.0.tar.gz
(3.8 kB
view details)
File details
Details for the file oicli-0.3.0.tar.gz
.
File metadata
- Download URL: oicli-0.3.0.tar.gz
- Upload date:
- Size: 3.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fbb14be05bd3be470a8f2ddcd6784dc6c29db55e3a9e0e9a139da3a8732eafc3 |
|
MD5 | fd376380f77f7e732e03eacdd0abc445 |
|
BLAKE2b-256 | 0c76d8ee855cdb13f2475302e10c81af9330a109467c52193a25711d110950e1 |