From 22506fd6f48351e8d2148bb41a89309a12383a17 Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Thu, 27 Feb 2014 22:29:25 +0100 Subject: [PATCH] More config output improvments --- qutebrowser/config/config.py | 17 +++++++---------- qutebrowser/config/conftypes.py | 4 ++++ 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/qutebrowser/config/config.py b/qutebrowser/config/config.py index 2864cb0a3..8221733a1 100644 --- a/qutebrowser/config/config.py +++ b/qutebrowser/config/config.py @@ -91,8 +91,6 @@ class NewConfig: lines.append('# ' + secline) else: lines += wrapper.wrap(secline) - if self.config[secname].descriptions: - lines.append('#') return lines def _str_option_desc(self, secname, section): @@ -103,6 +101,7 @@ class NewConfig: if not section.descriptions: return lines for optname, option in section.items(): + lines.append('#') if option.typ.typestr is None: typestr = '' else: @@ -112,19 +111,17 @@ class NewConfig: desc = self.config[secname].descriptions[optname] except KeyError: continue - wrapped_desc = [] for descline in desc.splitlines(): - wrapped_desc += wrapper.wrap(descline) + lines += wrapper.wrap(descline) valid_values = option.typ.valid_values - if valid_values is not None: + if valid_values is not None and option.typ.show_valid_values: if isinstance(valid_values[0], str): - wrapped_desc += wrapper.wrap('Valid values: {}'.format( - ', '.join(valid_values))) + lines += wrapper.wrap('Valid values: {}'.format(', '.join( + valid_values))) else: for (val, desc) in valid_values: - wrapped_desc += wrapper.wrap( - ' {}: {}'.format(val, desc)) - lines.append('\n'.join(wrapped_desc)) + lines += wrapper.wrap(' {}: {}'.format(val, desc)) + lines += wrapper.wrap('Default: {}'.format(option.default)) return lines def _str_items(self, section): diff --git a/qutebrowser/config/conftypes.py b/qutebrowser/config/conftypes.py index cd8d82e08..befd2cd5f 100644 --- a/qutebrowser/config/conftypes.py +++ b/qutebrowser/config/conftypes.py @@ -29,12 +29,14 @@ class BaseType: string. Either a list of strings, or a list of (value, desc) tuples. # FIXME actually handle tuples and stuff when validating + show_valid_values; Whether to show valid values in config or not. typestr: The name of the type to appear in the config. """ typestr = None valid_values = None + show_valid_values = True def transform(self, value): """Transform the setting value. @@ -83,6 +85,7 @@ class Bool(BaseType): """Base class for a boolean setting.""" valid_values = ['true', 'false'] + show_valid_values = False typestr = 'bool' # Taken from configparser @@ -240,6 +243,7 @@ class AutoSearch(Bool): """Whether to start a search when something else than an URL is entered.""" + typestr = None valid_values = [("naive", "Use simple/naive check."), ("dns", "Use DNS requests (might be slow!)."), ("false", "Never search automatically.")]