Skip to main content

Easy multi-level command line applications with man pages

Project description

Wilderness

PyPI version Build status Downloads Documentation Status

In wildness is the salvation of the world. — Aldo Leopold

Wilderness is a light wrapper around argparse for creating command line applications with multiple subcommands, in the style of Git. Wilderness also makes it easy to generate man pages for your application.

Wilderness is heavily inspired by Cleo and argparse-manpage, but aims to stick as closely as possible to argparse to avoid users having to learn a new API.

Installation

Wilderness is available on PyPI:

$ pip install wilderness

Usage

Building command line applications with Wilderness is straightforward, but it does expect a certain structure of the application. You can create applications with or without subcommands, as illustrated with the fakegit and fakedf examples, respectively.

Creating wilderness applications consist of the following steps:

  1. Subclassing the wilderness.Application class to hold the main application.

  2. Adding one or more wilderness.Command objects for each of the subcommands, optionally organized into wilderness.Groups.

  3. Minor changes to setup.py to build the manpages.

Examples

Here are some examples that use Wilderness to build command line applications:

Repository Description
fakegit A multi-level command line application similar to Git
fakedf An application without subcommands similar to df
CleverCSV CleverCSV is a package for handling messy CSV files
Veld Easy command line analytics

Add your example here by opening a pull request!

Notes

License: See the LICENSE file.

Author: Gertjan van den Burg

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wilderness-0.1.10.tar.gz (40.3 kB view details)

Uploaded Source

Built Distribution

wilderness-0.1.10-py3-none-any.whl (19.7 kB view details)

Uploaded Python 3

File details

Details for the file wilderness-0.1.10.tar.gz.

File metadata

  • Download URL: wilderness-0.1.10.tar.gz
  • Upload date:
  • Size: 40.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.28.2 requests-toolbelt/0.9.1 urllib3/1.26.13 tqdm/4.62.3 importlib-metadata/5.0.0 keyring/23.5.0 rfc3986/1.5.0 colorama/0.4.6 CPython/3.10.10

File hashes

Hashes for wilderness-0.1.10.tar.gz
Algorithm Hash digest
SHA256 f6ca6de388586f3edf77fdccca2a8033f006eceabc0eb338a7034abebe551b44
MD5 ba50905982a5899785bf98cebef3f29b
BLAKE2b-256 556589b323ebf219eb04a9a663eff9494417408e5a8b1ad837643ff442979ef3

See more details on using hashes here.

File details

Details for the file wilderness-0.1.10-py3-none-any.whl.

File metadata

  • Download URL: wilderness-0.1.10-py3-none-any.whl
  • Upload date:
  • Size: 19.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.28.2 requests-toolbelt/0.9.1 urllib3/1.26.13 tqdm/4.62.3 importlib-metadata/5.0.0 keyring/23.5.0 rfc3986/1.5.0 colorama/0.4.6 CPython/3.10.10

File hashes

Hashes for wilderness-0.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 468978b41a1fdf05aabf2631ac456f14116ebec144bda0f1afa45eae1175d4b3
MD5 20ae04155065543a874720e9693411b6
BLAKE2b-256 001eda3c0d33d5404f69177580a52dea674efa37410748f4525d8a9ad75384d6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page