summaryrefslogtreecommitdiffstats
path: root/Lib/idlelib/README.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/idlelib/README.txt')
-rw-r--r--Lib/idlelib/README.txt289
1 files changed, 229 insertions, 60 deletions
diff --git a/Lib/idlelib/README.txt b/Lib/idlelib/README.txt
index 7f4a66d..b5663c2 100644
--- a/Lib/idlelib/README.txt
+++ b/Lib/idlelib/README.txt
@@ -1,60 +1,229 @@
-IDLE is Python's Tkinter-based Integrated DeveLopment Environment.
-
-IDLE emphasizes a lightweight, clean design with a simple user interface.
-Although it is suitable for beginners, even advanced users will find that
-IDLE has everything they really need to develop pure Python code.
-
-IDLE features a multi-window text editor with multiple undo, Python colorizing,
-and many other capabilities, e.g. smart indent, call tips, and autocompletion.
-
-The editor has comprehensive search functions, including searching through
-multiple files. Class browsers and path browsers provide fast access to
-code objects from a top level viewpoint without dealing with code folding.
-
-There is a Python Shell window which features colorizing and command recall.
-
-IDLE executes Python code in a separate process, which is restarted for each
-Run (F5) initiated from an editor window. The environment can also be
-restarted from the Shell window without restarting IDLE.
-
-This enhancement has often been requested, and is now finally available. The
-magic "reload/import *" incantations are no longer required when editing and
-testing a module two or three steps down the import chain.
-
-(Personal firewall software may warn about the connection IDLE makes to its
-subprocess using this computer's internal loopback interface. This connection
-is not visible on any external interface and no data is sent to or received
-from the Internet.)
-
-It is possible to interrupt tightly looping user code, even on Windows.
-
-Applications which cannot support subprocesses and/or sockets can still run
-IDLE in a single process.
-
-IDLE has an integrated debugger with stepping, persistent breakpoints, and call
-stack visibility.
-
-There is a GUI configuration manager which makes it easy to select fonts,
-colors, keybindings, and startup options. This facility includes a feature
-which allows the user to specify additional help sources, either locally or on
-the web.
-
-IDLE is coded in 100% pure Python, using the Tkinter GUI toolkit (Tk/Tcl)
-and is cross-platform, working on Unix, Mac, and Windows.
-
-IDLE accepts command line arguments. Try idle -h to see the options.
-
-
-If you find bugs or have suggestions or patches, let us know about
-them by using the Python issue tracker:
-
-http://bugs.python.org
-
-For further details and links, read the Help files and check the IDLE home
-page at
-
-http://www.python.org/idle/
-
-There is a mail list for IDLE: idle-dev@python.org. You can join at
-
-http://mail.python.org/mailman/listinfo/idle-dev
+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