parser: print help when no args

Also create utility script for testing
This commit is contained in:
2 * r + 2 * t
2025-06-11 15:43:32 +10:00
parent 6543c9505b
commit a4f5138d41
3 changed files with 16 additions and 5 deletions
Executable
+11
View File
@@ -0,0 +1,11 @@
#!/usr/bin/env sh
# Utility script for rebuilding and running caelestia
cd $(dirname $0) || exit
sudo rm -r dist /usr/bin/caelestia /usr/lib/python3.*/site-packages/caelestia* 2> /dev/null
python -m build --wheel --no-isolation > /dev/null
sudo python -m installer --destdir=/ dist/*.whl > /dev/null
/usr/bin/caelestia "$@"
+3 -3
View File
@@ -2,12 +2,12 @@ from caelestia.parser import parse_args
def main() -> None:
args = parse_args()
parser, args = parse_args()
if "cls" in args:
args.cls(args).run()
else:
import sys
print("No arguments given", file=sys.stderr)
parser.print_help()
if __name__ == "__main__":
main()
+2 -2
View File
@@ -16,7 +16,7 @@ from caelestia.subcommands import (
)
def parse_args() -> argparse.Namespace:
def parse_args() -> (argparse.ArgumentParser, argparse.Namespace):
parser = argparse.ArgumentParser(prog="caelestia", description="Main control script for the Caelestia dotfiles")
# Add subcommand parsers
@@ -122,4 +122,4 @@ def parse_args() -> argparse.Namespace:
pip_parser.set_defaults(cls=pip.Command)
pip_parser.add_argument("-d", "--daemon", action="store_true", help="start the daemon")
return parser.parse_args()
return parser, parser.parse_args()