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.
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
|