diff options
-rw-r--r-- | libbe/command/help.py | 2 | ||||
-rw-r--r-- | libbe/ui/command_line.py | 14 |
2 files changed, 12 insertions, 4 deletions
diff --git a/libbe/command/help.py b/libbe/command/help.py index 8e66405..1fc88f0 100644 --- a/libbe/command/help.py +++ b/libbe/command/help.py @@ -58,7 +58,7 @@ class Help (libbe.command.Command): def _run(self, **params): if params['topic'] == None: if hasattr(self.ui, 'help'): - self.ui.help() + print >> self.stdout, self.ui.help().rstrip('\n') elif params['topic'] in libbe.command.commands(): module = libbe.command.get_command(params['topic']) Class = libbe.command.get_command_class(module,params['topic']) diff --git a/libbe/ui/command_line.py b/libbe/ui/command_line.py index 17f7b35..9c97eec 100644 --- a/libbe/ui/command_line.py +++ b/libbe/ui/command_line.py @@ -250,6 +250,16 @@ class BE (libbe.command.Command): def full_version(self, *args): return libbe.version.version(verbose=True) +class CommandLine (libbe.command.UserInterface): + def __init__(self, *args, **kwargs): + libbe.command.UserInterface.__init__(self, *args, **kwargs) + self.restrict_file_access = False + self.storage_callbacks = None + def help(self): + be = BE(ui=self) + self.setup_command(be) + return be.help() + def dispatch(ui, command, args): parser = CmdOptionParser(command) try: @@ -273,9 +283,7 @@ def dispatch(ui, command, args): def main(): io = libbe.command.StdInputOutput() - ui = libbe.command.UserInterface(io) - ui.restrict_file_access = False - ui.storage_callbacks = None + ui = CommandLine(io) be = BE(ui=ui) ui.setup_command(be) |