1 README.txt: an index to idlelib files and the IDLE menu. 2 3 IDLE is Python's Integrated Development and Learning 4 Environment. The user documentation is part of the Library Reference and 5 is available in IDLE by selecting Help => IDLE Help. This README documents 6 idlelib for IDLE developers and curious users. 7 8 IDLELIB FILES lists files alphabetically by category, 9 with a short description of each. 10 11 IDLE MENU show the menu tree, annotated with the module 12 or module object that implements the corresponding function. 13 14 This file is descriptive, not prescriptive, and may have errors 15 and omissions and lag behind changes in idlelib. 16 17 18 IDLELIB FILES 19 Implemetation files not in IDLE MENU are marked (nim). 20 Deprecated files and objects are listed separately as the end. 21 22 Startup 23 ------- 24 __init__.py # import, does nothing 25 __main__.py # -m, starts IDLE 26 idle.bat 27 idle.py 28 idle.pyw 29 30 Implementation 31 -------------- 32 AutoComplete.py # Complete attribute names or filenames. 33 AutoCompleteWindow.py # Display completions. 34 AutoExpand.py # Expand word with previous word in file. 35 Bindings.py # Define most of IDLE menu. 36 CallTipWindow.py # Display calltip. 37 CallTips.py # Create calltip text. 38 ClassBrowser.py # Create module browser window. 39 CodeContext.py # Show compound statement headers otherwise not visible. 40 ColorDelegator.py # Colorize text (nim). 41 Debugger.py # Debug code run from editor; show window. 42 Delegator.py # Define base class for delegators (nim). 43 EditorWindow.py # Define most of editor and utility functions. 44 FileList.py # Open files and manage list of open windows (nim). 45 FormatParagraph.py# Re-wrap multiline strings and comments. 46 GrepDialog.py # Find all occurrences of pattern in multiple files. 47 HyperParser.py # Parse code around a given index. 48 IOBinding.py # Open, read, and write files 49 IdleHistory.py # Get previous or next user input in shell (nim) 50 MultiCall.py # Wrap tk widget to allow multiple calls per event (nim). 51 MultiStatusBar.py # Define status bar for windows (nim). 52 ObjectBrowser.py # Define class used in StackViewer (nim). 53 OutputWindow.py # Create window for grep output. 54 ParenMatch.py # Match fenceposts: (), [], and {}. 55 PathBrowser.py # Create path browser window. 56 Percolator.py # Manage delegator stack (nim). 57 PyParse.py # Give information on code indentation 58 PyShell.py # Start IDLE, manage shell, complete editor window 59 RemoteDebugger.py # Debug code run in remote process. 60 RemoteObjectBrowser.py # Communicate objects between processes with rpc (nim). 61 ReplaceDialog.py # Search and replace pattern in text. 62 RstripExtension.py# Strip trailing whitespace 63 ScriptBinding.py # Check and run user code. 64 ScrolledList.py # Define ScrolledList widget for IDLE (nim). 65 SearchDialog.py # Search for pattern in text. 66 SearchDialogBase.py # Define base for search, replace, and grep dialogs. 67 SearchEngine.py # Define engine for all 3 search dialogs. 68 StackViewer.py # View stack after exception. 69 TreeWidget.py # Define tree widger, used in browsers (nim). 70 UndoDelegator.py # Manage undo stack. 71 WidgetRedirector.py # Intercept widget subcommands (for percolator) (nim). 72 WindowList.py # Manage window list and define listed top level. 73 ZoomHeight.py # Zoom window to full height of screen. 74 aboutDialog.py # Display About IDLE dialog. 75 configDialog.py # Display user configuration dialogs. 76 configHandler.py # Load, fetch, and save configuration (nim). 77 configHelpSourceEdit.py # Specify help source. 78 configSectionNameDialog.py # Spefify user config section name 79 dynOptionMenuWidget.py # define mutable OptionMenu widget (nim). 80 help.py # Display IDLE's html doc. 81 keybindingDialog.py # Change keybindings. 82 macosxSupport.py # Help IDLE run on Macs (nim). 83 rpc.py # Commuicate between idle and user processes (nim). 84 run.py # Manage user code execution subprocess. 85 tabbedpages.py # Define tabbed pages widget (nim). 86 textView.py # Define read-only text widget (nim). 87 88 Configuration 89 ------------- 90 config-extensions.def # Defaults for extensions 91 config-highlight.def # Defaults for colorizing 92 config-keys.def # Defaults for key bindings 93 config-main.def # Defai;ts fpr font and geneal 94 95 Text 96 ---- 97 CREDITS.txt # not maintained, displayed by About IDLE 98 HISTORY.txt # NEWS up to July 2001 99 NEWS.txt # commits, displayed by About IDLE 100 README.txt # this file, displeyed by About IDLE 101 TODO.txt # needs review 102 extend.txt # about writing extensions 103 help.html # copy of idle.html in docs, displayed by IDLE Help 104 105 Subdirectories 106 -------------- 107 Icons # small image files 108 idle_test # files for human test and automated unit tests 109 110 Unused and Deprecated files and objects (nim) 111 --------------------------------------------- 112 EditorWindow.py: Helpdialog and helpDialog 113 ToolTip.py: unused. 114 help.txt 115 idlever.py 116 117 118 IDLE MENUS 119 Top level items and most submenu items are defined in Bindings. 120 Extenstions add submenu items when active. The names given are 121 found, quoted, in one of these modules, paired with a '<<pseudoevent>>'. 122 Each pseudoevent is bound to an event handler. Some event handlers 123 call another function that does the actual work. The annotations below 124 are intended to at least give the module where the actual work is done. 125 126 File # IOBindig except as noted 127 New File 128 Open... # IOBinding.open 129 Open Module 130 Recent Files 131 Class Browser # Class Browser 132 Path Browser # Path Browser 133 --- 134 Save # IDBinding.save 135 Save As... # IOBinding.save_as 136 Save Copy As... # IOBindling.save_a_copy 137 --- 138 Print Window # IOBinding.print_window 139 --- 140 Close 141 Exit 142 143 Edit 144 Undo # undoDelegator 145 Redo # undoDelegator 146 --- 147 Cut 148 Copy 149 Paste 150 Select All 151 --- # Next 5 items use SearchEngine; dialogs use SearchDialogBase 152 Find # Search Dialog 153 Find Again 154 Find Selection 155 Find in Files... # GrepDialog 156 Replace... # ReplaceDialog 157 Go to Line 158 Show Completions # AutoComplete extension and AutoCompleteWidow (&HP) 159 Expand Word # AutoExpand extension 160 Show call tip # Calltips extension and CalltipWindow (& Hyperparser) 161 Show surrounding parens # ParenMatch (& Hyperparser) 162 163 Shell # PyShell 164 View Last Restart # PyShell.PyShell.view_restart_mark 165 Restart Shell # PyShell.PyShell.restart_shell 166 Interrupt Execution # pyshell.PyShell.cancel_callback 167 168 Debug (Shell only) 169 Go to File/Line 170 Debugger # Debugger, RemoteDebugger, PyShell.toggle_debuger 171 Stack Viewer # StackViewer, PyShell.open_stack_viewer 172 Auto-open Stack Viewer # StackViewer 173 174 Format (Editor only) 175 Indent Region 176 Dedent Region 177 Comment Out Region 178 Uncomment Region 179 Tabify Region 180 Untabify Region 181 Toggle Tabs 182 New Indent Width 183 Format Paragraph # FormatParagraph extension 184 --- 185 Strip tailing whitespace # RstripExtension extension 186 187 Run (Editor only) 188 Python Shell # PyShell 189 --- 190 Check Module # ScriptBinding 191 Run Module # ScriptBinding 192 193 Options 194 Configure IDLE # configDialog 195 (tabs in the dialog) 196 Font tab # onfig-main.def 197 Highlight tab # configSectionNameDialog, config-highlight.def 198 Keys tab # keybindingDialog, configSectionNameDialog, onfig-keus.def 199 General tab # configHelpSourceEdit, config-main.def 200 Configure Extensions # configDialog 201 Xyz tab # xyz.py, config-extensions.def 202 --- 203 Code Context (editor only) # CodeContext extension 204 205 Window 206 Zoomheight # ZoomHeight extension 207 --- 208 <open windows> # WindowList 209 210 Help 211 About IDLE # aboutDialog 212 --- 213 IDLE Help # help 214 Python Doc 215 Turtle Demo 216 --- 217 <other help sources> 218 219 <Context Menu> (right click) 220 Defined in EditorWindow, PyShell, Output 221 Cut 222 Copy 223 Paste 224 --- 225 Go to file/line (shell and output only) 226 Set Breakpoint (editor only) 227 Clear Breakpoint (editor only) 228 Defined in Debugger 229 Go to source line 230 Show stack frame 231