def show(self, name): f = util.Formatter() for text in (self.show_usage(name), self.header, self.show_commands(), self.footer): f.extend(text) f.new_paragraph() return f
def show(self, name): f = util.Formatter() for iterable in (self.show_usage(name), self.header, self.show_arguments(), self.footer): f.extend(iterable) f.new_paragraph() return f
def show_list(self, name): f = util.Formatter() f.append('{name}: Possible values for {self.display_name}:' .format(self=self, name=name)) f.new_paragraph() with f.indent(): with f.columns() as cols: for _, names, desc in self.values: cols.append(', '.join(names), desc) f.new_paragraph() return str(f)
def show_arguments(self): f = util.Formatter() with f.columns(indent=2) as cols: for label, section in self.sections.items(): if not section: continue f.new_paragraph() f.append(label) for argname, (param, text) in section.items(): self.show_argument(param, text, self.after.get(argname, ()), f, cols) return f
def show_commands(self): f = util.Formatter() f.append('Commands:') with f.indent(): with f.columns() as cols: for names, command in self.owner.cmds.items(): try: desc = command.helper.description except AttributeError: desc = '' cols.append(', '.join(names), desc) return f
def cli(self, name, usage=False, *args): """Show the help usage: Only show the full usage """ self.prepare_once() name = name.rpartition(' ')[0] f = util.Formatter() if usage: f.extend(self.show_full_usage(name)) else: f.extend(self.show(name)) return six.text_type(f)
def formatter(**kwargs): kwargs.setdefault('max_width', 50) return util.Formatter(**kwargs)