def __init__(self): cmd.Cmd.__init__(self) self.prompt = pc.WARNING + str(os.getcwd().replace(os.environ['HOME'], '~')) + pc.ENDC + pc.bFAIL + ' > ' + pc.ENDC self._sh = BetterParser() self._sh.environ['HOME'] = os.environ['HOME'] self.did_quit = False self.did_clear_buffer = False
class Shell(cmd.Cmd): def __init__(self): cmd.Cmd.__init__(self) self.prompt = pc.WARNING + str(os.getcwd().replace(os.environ['HOME'], '~')) + pc.ENDC + pc.bFAIL + ' > ' + pc.ENDC self._sh = BetterParser() self._sh.environ['HOME'] = os.environ['HOME'] self.did_quit = False self.did_clear_buffer = False def reload_shell(self): shell = Shell() shell.prompt = shell.prompt = pc.WARNING + str(os.getcwd().replace(os.environ['HOME'], '~')) + pc.ENDC + pc.bFAIL + ' > ' + pc.ENDC shell.cmdloop() def sh(self, arg_string): try: return self._sh.parse('. ' + arg_string)[1:] except SyntaxError, error: print pc.FAIL + "\tSyntaxError: " + pc.ENDC, error