[scripts/options] make output width independent of terminal size
This commit is contained in:
@@ -20,26 +20,32 @@ gallery_dl.util.EXECUTABLE = True
|
|||||||
from gallery_dl import option # noqa E402
|
from gallery_dl import option # noqa E402
|
||||||
|
|
||||||
|
|
||||||
TEMPLATE = """# Command-Line Options
|
class Formatter(option.Formatter):
|
||||||
|
def __init__(self, prog):
|
||||||
|
option.argparse.HelpFormatter.__init__(
|
||||||
|
self, prog, max_help_position=30, width=77)
|
||||||
|
|
||||||
<!-- auto-generated by {} -->
|
def add_usage(self, usage, actions, groups):
|
||||||
|
pass
|
||||||
{}"""
|
|
||||||
|
|
||||||
|
|
||||||
parser = option.build_parser()
|
parser = option.build_parser()
|
||||||
parser.usage = ""
|
parser.formatter_class = Formatter
|
||||||
|
parser.format_usage = lambda: ""
|
||||||
|
|
||||||
opts = parser.format_help()
|
opts = parser.format_help()
|
||||||
opts = opts[8:] # strip 'usage'
|
|
||||||
opts = re.sub(r"(?m)^(\w+.*)", "## \\1", opts) # group names to headings
|
opts = re.sub(r"(?m)^(\w+.*)", "## \\1", opts) # group names to headings
|
||||||
opts = opts.replace("\n ", "\n ") # indent by 4
|
opts = opts.replace("\n ", "\n ") # indent by 4
|
||||||
|
|
||||||
|
|
||||||
|
SELF = "/".join(os.path.normpath(__file__).split(os.sep)[-2:])
|
||||||
PATH = (sys.argv[1] if len(sys.argv) > 1 else
|
PATH = (sys.argv[1] if len(sys.argv) > 1 else
|
||||||
util.path("docs", "options.md"))
|
util.path("docs", "options.md"))
|
||||||
|
|
||||||
with util.lazy(PATH) as fp:
|
with util.lazy(PATH) as fp:
|
||||||
fp.write(TEMPLATE.format(
|
fp.write(f"""# Command-Line Options
|
||||||
"/".join(os.path.normpath(__file__).split(os.sep)[-2:]),
|
|
||||||
opts,
|
<!-- auto-generated by {SELF} -->
|
||||||
))
|
|
||||||
|
|
||||||
|
{opts}""")
|
||||||
|
|||||||
Reference in New Issue
Block a user