Skip to content

Create an argparse.ArgumentParser from function docstrings

License

Notifications You must be signed in to change notification settings

jerellgill/funcargparse

 
 

Repository files navigation

Create an argparse.ArgumentParser from function docstrings

docs Documentation Status
tests Tests Requirements Status Codecov
package PyPI Package latest release Supported versions Supported implementations

Welcome! Additionally to the default behaviour of the argparse.ArgumentParser, the funcargparse.FuncArgParser in this package allows you to

  1. automatically create a parser entirely from the docstring of a function, including the help, metavar, action, type and other parameters
  2. Let's you chain subparsers

There are a lot of argparse extensions out there, but through the use of the docrep package, this package can extract much more information to automate the creation of the command line utility.

See the documentation for more information.

Installation

Simply install it via pip:

$ pip install funcargparse

Or you install it via:

$ python setup.py install

from the source on GitHub.

Requirements

The package only requires the docrep package which we use under the hood to extract the necessary parts from the docstrings.

The package has been tested for python 2.7 and 3.5.

Disclaimer

Copyright 2016-2019, Philipp S. Sommer

Copyright 2020-2021, Helmholtz-Zentrum Hereon

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

About

Create an argparse.ArgumentParser from function docstrings

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%