--- pdb.py 2007-01-22 10:48:37.000000000 +0000 +++ pdb.py.new 2007-01-22 10:49:21.000000000 +0000 @@ -64,6 +64,8 @@ # Try to load readline if it exists try: import readline + import rlcompleter + self.completer = rlcompleter.Completer(sys._getframe().f_locals) except ImportError: pass @@ -94,6 +96,11 @@ self.commands_defining = False # True while in the process of defining a command list self.commands_bnum = None # The breakpoint number for which we are defining a list + def complete(self, text, state): + self.completer.namespace = self.curframe.f_globals.copy() + self.completer.namespace.update(self.curframe.f_locals) + return self.completer.complete(text, state) + def reset(self): bdb.Bdb.reset(self) self.forget()