From 0fc24857e1786973b56a40afef8e64abffbf1c98 Mon Sep 17 00:00:00 2001 From: Aldo Cortesi Date: Tue, 13 Jun 2017 09:47:50 +1200 Subject: core: set command can now take multiple values These are joined together with spaces before execution. This is a big convenience boost on the command-prompt. --- mitmproxy/addons/core.py | 6 ++++-- mitmproxy/tools/console/master.py | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/mitmproxy/addons/core.py b/mitmproxy/addons/core.py index 426c47ad..d75949bc 100644 --- a/mitmproxy/addons/core.py +++ b/mitmproxy/addons/core.py @@ -10,13 +10,15 @@ from mitmproxy.net.http import status_codes class Core: @command.command("set") - def set(self, spec: str) -> None: + def set(self, *spec: typing.Sequence[str]) -> None: """ Set an option of the form "key[=value]". When the value is omitted, booleans are set to true, strings and integers are set to None (if permitted), and sequences are emptied. Boolean values can be true, - false or toggle. + false or toggle. If multiple specs are passed, they are joined + into one separated by spaces. """ + spec = " ".join(spec) try: ctx.options.set(spec) except exceptions.OptionsError as e: diff --git a/mitmproxy/tools/console/master.py b/mitmproxy/tools/console/master.py index ce4e4d9d..92e8b7a2 100644 --- a/mitmproxy/tools/console/master.py +++ b/mitmproxy/tools/console/master.py @@ -238,7 +238,7 @@ class ConsoleAddon: """ Prompt the user to edit a command with a (possilby empty) starting value. """ - signals.status_prompt_command.send(partial=" ".join(partial) + " ") # type: ignore + signals.status_prompt_command.send(partial=" ".join(partial)) # type: ignore @command.command("console.view.commands") def view_commands(self) -> None: -- cgit v1.2.3