From 85b2fb3d8ace6f828548693de304e39de07157b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dominik=20Szyma=C5=84ski?= Date: Thu, 10 Aug 2023 22:59:00 +0200 Subject: [PATCH] Upgrade command parser --- software/script/chameleon_cli_main.py | 5 +++-- software/script/chameleon_cli_unit.py | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/software/script/chameleon_cli_main.py b/software/script/chameleon_cli_main.py index fe23a4e..212fa34 100755 --- a/software/script/chameleon_cli_main.py +++ b/software/script/chameleon_cli_main.py @@ -152,14 +152,15 @@ class ChameleonCLI: cmds = cmd_str.split(" ") cmd_maps: dict or types.FunctionType = self.cmd_maps cmd_end = "" + cmd_end_position = 0 for cmd in cmds: if cmd in cmd_maps: # CMD found in map, we can continue find next cmd_maps = cmd_maps[cmd] cmd_end = cmd + cmd_end_position += len(cmd) + 1 else: # CMD not found break - cmd_end_position = cmd_str.index(cmd_end) + len(cmd_end) + 1 - return cmd_maps, (cmd_str[:cmd_end_position], cmd_str[cmd_end_position:]) + return cmd_maps, (cmd_str[:cmd_end_position - 1], cmd_str[cmd_end_position:]) def startCLI(self): """ diff --git a/software/script/chameleon_cli_unit.py b/software/script/chameleon_cli_unit.py index 0654743..aec53f8 100644 --- a/software/script/chameleon_cli_unit.py +++ b/software/script/chameleon_cli_unit.py @@ -1013,7 +1013,7 @@ class HWSettingsAnimationSet(DeviceRequiredUnit): def args_parser(self) -> ArgumentParserNoExit or None: parser = ArgumentParserNoExit() parser.add_argument('-m', '--mode', type=int, required=True, help="0 is full (default), 1 is minimal (only single pass on button wakeup), 2 is none", choices=[0, 1, 2]) - return None + return parser def on_exec(self, args: argparse.Namespace): mode = args.mode