obsws-cli/man/generate.py

41 lines
890 B
Python

"""script for generating man pages for the CLI."""
# /// script
# dependencies = [
# "typer>=0.15.2",
# "click-man>=0.5.1",
# "obsws-cli",
# ]
# ///
import argparse
import typer
from click_man.core import write_man_pages
from obsws_cli import app
from obsws_cli.__about__ import __version__
def main(target_dir: str):
"""Generate man pages for the CLI."""
cli = typer.main.get_command(app)
name = 'obsws-cli'
version = __version__
write_man_pages(name, cli, version=version, target_dir=target_dir)
def parse_args():
"""Parse command line arguments."""
parser = argparse.ArgumentParser(description='Generate man pages for the CLI.')
parser.add_argument(
'--output', type=str, default='.', help='Directory to save man pages'
)
return parser.parse_args()
if __name__ == '__main__':
args = parse_args()
main(args.output)