[See end for tips.]

Click on the dotted line at the top of a menu to "tear it off": a
separate window containing the menu is created.

File menu:

	New window -- create a new editing window
	Open... -- open an existing file
	Open module... -- open an existing module (searches sys.path)
	Class browser -- show classes and methods in current file
	Path browser -- show sys.path directories, modules, classes
		and methods
	---
	Save -- save current window to the associated file (unsaved
		windows have a * before and after the window title)

	Save As... -- save current window to new file, which becomes
		the associated file
	Save Copy As... -- save current window to different file
		without changing the associated file
	---
	Close -- close current window (asks to save if unsaved)
	Exit -- close all windows and quit IDLE (asks to save if unsaved)

Edit menu:

	Undo -- Undo last change to current window (max 1000 changes)
	Redo -- Redo last undone change to current window
	---
	Cut -- Copy selection into system-wide clipboard; then delete selection
	Copy -- Copy selection into system-wide clipboard
	Paste -- Insert system-wide clipboard into window
	Select All -- Select the entire contents of the edit buffer
	---
	Find... -- Open a search dialog box with many options
	Find again -- Repeat last search
	Find selection -- Search for the string in the selection
	Find in Files... -- Open a search dialog box for searching files
	Replace... -- Open a search-and-replace dialog box
	Go to line -- Ask for a line number and show that line
	---
	Indent region -- Shift selected lines right 4 spaces
	Dedent region -- Shift selected lines left 4 spaces
	Comment out region -- Insert ## in front of selected lines
	Uncomment region -- Remove leading # or ## from selected lines
	Tabify region -- Turns *leading* stretches of spaces into tabs
	Untabify region -- Turn *all* tabs into the right number of spaces
	Expand word -- Expand the word you have typed to match another
		word in the same buffer; repeat to get a different expansion
	Format Paragraph -- Reformat the current blank-line-separated paragraph
	---
	Import module -- Import or reload the current module
	Run script -- Execute the current file in the __main__ namespace

Windows menu:

	Zoom Height -- toggles the window between normal size (24x80)
	and maximum height.
	---
	The rest of this menu lists the names of all open windows;
	select one to bring it to the foreground (deiconifying it if
	necessary).

Debug menu (in the Python Shell window only):

	Go to file/line -- look around the insert point for a filename
		and linenumber, open the file, and show the line
	Open stack viewer -- show the stack traceback of the last exception
	Debugger toggle -- Run commands in the shell under the debugger
	JIT Stack viewer toggle -- Open stack viewer on traceback

Basic editing and navigation:

	Backspace deletes to the left; DEL deletes to the right
	Arrow keys and Page Up/Down to move around
	Home/End go to begin/end of line
	Control-Home/End go to begin/end of file
	Some Emacs bindings may also work, e.g. ^B/^P/^A/^E/^D/^L

Automatic indentation:

	After a block-opening statement, the next line is indented by
	4 spaces (in the Python Shell window by one tab).  After
	certain keywords (break, return etc.) the next line is
	dedented.  In leading indentation, Backspace deletes up to 4
	spaces if they are there.  Tab inserts 1-4 spaces (in the
	Python Shell window one tab).  See also the indent/dedent
	region commands in the edit menu.

Python Shell window:

	^C interrupts executing command
	^D sends end-of-file; closes window if typed at >>> prompt

    Command history:

	Alt-p retrieves previous command matching what you have typed
	Alt-n retrieves next
	Return while on any previous command retrieves that command
	Alt-/ (Expand word) is also useful here

Syntax colors:

	The coloring is applied in a background "thread", so you may
	occasionally see uncolorized text.  To change the color
	scheme, edit the ColorPrefs class in IdlePrefs.py.

    Python syntax colors:

	Keywords	orange
	Strings		green
	Comments	red
	Definitions	blue

    Shell colors:

	Console output	brown
	stdout		blue
	stderr		dark green
	stdin		black

Other preferences:

	To change the font on Windows, open EditorWindow.py and change
	    text['font'] = ("lucida console", 8)
	to, e.g.,
	    text['font'] = ("courier new", 10)

	To change keyboard bindings, edit Bindings.py

Command line usage:

	idle.py [-c command] [-d] [-e] [-s] [-t title] [arg] ...

	-c command  run this command
	-d          enable debugger
	-e          edit mode; arguments are files to be edited
	-s          run $IDLESTARTUP or $PYTHONSTARTUP first
	-t title    set title of shell window

	If there are arguments:

	    If -e is used, arguments are files opened for editing and
	    sys.argv reflects the arguments passed to IDLE itself.

	    Otherwise, if -c is used, all arguments are placed in
	    sys.argv[1:...], with sys.argv[0] set to '-c'.

	    Otherwise, if neither -e nor -c is used, the first
	    argument is a script which is executed with the remaining
	    arguments in sys.argv[1:...]  and sys.argv[0] set to the
	    script name.  If the script name is '-', no script is
	    executed but an interactive Python session is started; the
	    arguments are still available in sys.argv.
