mirror of
https://github.com/platformio/platformio-core.git
synced 2025-07-30 18:17:13 +02:00
Remap command before calling Click
This commit is contained in:
@ -91,12 +91,21 @@ def configure():
|
||||
click.secho = lambda *args, **kwargs: _safe_echo(1, *args, **kwargs)
|
||||
|
||||
|
||||
def remap_command_arguments(argv):
|
||||
if len(argv) > 1 and argv[1] == "init":
|
||||
return argv[:1] + ["project"] + argv[1:]
|
||||
return argv
|
||||
|
||||
|
||||
def main(argv=None):
|
||||
exit_code = 0
|
||||
prev_sys_argv = sys.argv[:]
|
||||
if argv:
|
||||
assert isinstance(argv, list)
|
||||
sys.argv = argv
|
||||
else:
|
||||
sys.argv = remap_command_arguments(sys.argv)
|
||||
|
||||
try:
|
||||
configure()
|
||||
cli() # pylint: disable=no-value-for-parameter
|
||||
|
@ -63,18 +63,5 @@ class PlatformioCLI(click.MultiCommand):
|
||||
mod_path = "platformio.commands.%s.command" % cmd_name
|
||||
mod = __import__(mod_path, None, None, ["cli"])
|
||||
except ImportError:
|
||||
try:
|
||||
return self._handle_obsolate_command(cmd_name)
|
||||
except AttributeError:
|
||||
pass
|
||||
raise click.UsageError('No such command "%s"' % cmd_name, ctx)
|
||||
return mod.cli
|
||||
|
||||
@staticmethod
|
||||
def _handle_obsolate_command(name):
|
||||
# pylint: disable=import-outside-toplevel
|
||||
if name == "init":
|
||||
from platformio.commands.project import project_init
|
||||
|
||||
return project_init
|
||||
raise AttributeError()
|
||||
|
@ -142,14 +142,7 @@ class MeasurementProtocol(TelemetryBase):
|
||||
return
|
||||
|
||||
cmd_path = args[:1]
|
||||
if args[0] in (
|
||||
"platform",
|
||||
"platforms",
|
||||
"serialports",
|
||||
"device",
|
||||
"settings",
|
||||
"account",
|
||||
):
|
||||
if args[0] in ("account", "device", "platform", "project", "settings",):
|
||||
cmd_path = args[:2]
|
||||
if args[0] == "lib" and len(args) > 1:
|
||||
lib_subcmds = (
|
||||
|
Reference in New Issue
Block a user