diff options
author | Rob Crittenden <rcritten@redhat.com> | 2011-01-24 16:59:52 -0500 |
---|---|---|
committer | Rob Crittenden <rcritten@redhat.com> | 2011-01-25 17:08:57 -0500 |
commit | 5c88225ddac550f4cea12b1d5013984bb6c68c77 (patch) | |
tree | e46a542177294f274d27f73e2cf8d02de618583d /ipalib | |
parent | 726288470607b94d9747f59a3579f761fd9d85e5 (diff) | |
download | freeipa-5c88225ddac550f4cea12b1d5013984bb6c68c77.tar.gz freeipa-5c88225ddac550f4cea12b1d5013984bb6c68c77.tar.xz freeipa-5c88225ddac550f4cea12b1d5013984bb6c68c77.zip |
Add brackets around optional parameters when prompting.
ticket 832
Diffstat (limited to 'ipalib')
-rw-r--r-- | ipalib/cli.py | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/ipalib/cli.py b/ipalib/cli.py index 9dda1c276..5543301c0 100644 --- a/ipalib/cli.py +++ b/ipalib/cli.py @@ -507,15 +507,19 @@ class textui(backend.Backend): def print_error(self, text): print ' ** %s **' % unicode(text) - def prompt(self, label, default=None, get_values=None): + def prompt(self, label, default=None, get_values=None, optional=False): """ Prompt user for input. """ # TODO: Add tab completion using readline + if optional: + prompt = u'[%s]' % label + else: + prompt = u'%s' % label if default is None: - prompt = u'%s: ' % label + prompt = u'%s: ' % prompt else: - prompt = u'%s [%s]: ' % (label, default) + prompt = u'%s [%s]: ' % (prompt, default) try: data = raw_input(self.encode(prompt)) except EOFError: @@ -992,7 +996,7 @@ class cli(backend.Executioner): while True: if error is not None: print '>>> %s: %s' % (unicode(param.label), unicode(error)) - raw = self.Backend.textui.prompt(param.label, default) + raw = self.Backend.textui.prompt(param.label, default, optional=param.alwaysask or not param.required) try: value = param(raw, **kw) if value is not None: |