diff options
Diffstat (limited to 'dots_manager/args.py')
-rw-r--r-- | dots_manager/args.py | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/dots_manager/args.py b/dots_manager/args.py new file mode 100644 index 0000000..232c402 --- /dev/null +++ b/dots_manager/args.py @@ -0,0 +1,43 @@ +import argparse +from pathlib import Path +from .config import Config + + +def parse_arguments() -> argparse.Namespace: + parser = argparse.ArgumentParser(description="cute dotfiles manager ✧˖°") + + parser.add_argument( + "--compile", action="store_true", help="action: compile dotfiles" + ) + parser.add_argument( + "--source", + type=Path, + default=Config.default_source_dir, + help=f"default: '{Config.default_source_dir}'", + ) + parser.add_argument( + "--comp", + type=Path, + default=Config.default_compiled_dir, + help=f"default: '{Config.default_compiled_dir}'", + ) + parser.add_argument( + "--stow", action="store_true", help="action: stow compiled dotfiles" + ) + parser.add_argument( + "--clean", action="store_true", help="action: clean stowed dotfiles" + ) + parser.add_argument( + "--target", + type=Path, + default=Config.default_target_dir, + help=f"default: '{Config.default_target_dir}'", + ) + parser.add_argument( + "--verbose", + "-v", + action="store_true", + default=False, + help="enable verbose logging", + ) + return parser.parse_args() |