cpython/Lib/idlelib
Kurt B. Kaiser 45186c4ce0 Implement Restoring Breakpoints in Subprocess Debugger
M Debugger.py
M EditorWindow.py
M PyShell.py

0. Polish PyShell.linecache_checkcache()
1. Move break clearing code to PyShell.PyShellEditorWindow from
   EditorWindow.
2. Add PyShellEditorWindow.breakpoints attribute to __init__, a list of
   line numbers which are breakpoints for that edit window.
3. Remove the code in Debugger which removes all module breakpoints when
   debugger is closed.  Want to be able to reload into debugger when
   restarted.
4. Moved the code which sets EditorWindow.text breakpoints from Debugger
   to PyShell.PyShellEditorWindow and refactored.
5. Implement reloading subprocess debugger with breakpoints from all open
   PyShellEditorWindows when debugger is opened or subprocess restarted.
6. Eliminate the break_set attribute, use the breakpoint list instead.
2002-10-23 04:48:08 +00:00
..
Icons py-cvs-rel2_1 (Rev 1.2) merge 2001-07-14 02:02:36 +00:00
AutoExpand.py Merge Py Idle's Rev 1.5 2002-09-15 20:50:02 +00:00
Bindings.py Merge Py Idle's Rev 1.16 (string methods) 2002-09-15 21:38:20 +00:00
CREDITS.txt some new dialogs and support files for new about and configuration implementations 2001-07-31 06:59:02 +00:00
CallTipWindow.py Work around Mac OS X transient window issues 2002-09-23 01:04:05 +00:00
CallTips.py M CallTips.py Add support for getting calltip from subprocess, 2002-10-10 08:25:24 +00:00
ChangeLog update in preparation for 0.8.1 alpha release 2001-07-20 08:53:38 +00:00
ClassBrowser.py Merge Py Idle changes 2002-09-15 22:09:16 +00:00
ColorDelegator.py Merge Py Idle changes 2002-09-15 22:09:16 +00:00
Debugger.py Implement Restoring Breakpoints in Subprocess Debugger 2002-10-23 04:48:08 +00:00
Delegator.py py-cvs-rel2_1 (Rev 1.3) merge - whitespace normalization 2001-07-13 00:10:02 +00:00
EditorWindow.py Implement Restoring Breakpoints in Subprocess Debugger 2002-10-23 04:48:08 +00:00
FileList.py py-cvs-2000_07_13 (Rev 1.9) merge 2001-07-14 04:45:32 +00:00
FormatParagraph.py Merge Py Idle changes: 2002-09-16 02:22:19 +00:00
GrepDialog.py Merge Py Idle changes: 2002-09-16 02:25:26 +00:00
INSTALL.txt Merge from DS_RPC_BRANCH 2002-09-12 20:55:43 +00:00
IOBinding.py Work around Mac OS X platform encoding issues. 2002-09-23 01:01:20 +00:00
IdleHistory.py Merge Py Idle changes: 2002-09-16 22:09:19 +00:00
LICENSE.txt supports about changes 2001-08-11 07:44:28 +00:00
MultiStatusBar.py py-cvs-rel2_1 (Rev 1.2) merge - whitespace normalization 2001-07-13 17:52:08 +00:00
NEWS.txt new material for 0.8.1 release 2001-07-21 09:50:55 +00:00
ObjectBrowser.py Merge Py Idle changes: 2002-09-16 22:16:05 +00:00
OutputWindow.py Revert Rev 1.6 2002-09-27 00:34:31 +00:00
ParenMatch.py Merge Py Idle changes: 2002-09-17 03:43:38 +00:00
PathBrowser.py py-cvs-rel2_1 (Rev 1.6) merge - whitespace normalization 2001-07-13 19:57:00 +00:00
Percolator.py py-cvs-rel2_1 (Rev 1.3) 2001-07-13 20:00:15 +00:00
PyParse.py Merge Py Idle changes: 2002-09-17 03:55:13 +00:00
PyShell.py Implement Restoring Breakpoints in Subprocess Debugger 2002-10-23 04:48:08 +00:00
README.txt bring up to date for 0.8.1 release 2001-07-20 01:36:49 +00:00
RemoteDebugger.py M PyShell.py 2002-09-05 02:31:20 +00:00
RemoteObjectBrowser.py GvR's rpc patch 2002-05-26 13:36:41 +00:00
ReplaceDialog.py Merge Py Idle changes: 2002-09-18 02:56:10 +00:00
ScriptBinding.py Merge Py Idle changes: 2002-09-18 03:05:19 +00:00
ScrolledList.py py-cvs-rel2_1 (rev 1.5) merge - whitespace normalization 2001-07-14 01:23:30 +00:00
SearchDialog.py Merge Py Idle changes: 2002-09-18 03:10:10 +00:00
SearchDialogBase.py Merge Py Idle changes: 2002-09-18 03:12:18 +00:00
SearchEngine.py Merge PyIdle changes: 2002-09-18 03:14:11 +00:00
StackViewer.py Merge Py Idle changes: 2002-09-18 03:15:56 +00:00
TODO.txt minor tidy-ups ready for 0.8.1 alpha tarball release 2001-07-19 04:49:13 +00:00
ToolTip.py Merge Py Idle changes: 2002-09-18 03:17:38 +00:00
TreeWidget.py Merge Py Idle changes: 2002-09-18 03:26:47 +00:00
UndoDelegator.py Merge Py Idle changes: 2002-09-18 03:30:12 +00:00
WidgetRedirector.py
WindowList.py Josh Robb's Patch 2002-10-04 21:54:41 +00:00
ZoomHeight.py changeover to new keybinding configuration implementation 2002-01-19 10:41:51 +00:00
__init__.py
aboutDialog.py remove futzing with text font 2002-01-03 12:04:01 +00:00
config-extensions.def MERGE DS_RPC_BRANCH into MAIN: 2002-09-14 03:15:06 +00:00
config-highlight.def 1. Debugger Breakpoints, finish implementation 2002-06-20 04:01:47 +00:00
config-keys.def Change key binding to avoid conflict. 2002-09-29 00:10:15 +00:00
config-main.def add a version of GvR's q&d python idle printing patch, 2002-06-11 04:45:34 +00:00
configDialog.py MERGE DS_RPC_BRANCH into MAIN: 2002-09-14 02:58:07 +00:00
configHandler.py Fix Bug 612886 copy/paste menu items fail 2002-09-26 22:13:22 +00:00
configHelpSourceEdit.py further work on new config system; 2002-03-27 02:25:44 +00:00
configSectionNameDialog.py further work on config system and config saving 2002-02-05 04:52:32 +00:00
dynOptionMenuWidget.py keybinding configuration 2002-01-19 00:29:54 +00:00
extend.txt py-cvs-2001_07_13 (Rev 1.4) merge 2001-07-14 05:18:59 +00:00
help.txt Documentation patches by bsherwood 2001-10-31 10:40:28 +00:00
idle Implement idle command interface as suggested by GvR [idle-dev] 16 July 2001-07-17 04:59:01 +00:00
idle.bat
idle.py py-cvs-2001_07_13 (Rev 1.4) merge 2001-07-14 05:21:37 +00:00
idle.pyw SF Bug #611225. 2002-09-19 19:54:55 +00:00
idlever.py Bump to reflect final cleanup of Config system and first pass GRPC 2002-09-14 04:24:43 +00:00
keybindingDialog.py Mac users now see correct modifiers in the Key Binding Entry window. 2002-09-29 00:23:08 +00:00
rpc.py M CallTips.py Add support for getting calltip from subprocess, 2002-10-10 08:25:24 +00:00
run.py M CallTips.py Add support for getting calltip from subprocess, 2002-10-10 08:25:24 +00:00
setup.py INSTALLATION: Remove the coexist.patch instructions 2001-07-17 05:12:42 +00:00
tabpage.py fixups and improvements 2002-01-03 12:02:37 +00:00
testcode.py
textView.py indentation style changed to match existing source 2001-07-31 10:46:53 +00:00

README.txt

IDLEfork README
===============

IDLEfork is an official experimental fork of Python's Integrated 
DeveLopment Environment IDLE. Worthwhile and successful changes and 
additions will go back into the Python distribution's IDLE at some 
later stage. There is no spanish inquisition.

As David Scherer aptly put it in the original IDLE fork README (below), 
"It is alpha software and might be unstable. If it breaks, you get to 
keep both pieces." One of the aims of IDLEfork now is for it to be able 
to be uncompressed into its own directory and run from there, that way  
you can play with (or hack on) IDLEfork without any further installation, 
and entirely separately from your stable python IDLE distribution.

If you find bugs or undesired behaviour please code nifty patches and 
submit them to the IDLEfork SourceForge patch manager, 8^) or let us 
know about it in one of the appropriate fora. See the IDLEfork home 
page at

http://idlefork.sourceforge.net

for details on the various ways to give input to or contact the project.

Please see the files NEWS.txt and ChangeLog for more up to date
information on changes in this release of IDLEfork.


Thanks for trying IDLEfork,
Stephen M. Gava.
<elguavas@users.sourceforge.net>



README from IDLE fork 0.7.1 :
=============================

EXPERIMENTAL LOADER IDLE 2000-05-29
-----------------------------------

   David Scherer  <dscherer@cmu.edu>

This is a modification of the CVS version of IDLE 0.5, updated as of
2000-03-09.  It is alpha software and might be unstable.  If it breaks,
you get to keep both pieces.

If you have problems or suggestions, you should either contact me or
post to the list at http://www.python.org/mailman/listinfo/idle-dev
(making it clear that you are using this modified version of IDLE).

Changes:

  The ExecBinding module, a replacement for ScriptBinding, executes
  programs in a separate process, piping standard I/O through an RPC
  mechanism to an OnDemandOutputWindow in IDLE.  It supports executing
  unnamed programs (through a temporary file).  It does not yet support
  debugging.

  When running programs with ExecBinding, tracebacks will be clipped
  to exclude system modules.  If, however, a system module calls back
  into the user program, that part of the traceback will be shown.

  The OnDemandOutputWindow class has been improved.  In particular,
  it now supports a readline() function used to implement user input,
  and a scroll_clear() operation which is used to hide the output of
  a previous run by scrolling it out of the window.

  Startup behavior has been changed.  By default IDLE starts up with
  just a blank editor window, rather than an interactive window.  Opening
  a file in such a blank window replaces the (nonexistent) contents of
  that window instead of creating another window.  Because of the need to
  have a well-known port for the ExecBinding protocol, only one copy of
  IDLE can be running.  Additional invocations use the RPC mechanism to
  report their command line arguments to the copy already running.

  The menus have been reorganized.  In particular, the excessively large
  'edit' menu has been split up into 'edit', 'format', and 'run'.

  'Python Documentation' now works on Windows, if the win32api module is
  present.

  A few key bindings have been changed: F1 now loads Python Documentation
  instead of the IDLE help; shift-TAB is now a synonym for unindent.

New modules:
  ExecBinding.py         Executes program through loader
  loader.py              Bootstraps user program
  protocol.py            RPC protocol
  Remote.py              User-process interpreter
  spawn.py               OS-specific code to start programs

Files modified:
  autoindent.py          ( bindings tweaked )
  bindings.py            ( menus reorganized )
  config.txt             ( execbinding enabled )
  editorwindow.py        ( new menus, fixed 'Python Documentation' )
  filelist.py            ( hook for "open in same window" )
  formatparagraph.py     ( bindings tweaked )
  idle.bat               ( removed absolute pathname )
  idle.pyw               ( weird bug due to import with same name? )
  iobinding.py           ( open in same window, EOL convention )
  keydefs.py             ( bindings tweaked )
  outputwindow.py        ( readline, scroll_clear, etc )
  pyshell.py             ( changed startup behavior )
  readme.txt             ( <Recursion on file with id=1234567> )

IDLE 0.5 - February 2000
------------------------

This is an early release of IDLE, my own attempt at a Tkinter-based
IDE for Python.

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

FEATURES

IDLE has the following features:

- coded in 100% pure Python, using the Tkinter GUI toolkit (i.e. Tcl/Tk)

- cross-platform: works on Windows and Unix (on the Mac, there are
currently problems with Tcl/Tk)

- multi-window text editor with multiple undo, Python colorizing
and many other features, e.g. smart indent and call tips

- Python shell window (a.k.a. interactive interpreter)

- debugger (not complete, but you can set breakpoints, view  and step)

USAGE

The main program is in the file "idle.py"; on Unix, you should be able
to run it by typing "./idle.py" to your shell.  On Windows, you can
run it by double-clicking it; you can use idle.pyw to avoid popping up
a DOS console.  If you want to pass command line arguments on Windows,
use the batch file idle.bat.

Command line arguments: files passed on the command line are executed,
not opened for editing, unless you give the -e command line option.
Try "./idle.py -h" to see other command line options.

IDLE requires Python 1.5.2, so it is currently only usable with a
Python 1.5.2 distribution.  (An older version of IDLE is distributed
with Python 1.5.2; you can drop this version on top of it.)

COPYRIGHT

IDLE is covered by the standard Python copyright notice
(http://www.python.org/doc/Copyright.html).

FEEDBACK

(removed, since Guido probably doesn't want complaints about my
changes)

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