diff --git a/electrum/commands.py b/electrum/commands.py index 890f347c7ad3..03da3055fe9b 100644 --- a/electrum/commands.py +++ b/electrum/commands.py @@ -352,6 +352,17 @@ async def setconfig(self, key, value): cv = self.config.cv.from_key(key) cv.set(value) + @command('') + async def listconfig(self): + """Returns the list of all configuration variables. """ + return self.config.list_config_vars() + + @command('') + async def helpconfig(self, key, more=False): + """Returns help about a configuration variable. """ + cv = self.config.cv.from_key(key) + return cv.get_long_desc() if more else cv.get_short_desc() + @command('') async def make_seed(self, nbits=None, language=None, seed_type=None): """Create a seed""" @@ -1471,6 +1482,7 @@ def eval_bool(x: str) -> bool: 'to_ccy': (None, "Currency to convert to"), 'unlock': (None, "Unlock the wallet (store the password in memory)."), 'public': (None, 'Channel will be announced'), + 'more': (None, 'Return detailed description'), } diff --git a/electrum/simple_config.py b/electrum/simple_config.py index 3b85373d590e..586245411e38 100644 --- a/electrum/simple_config.py +++ b/electrum/simple_config.py @@ -242,6 +242,9 @@ def __init__(self, options=None, read_user_config_function=None, self.amt_precision_post_satoshi = self.BTC_AMOUNTS_PREC_POST_SAT self.amt_add_thousands_sep = self.BTC_AMOUNTS_ADD_THOUSANDS_SEP + def list_config_vars(self) -> Sequence[str]: + return list(sorted(_config_var_from_key.keys())) + def electrum_path_root(self): # Read electrum_path from command line # Otherwise use the user's default data directory.