def input(prompt='Enter value', secret=False, default=None, check=False, error=None, warn=None): # {{{1 if secret: default = None if check and not INTERACTIVE: return default or u'' prompt = condense(prompt) default = decode(default, encoding=ENCODING) getter = getpass if secret else raw_input if default: prompt += " [%s]" % default if warn: prompt += " (%s)" % warn_message(message=warn) if error: prompt += " (%s)" % error_message(message=error) try: if prompt: reply = getter(prompt.strip() + ': ') else: reply = getter() except: reply = '' reply = decode(reply, encoding=ENCODING) if not len(reply): reply = default return reply.strip()
def join(values, encoding=None): # {{{1 """Joins a list into a config value.""" if not encoding: encoding = ENCODING strbuf = StringIO() writer = csv.writer(strbuf, dialect=ConfigDialect) writer.writerow(encode(values, encoding)) return decode(strbuf.getvalue().strip(), encoding)
def decode(self, value): return decode(value, self.encoding)
def search(self, query): #{{{2 dialog = SearchProgressDialog() dialog.run(self.search_generator(normalize(decode(query)), dialog))