diff options
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/idlelib/AutoExpand.py | 2 | ||||
-rw-r--r-- | Lib/idlelib/Bindings.py | 10 | ||||
-rw-r--r-- | Lib/idlelib/EditorWindow.py | 16 | ||||
-rw-r--r-- | Lib/idlelib/PyShell.py | 22 | ||||
-rw-r--r-- | Lib/idlelib/config-keys.def | 5 | ||||
-rw-r--r-- | Lib/idlelib/configHandler.py | 1 | ||||
-rw-r--r-- | Lib/idlelib/help.txt | 26 |
7 files changed, 55 insertions, 27 deletions
diff --git a/Lib/idlelib/AutoExpand.py b/Lib/idlelib/AutoExpand.py index 8801830..9e93d57 100644 --- a/Lib/idlelib/AutoExpand.py +++ b/Lib/idlelib/AutoExpand.py @@ -9,7 +9,7 @@ class AutoExpand: menudefs = [ ('edit', [ - ('E_xpand word', '<<expand-word>>'), + ('E_xpand Word', '<<expand-word>>'), ]), ] diff --git a/Lib/idlelib/Bindings.py b/Lib/idlelib/Bindings.py index ee81bac..b177a5e 100644 --- a/Lib/idlelib/Bindings.py +++ b/Lib/idlelib/Bindings.py @@ -55,13 +55,16 @@ menudefs = [ ('run',[ ('Python Shell', '<<open-python-shell>>'), ]), - ('debug', [ + ('shell', [ + ('_View Last Restart', '<<view-restart>>'), + ('_Restart Shell', '<<restart-shell>>'), + None, ('_Go to File/Line', '<<goto-file-line>>'), - ('_Stack Viewer', '<<open-stack-viewer>>'), ('!_Debugger', '<<toggle-debugger>>'), + ('_Stack Viewer', '<<open-stack-viewer>>'), ('!_Auto-open Stack Viewer', '<<toggle-jit-stack-viewer>>' ), ]), - ('settings', [ + ('options', [ ('_Configure Idle...', '<<open-config-dialog>>'), None, ('Revert to _Default Settings', '<<revert-all-settings>>'), @@ -69,7 +72,6 @@ menudefs = [ ('help', [ ('_IDLE Help...', '<<help>>'), ('Python _Documentation...', '<<python-docs>>'), - ('_Advice...', '<<good-advice>>'), ('View IDLE _Readme...', '<<view-readme>>'), None, ('_About IDLE...', '<<about-idle>>'), diff --git a/Lib/idlelib/EditorWindow.py b/Lib/idlelib/EditorWindow.py index 96a894a..47256dc 100644 --- a/Lib/idlelib/EditorWindow.py +++ b/Lib/idlelib/EditorWindow.py @@ -60,6 +60,7 @@ class EditorWindow: 'recent-files.lst') self.vbar = vbar = Scrollbar(top, name='vbar') self.text_frame = text_frame = Frame(top) + self.width = idleConf.GetOption('main','EditorWindow','width') self.text = text = Text(text_frame, name='text', padx=5, wrap='none', foreground=idleConf.GetHighlight(currentTheme, 'normal',fgBg='fg'), @@ -71,7 +72,7 @@ class EditorWindow: 'hilite',fgBg='bg'), insertbackground=idleConf.GetHighlight(currentTheme, 'cursor',fgBg='fg'), - width=idleConf.GetOption('main','EditorWindow','width'), + width=self.width, height=idleConf.GetOption('main','EditorWindow','height') ) self.createmenubar() @@ -84,7 +85,6 @@ class EditorWindow: text.bind("<<paste>>", self.paste) text.bind("<<center-insert>>", self.center_insert_event) text.bind("<<help>>", self.help_dialog) - text.bind("<<good-advice>>", self.good_advice) text.bind("<<view-readme>>", self.view_readme) text.bind("<<python-docs>>", self.python_docs) text.bind("<<about-idle>>", self.about_dialog) @@ -213,7 +213,7 @@ class EditorWindow: ("edit", "_Edit"), ("format", "F_ormat"), ("run", "_Run"), - ("settings", "_Settings"), + ("options", "_Options"), ("windows", "_Windows"), ("help", "_Help"), ] @@ -277,9 +277,6 @@ class EditorWindow: def config_dialog(self, event=None): configDialog.ConfigDialog(self.top,'Settings') - def good_advice(self, event=None): - tkMessageBox.showinfo('Advice', "Don't Panic!", master=self.text) - def view_readme(self, event=None): fn=os.path.join(os.path.abspath(os.path.dirname(__file__)),'README.txt') textView.TextViewer(self.top,'IDLEfork - README',fn) @@ -666,6 +663,13 @@ class EditorWindow: text = self.text return int(float(text.index(mark))) + def get_geometry(self): + "Return (width, height, x, y)" + geom = self.top.wm_geometry() + m = re.match(r"(\d+)x(\d+)\+(-?\d+)\+(-?\d+)", geom) + tuple = (map(int, m.groups())) + return tuple + def close_event(self, event): self.close() diff --git a/Lib/idlelib/PyShell.py b/Lib/idlelib/PyShell.py index 6114359..77e4cf1 100644 --- a/Lib/idlelib/PyShell.py +++ b/Lib/idlelib/PyShell.py @@ -366,6 +366,12 @@ class ModifiedInterpreter(InteractiveInterpreter): self.spawn_subprocess() self.rpcclt.accept() self.transfer_path() + # annotate restart in shell window and mark it + console = self.tkconsole + halfbar = ((int(console.width) - 16) // 2) * '=' + console.write(halfbar + ' RESTART ' + halfbar) + console.text.mark_set("restart", "end-1c") + console.text.mark_gravity("restart", "left") # restart remote debugger if debug: gui = RemoteDebugger.restart_subprocess_debugger(self.rpcclt) @@ -652,8 +658,8 @@ class PyShell(OutputWindow): menu_specs = [ ("file", "_File"), ("edit", "_Edit"), - ("debug", "_Debug"), - ("settings", "_Settings"), + ("shell", "_Shell"), + ("options", "_Options"), ("windows", "_Windows"), ("help", "_Help"), ] @@ -687,6 +693,8 @@ class PyShell(OutputWindow): text.bind("<<toggle-debugger>>", self.toggle_debugger) text.bind("<<open-python-shell>>", self.flist.open_shell) text.bind("<<toggle-jit-stack-viewer>>", self.toggle_jit_stack_viewer) + text.bind("<<view-restart>>", self.view_restart_mark) + text.bind("<<restart-shell>>", self.restart_shell) # self.save_stdout = sys.stdout self.save_stderr = sys.stderr @@ -727,7 +735,7 @@ class PyShell(OutputWindow): db = self.interp.getdebugger() self.setvar("<<toggle-debugger>>", not not db) - def toggle_jit_stack_viewer( self, event=None): + def toggle_jit_stack_viewer(self, event=None): pass # All we need is the variable def close_debugger(self): @@ -1024,6 +1032,14 @@ class PyShell(OutputWindow): from StackViewer import StackBrowser sv = StackBrowser(self.root, self.flist) + def view_restart_mark(self, event=None): + self.text.see("iomark") + self.text.see("restart") + + def restart_shell(self, event=None): + self.interp.restart_subprocess() + self.showprompt() + def showprompt(self): self.resetoutput() try: diff --git a/Lib/idlelib/config-keys.def b/Lib/idlelib/config-keys.def index 821ee12..ff4debc 100644 --- a/Lib/idlelib/config-keys.def +++ b/Lib/idlelib/config-keys.def @@ -10,7 +10,7 @@ [IDLE Classic Windows] copy=<Control-Key-c> cut=<Control-Key-x> -paste=<Control-Key-m> +paste=<Control-Key-v> beginning-of-line= <Key-Home> center-insert=<Control-Key-l> close-all-windows=<Control-Key-q> @@ -22,6 +22,7 @@ python-context-help=<Shift-Key-F1> history-next=<Alt-Key-n> history-previous=<Alt-Key-p> interrupt-execution=<Control-Key-c> +view-restart=<Key-F6> open-class-browser=<Alt-Key-c> open-module=<Alt-Key-m> open-new-window=<Control-Key-n> @@ -67,6 +68,7 @@ end-of-file=<Control-Key-d> history-next=<Alt-Key-n> <Meta-Key-n> history-previous=<Alt-Key-p> <Meta-Key-p> interrupt-execution=<Control-Key-c> +view-restart=<Key-F6> open-class-browser=<Control-Key-x><Control-Key-b> open-module=<Control-Key-x><Control-Key-m> open-new-window=<Control-Key-x><Control-Key-n> @@ -116,6 +118,7 @@ python-context-help=<Shift-Key-F1> history-next=<Control-Key-n> history-previous=<Control-Key-p> interrupt-execution=<Control-Key-c> +view-restart=<Key-F6> open-class-browser=<Command-Key-b> open-module=<Command-Key-m> open-new-window=<Command-Key-n> diff --git a/Lib/idlelib/configHandler.py b/Lib/idlelib/configHandler.py index 71558a8..cf2b6db 100644 --- a/Lib/idlelib/configHandler.py +++ b/Lib/idlelib/configHandler.py @@ -508,6 +508,7 @@ class IdleConf: '<<history-next>>': ['<Alt-n>'], '<<history-previous>>': ['<Alt-p>'], '<<interrupt-execution>>': ['<Control-c>'], + '<<view-restart>>': ['<F6>'], '<<open-class-browser>>': ['<Alt-c>'], '<<open-module>>': ['<Alt-m>'], '<<open-new-window>>': ['<Control-n>'], diff --git a/Lib/idlelib/help.txt b/Lib/idlelib/help.txt index dfba6c0..5d4acd0 100644 --- a/Lib/idlelib/help.txt +++ b/Lib/idlelib/help.txt @@ -1,4 +1,4 @@ -[See end for ** TIPS ] +[See end for ** TIPS on using IDLE] Click on the dotted line at the top of a menu to "tear it off": a separate window containing the menu is created. @@ -11,7 +11,7 @@ File Menu: Open Module... -- open an existing module (searches sys.path) Class Browser -- show classes and methods in current file Path Browser -- show sys.path directories, modules, classes - and methods + and methods --- Save -- save current window to the associated file (unsaved windows have a * before and after the window title) @@ -64,7 +64,18 @@ Run Menu (only in Edit window): Check Module -- Run a syntax check on the module Run Script -- Execute the current file in the __main__ namespace -Settings Menu: +Shell Menu (only in Shell window): + + View Last Restart -- Scroll the shell window to the last restart + Restart Shell -- Restart the interpreter with a fresh environment + --- + Go to File/Line -- look around the insert point for a filename + and linenumber, open the file, and show the line + Debugger (toggle) -- Run commands in the shell under the debugger + Stack Viewer -- show the stack traceback of the last exception + Auto-open Stack Viewer (toggle) -- Open stack viewer on traceback + +Options Menu: Configure IDLE -- Open a configuration dialog. Fonts, indentation, keybindings, and color themes may be altered. @@ -81,20 +92,11 @@ Windows Menu: select one to bring it to the foreground (deiconifying it if necessary). -Debug Menu (in the Python Shell window only): - - Go to File/Line -- look around the insert point for a filename - and linenumber, open the file, and show the line - Stack Viewer -- show the stack traceback of the last exception - Debugger (toggle) -- Run commands in the shell under the debugger - Auto-open Stack Viewer (toggle) -- Open stack viewer on traceback - Help Menu: IDLE Help -- Display this file Python Documentation -- Access local Python documentation, if installed. Otherwise access python.org. - Advice -- Emergency Only! IDLE Readme -- Background discussion and change details --- About IDLE --- Version, copyright, license, credits |