mirror of
https://github.com/Grasscutters/mitmproxy.git
synced 2025-02-02 08:15:22 +00:00
console: add saving of config file
This commit is contained in:
parent
f16aab963e
commit
c5717b17df
@ -212,7 +212,7 @@ class OptManager(metaclass=_DefaultsMeta):
|
||||
if not text:
|
||||
return {}
|
||||
try:
|
||||
data = ruamel.yaml.load(text, ruamel.yaml.Loader)
|
||||
data = ruamel.yaml.load(text, ruamel.yaml.RoundTripLoader)
|
||||
except ruamel.yaml.error.YAMLError as v:
|
||||
snip = v.problem_mark.get_snippet()
|
||||
raise exceptions.OptionsError(
|
||||
|
@ -9,6 +9,7 @@ from mitmproxy.tools.console import signals
|
||||
footer = [
|
||||
('heading_key', "enter/space"), ":toggle ",
|
||||
('heading_key', "C"), ":clear all ",
|
||||
('heading_key', "W"), ":save ",
|
||||
]
|
||||
|
||||
|
||||
@ -17,6 +18,7 @@ def _mkhelp():
|
||||
keys = [
|
||||
("enter/space", "activate option"),
|
||||
("C", "clear all options"),
|
||||
("w", "save options"),
|
||||
]
|
||||
text.extend(common.format_keyvals(keys, key="key", val="text", indent=4))
|
||||
return text
|
||||
@ -162,8 +164,20 @@ class Options(urwid.WidgetWrap):
|
||||
if key == "C":
|
||||
self.clearall()
|
||||
return None
|
||||
if key == "W":
|
||||
self.save()
|
||||
return None
|
||||
return super().keypress(size, key)
|
||||
|
||||
def do_save(self, path):
|
||||
self.master.options.save(path)
|
||||
|
||||
def save(self):
|
||||
signals.status_prompt_path.send(
|
||||
prompt = "Save options to file",
|
||||
callback = self.do_save
|
||||
)
|
||||
|
||||
def clearall(self):
|
||||
self.master.options.reset()
|
||||
signals.update_settings.send(self)
|
||||
|
Loading…
Reference in New Issue
Block a user