cpython/Tools/idle
Guido van Rossum bbaba85402 Tim Peters again:
The new version (attached) is fast enough all the time in every real module
I have <whew!>.  You can make it slow by, e.g., creating an open list with
5,000 90-character identifiers (+ trailing comma) each on its own line, then
adding an item to the end -- but that still consumes less than a second on
my P5-166.  Response time in real code appears instantaneous.

Fixed some bugs.

New feature:  when hitting ENTER and the cursor is beyond the line's leading
indentation, whitespace is removed on both sides of the cursor; before
whitespace was removed only on the left; e.g., assuming the cursor is
between the comma and the space:

def something(arg1, arg2):
                   ^ cursor to the left of here, and hit ENTER
               arg2):   # new line used to end up here
              arg2):    # but now lines up the way you expect

New hack:  AutoIndent has grown a context_use_ps1 Boolean config option,
defaulting to 0 (false) and set to 1 (only) by PyShell.  Reason:  handling
the fancy stuff requires looking backward for a parsing synch point; ps1
lines are the only sensible thing to look for in a shell window, but are a
bad thing to look for in a file window (ps1 lines show up in my module
docstrings often).  PythonWin's shell should set this true too.

Persistent problem:  strings containing def/class can still screw things up
completely.  No improvement.  Simplest workaround is on the user's head, and
consists of inserting e.g.

def _(): pass

(or any other def/class) after the end of the multiline string that's
screwing them up.  This is especially irksome because IDLE's syntax coloring
is *not* confused, so when this happens the colors don't match the
indentation behavior they see.
1999-06-01 19:55:34 +00:00
..
Icons Missed a few. 1999-06-01 18:23:19 +00:00
__init__.py Support for using idle as a package. 1999-04-30 19:39:25 +00:00
AutoExpand.py Added Meta-/ binding for Unix as alt for Alt-/. 1999-01-04 16:32:21 +00:00
AutoIndent.py Tim Peters again: 1999-06-01 19:55:34 +00:00
Bindings.py Remove obsolete 'script' menu. 1999-04-22 23:09:23 +00:00
ChangeLog Tim Peters strikes again: 1999-04-26 22:20:38 +00:00
ClassBrowser.py Rewritten based on TreeWidget.py 1999-06-01 18:21:31 +00:00
ColorDelegator.py Tim Peters strikes again: 1999-04-26 22:20:38 +00:00
Debugger.py Add canonic() function -- for brand new bdb.py feature. 1999-02-01 19:35:33 +00:00
Delegator.py Checking in IDLE 0.2. 1999-01-02 21:28:54 +00:00
EditorWindow.py 1. Catch NameError on import (could be raised by case mismatch on Windows). 1999-06-01 18:27:14 +00:00
eventparse.py Checking in IDLE 0.2. 1999-01-02 21:28:54 +00:00
extend.py Added ScriptBinding to standard bindings. 1999-01-09 05:00:59 +00:00
extend.txt For an event 'foo-bar', the corresponding method must be called 1999-04-20 17:32:52 +00:00
FileList.py Make sure the Tcl variables are shared between windows. 1999-01-28 22:24:30 +00:00
FormatParagraph.py Tim Peters writes: 1999-05-03 15:49:52 +00:00
FrameViewer.py Checking in IDLE 0.2. 1999-01-02 21:28:54 +00:00
GrepDialog.py Need to import sys! 1999-01-04 15:52:33 +00:00
help.txt Bunch of updates necessary due to recent changes; added docs for File 1999-04-22 23:20:17 +00:00
idle.bat Checking in IDLE 0.2. 1999-01-02 21:28:54 +00:00
idle.py Rename idle -> idle.py 1999-01-28 18:50:31 +00:00
idle.pyw Checking in IDLE 0.2. 1999-01-02 21:28:54 +00:00
IdleHistory.py Checking in IDLE 0.2. 1999-01-02 21:28:54 +00:00
IdlePrefs.py Restored the original IDLE color scheme. 1999-04-20 15:58:29 +00:00
idlever.py New version to celebrate new command line 1999-04-22 20:50:52 +00:00
IOBinding.py Checking in IDLE 0.2. 1999-01-02 21:28:54 +00:00
keydefs.py Ran eventparse.py again. 1999-01-04 16:35:02 +00:00
MultiScrolledLists.py New utility: multiple scrolled lists in parallel 1999-03-10 05:13:29 +00:00
NEWS.txt New version. 1999-04-07 18:41:59 +00:00
ObjectBrowser.py Object browser, based on TreeWidget.py. 1999-06-01 18:20:56 +00:00
OutputWindow.py Moved classes OnDemandOutputWindow and PseudoFile here, 1999-04-22 22:28:42 +00:00
PathBrowser.py Rewritten based on TreeWidget.py 1999-06-01 18:21:31 +00:00
Percolator.py Initial checking of Tk-based Python IDE. 1998-10-10 18:48:31 +00:00
PyParse.py Tim Peters again: 1999-06-01 19:55:34 +00:00
PyShell.py Tim Peters again: 1999-06-01 19:55:34 +00:00
README.txt New version. 1999-04-07 18:41:59 +00:00
ReplaceDialog.py Checking in IDLE 0.2. 1999-01-02 21:28:54 +00:00
ScriptBinding.py Ensure sys.argv[0] is the script name on Run Script. 1999-06-01 18:18:27 +00:00
ScrolledList.py - White background. 1999-03-10 05:10:49 +00:00
SearchBinding.py Got rid of debug print statement in goto_line_event(). 1999-01-11 14:49:00 +00:00
SearchDialog.py When find_again() finds exactly the current selection, it's a failure. 1999-01-28 19:04:01 +00:00
SearchDialogBase.py Checking in IDLE 0.2. 1999-01-02 21:28:54 +00:00
SearchEngine.py Patch by Mark Favas: it fixes the search engine behaviour where an 1999-04-20 15:00:00 +00:00
Separator.py Vladimir Marangozov's patch: 1999-01-12 22:09:18 +00:00
StackViewer.py Make initial stack viewer wider 1999-05-21 04:45:45 +00:00
tabnanny.py Added a -q ('quiet') option to tabnanny, which causes only the names of 1998-12-18 13:56:58 +00:00
testcode.py Renamed test.py to testcode.py so one can import Python's 1999-01-12 22:14:34 +00:00
TODO.txt New wishes 1999-05-21 04:45:20 +00:00
ToolTip.py As yet unused code for tool tips. 1999-06-01 18:19:02 +00:00
TreeWidget.py Tree widget done right. 1999-06-01 18:19:17 +00:00
UndoDelegator.py Tim Peters writes: 1999-05-03 15:49:52 +00:00
WidgetRedirector.py Tim Peters writes: 1999-05-03 15:38:56 +00:00
WindowList.py When deleting, call the callbacks *after* deleting the window from our list! 1999-02-17 17:34:25 +00:00
ZoomHeight.py Move zoom height functionality to separate function. 1999-06-01 18:17:02 +00:00

IDLE 0.4 - 7 April 1999
-----------------------

For news about this release, see the file NEWS.txt.  (For a more
detailed change log, see the file ChangeLog.)

This is an early release of IDLE, my own attempt at a Tkinter-based
IDE for Python.  It has the following features:

- 100% pure Python
- multi-window text editor with multiple undo and Python colorizing
- Python shell (a.k.a. interactive interpreter) window subclass
- debugger (not complete, but you can set breakpoints and step)
- works on Windows and Unix (probably works on Mac too)

The main program is in the file "idle"; on Windows you can use idle.pyw
to avoid popping up a DOS console.  Any arguments passed are interpreted
as files that will be opened for editing.

IDLE requires Python 1.5.2, so it is currently only usable with the
Python 1.5.2 distribution (luckily, IDLE is bundled with Python
1.5.2).

Please send feedback to the Python newsgroup, comp.lang.python, and cc
me <guido@python.org>.

--Guido van Rossum (home page: http://www.python.org/~guido/)