Terry Jan Reedy | 195fc2f | 2015-10-02 23:22:54 -0400 | [diff] [blame] | 1 | README.txt: an index to idlelib files and the IDLE menu. |
Steven M. Gava | d39993e | 2001-07-20 01:36:49 +0000 | [diff] [blame] | 2 | |
Terry Jan Reedy | 6f3d5da | 2015-12-18 15:46:52 -0500 | [diff] [blame] | 3 | IDLE is Python's Integrated Development and Learning |
Terry Jan Reedy | 195fc2f | 2015-10-02 23:22:54 -0400 | [diff] [blame] | 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. |
Steven M. Gava | d39993e | 2001-07-20 01:36:49 +0000 | [diff] [blame] | 7 | |
Terry Jan Reedy | 195fc2f | 2015-10-02 23:22:54 -0400 | [diff] [blame] | 8 | IDLELIB FILES lists files alphabetically by category, |
| 9 | with a short description of each. |
Kurt B. Kaiser | 5ddef75 | 2003-06-01 01:11:14 +0000 | [diff] [blame] | 10 | |
Terry Jan Reedy | 195fc2f | 2015-10-02 23:22:54 -0400 | [diff] [blame] | 11 | IDLE MENU show the menu tree, annotated with the module |
| 12 | or module object that implements the corresponding function. |
Kurt B. Kaiser | f5934dd | 2002-12-31 17:56:18 +0000 | [diff] [blame] | 13 | |
Terry Jan Reedy | 195fc2f | 2015-10-02 23:22:54 -0400 | [diff] [blame] | 14 | This file is descriptive, not prescriptive, and may have errors |
| 15 | and omissions and lag behind changes in idlelib. |
Kurt B. Kaiser | 1821056 | 2003-06-12 03:51:27 +0000 | [diff] [blame] | 16 | |
| 17 | |
Terry Jan Reedy | 195fc2f | 2015-10-02 23:22:54 -0400 | [diff] [blame] | 18 | IDLELIB FILES |
| 19 | Implemetation files not in IDLE MENU are marked (nim). |
| 20 | Deprecated files and objects are listed separately as the end. |
Kurt B. Kaiser | 1821056 | 2003-06-12 03:51:27 +0000 | [diff] [blame] | 21 | |
Terry Jan Reedy | 195fc2f | 2015-10-02 23:22:54 -0400 | [diff] [blame] | 22 | Startup |
| 23 | ------- |
| 24 | __init__.py # import, does nothing |
| 25 | __main__.py # -m, starts IDLE |
| 26 | idle.bat |
| 27 | idle.py |
| 28 | idle.pyw |
Kurt B. Kaiser | 1821056 | 2003-06-12 03:51:27 +0000 | [diff] [blame] | 29 | |
Terry Jan Reedy | 195fc2f | 2015-10-02 23:22:54 -0400 | [diff] [blame] | 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). |
Kurt B. Kaiser | 1821056 | 2003-06-12 03:51:27 +0000 | [diff] [blame] | 87 | |
Terry Jan Reedy | 195fc2f | 2015-10-02 23:22:54 -0400 | [diff] [blame] | 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 |
Kurt B. Kaiser | 1821056 | 2003-06-12 03:51:27 +0000 | [diff] [blame] | 94 | |
Terry Jan Reedy | 195fc2f | 2015-10-02 23:22:54 -0400 | [diff] [blame] | 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 |
Kurt B. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 104 | |
Terry Jan Reedy | 195fc2f | 2015-10-02 23:22:54 -0400 | [diff] [blame] | 105 | Subdirectories |
| 106 | -------------- |
| 107 | Icons # small image files |
| 108 | idle_test # files for human test and automated unit tests |
Kurt B. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 109 | |
Terry Jan Reedy | 195fc2f | 2015-10-02 23:22:54 -0400 | [diff] [blame] | 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.? |
| 165 | Restart Shell # PyShell.? |
| 166 | |
| 167 | Debug (Shell only) |
| 168 | Go to File/Line |
| 169 | Debugger # Debugger, RemoteDebugger |
| 170 | Stack Viewer # StackViewer |
| 171 | Auto-open Stack Viewer # StackViewer |
| 172 | |
| 173 | Format (Editor only) |
| 174 | Indent Region |
| 175 | Dedent Region |
| 176 | Comment Out Region |
| 177 | Uncomment Region |
| 178 | Tabify Region |
| 179 | Untabify Region |
| 180 | Toggle Tabs |
| 181 | New Indent Width |
| 182 | Format Paragraph # FormatParagraph extension |
| 183 | --- |
| 184 | Strip tailing whitespace # RstripExtension extension |
| 185 | |
| 186 | Run (Editor only) |
| 187 | Python Shell # PyShell |
| 188 | --- |
| 189 | Check Module # ScriptBinding |
| 190 | Run Module # ScriptBinding |
| 191 | |
| 192 | Options |
| 193 | Configure IDLE # configDialog |
| 194 | (tabs in the dialog) |
| 195 | Font tab # onfig-main.def |
| 196 | Highlight tab # configSectionNameDialog, config-highlight.def |
| 197 | Keys tab # keybindingDialog, configSectionNameDialog, onfig-keus.def |
| 198 | General tab # configHelpSourceEdit, config-main.def |
| 199 | Configure Extensions # configDialog |
| 200 | Xyz tab # xyz.py, config-extensions.def |
| 201 | --- |
| 202 | Code Context (editor only) # CodeContext extension |
| 203 | |
| 204 | Window |
| 205 | Zoomheight # ZoomHeight extension |
| 206 | --- |
| 207 | <open windows> # WindowList |
| 208 | |
| 209 | Help |
| 210 | About IDLE # aboutDialog |
| 211 | --- |
| 212 | IDLE Help # help |
| 213 | Python Doc |
| 214 | Turtle Demo |
| 215 | --- |
| 216 | <other help sources> |
| 217 | |
| 218 | <Context Menu> (right click) |
| 219 | Defined in EditorWindow, PyShell, Output |
| 220 | Cut |
| 221 | Copy |
| 222 | Paste |
| 223 | --- |
| 224 | Go to file/line (shell and output only) |
| 225 | Set Breakpoint (editor only) |
| 226 | Clear Breakpoint (editor only) |
| 227 | Defined in Debugger |
| 228 | Go to source line |
| 229 | Show stack frame |