From 4cc5ef5dbe12cbc9dc1a00c7583ffd0117f4c31e Mon Sep 17 00:00:00 2001 From: "Kurt B. Kaiser" Date: Wed, 22 Jan 2003 00:23:23 +0000 Subject: [PATCH] M Bindings.py M PyShell.py M config-keys.def M configHandler.py 1. Clear any un-entered characters from input line before printing the restart boundary. 2. Restore the Debug menu: There are now both Shell and Debug menus. 3. Add Control-F6 keybinding to Restart Shell. 4. Clarify PyShell.cancel_check() comment. 5. Update doc string for Bindings.py and re-format the file slightly. --- Lib/idlelib/Bindings.py | 48 +++++++++++++++++++----------------- Lib/idlelib/PyShell.py | 6 +++-- Lib/idlelib/config-keys.def | 3 +++ Lib/idlelib/configHandler.py | 1 + 4 files changed, 34 insertions(+), 24 deletions(-) diff --git a/Lib/idlelib/Bindings.py b/Lib/idlelib/Bindings.py index abce56b802..16113abfbf 100644 --- a/Lib/idlelib/Bindings.py +++ b/Lib/idlelib/Bindings.py @@ -1,10 +1,13 @@ -# This file defines the menu contents and key bindings. Note that -# there is additional configuration information in the EditorWindow -# class (and subclasses): the menus are created there based on the -# menu_specs (class) variable, and menus not created are silently -# skipped by the code here. This makes it possible to define the -# Debug menu here, which is only present in the PythonShell window. +"""Define the menu contents, hotkeys, and event bindings. +There is additional configuration information in the EditorWindow class (and +subclasses): the menus are created there based on the menu_specs (class) +variable, and menus not created are silently skipped in the code here. This +makes it possible, for example, to define a Debug menu which is only present in +the PythonShell window, and a Format menu which is only present in the Editor +windows. + +""" import sys from configHandler import idleConf @@ -43,39 +46,40 @@ menudefs = [ ('Go to _Line', '<>'), ]), ('format', [ - ('_Indent Region', '<>'), - ('_Dedent Region', '<>'), - ('Comment _Out Region', '<>'), - ('U_ncomment Region', '<>'), - ('Tabify Region', '<>'), - ('Untabify Region', '<>'), - ('Toggle Tabs', '<>'), - ('New Indent Width', '<>'), -]), - ('run',[ + ('_Indent Region', '<>'), + ('_Dedent Region', '<>'), + ('Comment _Out Region', '<>'), + ('U_ncomment Region', '<>'), + ('Tabify Region', '<>'), + ('Untabify Region', '<>'), + ('Toggle Tabs', '<>'), + ('New Indent Width', '<>'), + ]), + ('run', [ ('Python Shell', '<>'), - ]), + ]), ('shell', [ ('_View Last Restart', '<>'), ('_Restart Shell', '<>'), - None, + ]), + ('debug', [ ('_Go to File/Line', '<>'), ('!_Debugger', '<>'), ('_Stack Viewer', '<>'), - ('!_Auto-open Stack Viewer', '<>' ), - ]), + ('!_Auto-open Stack Viewer', '<>'), + ]), ('options', [ ('_Configure IDLE...', '<>'), None, ('Revert to _Default Settings', '<>'), - ]), + ]), ('help', [ ('_About IDLE', '<>'), ('IDLE _Readme', '<>'), None, ('_IDLE Help', '<>'), ('Python _Docs', '<>'), - ]), + ]), ] default_keydefs = idleConf.GetCurrentKeySet() diff --git a/Lib/idlelib/PyShell.py b/Lib/idlelib/PyShell.py index 77e4cf1e01..9c5152679b 100644 --- a/Lib/idlelib/PyShell.py +++ b/Lib/idlelib/PyShell.py @@ -368,6 +368,7 @@ class ModifiedInterpreter(InteractiveInterpreter): self.transfer_path() # annotate restart in shell window and mark it console = self.tkconsole + console.text.delete("iomark", "end-1c") halfbar = ((int(console.width) - 16) // 2) * '=' console.write(halfbar + ' RESTART ' + halfbar) console.text.mark_set("restart", "end-1c") @@ -659,6 +660,7 @@ class PyShell(OutputWindow): ("file", "_File"), ("edit", "_Edit"), ("shell", "_Shell"), + ("debug", "_Debug"), ("options", "_Options"), ("windows", "_Windows"), ("help", "_Help"), @@ -1007,8 +1009,8 @@ class PyShell(OutputWindow): # Hack -- use the debugger hooks to be able to handle events # and interrupt execution at any time. # This slows execution down quite a bit, so you may want to - # disable this (by not calling settrace() in runcode() above) - # for full-bore (uninterruptable) speed. + # disable this (by not calling settrace() in beginexecuting() and + # endexecuting() for full-bore (uninterruptable) speed.) # XXX This should become a user option. if self.canceled: return diff --git a/Lib/idlelib/config-keys.def b/Lib/idlelib/config-keys.def index 3e03ad7df8..4f2be59f8a 100644 --- a/Lib/idlelib/config-keys.def +++ b/Lib/idlelib/config-keys.def @@ -23,6 +23,7 @@ history-next= history-previous= interrupt-execution= view-restart= +restart-shell= open-class-browser= open-module= open-new-window= @@ -69,6 +70,7 @@ history-next= history-previous= interrupt-execution= view-restart= +restart-shell= open-class-browser= open-module= open-new-window= @@ -119,6 +121,7 @@ history-next= history-previous= interrupt-execution= view-restart= +restart-shell= open-class-browser= open-module= open-new-window= diff --git a/Lib/idlelib/configHandler.py b/Lib/idlelib/configHandler.py index 22e83a6424..dac9d107ca 100644 --- a/Lib/idlelib/configHandler.py +++ b/Lib/idlelib/configHandler.py @@ -522,6 +522,7 @@ class IdleConf: '<>': [''], '<>': [''], '<>': [''], + '<>': [''], '<>': [''], '<>': [''], '<>': [''], -- 2.40.0