| [See the end of this file for ** TIPS ** on using IDLE !!] |
| |
| IDLE is the Python IDE built with the tkinter GUI toolkit. |
| |
| IDLE has the following features: |
| -coded in 100% pure Python, using the tkinter GUI toolkit |
| -cross-platform: works on Windows, Unix, and OS X |
| -multi-window text editor with multiple undo, Python colorizing, smart indent, |
| call tips, and many other features |
| -Python shell window (a.k.a interactive interpreter) |
| -debugger (not complete, but you can set breakpoints, view and step) |
| |
| Menus: |
| |
| IDLE has two window types the Shell window and the Editor window. It is |
| possible to have multiple editor windows simultaneously. IDLE's |
| menus dynamically change based on which window is currently selected. Each menu |
| documented below indicates which window type it is associated with. Click on |
| the dotted line at the top of a menu to "tear it off": a separate window |
| containing the menu is created (for Unix and Windows only). |
| |
| File Menu (Shell and Editor): |
| |
| New Window -- Create a new editing window |
| Open... -- Open an existing file |
| Open Module... -- Open an existing module (searches sys.path) |
| Recent Files... -- Open a list of recent files |
| 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 |
| --- |
| Print Window -- Print the current window |
| --- |
| Close -- Close current window (asks to save if unsaved) |
| Exit -- Close all windows, quit (asks to save if unsaved) |
| |
| Edit Menu (Shell and Editor): |
| |
| Undo -- Undo last change to current window |
| (a maximum of 1000 changes may be undone) |
| Redo -- Redo last undone change to current window |
| --- |
| Cut -- Copy a selection into system-wide clipboard, |
| then delete the 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 |
| Expand Word -- Expand the word you have typed to match another |
| word in the same buffer; repeat to get a |
| different expansion |
| Show Calltip -- After an unclosed parenthesis for a function, open |
| a small window with function parameter hints |
| Show Parens -- Highlight the surrounding parenthesis |
| Show Completions -- Open a scroll window allowing selection keywords |
| and attributes. (see '*TIPS*', below) |
| |
| Format Menu (Editor window only): |
| |
| Indent Region -- Shift selected lines right by the indent width |
| (default 4 spaces) |
| Dedent Region -- Shift selected lines left by the indent width |
| (default 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. |
| (Note: We recommend using 4 space blocks to indent Python code.) |
| Untabify Region -- Turn *all* tabs into the corrent number of spaces |
| Toggle tabs -- Open a dialog to switch between indenting with |
| spaces and tabs. |
| New Indent Width... -- Open a dialog to change indent width. The |
| accepted default by the Python community is 4 |
| spaces. |
| Format Paragraph -- Reformat the current blank-line-separated |
| paragraph. All lines in the paragraph will be |
| formatted to less than 80 columns. |
| --- |
| Strip trailing whitespace -- Removed any space characters after the end |
| of the last non-space character |
| |
| Run Menu (Editor window only): |
| |
| Python Shell -- Open or wake up the Python shell window |
| --- |
| Check Module -- Check the syntax of the module currently open in the |
| Editor window. If the module has not been saved IDLE |
| will prompt the user to save the code. |
| Run Module -- Restart the shell to clean the environment, then |
| execute the currently open module. If the module has |
| not been saved IDLE will prompt the user to save the |
| code. |
| |
| Shell Menu (Shell window only): |
| |
| View Last Restart -- Scroll the shell window to the last Shell restart |
| Restart Shell -- Restart the shell to clean the environment |
| |
| Debug Menu (Shell window only): |
| |
| Go to File/Line -- Look around the insert point for a filename |
| and line number, open the file, and show the line. |
| Useful to view the source lines referenced in an |
| exception traceback. Available in the context |
| menu of the Shell window. |
| Debugger (toggle) -- This feature is not complete and considered |
| experimental. Run commands in the shell under the |
| debugger. |
| Stack Viewer -- Show the stack traceback of the last exception |
| Auto-open Stack Viewer (toggle) -- Toggle automatically opening the |
| stack viewer on unhandled |
| exception |
| |
| Options Menu (Shell and Editor): |
| |
| Configure IDLE -- Open a configuration dialog. Fonts, indentation, |
| keybindings, and color themes may be altered. |
| Startup Preferences may be set, and additional Help |
| sources can be specified. |
| |
| --- |
| Code Context (toggle) -- Open a pane at the top of the edit window |
| which shows the block context of the section |
| of code which is scrolling off the top or the |
| window. This is not present in the Shell |
| window only the Editor window. |
| |
| Windows Menu (Shell and Editor): |
| |
| Zoom Height -- Toggles the window between normal size (40x80 initial |
| setting) and maximum height. The initial size is in the Configure |
| IDLE dialog under the general tab. |
| --- |
| The rest of this menu lists the names of all open windows; |
| select one to bring it to the foreground (deiconifying it if |
| necessary). |
| |
| Help Menu: |
| |
| About IDLE -- Version, copyright, license, credits |
| --- |
| IDLE Help -- Display this file which is a help file for IDLE |
| detailing the menu options, basic editing and navigation, |
| and other tips. |
| Python Docs -- Access local Python documentation, if |
| installed. Or will start a web browser and open |
| docs.python.org showing the latest Python documentation. |
| --- |
| Additional help sources may be added here with the Configure IDLE |
| dialog under the General tab. |
| |
| Editor context menu (Right-click / Control-click on OS X in Edit window): |
| |
| Cut -- Copy a selection into system-wide clipboard, |
| then delete the selection |
| Copy -- Copy selection into system-wide clipboard |
| Paste -- Insert system-wide clipboard into window |
| Set Breakpoint -- Sets a breakpoint. Breakpoints are only enabled |
| when the debugger is open. |
| Clear Breakpoint -- Clears the breakpoint on that line |
| |
| Shell context menu (Right-click / Control-click on OS X in Shell window): |
| |
| Cut -- Copy a selection into system-wide clipboard, |
| then delete the selection |
| Copy -- Copy selection into system-wide clipboard |
| Paste -- Insert system-wide clipboard into window |
| --- |
| Go to file/line -- Same as in Debug menu |
| |
| |
| ** TIPS ** |
| ========== |
| |
| Additional Help Sources: |
| |
| Windows users can Google on zopeshelf.chm to access Zope help files in |
| the Windows help format. The Additional Help Sources feature of the |
| configuration GUI supports .chm, along with any other filetypes |
| supported by your browser. Supply a Menu Item title, and enter the |
| location in the Help File Path slot of the New Help Source dialog. Use |
| http:// and/or www. to identify external URLs, or download the file and |
| browse for its path on your machine using the Browse button. |
| |
| All users can access the extensive sources of help, including |
| tutorials, available at docs.python.org. Selected URLs can be added |
| or removed from the Help menu at any time using Configure IDLE. |
| |
| Basic editing and navigation: |
| |
| Backspace deletes char to the left; DEL deletes char to the right. |
| Control-backspace deletes word left, Control-DEL deletes word right. |
| Arrow keys and Page Up/Down move around. |
| Control-left/right Arrow moves by words in a strange but useful way. |
| Home/End go to begin/end of line. |
| Control-Home/End go to begin/end of file. |
| Some useful Emacs bindings are inherited from Tcl/Tk: |
| Control-a beginning of line |
| Control-e end of line |
| Control-k kill line (but doesn't put it in clipboard) |
| Control-l center window around the insertion point |
| Standard keybindings (like Control-c to copy and Control-v to |
| paste) may work. Keybindings are selected in the Configure IDLE |
| dialog. |
| |
| 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 spaces (in the Python Shell window one tab), number depends on |
| Indent Width. Currently tabs are restricted to four spaces due |
| to Tcl/Tk limitations. |
| |
| See also the indent/dedent region commands in the edit menu. |
| |
| Completions: |
| |
| Completions are supplied for functions, classes, and attributes of |
| classes, both built-in and user-defined. Completions are also provided |
| for filenames. |
| |
| The AutoCompleteWindow (ACW) will open after a predefined delay |
| (default is two seconds) after a '.' or (in a string) an os.sep is |
| typed. If after one of those characters (plus zero or more other |
| characters) a tab is typed the ACW will open immediately if a possible |
| continuation is found. |
| |
| If there is only one possible completion for the characters entered, a |
| tab will supply that completion without opening the ACW. |
| |
| 'Show Completions' will force open a completions window, by default the |
| Control-space keys will open a completions window. In an empty |
| string, this will contain the files in the current directory. On a |
| blank line, it will contain the built-in and user-defined functions and |
| classes in the current name spaces, plus any modules imported. If some |
| characters have been entered, the ACW will attempt to be more specific. |
| |
| If string of characters is typed, the ACW selection will jump to the |
| entry most closely matching those characters. Entering a tab will cause |
| the longest non-ambiguous match to be entered in the Edit window or |
| Shell. Two tabs in a row will supply the current ACW selection, as |
| will return or a double click. Cursor keys, Page Up/Down, mouse |
| selection, and the scroll wheel all operate on the ACW. |
| |
| "Hidden" attributes can be accessed by typing the beginning of hidden |
| name after a '.', e.g. '_'. This allows access to modules with |
| '__all__' set, or to class-private attributes. |
| |
| Completions and the 'Expand Word' facility can save a lot of typing! |
| |
| Completions are currently limited to those in the namespaces. Names in |
| an Editor window which are not via __main__ or sys.modules will not be |
| found. Run the module once with your imports to correct this |
| situation. Note that IDLE itself places quite a few modules in |
| sys.modules, so much can be found by default, e.g. the re module. |
| |
| If you don't like the ACW popping up unbidden, simply make the delay |
| longer or disable the extension. Or another option is the delay could |
| be set to zero. Another alternative to preventing ACW popups is to |
| disable the call tips extension. |
| |
| Python Shell window: |
| |
| Control-c interrupts executing command. |
| Control-d sends end-of-file; closes window if typed at >>> prompt |
| (this is Control-z on Windows). |
| Alt-/ expand word is also useful to reduce typing. |
| |
| Command history: |
| |
| Alt-p retrieves previous command matching what you have typed. On OS X |
| use Control-p. |
| Alt-n retrieves next. On OS X use Control-n. |
| Return while cursor is on a previous command retrieves that command. |
| |
| Syntax colors: |
| |
| The coloring is applied in a background "thread", so you may |
| occasionally see uncolorized text. To change the color |
| scheme, use the Configure IDLE / Highlighting dialog. |
| |
| Python default syntax colors: |
| |
| Keywords orange |
| Builtins royal purple |
| Strings green |
| Comments red |
| Definitions blue |
| |
| Shell default colors: |
| |
| Console output brown |
| stdout blue |
| stderr red |
| stdin black |
| |
| Other preferences: |
| |
| The font preferences, highlighting, keys, and general preferences can |
| be changed via the Configure IDLE menu option. Be sure to note that |
| keys can be user defined, IDLE ships with four built in key sets. In |
| addition a user can create a custom key set in the Configure IDLE |
| dialog under the keys tab. |
| |
| Command line usage: |
| |
| Enter idle -h at the command prompt to get a usage message. |
| |
| 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: |
| 1. If -e is used, arguments are files opened for editing and sys.argv |
| reflects the arguments passed to IDLE itself. |
| 2. Otherwise, if -c is used, all arguments are placed in |
| sys.argv[1:...], with sys.argv[0] set to -c. |
| 3. 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. |
| |
| Running without a subprocess: (DEPRECATED in Python 3.5 see Issue 16123) |
| |
| If IDLE is started with the -n command line switch it will run in a |
| single process and will not create the subprocess which runs the RPC |
| Python execution server. This can be useful if Python cannot create |
| the subprocess or the RPC socket interface on your platform. However, |
| in this mode user code is not isolated from IDLE itself. Also, the |
| environment is not restarted when Run/Run Module (F5) is selected. If |
| your code has been modified, you must reload() the affected modules and |
| re-import any specific items (e.g. from foo import baz) if the changes |
| are to take effect. For these reasons, it is preferable to run IDLE |
| with the default subprocess if at all possible. |
| |
| Extensions: |
| |
| IDLE contains an extension facility. See the beginning of |
| config-extensions.def in the idlelib directory for further information. |
| The default extensions are currently: |
| |
| FormatParagraph |
| AutoExpand |
| ZoomHeight |
| ScriptBinding |
| CallTips |
| ParenMatch |
| AutoComplete |
| CodeContext |