README.txt: an index to idlelib files and the IDLE menu. IDLE is Python's Integrated Development and Learning Environment. The user documentation is part of the Library Reference and is available in IDLE by selecting Help => IDLE Help. This README documents idlelib for IDLE developers and curious users. IDLELIB FILES lists files alphabetically by category, with a short description of each. IDLE MENU show the menu tree, annotated with the module or module object that implements the corresponding function. This file is descriptive, not prescriptive, and may have errors and omissions and lag behind changes in idlelib. IDLELIB FILES Implementation files not in IDLE MENU are marked (nim). Deprecated files and objects are listed separately as the end. Startup ------- __init__.py # import, does nothing __main__.py # -m, starts IDLE idle.bat idle.py idle.pyw Implementation -------------- AutoComplete.py # Complete attribute names or filenames. AutoCompleteWindow.py # Display completions. AutoExpand.py # Expand word with previous word in file. Bindings.py # Define most of IDLE menu. CallTipWindow.py # Display calltip. CallTips.py # Create calltip text. ClassBrowser.py # Create module browser window. CodeContext.py # Show compound statement headers otherwise not visible. ColorDelegator.py # Colorize text (nim). Debugger.py # Debug code run from editor; show window. Delegator.py # Define base class for delegators (nim). EditorWindow.py # Define most of editor and utility functions. FileList.py # Open files and manage list of open windows (nim). FormatParagraph.py# Re-wrap multiline strings and comments. GrepDialog.py # Find all occurrences of pattern in multiple files. HyperParser.py # Parse code around a given index. IOBinding.py # Open, read, and write files IdleHistory.py # Get previous or next user input in shell (nim) MultiCall.py # Wrap tk widget to allow multiple calls per event (nim). MultiStatusBar.py # Define status bar for windows (nim). ObjectBrowser.py # Define class used in StackViewer (nim). OutputWindow.py # Create window for grep output. ParenMatch.py # Match fenceposts: (), [], and {}. PathBrowser.py # Create path browser window. Percolator.py # Manage delegator stack (nim). PyParse.py # Give information on code indentation PyShell.py # Start IDLE, manage shell, complete editor window RemoteDebugger.py # Debug code run in remote process. RemoteObjectBrowser.py # Communicate objects between processes with rpc (nim). ReplaceDialog.py # Search and replace pattern in text. RstripExtension.py# Strip trailing whitespace ScriptBinding.py # Check and run user code. ScrolledList.py # Define ScrolledList widget for IDLE (nim). SearchDialog.py # Search for pattern in text. SearchDialogBase.py # Define base for search, replace, and grep dialogs. SearchEngine.py # Define engine for all 3 search dialogs. StackViewer.py # View stack after exception. TreeWidget.py # Define tree widger, used in browsers (nim). UndoDelegator.py # Manage undo stack. WidgetRedirector.py # Intercept widget subcommands (for percolator) (nim). WindowList.py # Manage window list and define listed top level. ZoomHeight.py # Zoom window to full height of screen. aboutDialog.py # Display About IDLE dialog. configDialog.py # Display user configuration dialogs. configHandler.py # Load, fetch, and save configuration (nim). configHelpSourceEdit.py # Specify help source. configSectionNameDialog.py # Spefify user config section name dynOptionMenuWidget.py # define mutable OptionMenu widget (nim). help.py # Display IDLE's html doc. keybindingDialog.py # Change keybindings. macosxSupport.py # Help IDLE run on Macs (nim). rpc.py # Commuicate between idle and user processes (nim). run.py # Manage user code execution subprocess. tabbedpages.py # Define tabbed pages widget (nim). textView.py # Define read-only text widget (nim). Configuration ------------- config-extensions.def # Defaults for extensions config-highlight.def # Defaults for colorizing config-keys.def # Defaults for key bindings config-main.def # Defai;ts fpr font and geneal Text ---- CREDITS.txt # not maintained, displayed by About IDLE HISTORY.txt # NEWS up to July 2001 NEWS.txt # commits, displayed by About IDLE README.txt # this file, displeyed by About IDLE TODO.txt # needs review extend.txt # about writing extensions help.html # copy of idle.html in docs, displayed by IDLE Help Subdirectories -------------- Icons # small image files idle_test # files for human test and automated unit tests Unused and Deprecated files and objects (nim) --------------------------------------------- EditorWindow.py: Helpdialog and helpDialog ToolTip.py: unused. help.txt idlever.py IDLE MENUS Top level items and most submenu items are defined in Bindings. Extenstions add submenu items when active. The names given are found, quoted, in one of these modules, paired with a '<>'. Each pseudoevent is bound to an event handler. Some event handlers call another function that does the actual work. The annotations below are intended to at least give the module where the actual work is done. File # IOBindig except as noted New File Open... # IOBinding.open Open Module Recent Files Class Browser # Class Browser Path Browser # Path Browser --- Save # IDBinding.save Save As... # IOBinding.save_as Save Copy As... # IOBindling.save_a_copy --- Print Window # IOBinding.print_window --- Close Exit Edit Undo # undoDelegator Redo # undoDelegator --- Cut Copy Paste Select All --- # Next 5 items use SearchEngine; dialogs use SearchDialogBase Find # Search Dialog Find Again Find Selection Find in Files... # GrepDialog Replace... # ReplaceDialog Go to Line Show Completions # AutoComplete extension and AutoCompleteWidow (&HP) Expand Word # AutoExpand extension Show call tip # Calltips extension and CalltipWindow (& Hyperparser) Show surrounding parens # ParenMatch (& Hyperparser) Shell # PyShell View Last Restart # PyShell.PyShell.view_restart_mark Restart Shell # PyShell.PyShell.restart_shell Interrupt Execution # pyshell.PyShell.cancel_callback Debug (Shell only) Go to File/Line Debugger # Debugger, RemoteDebugger, PyShell.toggle_debuger Stack Viewer # StackViewer, PyShell.open_stack_viewer Auto-open Stack Viewer # StackViewer Format (Editor only) Indent Region Dedent Region Comment Out Region Uncomment Region Tabify Region Untabify Region Toggle Tabs New Indent Width Format Paragraph # FormatParagraph extension --- Strip tailing whitespace # RstripExtension extension Run (Editor only) Python Shell # PyShell --- Check Module # ScriptBinding Run Module # ScriptBinding Options Configure IDLE # configDialog (tabs in the dialog) Font tab # onfig-main.def Highlight tab # configSectionNameDialog, config-highlight.def Keys tab # keybindingDialog, configSectionNameDialog, onfig-keus.def General tab # configHelpSourceEdit, config-main.def Configure Extensions # configDialog Xyz tab # xyz.py, config-extensions.def --- Code Context (editor only) # CodeContext extension Window Zoomheight # ZoomHeight extension --- # WindowList Help About IDLE # aboutDialog --- IDLE Help # help Python Doc Turtle Demo --- (right click) Defined in EditorWindow, PyShell, Output Cut Copy Paste --- Go to file/line (shell and output only) Set Breakpoint (editor only) Clear Breakpoint (editor only) Defined in Debugger Go to source line Show stack frame