From fed0bf55c2e4c19e4b855a14d74cb88be7435b9d Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Tue, 18 Jun 2024 11:34:45 -0700 Subject: [PATCH] Add support for generating dotenv help text. --- aider/args.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/aider/args.py b/aider/args.py index 4b0b1bccb..c6b44acc6 100644 --- a/aider/args.py +++ b/aider/args.py @@ -7,7 +7,7 @@ import sys import configargparse from aider import __version__, models -from aider.args_formatter import MarkdownHelpFormatter, YamlHelpFormatter +from aider.args_formatter import MarkdownHelpFormatter, YamlHelpFormatter#, DotEnvFormatter from .dump import dump # noqa: F401 @@ -516,16 +516,31 @@ def get_sample_yaml(): return argparse.ArgumentParser.format_help(parser) return parser.format_help() +def get_sample_dotenv(): + os.environ["COLUMNS"] = "120" + sys.argv = ["aider"] + parser = get_parser([], None) + + # This instantiates all the action.env_var values + parser.parse_known_args() + + parser.formatter_class = DotEnvFormatter + + return argparse.ArgumentParser.format_help(parser) + return parser.format_help() def main(): arg = sys.argv[1] if len(sys.argv[1:]) else None if arg == "md": print(get_md_help()) + elif arg == "dotenv": + print(get_sample_dotenv()) else: print(get_sample_yaml()) + if __name__ == "__main__": status = main() sys.exit(status)