Skip to content

A python Command-line Argument Parser that provides typing support.

License

Notifications You must be signed in to change notification settings

MamoruDS/typed-cap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

typed-cap

pypi style

Cap is a python Command-line Argument Parser that provides typing support. Using Cap requires less code to generate a more easy to use parser.

Usage

⚠️ typed_cap required python>=3.9

pip install typed_cap

Quick Example

from typed_cap import Cap


class Args:
    """description here"""

    # @alias=c
    config: str | None
    """file path to config file"""

    # @alias=d
    depth: int
    """depth of search"""

    dry_run: bool = True
    """run without making any changes"""


cap = Cap(Args)
parsed = cap.parse()

print(parsed.args.__dict__)
print(parsed.argv)
python demo.py
# Cap.parse: option depth:int is required but it is missing
#         ArgsParserMissingArgument

python demo.py --help
# description here
#
# OPTIONS:
#     -c,--config     file path to config file
#     -d,--depth      depth of search
#        --dry_run    run without making any changes (default: True)
#     -h,--help       display the help text

python demo.py -d 5 hello typed cap
# {'depth': 5, 'config': None, 'dry_run': True}
# ['hello', 'typed', 'cap']

About

A python Command-line Argument Parser that provides typing support.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages