diff options
author | Florian Bruhin <me@the-compiler.org> | 2020-12-19 22:24:44 +0100 |
---|---|---|
committer | Florian Bruhin <me@the-compiler.org> | 2020-12-19 22:24:44 +0100 |
commit | 2560f9774b5f31b833c2ebf84e17dc38b3083bc3 (patch) | |
tree | 2498a7c8c9e7c4d39d265e5050751a6d1f44a040 /scripts | |
parent | 214dd63441063acffa7e888f3f5b42187007da11 (diff) | |
download | qutebrowser-2560f9774b5f31b833c2ebf84e17dc38b3083bc3.tar.gz qutebrowser-2560f9774b5f31b833c2ebf84e17dc38b3083bc3.zip |
doc: Use Python 3.9 simplified usage formatting
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/dev/src2asciidoc.py | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/scripts/dev/src2asciidoc.py b/scripts/dev/src2asciidoc.py index aefbff7f8..60cb3d611 100755 --- a/scripts/dev/src2asciidoc.py +++ b/scripts/dev/src2asciidoc.py @@ -79,7 +79,7 @@ class UsageFormatter(argparse.HelpFormatter): def _metavar_formatter(self, action, default_metavar): """Override _metavar_formatter to add asciidoc markup to metavars. - Most code here is copied from Python 3.4's argparse.py. + Most code here is copied from Python 3.10's argparse.py. """ if action.metavar is not None: result = "'{}'".format(action.metavar) @@ -115,6 +115,19 @@ class UsageFormatter(argparse.HelpFormatter): action.option_strings = old_option_strings[action] return ret + def _format_args(self, action, default_metavar): + """Backport simplified star nargs usage. + + https://github.com/python/cpython/pull/17106 + """ + if sys.version_info >= (3, 9) or action.nargs != argparse.ZERO_OR_MORE: + return super()._format_args(action, default_metavar) + + get_metavar = self._metavar_formatter(action, default_metavar) + metavar = get_metavar(1) + assert len(metavar) == 1 + return f'[{metavar[0]} ...]' + def _open_file(name, mode='w'): """Open a file with a preset newline/encoding mode.""" |