Name |
Date |
Size |
#Lines |
LOC |
||
---|---|---|---|---|---|---|
.. | - | - | ||||
Icons/ | 03-May-2024 | - | 14 | 8 | ||
idle_test/ | 03-May-2024 | - | 13,935 | 10,448 | ||
CREDITS.txt | D | 03-May-2024 | 1.8 KiB | 38 | 27 | |
ChangeLog | D | 03-May-2024 | 55 KiB | 1,592 | 1,068 | |
HISTORY.txt | D | 03-May-2024 | 10.1 KiB | 297 | 193 | |
NEWS.txt | D | 03-May-2024 | 52 KiB | 1,300 | 915 | |
NEWS2x.txt | D | 03-May-2024 | 26.5 KiB | 661 | 441 | |
README.txt | D | 03-May-2024 | 9.5 KiB | 253 | 221 | |
TODO.txt | D | 03-May-2024 | 8.3 KiB | 211 | 162 | |
__init__.py | D | 03-May-2024 | 396 | 11 | 8 | |
__main__.py | D | 03-May-2024 | 159 | 9 | 6 | |
autocomplete.py | D | 03-May-2024 | 9.1 KiB | 229 | 182 | |
autocomplete_w.py | D | 03-May-2024 | 20.6 KiB | 503 | 376 | |
autoexpand.py | D | 03-May-2024 | 3.1 KiB | 97 | 83 | |
browser.py | D | 03-May-2024 | 8.1 KiB | 250 | 196 | |
calltip.py | D | 03-May-2024 | 7.1 KiB | 206 | 148 | |
calltip_w.py | D | 03-May-2024 | 7 KiB | 202 | 153 | |
codecontext.py | D | 03-May-2024 | 11.2 KiB | 271 | 212 | |
colorizer.py | D | 03-May-2024 | 14.4 KiB | 385 | 317 | |
config-extensions.def | D | 03-May-2024 | 2.2 KiB | 63 | 56 | |
config-highlight.def | D | 03-May-2024 | 2.8 KiB | 106 | 102 | |
config-keys.def | D | 03-May-2024 | 10.7 KiB | 310 | 304 | |
config-main.def | D | 03-May-2024 | 3.1 KiB | 94 | 85 | |
config.py | D | 03-May-2024 | 37.3 KiB | 912 | 767 | |
config_key.py | D | 03-May-2024 | 14.2 KiB | 328 | 280 | |
configdialog.py | D | 03-May-2024 | 103.3 KiB | 2,415 | 2,012 | |
debugger.py | D | 03-May-2024 | 18.7 KiB | 551 | 423 | |
debugger_r.py | D | 03-May-2024 | 11.9 KiB | 394 | 272 | |
debugobj.py | D | 03-May-2024 | 4 KiB | 143 | 119 | |
debugobj_r.py | D | 03-May-2024 | 1.1 KiB | 42 | 28 | |
delegator.py | D | 03-May-2024 | 1 KiB | 34 | 24 | |
dynoption.py | D | 03-May-2024 | 2 KiB | 59 | 48 | |
editor.py | D | 03-May-2024 | 64.4 KiB | 1,674 | 1,316 | |
extend.txt | D | 03-May-2024 | 3.5 KiB | 84 | 65 | |
filelist.py | D | 03-May-2024 | 3.8 KiB | 132 | 111 | |
format.py | D | 03-May-2024 | 15.4 KiB | 427 | 340 | |
grep.py | D | 03-May-2024 | 7.3 KiB | 222 | 179 | |
help.html | D | 03-May-2024 | 68 KiB | 1,022 | 980 | |
help.py | D | 03-May-2024 | 11.6 KiB | 295 | 248 | |
help_about.py | D | 03-May-2024 | 8.9 KiB | 212 | 173 | |
history.py | D | 03-May-2024 | 4 KiB | 107 | 93 | |
hyperparser.py | D | 03-May-2024 | 12.6 KiB | 313 | 204 | |
idle.bat | D | 03-May-2024 | 177 | 5 | 4 | |
idle.py | D | 03-May-2024 | 454 | 15 | 7 | |
idle.pyw | D | 03-May-2024 | 570 | 18 | 17 | |
iomenu.py | D | 03-May-2024 | 15.5 KiB | 438 | 366 | |
macosx.py | D | 03-May-2024 | 9.4 KiB | 288 | 205 | |
mainmenu.py | D | 03-May-2024 | 3.8 KiB | 126 | 102 | |
multicall.py | D | 03-May-2024 | 18.2 KiB | 449 | 354 | |
outwin.py | D | 03-May-2024 | 5.6 KiB | 188 | 141 | |
parenmatch.py | D | 03-May-2024 | 7 KiB | 184 | 137 | |
pathbrowser.py | D | 03-May-2024 | 3.1 KiB | 112 | 90 | |
percolator.py | D | 03-May-2024 | 3.5 KiB | 119 | 92 | |
pyparse.py | D | 03-May-2024 | 19.4 KiB | 590 | 421 | |
pyshell.py | D | 03-May-2024 | 61.4 KiB | 1,713 | 1,382 | |
query.py | D | 03-May-2024 | 14.7 KiB | 393 | 314 | |
redirector.py | D | 03-May-2024 | 6.7 KiB | 175 | 138 | |
replace.py | D | 03-May-2024 | 9.8 KiB | 308 | 260 | |
rpc.py | D | 03-May-2024 | 20.6 KiB | 636 | 513 | |
run.py | D | 03-May-2024 | 21 KiB | 643 | 524 | |
runscript.py | D | 03-May-2024 | 8.1 KiB | 214 | 177 | |
scrolledlist.py | D | 03-May-2024 | 4.4 KiB | 150 | 118 | |
search.py | D | 03-May-2024 | 5.4 KiB | 165 | 133 | |
searchbase.py | D | 03-May-2024 | 7.7 KiB | 211 | 174 | |
searchengine.py | D | 03-May-2024 | 7.2 KiB | 235 | 194 | |
sidebar.py | D | 03-May-2024 | 19.9 KiB | 545 | 405 | |
squeezer.py | D | 03-May-2024 | 12.5 KiB | 346 | 234 | |
stackviewer.py | D | 03-May-2024 | 4.3 KiB | 156 | 125 | |
statusbar.py | D | 03-May-2024 | 1.4 KiB | 51 | 40 | |
textview.py | D | 03-May-2024 | 6.7 KiB | 194 | 149 | |
tooltip.py | D | 03-May-2024 | 6.4 KiB | 187 | 138 | |
tree.py | D | 03-May-2024 | 16 KiB | 501 | 405 | |
undo.py | D | 03-May-2024 | 10.8 KiB | 367 | 260 | |
util.py | D | 03-May-2024 | 721 | 23 | 17 | |
window.py | D | 03-May-2024 | 2.6 KiB | 99 | 71 | |
zoomheight.py | D | 03-May-2024 | 4.1 KiB | 125 | 73 | |
zzdummy.py | D | 03-May-2024 | 2 KiB | 74 | 53 |
README.txt
1README.txt: an index to idlelib files and the IDLE menu. 2 3IDLE is Python's Integrated Development and Learning 4Environment. The user documentation is part of the Library Reference and 5is available in IDLE by selecting Help => IDLE Help. This README documents 6idlelib for IDLE developers and curious users. 7 8IDLELIB FILES lists files alphabetically by category, 9with a short description of each. 10 11IDLE MENU show the menu tree, annotated with the module 12or module object that implements the corresponding function. 13 14This file is descriptive, not prescriptive, and may have errors 15and omissions and lag behind changes in idlelib. 16 17 18IDLELIB FILES 19Implementation files not in IDLE MENU are marked (nim). 20Deprecated files and objects are listed separately as the end. 21 22Startup 23------- 24__init__.py # import, does nothing 25__main__.py # -m, starts IDLE 26idle.bat 27idle.py 28idle.pyw 29 30Implementation 31-------------- 32autocomplete.py # Complete attribute names or filenames. 33autocomplete_w.py # Display completions. 34autoexpand.py # Expand word with previous word in file. 35browser.py # Create module browser window. 36calltip_w.py # Display calltip. 37calltips.py # Create calltip text. 38codecontext.py # Show compound statement headers otherwise not visible. 39colorizer.py # Colorize text (nim) 40config.py # Load, fetch, and save configuration (nim). 41configdialog.py # Display user configuration dialogs. 42config_help.py # Specify help source in configdialog. 43config_key.py # Change keybindings. 44dynoption.py # Define mutable OptionMenu widget (nim). 45debugobj.py # Define class used in stackviewer. 46debugobj_r.py # Communicate objects between processes with rpc (nim). 47debugger.py # Debug code run from shell or editor; show window. 48debugger_r.py # Debug code run in remote process. 49delegator.py # Define base class for delegators (nim). 50editor.py # Define most of editor and utility functions. 51filelist.py # Open files and manage list of open windows (nim). 52grep.py # Find all occurrences of pattern in multiple files. 53help.py # Display IDLE's html doc. 54help_about.py # Display About IDLE dialog. 55history.py # Get previous or next user input in shell (nim) 56hyperparser.py # Parse code around a given index. 57iomenu.py # Open, read, and write files 58macosx.py # Help IDLE run on Macs (nim). 59mainmenu.py # Define most of IDLE menu. 60multicall.py # Wrap tk widget to allow multiple calls per event (nim). 61outwin.py # Create window for grep output. 62paragraph.py # Re-wrap multiline strings and comments. 63parenmatch.py # Match fenceposts: (), [], and {}. 64pathbrowser.py # Create path browser window. 65percolator.py # Manage delegator stack (nim). 66pyparse.py # Give information on code indentation 67pyshell.py # Start IDLE, manage shell, complete editor window 68query.py # Query user for information 69redirector.py # Intercept widget subcommands (for percolator) (nim). 70replace.py # Search and replace pattern in text. 71rpc.py # Communicate between idle and user processes (nim). 72rstrip.py # Strip trailing whitespace. 73run.py # Manage user code execution subprocess. 74runscript.py # Check and run user code. 75scrolledlist.py # Define scrolledlist widget for IDLE (nim). 76search.py # Search for pattern in text. 77searchbase.py # Define base for search, replace, and grep dialogs. 78searchengine.py # Define engine for all 3 search dialogs. 79stackviewer.py # View stack after exception. 80statusbar.py # Define status bar for windows (nim). 81tabbedpages.py # Define tabbed pages widget (nim). 82textview.py # Define read-only text widget (nim). 83tree.py # Define tree widget, used in browsers (nim). 84undo.py # Manage undo stack. 85util.py # Define objects imported elsewhere with no dependencies (nim) 86windows.py # Manage window list and define listed top level. 87zoomheight.py # Zoom window to full height of screen. 88 89Configuration 90------------- 91config-extensions.def # Defaults for extensions 92config-highlight.def # Defaults for colorizing 93config-keys.def # Defaults for key bindings 94config-main.def # Defaults for font and general tabs 95 96Text 97---- 98CREDITS.txt # not maintained, displayed by About IDLE 99HISTORY.txt # NEWS up to July 2001 100NEWS.txt # commits, displayed by About IDLE 101README.txt # this file, displayed by About IDLE 102TODO.txt # needs review 103extend.txt # about writing extensions 104help.html # copy of idle.html in docs, displayed by IDLE Help 105 106Subdirectories 107-------------- 108Icons # small image files 109idle_test # files for human test and automated unit tests 110 111Unused and Deprecated files and objects (nim) 112--------------------------------------------- 113tooltip.py # unused 114 115 116 117IDLE MENUS 118Top level items and most submenu items are defined in mainmenu. 119Extensions add submenu items when active. The names given are 120found, quoted, in one of these modules, paired with a '<<pseudoevent>>'. 121Each pseudoevent is bound to an event handler. Some event handlers 122call another function that does the actual work. The annotations below 123are intended to at least give the module where the actual work is done. 124'eEW' = editor.EditorWindow 125 126File 127 New File # eEW.new_callback 128 Open... # iomenu.open 129 Open Module # eEw.open_module 130 Recent Files 131 Class Browser # eEW.open_class_browser, browser.ClassBrowser 132 Path Browser # eEW.open_path_browser, pathbrowser 133 --- 134 Save # iomenu.save 135 Save As... # iomenu.save_as 136 Save Copy As... # iomenu.save_a_copy 137 --- 138 Print Window # iomenu.print_window 139 --- 140 Close # eEW.close_event 141 Exit # flist.close_all_callback (bound in eEW) 142 143Edit 144 Undo # undodelegator 145 Redo # undodelegator 146 --- # eEW.right_menu_event 147 Cut # eEW.cut 148 Copy # eEW.copy 149 Paste # eEW.past 150 Select All # eEW.select_all (+ see eEW.remove_selection) 151 --- # Next 5 items use searchengine; dialogs use searchbase 152 Find # eEW.find_event, search.SearchDialog.find 153 Find Again # eEW.find_again_event, sSD.find_again 154 Find Selection # eEW.find_selection_event, sSD.find_selection 155 Find in Files... # eEW.find_in_files_event, grep 156 Replace... # eEW.replace_event, replace.ReplaceDialog.replace 157 Go to Line # eEW.goto_line_event 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 163Shell # 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 168Debug (Shell only) 169 Go to File/Line 170 debugger # debugger, debugger_r, PyShell.toggle_debugger 171 Stack Viewer # stackviewer, PyShell.open_stack_viewer 172 Auto-open Stack Viewer # stackviewer 173 174Format (Editor only) 175 Indent Region # eEW.indent_region_event 176 Dedent Region # eEW.dedent_region_event 177 Comment Out Reg. # eEW.comment_region_event 178 Uncomment Region # eEW.uncomment_region_event 179 Tabify Region # eEW.tabify_region_event 180 Untabify Region # eEW.untabify_region_event 181 Toggle Tabs # eEW.toggle_tabs_event 182 New Indent Width # eEW.change_indentwidth_event 183 Format Paragraph # paragraph extension 184 --- 185 Strip tailing whitespace # rstrip extension 186 187Run (Editor only) 188 Python Shell # pyshell 189 --- 190 Check Module # runscript 191 Run Module # runscript 192 193Options 194 Configure IDLE # eEW.config_dialog, configdialog 195 (tabs in the dialog) 196 Font tab # config-main.def 197 Highlight tab # query, config-highlight.def 198 Keys tab # query, config_key, config_keys.def 199 General tab # config_help, config-main.def 200 Extensions tab # config-extensions.def, corresponding .py 201 --- 202 Code Context (ed)# codecontext extension 203 204Window 205 Zoomheight # zoomheight extension 206 --- 207 <open windows> # windows 208 209Help 210 About IDLE # eEW.about_dialog, help_about.AboutDialog 211 --- 212 IDLE Help # eEW.help_dialog, helpshow_idlehelp 213 Python Doc # eEW.python_docs 214 Turtle Demo # eEW.open_turtle_demo 215 --- 216 <other help sources> 217 218<Context Menu> (right click) 219 Defined in editor, PyShelpyshellut 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 230 231<No menu> 232Center Insert # eEW.center_insert_event 233 234 235CODE STYLE -- Generally PEP 8. 236 237import 238------ 239Put import at the top, unless there is a good reason otherwise. 240PEP 8 says to group stdlib, 3rd-party dependencies, and package imports. 241For idlelib, the groups are general stdlib, tkinter, and idlelib. 242Sort modules within each group, except that tkinter.ttk follows tkinter. 243Sort 'from idlelib import mod1' and 'from idlelib.mod2 import object' 244together by module, ignoring within module objects. 245Put 'import __main__' after other idlelib imports. 246 247Imports only needed for testing are put not at the top but in an 248htest function def or "if __name__ == '__main__'" clause. 249 250Within module imports like "from idlelib.mod import class" may cause 251circular imports to deadlock. Even without this, circular imports may 252require at least one of the imports to be delayed until a function call. 253