blob: 7bf74c0fc4ad3edb8306e8d725cf335e987cbfde [file] [log] [blame]
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
Implemetation 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 '<<pseudoevent>>'.
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.?
Restart Shell # PyShell.?
Debug (Shell only)
Go to File/Line
Debugger # Debugger, RemoteDebugger
Stack Viewer # StackViewer
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
---
<open windows> # WindowList
Help
About IDLE # aboutDialog
---
IDLE Help # help
Python Doc
Turtle Demo
---
<other help sources>
<Context Menu> (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