summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cliapp/settings.py8
-rw-r--r--example4.py1
2 files changed, 7 insertions, 2 deletions
diff --git a/cliapp/settings.py b/cliapp/settings.py
index dd0f8ed..2890b42 100644
--- a/cliapp/settings.py
+++ b/cliapp/settings.py
@@ -554,6 +554,10 @@ class Settings(object):
def add_option(obj, s):
option_names = self._option_names(s.names)
+ if s.hidden:
+ help = optparse.SUPPRESS_HELP
+ else:
+ help = s.help
obj.add_option(*option_names,
action='callback',
callback=maybe(set_value),
@@ -561,7 +565,7 @@ class Settings(object):
type=s.type,
nargs=s.nargs,
choices=s.choices,
- help=s.help,
+ help=help,
metavar=s.metavar)
def add_negation_option(obj, s):
@@ -575,7 +579,7 @@ class Settings(object):
callback=maybe(set_false),
callback_args=(s,),
type=s.type,
- help='')
+ help=optparse.SUPPRESS_HELP if s.hidden else '')
# Add options for every setting.
diff --git a/example4.py b/example4.py
index 9f3ddf1..14386df 100644
--- a/example4.py
+++ b/example4.py
@@ -26,6 +26,7 @@ class ExampleApp(cliapp.Application):
def add_settings(self):
self.settings.string(['yoyo'], 'yoyo help', hidden=True)
+ self.settings.boolean(['blip'], 'blip help', hidden=True)
def cmd_greet(self, args):
'''Greet the user.