blob: 1b065aec0fdb0d2f111a98b5c5cbe6840f46e9ed [file] [log] [blame]
David Scherer7aced172000-08-15 01:13:23 +00001EXPERIMENTAL LOADER IDLE 2000-05-29
2-----------------------------------
3
4 David Scherer <dscherer@cmu.edu>
5
6This is a modification of the CVS version of IDLE 0.5, updated as of
72000-03-09. It is alpha software and might be unstable. If it breaks,
8you get to keep both pieces.
9
10If you have problems or suggestions, you should either contact me or
11post to the list at http://www.python.org/mailman/listinfo/idle-dev
12(making it clear that you are using this modified version of IDLE).
13
14Changes:
15
16 The ExecBinding module, a replacement for ScriptBinding, executes
17 programs in a separate process, piping standard I/O through an RPC
18 mechanism to an OnDemandOutputWindow in IDLE. It supports executing
19 unnamed programs (through a temporary file). It does not yet support
20 debugging.
21
22 When running programs with ExecBinding, tracebacks will be clipped
23 to exclude system modules. If, however, a system module calls back
24 into the user program, that part of the traceback will be shown.
25
26 The OnDemandOutputWindow class has been improved. In particular,
27 it now supports a readline() function used to implement user input,
28 and a scroll_clear() operation which is used to hide the output of
29 a previous run by scrolling it out of the window.
30
31 Startup behavior has been changed. By default IDLE starts up with
32 just a blank editor window, rather than an interactive window. Opening
33 a file in such a blank window replaces the (nonexistent) contents of
34 that window instead of creating another window. Because of the need to
35 have a well-known port for the ExecBinding protocol, only one copy of
36 IDLE can be running. Additional invocations use the RPC mechanism to
37 report their command line arguments to the copy already running.
38
39 The menus have been reorganized. In particular, the excessively large
40 'edit' menu has been split up into 'edit', 'format', and 'run'.
41
42 'Python Documentation' now works on Windows, if the win32api module is
43 present.
44
45 A few key bindings have been changed: F1 now loads Python Documentation
46 instead of the IDLE help; shift-TAB is now a synonym for unindent.
47
48New modules:
49 ExecBinding.py Executes program through loader
50 loader.py Bootstraps user program
51 protocol.py RPC protocol
52 Remote.py User-process interpreter
53 spawn.py OS-specific code to start programs
54
55Files modified:
56 autoindent.py ( bindings tweaked )
57 bindings.py ( menus reorganized )
58 config.txt ( execbinding enabled )
59 editorwindow.py ( new menus, fixed 'Python Documentation' )
60 filelist.py ( hook for "open in same window" )
61 formatparagraph.py ( bindings tweaked )
62 idle.bat ( removed absolute pathname )
63 idle.pyw ( weird bug due to import with same name? )
64 iobinding.py ( open in same window, EOL convention )
65 keydefs.py ( bindings tweaked )
66 outputwindow.py ( readline, scroll_clear, etc )
67 pyshell.py ( changed startup behavior )
68 readme.txt ( <Recursion on file with id=1234567> )
69
70IDLE 0.5 - February 2000
71------------------------
72
73This is an early release of IDLE, my own attempt at a Tkinter-based
74IDE for Python.
75
76For news about this release, see the file NEWS.txt. (For a more
77detailed change log, see the file ChangeLog.)
78
79FEATURES
80
81IDLE has the following features:
82
83- coded in 100% pure Python, using the Tkinter GUI toolkit (i.e. Tcl/Tk)
84
85- cross-platform: works on Windows and Unix (on the Mac, there are
86currently problems with Tcl/Tk)
87
88- multi-window text editor with multiple undo, Python colorizing
89and many other features, e.g. smart indent and call tips
90
91- Python shell window (a.k.a. interactive interpreter)
92
93- debugger (not complete, but you can set breakpoints, view and step)
94
95USAGE
96
97The main program is in the file "idle.py"; on Unix, you should be able
98to run it by typing "./idle.py" to your shell. On Windows, you can
99run it by double-clicking it; you can use idle.pyw to avoid popping up
100a DOS console. If you want to pass command line arguments on Windows,
101use the batch file idle.bat.
102
103Command line arguments: files passed on the command line are executed,
104not opened for editing, unless you give the -e command line option.
105Try "./idle.py -h" to see other command line options.
106
107IDLE requires Python 1.5.2, so it is currently only usable with a
108Python 1.5.2 distribution. (An older version of IDLE is distributed
109with Python 1.5.2; you can drop this version on top of it.)
110
111COPYRIGHT
112
113IDLE is covered by the standard Python copyright notice
114(http://www.python.org/doc/Copyright.html).
115
116FEEDBACK
117
118(removed, since Guido probably doesn't want complaints about my
119changes)
120
121--Guido van Rossum (home page: http://www.python.org/~guido/)