Metadata-Version: 2.4
Name: libargs
Version: 1.0.1
Summary: Python bindings for libargs — Unix/GNU-style argument parsing
License-Expression: MIT
Project-URL: Homepage, https://github.com/quantung-libraries/libargs
Project-URL: Repository, https://github.com/quantung-libraries/libargs
Project-URL: Bug Tracker, https://github.com/quantung-libraries/libargs/issues
Project-URL: Changelog, https://github.com/quantung-libraries/libargs/releases
Keywords: argparse,cli,arguments,unix,gnu
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: C
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Utilities
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: MacOS
Requires-Python: >=3.8
Description-Content-Type: text/markdown

# libargs — Python bindings

Unix/GNU-style argument parsing as a Python C extension.

```python
import sys, args

opts = [
    args.opt_bool  ('v', 'verbose', 'enable verbose output'),
    args.opt_string('o', 'output',  'FILE', 'output file', default='a.out'),
    args.opt_int   ('n', 'count',   'N',    'repeat N times'),
    args.opt_float ('r', 'ratio',   'F',    'scaling ratio', default='1.0'),
]

r = args.Parser().parse(sys.argv, opts)

print(r.flag('verbose'))        # bool
print(r.string('output'))       # str | None
print(r.int('count'))           # int | None
print(r.positionals())          # list[str]
```

Supports: `-v`, `-xvz`, `-fFILE`, `--flag`, `--opt=VAL`, `--opt VAL`,
`--no-FLAG`, `--` end-of-args, `-` stdin, `POSIXLY_CORRECT`.
