Commit Graph

594 Commits

Author SHA1 Message Date
Kurt B. Kaiser 7f38ec0849 1. Restore the capability to run and debug without a subprocess.
2. Add an indicator to the shell startup notice when running w/o
   subprocess.
3. Improve exception reporting when running a command or script from the
   command line.
4. Clarify the fact that breakpoints set or cleared after a file is
   saved will revert to the saved state if the file is closed without
   re-saving.
5. If user tries to exit or restart when user code is running, interrupt
   the user code.  This helps to eliminate occasional hanging
   subprocesses on Windows (except for Freddy :).

M NEWS.txt
M PyShell.py
M ScriptBinding.py
2003-05-15 03:19:42 +00:00
Kurt B. Kaiser aa6b856a42 On Windows the subprocess was not exiting during a restart.
This bug, henceforth designated Freddy, was due to the mistaken
elimination of the KeyboardInterrupt exception at the previous revision.
PyShell's unix_terminate hammer was masking the problem on Linux.  On W2K
the subprocess MainThread was trying to print the exception after the
SockThread had ceased to service the socket.  The subprocess would then
detach and spin when the GUI created the new subprocess.

Modified Files: run.py
2003-05-14 18:15:40 +00:00
Tony Lownds 2398d578a3 1. The command-line arguments for subprocesses no longer need to be
specialized for Mac OS X.

2. buildapp.py - a new file for building an application icon for IDLE on Mac
OS X. See INSTALL.txt
2003-05-13 15:28:21 +00:00
Kurt B. Kaiser 73414a2705 Update for SF 71033 and changes to subprocess threading 2003-05-12 03:04:59 +00:00
Kurt B. Kaiser 9ec454ec00 1. RemoteDebugger now runs user code in subprocess MainThread
2. run.py: move exception printing to toplevel to allow access from main()
3. Clarification in PyShell.py: when the subprocess is restarted, the
   debugger GUI is reused with a fresh instance of the subprocess
   debugger.

M PyShell.py
M RemoteDebugger.py
M run.py
2003-05-12 02:33:47 +00:00
Kurt B. Kaiser a053f33887 [ SF 710733 - Martin v. Loewis] Improving source encoding dialog
M IOBinding.py
M config-main.def
M configDialog.py
2003-05-10 00:49:56 +00:00
Kurt B. Kaiser 57bfe5dc5a 1. Update debugger to not trace RPC code even when calling Queue and
threading modules.  Can debug user code which imports these modules,
   though.
2. Re-enable debugger in PyShell.
3. Remove old code implementing previous approaches to this issue.

M Debugger.py
M PyShell.py
M rpc.py
2003-05-10 00:09:52 +00:00
Kurt B. Kaiser a00050f209 1. Implement processing of user code in subprocess MainThread. Pass loop
is now interruptable on Windows.
2. Tweak signal.signal() wait parameters as called by various methods
   to improve I/O response, especially on Windows.
3. Debugger is disabled at this check-in pending further development.

M NEWS.txt
M PyShell.py
M rpc.py
M run.py
2003-05-08 20:26:55 +00:00
Guido van Rossum c2f77dddf3 New feature: when saving a file, keep the eol convention of the
original.  New files are written using the eol convention of the
platform, given by os.linesep.  All files are read and written in
binary mode.
2003-04-25 18:36:31 +00:00
Kurt B. Kaiser 9a90e70b32 Update for release into Python
NEWS.txt idlever.py
2003-04-25 17:48:08 +00:00
Kurt B. Kaiser 40f19e3fd5 Update for 2.3b1
Modified Files:
	NEWS.txt CREDITS.txt INSTALL.txt setup.cfg
2003-04-25 16:37:31 +00:00
Kurt B. Kaiser 0529377cdf Correct error in last checkin noticed by Neal Norwitz. And some more. 2003-03-22 20:11:14 +00:00
Kurt B. Kaiser 11c53e2ea7 M PyShell.py
M run.py

1. Move subprocess socket handling to a subthread - "SockThread".
2. In the subprocess, implement a queue and global completion and exit
flags.  Execute code after it is passed through the queue.  (Currently,
user code is executed in SockThread.  The next phase of development will
move the tail of the queue to MainThread.)
3. Implement an RPC message used to shut down the execution server.
4. Improve normal and exception subprocess exits.

(At this checkin a "pass loop" interrupt doesn't work on any platform.  It
will be restored for all platforms once user code execution is moved to
MainThread.)
2003-03-22 19:40:19 +00:00
Kurt B. Kaiser e51529d79a Improve error message handling. 2003-03-22 19:15:58 +00:00
Kurt B. Kaiser 94afd3095e Move setting of ioready 'wait' earlier in call chain, to
rpc.SocketIO.main() and asyncreturn().  Improve comment.
2003-03-12 20:52:00 +00:00
Kurt B. Kaiser 7c22132069 M rpc.py
M run.py
1. Clarify that rpc.SocketIO._getresponse() currently blocks on socket.
2. Improve exception handling in subprocess when GUI terminates abruptly.
2003-03-11 22:55:56 +00:00
Kurt B. Kaiser 9ac783d723 M PyShell.py
M rpc.py
Improve exception handing if peer process has terminated.
2003-03-10 20:42:24 +00:00
Kurt B. Kaiser 98b15ab980 A interruptmodule.c
M setup.py
Implements an interrupt extension module which allows a subthread
to raise an interrupt in the main thread.
2003-03-10 20:41:07 +00:00
Kurt B. Kaiser ddeaf11d7e Attempting to save the shell raised an error related to saving
breakpoints, which are not implemented in the shell
2003-03-04 04:42:04 +00:00
Kurt B. Kaiser b2487335bf SF 693333
Modify subprocess to print a reasonable message upon receiving
a 'quit' or 'exit'
2003-03-04 04:03:45 +00:00
Kurt B. Kaiser b6aff15183 SF 695861
Eliminate extra blank line in shell output.  Caused by stdout not being
flushed
upon completion of subprocess' Executive.runcode() when user code ends by
outputting an unterminated line, e.g. print "test",
2003-03-03 20:06:48 +00:00
Kurt B. Kaiser 86bc464414 M rpc.py
M run.py

Move exception formatting out of rpc.py.  This allows each end of the
link to format and print exceptions how and where it sees fit and makes it
easier for threads to display their own exceptions.
2003-02-27 23:04:17 +00:00
Kurt B. Kaiser 003091cd51 M NEWS.txt
M PyShell.py
M ScriptBinding.py
M rpc.py
M run.py

Clean up the way IDLEfork handles termination of the subprocess, restore
ability to interrupt user code in Windows (so long as it's doing terminal
I/O).

1. Handle subprocess interrupts in Windows with an RPC message.
2. Run/F5 will restart the subprocess even if user code is running.
3. Restart the subprocess if the link is dropped.
4. Exit IDLE cleanly even during I/O.
4. In rpc.py, remove explicit calls to statelock, let the condition
   variable handle acquire() and release().
2003-02-17 18:57:16 +00:00
Kurt B. Kaiser 8cd0def10d M PyShell.py
M rpc.py

SF Bug 676398 Doesn't handle non-built-in exceptions
1. Move exception formatting to the subprocess; allows subclassing of
   exceptions, including subclasses created in the shell without
   introducing excessive complexity in the RPC mechanism.
2. Provide access to linecache from subprocess to support this.
2003-01-31 05:06:43 +00:00
Kurt B. Kaiser 7e17289868 Update for release.
Modified Files:
 	INSTALL.txt NEWS.txt idlever.py
2003-01-27 02:40:20 +00:00
Kurt B. Kaiser e66675b85c Whitespace normalization.
Modified Files:
 	Bindings.py configHandler.py configHelpSourceEdit.py
2003-01-27 02:36:18 +00:00
Kurt B. Kaiser d9db3a6713 Update. 2003-01-26 20:37:01 +00:00
Kurt B. Kaiser eb9637ef7d M ScriptBinding.py
M config-extensions.def
M help.txt

1. Run Script  -->  Run Module
2. Update IDLE Help file and do more work on format.
2003-01-26 04:17:16 +00:00
Kurt B. Kaiser bc2861313c M PyShell.py
M RemoteDebugger.py
M rpc.py

Fix the incorrect shell exception tracebacks generated when running
under debugger control:

1. Use rpc.SocketIO.asynccall() instead of remotecall() to handle the
   IdbProxy.run() command.
2. Add a 'shell' attribute to RemoteDebugger.IdbProxy to allow setting
   of ModifiedInterpreter's active_seq attribute from RemoteDebugger code.
3. Cleanup PyShell.ModifiedInterpreter.runcode() and remove ambiguity
   regarding use of begin/endexecuting().
4. In runcode() and cleanup_traceback() use 'console' instead of 'file' to
   denote the entity to which the exception traceback is printed.
5. Enhance cleanup_traceback() so if the traceback is pruned entirely away
   (the error is in IDLE internals) it will be displayed in its entirety
   instead.
6. ModifiedInterpreter.runcode() now prints ERROR RPC returns to both
   console and __stderr__.
7. Make a small tweak to the rpc.py debug messages.
2003-01-25 21:33:40 +00:00
Kurt B. Kaiser 0a0e6c3b5e 1. Eliminate putrequest(): only used in asynccall(), merge it there.
2. Add additional debugging statements and enhance others.
3. Clarify comments.
4. Move SocketIO.nextseq class attribute to beginning of class.
2003-01-25 03:26:35 +00:00
Kurt B. Kaiser 981344567f Make Alt-Key-2 the Zoom Height binding for ClassBrowser and PathBrowser,
consistent with the Edit/Shell windows.
2003-01-22 00:31:09 +00:00
Kurt B. Kaiser 4cc5ef5dbe M Bindings.py
M PyShell.py
M config-keys.def
M configHandler.py

1. Clear any un-entered characters from input line before printing the
   restart boundary.
2. Restore the Debug menu: There are now both Shell and Debug menus.
3. Add Control-F6 keybinding to Restart Shell.
4. Clarify PyShell.cancel_check() comment.
5. Update doc string for Bindings.py and re-format the file slightly.
2003-01-22 00:23:23 +00:00
Kurt B. Kaiser 2da75faa87 1. Restore the rest of Python IDLE setup.py Rev 1.4 (Python SF 634078)
(Loewis) which uses 'SRCDIR' (if available) in package dir path.
2. Merge Python IDLE setup.py Rev 1.5 (Loewis) to allow installation
   from the build directory. IDLEfork SF Patch 668998 (Loewis)
2003-01-21 04:42:50 +00:00
Kurt B. Kaiser 0b743441a6 ...and the old pyclbr.py faked Function instances with Class instances
which had empty method and super attributes.  ClassBrowser.IsExpandable()
could not handle the missing attributes.  SF Bug 667787.
2003-01-20 04:49:37 +00:00
Raymond Hettinger 6550051691 SF bug #668906: class browser raises AttributeError
The Py2.3 updates to the pyclbr module return both Class and Function
objects.  The IDLE ClassBrowser module only knew about Class and could
not handle objects which did not define "super".

Fixed by adding a guard.
2003-01-19 02:37:41 +00:00
Kurt B. Kaiser 5ec186b1cb Patch 611069 (Christos Georgiou) IDLE TODO:left/right when selected text
M EditorWindow.py
M NEWS.txt
M TODO.txt
2003-01-17 04:04:06 +00:00
Kurt B. Kaiser 9fd0799ff5 SF Bug 667812: Some Linux distros have Alt and Meta reversed. 2003-01-16 21:40:21 +00:00
Kurt B. Kaiser 6fa0911f5a Updated IDLE Help to reflect changes in Additional Help Source
Configuration implementation.
2003-01-14 22:06:11 +00:00
Kurt B. Kaiser 8e92bf7699 M Bindings.py
M EditorWindow.py
M NEWS.txt
M config-main.def
M configDialog.py
M configHandler.py
M configHelpSourceEdit.py
M configSectionNameDialog.py

- Change default: IDLE now starts with Python Shell.

- Removed the File Path from the Additional Help Sources scrolled list.

- Add capability to access Additional Help Sources on the web if the
  Help File Path begins with //http or www.  (Otherwise local path is
  validated, as before.)

- Additional Help Sources were not being posted on the Help menu in the
  order entered.  Implement sorting the list by [HelpFiles] 'option'
  number.

- Add Browse button to New Help Source dialog.  Arrange to start in
  Python/Doc if platform is Windows, otherwise start in current directory.

- Put the Additional Help Sources directly on the Help menu instead of in
  an Extra Help cascade menu.  Rearrange the Help menu so the Additional
  Help Sources come last.  Update help.txt appropriately.

- Fix Tk root pop-ups in configSectionNameDialog.py  and configDialog.py
2003-01-14 22:03:31 +00:00
Kurt B. Kaiser a7b804f28a Update documentation. 2003-01-10 21:27:23 +00:00
Kurt B. Kaiser 69e8afcc9f SF bug #652933 (for IdleFork): Open Module "math" Fails (Hettinger)
When a module doesn't have a __path__ attribute, trigger a dialog box
rather than dumping a traceback to the console.

Synch to Python IDLE.
2003-01-10 21:25:20 +00:00
Kurt B. Kaiser e7a161e60c M configDialog.py
M configHelpSourceEdit.py

1. Attach configHelpSourceEdit error dialogs to parent to avoid Tk root
   pop-ups.
2. Make configHelpSourceEdit OK button the default and bind <Return>.
3. Reformat configHelpSourceEdit.
4. ConfigDialog.SaveAllChangedConfig() had a bug which caused additional
   help sources to be deleted when other config items were changed.
4. Uniform capitalization in configDialog.
5. Update configDialog doc string.
2003-01-10 20:13:57 +00:00
Kurt B. Kaiser 114713d194 1. Make finding Python help docs more robust, including the installed
configuation.
2. Make sure that os.startfile() is used to open both Python help docs
   and Extra Help docs on the Windows platforms.
2003-01-10 05:07:24 +00:00
Kurt B. Kaiser a5e8bb94e5 Default the OK key in the Save Before Run dialog. 2003-01-10 03:06:30 +00:00
Kurt B. Kaiser 1061e7270b M AutoExpand.py
M Bindings.py
M EditorWindow.py
M PyShell.py
M config-keys.def
M configHandler.py
M help.txt

1. Annotate the shell window with last restart boundary upon restart.
2. Provide a shell menu entry and hot key (F6) to jump to the last
   restart boundary.
3. Add a new shell menu feature to restart the shell.
4. Update the help menu to add these features.
5. Update the help menu to put text in same order as the menus.
6. Correct a capitalization inconsistency on the Edit menu: Expand Word
7. Rename the "Debug" menu to be "Shell": it's doing more now.
8. Rearrange the "Shell" menu to make the StackViewer entries adjacent.
9. Add a get_geometry method to EditorWindow, which may be of use in
   making window positions persisent.
10. Make <ctrl-v> the "Classic Windows" paste key.
11. Restore decorum on the Help menu by removing "Advice".  As Guido said,
    things will never be the same.  Thanks, David!
2003-01-04 01:43:53 +00:00
Kurt B. Kaiser fe8496ca03 1. Remove obsolete, incorrect comment on non-package installation
2. Add more .txt files to installation
3. Fix the reference to Visual Python, s/b VPython
2003-01-02 20:33:26 +00:00
Kurt B. Kaiser e23ca3c35a Improve exception handling. 2003-01-02 17:09:34 +00:00
Kurt B. Kaiser 50e9c4ff55 More installation info. Bump alpha version. 2003-01-01 01:14:13 +00:00
Kurt B. Kaiser 38f11101d8 Debugger was tracing through rpc.py when IDLEfork was not started
from its source directory.  Generalize the "workaround" (though
the latter seems a reasonable solution?) to handle this.
2003-01-01 00:26:41 +00:00
Kurt B. Kaiser 7cca3d8ef0 Improve exception handling. 2002-12-31 23:18:00 +00:00
Tony Lownds cf94ee817c Don't let the docstring end up in __main__.__doc__ 2002-12-31 18:22:37 +00:00
Kurt B. Kaiser 2cb540253b Update (slightly) for Alpha release 2002-12-31 18:12:04 +00:00
Kurt B. Kaiser 085ce5a77a Move history to HISTORY.txt 2002-12-31 17:57:44 +00:00
Kurt B. Kaiser f5934dd5f8 Update for Alpha 0 Release 2002-12-31 17:56:18 +00:00
Tony Lownds d8a6c5f4f4 Keep __main__ namespace clean 2002-12-31 16:52:44 +00:00
Kurt B. Kaiser 6655e4bc27 Whitespace Normalization 2002-12-31 16:03:23 +00:00
Kurt B. Kaiser 5e65ce671c Remove some old debugging print statements. 2002-12-29 22:48:52 +00:00
Kurt B. Kaiser 4ada7ad3bc M EditorWindow.py
M PyShell.py

1. PyShell Rev 1.39, EditorWindow Rev 1.37 fix was not handling a
   multiline prompt.
2. The same fix introduced a bug where hitting <enter> at a previous
   prompt-only line would copy the prompt to the iomark.
3. Move the setting of sys.ps1 earlier, into PyShell.main(), to allow
   this code to work before a shell is started up.
4. If cursor is on the input line in the prompt, and you hit <enter>,
   process the line instead of complaining.
5. If line has no stdin range (this includes the last line before shell
   restart) strip any prompt before recalling.
2002-12-29 22:03:38 +00:00
Tony Lownds e1bebe9cb0 boolcheck cannot be deleted here. 2002-12-24 17:22:53 +00:00
Tony Lownds b693f8e4fa Move boolcheck before import of other IDLE modules 2002-12-24 17:21:43 +00:00
Kurt B. Kaiser f4f4276815 M PyShell.py
M idle
M idle.py
M idle.pyw
M setup.py

Switch back to installing IDLE as a package.  The IDLE GUI and the
subprocess will both attempt to start up via the package mechanism, but if
IDLE is not yet installed it is possible to run by calling python idle.py
in the IDLE source directory, or to add the source directory to sys.path.

One advantage of doing it this way is IDLE stays off sys.path.

Developed in collaboration with Tony Lownds.
2002-12-24 06:36:19 +00:00
Kurt B. Kaiser a2a3cb23de IDLE should exit if it fails to connect with the execution server
subprocess.  Currently it opens a dead shell window.
2002-12-24 03:33:12 +00:00
Kurt B. Kaiser 11220fad1d 1. RPC stack levels were not pruned from traceback unless IDLE was started
from its source directory.
2. Replace final traceback '?' with '-toplevel-'
3. Remove duplicated import boolcheck
2002-12-24 00:57:22 +00:00
Kurt B. Kaiser d375abeb1a Uniform Capitalization in Menus 2002-12-24 00:51:05 +00:00
Kurt B. Kaiser 74d93c81c1 Remove debugging connection message 2002-12-23 22:51:03 +00:00
Tony Lownds 1fc1fe840e Make this script execute using pythonw 2002-12-23 18:36:14 +00:00
Tony Lownds b0bfd0f4aa Revert to revision 1.3; Mac OS X has a platform specific startup script, macosx_main.py 2002-12-23 18:12:41 +00:00
Tony Lownds 103ee91410 Move boolcheck to PyShell 2002-12-23 18:11:28 +00:00
Kurt B. Kaiser 710fa6c6df Alt-H was conflicting with the Help menu on Windows.
Let's try Alt-2....
2002-12-23 03:35:27 +00:00
Kurt B. Kaiser da4d3c1e85 M MANIFEST.in
M PyShell.py
M idlever.py
M setup.py

1. Update MANIFEST.in to include all non-pure Python files
2. PyShell and idlever reflect Rev 0.9a0
3. setup.py modified to install IDLE as a collection of modules with
   a .pth file living at the idlelib level in site-packages.  This was
   done to make it easier to run from the source directory prior to
   installing IDLE.  This approach may change back to the package
   technique depending on what happens with the Mac installation
   development.
2002-12-23 03:31:49 +00:00
Kurt B. Kaiser 18091540db Add configuration for packaging. 2002-12-22 01:48:28 +00:00
Kurt B. Kaiser ff002b9305 When IDLE is installed and run from a startup script, the script's
directory becomes sys.path[0].  What is wanted is the directory from which
IDLE was called.

Insert the current working directory in the path if it isn't there
already.
2002-12-21 21:39:11 +00:00
Kurt B. Kaiser dd70e1be91 M PyShell.py
M idle
M setup.py

To be able to run from the source directory or from an installed version
of IDLE, and also to allow the subprocess to find run(), Python needs to
have the idlelib package on its path.

1. Modify setup.py to supply a .pth file living at same level as idlelib
2. Move boolcheck to PyShell.py
3. Remove boolcheck and path setting code from the "idle" script
2002-12-21 21:03:06 +00:00
Kurt B. Kaiser f39f59a5f2 Update the setup file:
1. Make it easier to change the package and script installation names.
2. Update the text files transferred to include the .def and new .txt
   files.
3. Update the description and long description, change email to
   python-dev, update the url to point at sourceforge.
4. Rename the build and install classes for clarity.
2002-12-20 22:40:30 +00:00
Kurt B. Kaiser 4ba6067d6b Remove debugging statement checked in by accident, ah, carelessness. 2002-12-20 19:37:09 +00:00
Kurt B. Kaiser 83a3560527 "'foo' in str" not implemented in Python 2.2, only single character lookup 2002-12-20 17:18:03 +00:00
Tony Lownds 582fa882d2 *** empty log message *** 2002-12-20 04:26:00 +00:00
Tony Lownds f53dec2e4e Update way a subprocess is launched for Mac OS X.
Another applet mechanism has been developed for Python on Mac OS X and
trying to use the -c "__import__('run').main()" trick is just not working.

macosx_main.py is a new file which should be used as the startup file for
Mac OS X applet bundles. This startup file understands a -p option, which
when seen will start run.main(). When running as an applet, this seems like
the best approach.
2002-12-20 04:24:43 +00:00
Kurt B. Kaiser d0e2926d2a Panel Bar on the Bottom is Probably More Common 2002-12-20 01:22:01 +00:00
Kurt B. Kaiser a137cc9cb7 Updated. 2002-12-20 01:19:47 +00:00
Kurt B. Kaiser d5e1cef92f If Edit window has not been saved, offer to save if user tries to Run or
Check the module.
2002-12-19 03:25:34 +00:00
Kurt B. Kaiser 92b5ca37c2 M ColorDelegator.py
M PyShell.py
M ScriptBinding.py

1. Update ScriptBinding.py to highlight a syntax error in the Edit window,
   and place the cursor on the error.  Add a syntax check to the
   Run Script event instead of waiting until the script tries to run and
   raises a syntax error in the shell, forcing the user to navigate back
   to the Edit window to fix it.
2. Modify tag_config's appropriately in PyShell.py and ColorDelegator.py
3. Some minor clean-up in ScriptBinding.py
2002-12-17 21:16:12 +00:00
Kurt B. Kaiser 1bdca5e051 In Shell:
1. If a tab is entered at the prompt, allow it to be backspaced away.
2. Eliminate the beep when hitting <enter> at the prompt.
2002-12-16 22:25:10 +00:00
Kurt B. Kaiser 822a77fcc7 M EditorWindow.py
M PyShell.py

Idlefork SF Bug 440383 - IDLE goes into beep loop
Fix loop in EditorWindow.newline_and_indent_event() and
in addition fix submission of >>> prompt to PyParse.Parser

Eliminate extra attribute EditorWindow.auto_indent
2002-12-16 02:07:11 +00:00
Kurt B. Kaiser bfed346259 M Debugger.py
M IOBinding.py
M PyShell.py

* Could not remove last set of saved breakpoints from a file
* Starting with empty edit window, could not load a file
* Multiple adjacent breakpoints were saved as one breakpoint
* Storing breakpoints whenever a file is closed can get them out
  of synch with the saved version of a file.  Only store them when the
  file is saved.
* Add comment on current limitations on file editing in the presence of
  breakpoints.
* Replace get_current_breaks() with update_breakpoints(), add an update to
  PyShellEditorWindow.breakpoints, which is the master breakpoint data
  structure, and which is used to reload the subprocess debugger.
* Revert Debugger.Debugger.load_breakpoints() to use editwin.breakpoints.
  It is easier to debug the debugger if the breakpoint list in IDLE is
  identical to the list in the subprocess debugger and is transferred when
  the subprocess debugger is restarted, because this list can be easily
  queried.
* Cleanup some linespacing and comments in IOBinding.py
2002-12-14 04:38:51 +00:00
Chui Tey 067d734f9e Prevent debugger from stepping into Idle rpc code 2002-12-12 20:53:19 +00:00
Kurt B. Kaiser e54710bd72 M CallTipWindow.py
M CallTips.py

Calltip fetch was erroring when an Edit window was used without a Shell.
Also, fix CallTipWindow.py so test code will run and add a comment about a
bug which causes the calltip window to override all others.
2002-12-12 19:15:39 +00:00
Kurt B. Kaiser 39c7b45964 Update to reflect current implementation. 2002-12-11 04:42:39 +00:00
Kurt B. Kaiser f06eed08a8 Rework the command line interface, incorporating the shell/edit
configuration selection. Rework the usage message to match.

Also some minor code polishing.
2002-12-11 04:42:04 +00:00
Kurt B. Kaiser 0930c43e43 M PyShell.py
1. Format and print exceptions raised in user code.

M rpc.py
1. Additional debug messages in rpc.py
2. Move debug message enable switch from SocketIO to Client and Server
   to allow separate activation.
3. Add indication of origin (client or server) to debug message
4. Add sequence number to appropriate debug messages

5. Pass string exception arg as a string rather than a tuple.
2002-12-06 21:45:24 +00:00
Kurt B. Kaiser 6eadc6cf7e Enable Check Module 2002-12-03 23:09:23 +00:00
Kurt B. Kaiser 318016be65 Don't use Alt-Fn or Ctrl-Fn keys, reserved for desktop changes in Unix.
Zoom becomes Alt-H  "height"
Check Module becomes Alt-X  "syntax"
2002-12-03 20:34:43 +00:00
Guido van Rossum a1962d6efd Get rid of 1.5.2 compatibility hack. :-) 2002-12-03 09:28:36 +00:00
Kurt B. Kaiser 5f7c4b34b9 Remove dead code in get_stack().
Modify get_stack() and get_exception to be StackTreeItem methods.
SF Bug 610756.  Neal Norwitz.
2002-12-02 05:08:54 +00:00
Kurt B. Kaiser 491427dfe1 Fix beep.
Then remove annoying beep, not needed with breakpoint highlighting.
2002-12-02 04:41:29 +00:00
Neal Norwitz 6453c1f218 Cleanup:
* Remove unused imports
 * Convert some more 1/0 to True/False
 * Shorten up a long line
2002-11-30 19:18:46 +00:00
Neal Norwitz 539594f2f5 Remove unused import
Remove unused variables since they were the return value from grid(),
which is always None
2002-11-30 19:12:41 +00:00
Neal Norwitz 5b0b00fb21 Convert string exceptions to classes, string exceptions are deprecated 2002-11-30 19:10:19 +00:00
Neal Norwitz 672ce57100 Convert some more 1/0 to True/False 2002-11-30 19:04:07 +00:00
Neal Norwitz f4c4f115d8 Add missing self for method call 2002-11-30 18:49:10 +00:00
Neal Norwitz 3e0edbf4d8 Port Martin von Loewis checkin from Python:
Add --check-tkinter to setup.py. Install IDLE. Fixes #634078.
2002-11-30 17:54:17 +00:00
Neal Norwitz ce8ed1a8d5 Port Martin von Loewis checkin from python: Support sdist. 2002-11-30 17:51:41 +00:00
Kurt B. Kaiser 6e44cc2369 M PyShell.py
M rpc.py

SF Bug 629987: Idle not printing prompts following SyntaxError
2002-11-30 06:18:00 +00:00
Kurt B. Kaiser 818855939a Correct an error introduced at Rev 1.30. The keyword arg is necessary
to freeze the value of orig_checkcache.  Otherwise infinite recursion.
2002-11-29 22:10:53 +00:00
Kurt B. Kaiser 4fc904708b Apply Nicolas Riley's Patch.
[ 634250 ] SearchDialogBase.py fix for Tk 8.4.1

SearchDialogBase refers to the grid 'col' option
considered ambiguous with Python 2.2.2 and Tk 8.4.1.
The correct name is 'column'.
2002-11-21 03:02:17 +00:00
Chui Tey 5a231c8f79 By default when getting the search menu, the currently highligted
text is the search term.
2002-11-06 02:18:45 +00:00
Chui Tey 69371d6530 Set breakpoints on remote debugger 2002-11-04 23:39:45 +00:00
Chui Tey 72a8a3b2b8 Tidied up widget placement 2002-11-04 23:07:51 +00:00
Chui Tey a2adb0f6d9 Recalls breakpoints set in a file 2002-11-04 22:14:54 +00:00
Chui Tey a178cff979 [ 629984 ] Smaller font sizes not supported 2002-11-04 03:17:45 +00:00
Chui Tey 993e81a8a5 619127: Recent File Menu Not Updating 2002-11-04 03:11:10 +00:00
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
Kurt B. Kaiser 5afa1dfb72 M CallTips.py Add support for getting calltip from subprocess,
refactor a bit and clean up.

M PyShell.py       Cosmetic changes, delete blank lines, add # on some
                   blank lines.

M rpc.py           Add more debugging capability

M run.py           Add support for getting calltip from subprocess
                   Move import statements
2002-10-10 08:25:24 +00:00
Kurt B. Kaiser c9a5b5c72e Apply Josh Robb's Patch:
[ 617097 ] EditorWindow.py: underline recent files

Added a couple of mods to reduce the indentation level.

Note that the recent files menu doesn't update until
Idle is restarted, pre-existing bug, at least on Linux.
2002-10-06 01:57:45 +00:00
Kurt B. Kaiser beb6bd9659 Josh Robb's Patch
[ 617109 ] WindowList.py: fix win98 quit.
2002-10-04 21:54:41 +00:00
Kurt B. Kaiser a1dee06983 Apply Josh Robb's Patch
[ 617125 ] EditorWindow.py: Fix the wrap
(used 'none' instead of NONE)
2002-10-04 21:33:57 +00:00
Tony Lownds f2324b9e89 Finding a suitable interpreter to spawn needed tweaking on the Mac 2002-09-29 00:34:10 +00:00
Tony Lownds af7a302c78 Mac users now see correct modifiers in the Key Binding Entry window. 2002-09-29 00:23:08 +00:00
Tony Lownds 6565b261b6 Change key binding to avoid conflict. 2002-09-29 00:10:15 +00:00
Kurt B. Kaiser 46466b4c92 Revert Rev 1.6
"Merge Py Idle changes:
Rev 1.7 [Python-idle] loewis
Convert characters from the locale's encoding on output.
Reject characters outside the locale's encoding on input."

Not compatible with Python 2.2.1.  Forwardport as a SF patch.
2002-09-27 00:34:31 +00:00
Kurt B. Kaiser 84f4803f4f Fix Bug 612886 copy/paste menu items fail
(cut vs. Cut etc.)
Fix Bug 613006 Ctrl-x Unix Binding Clears Selection
	(do-nothing does something :)
Leave some debugging prints behind, commented out
M EditorWindow.py
M config-keys.def
M configHandler.py
2002-09-26 22:13:22 +00:00
Kurt B. Kaiser b976419946 Fix bug I created during merge from Python-idle.
Also, decided IDENTCHARS is better as global, after all.
2002-09-23 04:10:37 +00:00
Tony Lownds e49dd4c64b Blank line missing. 2002-09-23 01:11:57 +00:00
Tony Lownds 8b1b8d62a2 Work around Mac OS X transient window issues 2002-09-23 01:04:05 +00:00
Tony Lownds e555fc76a7 Work around Mac OS X platform encoding issues. 2002-09-23 01:01:20 +00:00
Tony Lownds f18efa5643 Added new standard keybinding set for Macs. 2002-09-23 00:57:10 +00:00
Kurt B. Kaiser 16849a7e53 SF Bug #611225.
Bring idle.pyw into alignment with idle.py, eliminate calling deleted
module IdleConf.py
2002-09-19 19:54:55 +00:00
Kurt B. Kaiser f027eac92b Merge Py Idle:
Removing config-mac.txt, not used in Idlefork
2002-09-18 17:30:36 +00:00
Kurt B. Kaiser 628339807e Merge Py Idle changes:
Missed adding "import types" while merging PyShell by hand....
2002-09-18 17:07:05 +00:00
Kurt B. Kaiser 5fab9c67eb Merge Py Idle changes:
Rev 1.4 fdrake
Use string.ascii_letters instead of string.letters (SF bug #226706)

Rev 1.5 doerwalter
(string methods)
2002-09-18 03:30:12 +00:00
Kurt B. Kaiser 2a5e350265 Merge Py Idle changes:
Rev 1.6 GvR
Finally fix SF bug #441172, using a variant of patch ##443626:
canceling an edit operation would not revert the value of the field.
The fix takes care to destroy the Entry object, as suggested in the
patch.

Rev 1.7 Geiger Ho / GvR
(previously applied - Idlefork Rev 1.3)

Rev 1.8 doerwalter
(string methods)
2002-09-18 03:26:47 +00:00
Kurt B. Kaiser 089a64a749 Merge Py Idle changes:
Rev 1.3 nnorwitz
Remove unnecessary imports
2002-09-18 03:17:38 +00:00
Kurt B. Kaiser 7879ad0c4f Merge Py Idle changes:
Rev 1.17 doerwalter
(string methods)
2002-09-18 03:15:56 +00:00
Kurt B. Kaiser d1ec940ffc Merge PyIdle changes:
Rev 1.3 doerwalter
(string methods)
2002-09-18 03:14:11 +00:00
Kurt B. Kaiser 06a0987fa8 Merge Py Idle changes:
Rev 1.2 doerwalter
(string methods)
2002-09-18 03:12:18 +00:00
Kurt B. Kaiser 0f4402dcf7 Merge Py Idle changes:
Rev 1.3 tim_one
Convert a pile of obvious "yes/no" functions to return bool.
2002-09-18 03:10:10 +00:00
Kurt B. Kaiser 05bab1ee93 Merge Py Idle changes:
Rev 1.11 GvR
Fix for SF bug #448835.

Fix this to work with the new (still undocumented) tabnanny API.

I'm afraid Stephen will have to add this fix to the IDLE fork code
base as well.

Rev 1.12 rhettinger
(skip, done differently in Idlefork)

Rev 1.13 time_one
(skip, NA)
2002-09-18 03:05:19 +00:00
Kurt B. Kaiser ce86b10eb8 Merge Py Idle changes:
Rev 1.5 tim_one
Convert a pile of obvious "yes/no" functions to return bool

Rev 1.6 GvR
Rev 1.7 Gvr
(Already merged Idlefork ReplaceDialog.py 1.3.2.1 and 1.4)

Rev 1.8 doerwalter
(string methods)

Rev 1.9 nnorwitz
Remove unnecessary imports
2002-09-18 02:56:10 +00:00
Kurt B. Kaiser 837d15c5b5 Merge Py Idle changes:
Rev 1.35 fdrake
Use string.ascii_letters instead of string.letters (SF bug #226706).
Move computation of sets of characters out of the body of the function
that uses them.

Rev 1.36 tim_one
Convert a pile of obvious "yes/no" functions to return bool

Rev 1.37
(skip, done differently in Idlefork)

Rev 1.38 loewis
Patch #590913: PEP 263 support.

Rev 1.39 loewis
Convert characters from the locale's encoding on output.
Reject characters outside the locale's encoding on input.

Rev 1.40 doerwalter
(string methods)

Rev 1.41
(skipped, done by GvR in rpc)
2002-09-18 02:29:59 +00:00
Kurt B. Kaiser 254eb5380f Merge Py Idle changes:
Rev 1.10 doerwalter
(string methods)
2002-09-17 03:55:13 +00:00
Kurt B. Kaiser d8e20a0e6b Merge Py Idle changes:
Rev 1.6 doerwalter
(string methods)
2002-09-17 03:43:38 +00:00
Kurt B. Kaiser 7827e1707c Merge Py Idle changes:
Rev 1.7 loewis
Convert characters from the locale's encoding on output.
Reject characters outside the locale's encoding on input.
2002-09-17 03:40:47 +00:00
Kurt B. Kaiser 33931ef1a6 Merge Py Idle changes:
Rev 1.4 tim_one
Convert a pile of obvious "yes/no" functions to return bool
2002-09-16 22:16:05 +00:00
Kurt B. Kaiser 6b06f29d09 Merge Py Idle changes:
Rev 1.5  doerwalter
string methods
2002-09-16 22:09:19 +00:00
Kurt B. Kaiser 01166da85a Merge Py Idle changes:
Rev 1.5 tim_one
Convert a pile of obvious "yes/no" functions to return bool.

Rev 1.6 gvanrossum
(partially merged previously, move line outside try: block)

Provisional fix for writefile() [SF bug # 541730].

The problem was that an exception can occur in the text.get() call or
in the write() call, when the text buffer contains non-ASCII
characters.  This causes the previous contents of the file to be lost.

The provisional fix is to call str(self.text.get(...)) *before*
opening the file, so that if the exception occurs, we never open the
file.

Two orthogonal better solutions have to wait for policy decisions:

1. We could try to encode the data as Latin-1 or as UTF-8; but that
   would require IDLE to grow a notion of file encoding which requires
   more thought.

2. We could make backups before overwriting a file.  This requires
   more thought because it needs to be fast and cross-platform and
   configurable.

Rev 1.7 gvanrossum
(previously merged with modifications by Stephen M. Gava)

Add primitive printing support for Unix and Windows.

Rev 1.8 loewis
Patch #590913: PEP 263 support.

Rev 1.9 gvanrossum
(tempfile.py interface -- deferred)

Rev 1.10 tim_one
whitespace normalization

Rev 1.11 nnorwitz
(deferred pending 1.9 integration)
2002-09-16 22:03:37 +00:00
Kurt B. Kaiser f1fe145d20 Merge Py Idle changes:
Rev 1.4 (string methods)

Rev 1.5 Remove unnecessary imports
2002-09-16 02:25:26 +00:00
Kurt B. Kaiser 75e379020e Merge Py Idle changes:
Rev 1.10 (string methods)
2002-09-16 02:22:19 +00:00
Kurt B. Kaiser 220ecbc731 Merge Py Idle changes:
Rev 1.39 GvR
Properly fix SF bug #507298 (Gregor Lingl): shellpython2.2 -Qnew smart
indent error

Use // where int division is intended.  (This breaks IDLE for use with
previous Python versions -- I don't care.)

Rev 1.40 tim_one
Convert a pile of obvious "yes/no" functions to return bool.

Rev 1.41 foffani/loewis
(already merged)  - MS html help

Rev 1.42
(skip, done differently in Idlefork)

Rev 1.43 tzot/rhettinger
Extended IDLE's open module menu item to handle hierarchical module names.
Will look at doing something similar in import.c so that the effort won't
have to be repeated elsewhere.
Closes SF patch 600152.

Rev 1.44 doerwalter
(string methods)
2002-09-16 02:13:15 +00:00
Kurt B. Kaiser aae2094991 Merge Py Idle changes
Rev 1.16
(skip. The Edward K. Ream breakpoint fix has been added to bdb.py
and idlefork Debugger.py no longer overrides Bdb.set_break() )

Rev 1.17
Remove unnecessary imports
2002-09-16 01:06:52 +00:00
Kurt B. Kaiser a287644204 Merge Py Idle changes
Rev 1.13 (string methods)
2002-09-15 22:09:16 +00:00
Kurt B. Kaiser 908aece9f7 Merge Py Idle changes
Rev 1.9
Improve handling of docstrings.  I had feared this was a case of
introspection incompatibility, but in fact it's just that calltips
always gave up on a docstring that started with a newline (but
didn't realize they were giving up <wink>).

Rev 1.10
(already merged)

Rev 1.11
(whitespace normalization, skip this time)

Rev 1.12
Remove unnecessary imports
2002-09-15 22:02:58 +00:00
Kurt B. Kaiser e72f05d5fb Merge Py Idle changes
Rev 1.4
SF bug 546078:  IDLE calltips cause application error.
Assorted crashes on Windows and Linux when trying to display a very
long calltip, most likely a Tk bug.  Wormed around by clamping the
calltip display to a maximum of 79 characters (why 79? why not ...).

Bugfix candidate, for all Python releases.

Rev 1.5
Remove unnecessary imports
2002-09-15 21:43:13 +00:00
Kurt B. Kaiser c209b3dab5 Merge Py Idle's Rev 1.16 (string methods) 2002-09-15 21:38:20 +00:00
Kurt B. Kaiser 1b3c26998e Merge Py Idle's changes to AutoIndent.py into EditorWindow.py since
EditorWindow has incorporated AutoIndent

Rev 1.17
classifyws():  Fix a "/" to work under -Qnew (as well as without it).
Bugfix candidate!

Rev 1.18
(Already merged)

Rev 1.19
smart_backspace_event():  remove now-pointless int() call.
Bugfix candidate:  the current state of AutoIdent.py should be in 2.2.1.

Rev 1.20
Apply diff2.txt from SF patch http://www.python.org/sf/572113
(with one small bugfix in bgen/bgen/scantools.py)
This replaces string module functions with string methods
for the stuff in the Tools directory. Several uses of
string.letters etc. are still remaining.
2002-09-15 21:31:30 +00:00
Kurt B. Kaiser 87807a66c4 Merge Py Idle's Rev 1.5
Use string.ascii_letters instead of string.letters (SF bug #226706)
2002-09-15 20:50:02 +00:00
Kurt B. Kaiser ad2bf5cb44 Initial revision 2002-09-14 23:25:29 +00:00
Kurt B. Kaiser 6622eecdaa Bump to reflect final cleanup of Config system and first pass GRPC
completed
2002-09-14 04:24:43 +00:00
Kurt B. Kaiser 3ae4eaab88 MERGE DS_RPC_BRANCH into MAIN
Removed Files:
 	AutoIndent.py IdleConf.py MultiScrolledLists.py Separator.py
 	config-unix.txt config-win.txt config.txt eventparse.py
 	keydefs.py
2002-09-14 03:30:46 +00:00
Kurt B. Kaiser 9ef8f428a3 MERGE DS_RPC_BRANCH into MAIN:
config-keys.def
    AutoIndent merged 21Jul
2002-09-14 03:18:43 +00:00
Kurt B. Kaiser a9f8cbc3bd MERGE DS_RPC_BRANCH into MAIN
configHandler.py
    AutoIndent merged 21Jul
2002-09-14 03:17:01 +00:00
Kurt B. Kaiser c7273a3832 MERGE DS_RPC_BRANCH into MAIN:
config-extensions.def
    AutoIndent merged 21Jul
2002-09-14 03:15:06 +00:00
Kurt B. Kaiser 39df7c440b MERGE DS_RPC_BRANCH into MAIN:
configDialog.py
    AutoIndent merged 21Jul
2002-09-14 02:58:07 +00:00
Kurt B. Kaiser b3705a3dd1 MERGE DS_RPC_BRANCH into MAIN
ToolTip.py
    cleanup 05Aug
2002-09-14 02:56:04 +00:00
Kurt B. Kaiser 2def78bddb MERGE DS_RPC_BRANCH into MAIN
ReplaceDialog
    (missed a change Py Idle 04Apr2002, Booleans, pick up later)
    track Py Idle: GvR drops 1.5.2 re support 24 Jul
2002-09-14 02:53:05 +00:00
Kurt B. Kaiser ee7afca550 MERGE DS_RPC_BRANCH into MAIN
PyShell.py
    don't track Py Idle patch 543222 - disable script bindings in shell
    since it was done differently in MAIN

    Remove "binding comments" 05 Aug 1.13.2.2 to 1.13.2.3
2002-09-14 02:50:56 +00:00
Kurt B. Kaiser 8c11f7e3bf MERGE DS_RPC_BRANCH into MAIN
ParenMatch.py
    Remove last dependencies to old config backend 06Aug
2002-09-14 02:46:19 +00:00
Kurt B. Kaiser 12b9f340ce MERGE DS_RPC_BRANCH into MAIN
EditorWindow.py
    don't track Py Idle patch 543222 - disable script bindings in shell
    since it was done differently in MAIN

    Remove "binding comments" 05 Aug 1.23.2.3 to 1.23.2.4
    Remove last dependencies to old config backend 06Aug to 1.23.2.5
2002-09-14 02:40:17 +00:00
Kurt B. Kaiser cb7a383bad MERGE DS_RPC_BRANCH into MAIN
EditorWindow.py
    AutoIndent merged 21Jul
    Comment out debug messages 21Jul
2002-09-14 02:34:23 +00:00
Kurt B. Kaiser 92cfaf68c7 MERGE DS_RPC_BRANCH into MAIN
CallTips
    track Py Idle loewis: Use ascii_letters to avoid UnicodeErrors 06Aug
2002-09-14 00:55:21 +00:00
Kurt B. Kaiser 0c9b61738b Bindings.py
AutoIndent merged 21Jul
    cleanup and remove references to config backend 06Aug
2002-09-14 00:50:44 +00:00
Kurt B. Kaiser 9c89da277d Merge from DS_RPC_BRANCH
Modified Files:
 	INSTALL.txt
2002-09-12 20:55:43 +00:00
Kurt B. Kaiser 63857a454d M PyShell.py
M RemoteDebugger.py
M ScriptBinding.py

Restart the execution server with a clean environment and execute the
active module from scratch upon activation of Run/F5.

Add functionality to PyShell.py to restart the execution server in a new
subprocess.  The server makes a connection to the Idle client which sends a
block of code to be executed.

Modify ScriptBinding.py to restart the subprocess upon Run/F5, assuming that
an execution is not currently in progress.  Remove Import Module functionality,
not required now that the code is executed in a clean environment.

If the Debugger is active, also restart the subprocess side of the split
debugger.  Add functionality to RemoteDebugger.py to support this.

At this time breakpoints will be lost in the subprocess if Run/F5 is activated.
A subsequent checkin of PyShell.py will implement reloading of the breakpoints
into the subprocess debugger.  I'm keeping this separate as the design may
change.
2002-09-05 02:31:20 +00:00
Kurt B. Kaiser d01163615a (Re)Apply Sourceforge Python patch 520483, Sourceforge Idlefork patch
521908 (again) to MAIN

The patch applied by Steven was inadvertently reverted during the
transition to GRPC.

Python 2.3a0 (#3, May  8 2002, 23:37:01)
[GCC egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)] on linux2
Type "copyright", "credits" or "license" for more information.
GRPC IDLE Fork 0.8.2
>>> print u'\xbfQu\xe9 pas\xf3?'
¿Qué pasó?
Modified Files:
	OutputWindow.py
2002-09-02 21:29:40 +00:00
Kurt B. Kaiser adc63847e4 1. Revert subprocess environment clearing, will restart subprocess
instead.
2. Preserve the Idle client's listening socket for reuse with the
   fresh subprocess.
3. Remove some unused rpc code, comment out additional unused code.

Modified Files:
ScriptBinding.py rpc.py run.py
2002-08-25 14:08:07 +00:00
Kurt B. Kaiser a552e3a0c9 Improve exception handling across rpc interface
Modified Files:
 	rpc.py
2002-08-24 23:57:17 +00:00
Kurt B. Kaiser 8dcdb77132 GvR provided solution to the socket rebinding timeout problem.
M PyShell.py
M rpc.py
M run.py
2002-08-05 03:52:10 +00:00
Kurt B. Kaiser d694c1faf9 Reset the Python execution server environment to its initial value prior
to executing Run/F5 from an EditorWindow.

M ScriptBinding.py : add call to clear_the_environment()
M run.py           : implemented Executive.clear_the_environment()
2002-07-28 03:35:31 +00:00
Kurt B. Kaiser b417936d40 Reverse the RPC socket connection: Python execution server connects to
Idle client and localhost origin of connection is verified by client.
M PyShell.py
M rpc.py
M run.py
2002-07-26 00:06:42 +00:00
Kurt B. Kaiser 1bf4c2d2c9 Bug: clearing the shell undo list after a prompt was allowing files to be
opened on top of the shell instead of in a new window.
2002-07-21 01:24:28 +00:00
Kurt B. Kaiser dc1e70987f 1. Prevent Undo before IOmark in PyShell.PyShell
2. Consolidate Undo code in EditorWindow.EditorWindow
3. Remove Formatting and Run menus from PyShell
2002-07-11 04:33:41 +00:00
Kurt B. Kaiser 889f8bf259 Modifying EditorWindow causes breakpoints in that module to be removed
from both sides of the split debugger.
M Debugger.py
M EditorWindow.py
2002-07-06 04:22:25 +00:00
Kurt B. Kaiser 491892b25e Decent burial for venerated ancestor (urn in attic) 2002-07-06 01:20:51 +00:00
Kurt B. Kaiser 1d5cec4fd2 Remove dead code. 2002-07-06 01:07:15 +00:00
Kurt B. Kaiser a3436d253c 1. Test Sourceforge checkin, idle-dev posting
2. Remove extraneous comment
2002-07-06 00:51:33 +00:00
unknown ed813bff29 Combine OldStackViewer.py with Debugger.py, removing dead code.
M Debugger.py       : Incorporate StackViewer, NamespaceViewer classes
M StackViewer.py    : remove import OldStackViewer
U OldStackViewer.py : remove file
2002-07-05 22:05:24 +00:00
Kurt B. Kaiser f50d0f96a2 Debugger Exception Info and GUI Stack Exception Traceback: finish
implementation.
2002-07-03 03:55:43 +00:00
Kurt B. Kaiser ffd3a4217a Shutdown subprocess debugger and associated Proxies/Adapters when closing
the Idle debugger.

M PyShell.py       : Call RemoteDebugger.close_remote_debugger()
M RemoteDebugger.py: Add close_remote_debugger(); further polish code used
                     to start the debugger sections.
M rpc.py           : Add comments on Idlefork methods register(), unregister()
                     comment out unused methods
M run.py           : Add stop_the_debugger(); polish code
2002-06-26 02:32:09 +00:00
Kurt B. Kaiser f8096fbba1 Remove all EditorWindow BREAK tags when closing Debugger 2002-06-25 03:28:38 +00:00
Kurt B. Kaiser 83118c6cb3 Clear associated breakpoints when closing an edit window.
M Debugger.py      : Added clear_file_breaks()
M EditorWindow.py  : Clear breaks when closed, commments->docstrings,
                     comment out some debugging print statements
M PyShell.py       : comments->docstrings ; clarify extending EditorWindow
                     methods.
M RemoteDebugger.py: Add clear_all_file_breaks() functionality,
                     clarify some comments.
2002-06-24 17:03:37 +00:00
Kurt B. Kaiser 669f4c3850 1. Debugger Breakpoints, finish implementation
2. Debugger Clear Breakpoints, implement
3. Nice yellow breakpoints for Chui  :)
2002-06-20 04:01:47 +00:00
Kurt B. Kaiser 0e3a57731b Polish RemoteDebugger code.
Use a repr() on the subprocess side when fetching dict values for stack.
The various dict entities are not needed by the debugger GUI, only
their representation.
2002-06-16 03:32:24 +00:00
Kurt B. Kaiser 969de458aa Rework the code to have only the GvR RPC. Output from execution of user
code is directed to the Shell.
2002-06-12 03:28:57 +00:00
Steven M. Gava 7981ce576c add a version of GvR's q&d python idle printing patch,
slightly tweaked and modified for the idlefork config system
2002-06-11 04:45:34 +00:00
Steven M. Gava 72de9c7a9c Geiger Ho's patch for better subclassing 2002-05-27 21:58:05 +00:00
Chui Tey 5d2af63cc3 GvR's rpc patch 2002-05-26 13:36:41 +00:00
Chui Tey 55956c9361 Fixed bug: Split RPC message into two parts instead of three 2002-05-14 23:45:14 +00:00
Steven M. Gava a2bc259dd7 tracking python idle changes:
Provisional fix for writefile() [SF bug # 541730]
2002-04-22 00:42:42 +00:00
Steven M. Gava 931625dc77 tracking python idle changes:
Patch #540583: Open MS Help Docs if available.
2002-04-22 00:38:26 +00:00
Steven M. Gava 1d46e40f58 further work on new config system;
recent files menu
2002-03-27 08:40:46 +00:00
Steven M. Gava 0c5bc8c951 further work on new config system;
user defined help items
2002-03-27 02:25:44 +00:00
Steven M. Gava cedd30b030 _finally_ tracked down and eliminated a major problem
in PyShell.py that was causing extreme headaches in
working on EditorWindow.py
2002-03-27 00:51:53 +00:00
Steven M. Gava dbfe92cd27 further work on dynamic reconfiguration;
keybindings
2002-03-18 02:38:44 +00:00
Steven M. Gava 9d142adfce fixes to tabwidth code removal 2002-03-12 02:33:52 +00:00
Steven M. Gava 63f6714c3a remove tabwidth (for tabs) config stuff,
because of the way the tk text widget handles
tabs they must remain a fixed size in idle
2002-03-12 00:52:42 +00:00
Steven M. Gava b1585417d1 further work on dynamic config changes;
editor font
2002-03-12 00:21:56 +00:00
Steven M. Gava dfd0b296d7 remove debug cruft 2002-03-05 00:31:43 +00:00
Steven M. Gava f31eec0e2e further work on new config system 2002-03-05 00:25:58 +00:00
Steven M. Gava b77d343bc8 First work on making config changes dynamic,
dynamic theme changes
2002-03-02 07:16:21 +00:00
Steven M. Gava 67716b5f53 bugfix for the problem where EditorWindow instances
would appear to freeze for a few seconds on closing
in some cases when running under X
2002-02-26 02:31:03 +00:00
Guido van Rossum 16ac99a959 Fix by Edward K Ream to make breakpoints work on Windows: insert a
missing call to self.canonic().
2002-02-25 23:22:08 +00:00
Steven M. Gava 75a8e65873 tracking changes to python idle:
python Patch #520483: Make IDLE OutputWindow handle Unicode.
2002-02-23 23:27:08 +00:00
Steven M. Gava 82c6682bb7 further work on config system 2002-02-18 01:45:43 +00:00
Steven M. Gava 4974575609 handle user theme and key set deletion 2002-02-18 01:43:11 +00:00
Steven M. Gava e28ee754b0 improvement to keybinding re-use check 2002-02-11 03:45:22 +00:00
Steven M. Gava 9f25e67dd7 base GetHighlight on GetThemeDict for better defaults 2002-02-11 02:51:18 +00:00
Steven M. Gava 46fa7bf86c further work on config saving 2002-02-11 02:28:19 +00:00
Steven M. Gava 052937f0b5 further work on config saving 2002-02-11 02:20:53 +00:00
Steven M. Gava 085eb1b372 further work on config system and config saving 2002-02-05 04:52:32 +00:00
Steven M. Gava 7cff66d469 improve user config dir handling 2002-02-01 03:02:37 +00:00
Steven M. Gava a498af269c more work on configuration saving 2002-02-01 01:33:36 +00:00
Steven M. Gava 2d7bb3fa66 further work on config saving 2002-01-29 08:35:29 +00:00
Steven M. Gava f9bb90e453 further work on saving configs 2002-01-24 06:02:50 +00:00
Steven M. Gava 813b56e387 dialog for getting a new config file section name 2002-01-24 05:59:05 +00:00
Steven M. Gava 8cf2704a59 staying current with python idle fixes 2002-01-23 23:56:41 +00:00
Steven M. Gava d91b0d6a65 fix for python2.2 -Qnew division error,
thanks Tim!
2002-01-23 05:15:17 +00:00
Steven M. Gava bbf5ef552f more on config saving 2002-01-22 11:35:50 +00:00
Steven M. Gava c112cd880a further work on config saving 2002-01-22 05:56:40 +00:00
Steven M. Gava 5f28e8fbfb extension config reading by configDialog and
beginning of configuration saving
2002-01-21 06:38:21 +00:00
Steven M. Gava 72c3bf076f changeover to new keybinding configuration implementation 2002-01-19 10:41:51 +00:00
Steven M. Gava c628a06c70 further work on keybinding configuration 2002-01-19 10:33:21 +00:00
Steven M. Gava 68d7336cb0 keybinding configuration 2002-01-19 01:30:56 +00:00
Steven M. Gava facfc09352 keybinding configuration 2002-01-19 00:29:54 +00:00
Steven M. Gava edb60a7ba9 key binding handling dialog 2002-01-12 09:48:02 +00:00
Steven M. Gava 0cae01c496 loading core keybindings via new config system plus
further devel of highlight handling
2002-01-04 07:53:06 +00:00
Steven M. Gava c597640515 move core functionality of SearchBindings.py into EditorWindow.py proper
adjust configuration sources accordingly
move SearchBindings.py into the attic now
2002-01-04 03:06:08 +00:00
Steven M. Gava ad4f532f65 further development of highlighting and editor preference handling,
plus misc fixes cleanups for new config system
2002-01-03 12:05:17 +00:00
Steven M. Gava 767a7ee9ad remove futzing with text font 2002-01-03 12:04:01 +00:00
Steven M. Gava 361cfcd69b fixups and improvements 2002-01-03 12:02:37 +00:00
Steven M. Gava dc72f48e26 moving to new config system 2002-01-03 11:51:07 +00:00
Steven M. Gava 2d4e03b092 changes to use new tabpages classes 2001-12-05 07:54:07 +00:00
Steven M. Gava 34b8851c5f remove cruft from other project 2001-12-05 06:39:18 +00:00
Steven M. Gava 5b357b977a cleaner tabbed-page mini implementation through classes 2001-12-05 06:32:46 +00:00
Steven M. Gava 17d0154097 further work on new configuration system, specifically,
on keybinding configuration
2001-12-03 00:37:28 +00:00
Steven M. Gava 8c1ab14ada fix for redundant empty parent window when invoked from idle shell window 2001-11-21 05:58:24 +00:00
Steven M. Gava 3b55a891a1 back in harness on new config system 2001-11-21 05:56:26 +00:00
Steven M. Gava d0342cdefa new config implementation 2001-11-04 11:53:10 +00:00
Steven M. Gava 9930061ce2 further config system work 2001-11-04 07:03:08 +00:00
Steven M. Gava c034b47ef3 added ability to set hilightthickness 2001-11-03 14:55:47 +00:00
Steven M. Gava 9dd16b3443 further config system work 2001-11-03 14:54:25 +00:00
Steven M. Gava e16d94b77e more work to support new config system 2001-11-03 05:07:28 +00:00
Chui Tey 8a7b4fa6d2 Documentation patches by bsherwood 2001-10-31 10:40:28 +00:00
Steven M. Gava 7c01786188 more loading from cfg files 2001-10-29 11:19:46 +00:00
Steven M. Gava 41a8532f66 more of config dialog reading from files 2001-10-29 08:05:34 +00:00
Steven M. Gava 2a63a07912 further work supporting reading config dialog values form config files. 2001-10-26 06:50:54 +00:00
Steven M. Gava f126bcb653 dynamic option menu widget. 2001-10-26 06:49:14 +00:00
Steven M. Gava 485f7b6b58 further work on loading config dialog values from the config files 2001-10-26 06:47:09 +00:00
Steven M. Gava 429a86af5b font/tabs config dialog page now reads its data from the config file 2001-10-23 10:42:12 +00:00
Steven M. Gava 1f733baa04 merged port binding error message patch 2001-10-07 11:44:49 +00:00
Steven M. Gava 4eb286874f merged win spawn patch 2001-10-07 11:26:48 +00:00
Steven M. Gava 898a365c27 merged status bar packing patch 2001-10-07 11:10:44 +00:00
Steven M. Gava c11ccf35f4 start of new config handling stuff 2001-09-24 09:43:17 +00:00
Steven M. Gava 33277c767f further work on font config and general feel improvements 2001-08-13 04:36:58 +00:00
Steven M. Gava 28ccc2463e removed some cruft 2001-08-12 01:14:55 +00:00
Steven M. Gava c01e30f072 repair posix fonts fix 2001-08-11 15:48:13 +00:00
Steven M. Gava abdfc4147d support for help menu changes 2001-08-11 07:46:26 +00:00
Steven M. Gava 5b3ac8f98f some re-design 2001-08-11 07:45:28 +00:00
Steven M. Gava 6b1ab255c2 supports about changes 2001-08-11 07:44:28 +00:00
Steven M. Gava 0ba4df89ab adjust help menu bindings 2001-08-11 07:42:37 +00:00
Steven M. Gava 074c9d2b20 beginning of work on the conf. handling smarts 2001-08-08 01:30:38 +00:00
Steven M. Gava 230e5789e5 more fleshing out, this time primarily the 'general' page 2001-08-07 03:28:25 +00:00
Steven M. Gava f213ccb5d1 began font / indentation page 2001-08-05 08:00:28 +00:00
Steven M. Gava 60fc707be5 further work on keybinding page 2001-08-04 13:58:22 +00:00
Steven M. Gava 952d0a57d8 further work on config dialog, particularly highligthing config 2001-08-03 04:43:44 +00:00
Steven M. Gava b9d07b5a8b A more lightweight (and read only) way to view help text
until the new help system is implemented. Removed some
commented cruft.
2001-07-31 11:11:38 +00:00
Steven M. Gava d721c48165 indentation style changed to match existing source 2001-07-31 10:46:53 +00:00
Steven M. Gava 885c0bbd54 improve viewfile handling
indentation style changed to match existing source
2001-07-31 10:44:35 +00:00
Steven M. Gava 7d9ed726fb activate new about dialog for testing 2001-07-31 07:01:47 +00:00
Steven M. Gava 646c65c117 removed redundant separate idlfefork ver 2001-07-31 07:00:39 +00:00
Steven M. Gava 44d3d1a394 some new dialogs and support files for new about and configuration implementations 2001-07-31 06:59:02 +00:00
Steven M. Gava ba247a6bbb updated about info for 0.8.1 release 2001-07-21 09:59:58 +00:00
Steven M. Gava 88ff736ee2 new material for 0.8.1 release 2001-07-21 09:50:55 +00:00
Steven M. Gava fae9fb197b update in preparation for 0.8.1 alpha release 2001-07-20 08:53:38 +00:00
Steven M. Gava d39993ef9d bring up to date for 0.8.1 release 2001-07-20 01:36:49 +00:00
Steven M. Gava 4d712a4d67 minor tidy-ups ready for 0.8.1 alpha tarball release 2001-07-19 04:49:13 +00:00
Kurt B. Kaiser 59e07bde96 INSTALLATION: Remove the coexist.patch instructions
****************
setup.py:

Remove the idles script, add some words on IDLE Fork to the
long_description, and clean up some line spacing.
2001-07-17 05:12:42 +00:00
Kurt B. Kaiser c9a4215482 Put this in the attic, at least for now... 2001-07-17 05:01:04 +00:00
Kurt B. Kaiser 96d8842237 Implement idle command interface as suggested by GvR [idle-dev] 16 July
****************
PyShell: Added functionality:

usage: idle.py [-c command] [-d] [-i] [-r script] [-s] [-t title] [arg] ...

idle file(s)    (without options) edit the file(s)

-c cmd     run the command in a shell
-d         enable the debugger
-i         open an interactive shell
-i file(s) open a shell and also an editor window for each file
-r script  run a file as a script in a shell
-s         run $IDLESTARTUP or $PYTHONSTARTUP before anything else
-t title   set title of shell window

Remaining arguments are applied to the command (-c) or script (-r).

******************
idles: Removed the idles script, not needed

******************
idle:  Removed the IdleConf references, not required anymore
2001-07-17 04:59:01 +00:00
Kurt B. Kaiser d65ca7231a Added installation instructions.
Added a patch which modifies idlefork so that it can co-exist with
"official" IDLE in the site-packages directory. This patch is not
necessary if only idlefork IDLE is installed. See INSTALLATION for further
details.
2001-07-16 07:08:20 +00:00
Kurt B. Kaiser 91e476f297 Add a script "idles" which opens a Python Shell window.
The default behaviour of idlefork idle is to open an editor window instead
of a shell. Complex expressions may be run in a fresh environment by
selecting "run".  There are times, however, when a shell is desired.
Though one can be started by "idle -t 'foo'", this script is more
convenient.  In addition, a shell and an editor window can be started
in parallel by "idles -e foo.py".
2001-07-16 05:50:45 +00:00
Kurt B. Kaiser e75785a646 Call out IDLE Fork in startup message. 2001-07-16 05:25:12 +00:00
Kurt B. Kaiser 21ebb211df Add a script "idles" which opens a Python Shell window.
The default behaviour of idlefork idle is to open an editor window instead
of a shell. Complex expressions may be run in a fresh environment by
selecting "run".  There are times, however, when a shell is desired.
Though one can be started by "idle -t 'foo'", this script is more
convenient.  In addition, a shell and an editor window can be started
in parallel by "idles -e foo.py".
2001-07-16 04:00:10 +00:00
Kurt B. Kaiser 0765976cc4 tabnanny and pyclbr are now found in /Lib 2001-07-14 17:06:13 +00:00
Kurt B. Kaiser 03b75dc007 Remove, was retained for 1.5.2 support 2001-07-14 16:29:46 +00:00
Kurt B. Kaiser 3eb78609c0 Installing Idle to site-packages via Distutils does not
copy the Idle help.txt file.

Ref SF Python Patch 422471
2001-07-14 05:48:44 +00:00
Kurt B. Kaiser b7651761bf py-cvs-2001_07_13 (Rev 1.3) merge
"Make copy, cut and paste events case insensitive.  Reported by Patrick
K. O'Brien on idle-dev. (Should other bindings follow suit?)" --GvR
2001-07-14 05:26:23 +00:00
Kurt B. Kaiser 7711b5f432 py-cvs-2001_07_13 (Rev 1.4) merge
"Move the action of loading the configuration to the IdleConf module
rather than the idle.py script.  This has advantages and
disadvantages; the biggest advantage being that we can more easily
have an alternative main program."  --GvR
2001-07-14 05:21:37 +00:00
Kurt B. Kaiser 40610547be py-cvs-2001_07_13 (Rev 1.4) merge
"Quick update to the extension mechanism (extend.py is gone, long live
config.txt)" --GvR
2001-07-14 05:18:59 +00:00
Kurt B. Kaiser a4c9be88c6 py-cvs-2001_07_13 (Rev 1.16) merge
"Refactored, with some future plans in mind. This now uses the new
gotofileline() method defined in FileList.py"  --GvR
2001-07-14 05:15:29 +00:00
Kurt B. Kaiser bb6b1e9b26 py-cvs-2001_07_13 (Rev 1.34) merge
"Amazing.  A very subtle change in policy in descr-branch actually
found a bug here.  Here's the deal: Class PyShell derives from class
OutputWindow.  Method PyShell.close()
wants to invoke its parent method, but because PyShell long ago was
inherited from class PyShellEditorWindow, it invokes
PyShelEditorWindow.close(self).  Now, class PyShellEditorWindow itself
derives from class OutputWindow, and inherits the close() method from
there without overriding it.  Under the old rules,
PyShellEditorWindow.close would return an unbound method restricted to
the class that defined the implementation of close(), which was
OutputWindow.close.  Under the new rules, the unbound method is
restricted to the class whose method was requested, that is
PyShellEditorWindow, and this was correctly trapped as an error." --GvR
2001-07-14 05:10:34 +00:00
Kurt B. Kaiser 752e4d5531 py-cvs-2001_07_13 (Rel 1.9) merge
"Taught IDLE's autoident parser that "yield" is a keyword that begins a
stmt.  Along w/ the preceding change to keyword.py, making all this
work w/ a future-stmt just looks harder and harder." --tim_one

(From Rel 1.8: "Hack to make this still work with Python 1.5.2.  ;-( "
--fdrake)
2001-07-14 04:59:24 +00:00