diff options
| -rw-r--r-- | Tools/idle/README.txt | 119 | 
1 files changed, 6 insertions, 113 deletions
| diff --git a/Tools/idle/README.txt b/Tools/idle/README.txt index a4e4b84968..0279ed91ff 100644 --- a/Tools/idle/README.txt +++ b/Tools/idle/README.txt @@ -1,13 +1,13 @@ -IDLE 0.2 - 01/01/99 -------------------- +IDLE 0.2 - January 1999 +----------------------- -This is a *very* early preliminary release of IDLE, my own attempt at -a Tkinter-based IDE for Python.  It has the following features: +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 -- 100% pure Python +- 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 @@ -21,110 +21,3 @@ Python 1.5.2 beta distribution (luckily, IDLE is bundled with Python  Please send feedback to the Python newsgroup, comp.lang.python.  --Guido van Rossum (home page: http://www.python.org/~guido/) - -====================================================================== - -TO DO: - -- "GO" command -- "Modularize" command -- command expansion from keywords, module contents, other buffers, etc. -- "Recent documents" menu item -- more emacsisms: -  - parentheses matching -  - reindent, reformat text etc. -  - M-[, M-] to move by paragraphs -  - smart stuff with whitespace around Return -  - filter region? -  - incremental search? -  - ^K should cut to buffer -  - command to fill text paragraphs -- restructure state sensitive code to avoid testing flags all the time -- finish debugger -- object browser instead of current stack viewer -- persistent user state (e.g. window and cursor positions, bindings) -- make backups when saving -- check file mtimes at various points -- interface with RCS/CVS/Perforce ??? -- status bar? -- better help? -- don't open second class browser on same module - -Details: - -- when there's a selection, left/right arrow should go to either -  end of the selection -- ^O (on Unix -- open-line) should honor autoindent -- after paste, show end of pasted text -- on Windows, should turn short filename to long filename (not only in argv!) -  (shouldn't this be done -- or undone -- by ntpath.normpath?) - -Structural problems: - -- too much knowledge in FileList about EditorWindow (for example) -- Several occurrences of scrollable listbox with title and certain -  behavior; should create base class to generalize this - -====================================================================== - -Comparison to PTUI ------------------- - -+ PTUI has a status line - -+ PTUI's help is better (HTML!) - -+ PTUI can attach a shell to any module - -+ PTUI's auto indent is better -  (understands that "if a: # blah, blah" opens a block) - -+ IDLE requires 4x backspace to dedent a line - -+ PTUI has more bells and whistles: -  open multiple -  append -  modularize -  examine -  go - -? PTUI's fontify is faster but synchronous (and still too slow); -  does a lousy job if editing affects lines below - -- PTUI's shell is worse: -  no coloring; -  no editing of multi-line commands; -  ^P seems to permanently remove some text from the buffer - -- PTUI's undo is worse: -  no redo; -  one char at a time - -- PTUI's GUI is a tad ugly: -  I don't like the multiple buffers in one window model; -  I don't like the big buttons at the top of the widow - -- PTUI lacks an integrated debugger - -- PTUI lacks a class browser - -- PTUI lacks many of IDLE's features: -  - expand word -  - regular expression search -  - search files (grep) - -====================================================================== - -Notes after trying to run Grail -------------------------------- - -- Grail does stuff to sys.path based on sys.argv[0]; you must set -sys.argv[0] to something decent first (it is normally set to the path of -the idle script). - -- Grail must be exec'ed in __main__ because that's imported by some -other parts of Grail. - -- Grail uses a module called History and so does idle :-( - -====================================================================== | 
