Commit Graph

662 Commits

Author SHA1 Message Date
Kurt B. Kaiser 20345fb8aa Use Queue's blocking feature instead of sleeping in the main
loop.  Patch # 1190163 Michiel de Hoon
2005-05-05 23:29:54 +00:00
Kurt B. Kaiser 0676dfdce0 Add config-main.def option to make the 'history' feature non-cyclic.
Default remains cyclic.  Python Patch 914546 Noam Raphael.

M IdleHistory.py
M NEWS.txt
M config-main.def
2005-02-03 01:37:14 +00:00
Kurt B. Kaiser acdef858a5 Removed ability to configure tabs indent from Options dialog. This 'feature'
has never worked and no one has complained.  It is still possible to set a
default tabs (v. spaces) indent 'manually' via config-main.def (or to turn on
tabs for the current EditorWindow via the Format menu) but IDLE will encourage
indentation via spaces.

Enable setting the indentation width using the Options dialog.
Bug # 783877

Remove some commented out old code from configDialog.py (related to old
methods for invoking the HelpBrowser).

M EditorWindow.py
M NEWS.txt
M configHandler.py
2005-01-31 03:34:26 +00:00
Kurt B. Kaiser 3069dbb8ec Add keybindings for del-word-left and del-word-right.
M EditorWindow.py
M NEWS.txt
M config-keys.def
M configHandler.py
2005-01-28 00:16:16 +00:00
Kurt B. Kaiser 6af4498602 1. Polish tabbing code.
2. Restore use of set_indentation_params(), was dead code since
   Autoindent.py was merged into EditorWindow.py.
3. Make usetabs, indentwidth, tabwidth, context_use_ps1 instance vars
   and set in EditorWindow.__init__()
4. In PyShell.__init__() set usetabs, indentwidth and context_use_ps1
   explicitly (config() is eliminated).
5. Add Tabnanny check when Module is Run/F5, not just when Checked.
6. Discourage using an indent width other than 8 when using tabs to
   indent Python code.

M EditorWindow.py
M NEWS.txt
M PyShell.py
M ScriptBinding.py
2005-01-19 00:22:59 +00:00
Kurt B. Kaiser b00e89faab If an extension can't be loaded, print warning and skip it instead of
erroring out.
2005-01-18 00:54:58 +00:00
Tim Peters 608c2fff69 Whitespace normalization. 2005-01-13 17:37:38 +00:00
Kurt B. Kaiser 1b6f398c98 Improve error handling when .idlerc can't be created. 2005-01-11 19:29:39 +00:00
Kurt B. Kaiser e852c194e3 Improve error message if rpc'l localcall() fails with unexpected
exception.
2004-12-23 04:39:55 +00:00
Kurt B. Kaiser 5c3df35b6b The GUI was hanging if the shell window was closed while a raw_input()
was pending.  Restored the quit() of the readline() mainloop().
http://mail.python.org/pipermail/idle-dev/2004-December/002307.html

M NEWS.txt
M PyShell.py
2004-12-23 04:20:59 +00:00
Kurt B. Kaiser dcba6622f5 The remote procedure call module rpc.py can now access data attributes of
remote registered objects.  Changes to these attributes are local, however.

M EditorWindow.py
M NEWS.txt
M PyShell.py
M idlever.py
M rpc.py
M run.py
2004-12-21 22:10:32 +00:00
Anthony Baxter e2648eeb14 doodedoodedoo on the way to 2.4 final 2004-11-30 01:28:55 +00:00
Anthony Baxter e48bad7a24 preparing for 2.4 final (wooooooo!) 2004-11-29 01:40:31 +00:00
Kurt B. Kaiser e953511858 On OpenBSD, terminating IDLE with ctrl-c from the command line caused a
stuck subprocess MainThread because only the SocketThread was exiting.

M NEWS.txt
M idlever.py
M run.py
2004-11-19 15:46:49 +00:00
Anthony Baxter 5cc727ad7b 2.4rc1 2004-11-18 12:32:27 +00:00
Kurt B. Kaiser 03562a5e62 Saving a Keyset w/o making changes (by using the "Save as New Custom Key Set"
button) caused IDLE to fail on restart (no new keyset was created in
config-keys.cfg).  Also true for Theme/highlights.  Python Bug 1064535.
2004-11-16 21:31:08 +00:00
Kurt B. Kaiser 5acdf93081 Saving a Keyset w/o making changes (by using the "Save as New Custom Key Set"
button) caused IDLE to fail on restart (no new keyset was created in
config-keys.cfg).  Also true for Theme/highlights.  Python Bug 1064535.

M configDialog.py
2004-11-16 21:28:36 +00:00
Kurt B. Kaiser f7a8899f33 The change in the linecache.checkcache() signature at rev 1.13 caused IDLE to exit
when an exception was raised while running w/o the subprocess.  Python Bug 1063840

M NEWS.txt
M PyShell.py
2004-11-13 21:05:58 +00:00
Anthony Baxter b0c6630794 post-release 2004-11-04 05:23:17 +00:00
Anthony Baxter 9f41f3a192 release shenanigans 2004-11-03 06:21:37 +00:00
Tim Peters 16e3cf535b format_paragraph_event(): Patch 961387 introduced a bug here, causing
the indentation of a comment block to be ignored when reformatting the
block, leading to overly long reformatted lines (too wide by an amount
equal to the indentation width).  Looks like a typo in the original
patch, a 1-character repair.
2004-10-24 23:45:42 +00:00
Anthony Baxter 6a587c160b release shenanigans 2004-10-15 08:07:21 +00:00
Kurt B. Kaiser 183403a271 1. If user passes a non-existant filename on the commandline, just open
a new file, don't raise a dialog.  IDLEfork 954928.
2. Refactor EditorWindow.wakeup() to WindowList.ListedToplevel.wakeup() and
   clarify that the Toplevel of an EditorWindow is a WindowList.ListedToplevel.
3. Make a number of improvements to keyboard focus binding.  Improve window
   raising, especially in the debugger.  IDLEfork Bug 763524 (GvR list).
4. Bump idlever to 1.1a3

M Debugger.py
M EditorWindow.py
M FileList.py
M NEWS.txt
M PyShell.py
M WindowList.py
M idlever.py
2004-08-22 05:14:32 +00:00
Raymond Hettinger 1f65b472c3 SF bug #833957: Ctrl+key combos stop working in IDLE
Make key combinations work with upper and lowercase as is the MS standard.
2004-08-17 08:01:19 +00:00
Martin v. Löwis a9170c7eac Patch #808719: Ignore the locale's encoding if it is an empty string.
Backported to 2.3.
2004-08-12 13:14:52 +00:00
Anthony Baxter ff347cadc4 release date 2004-08-05 07:21:01 +00:00
Kurt B. Kaiser 090e636add EditorWindow.py was not finding the .chm help file on Windows. Typo
at Rev 1.54.  Python Bug 990954
2004-07-21 03:33:58 +00:00
Kurt B. Kaiser 8aa23927e3 Checking sys.platform for substring 'win' was breaking IDLE docs on Mac
(darwin). Also, Mac Safari browser requires full file:// URIs.  SF 900580

M EditorWindow.py
M NEWS.txt
M configHelpSourceEdit.py
M idlever.py
2004-07-15 04:54:57 +00:00
Anthony Baxter 3210b36a28 release dates 2004-07-08 05:59:43 +00:00
Skip Montanaro d916142343 whitespace normalization 2004-07-06 21:53:27 +00:00
Kurt B. Kaiser 49a5fe107f Redirect the warning stream to the shell during the ScriptBinding check of user code
and format the warning similarly to an exception for both that check and for
warnings raised in the subprocess.

M NEWS.txt
M Pyshell.py
M ScriptBinding.py
M run.py
2004-07-04 01:25:56 +00:00
Kurt B. Kaiser 4d5bc6031c Noam Raphel: Further developemt of CodeContext feature.
The visibility state of the code context pane is now persistent between
sessions and the pane does not appear in the shell window.

M CodeContext.py
M EditorWindow.py
M NEWS.txt
M PyShell.py
M config-extensions.def
M configHandler.py
2004-06-06 01:29:22 +00:00
Raymond Hettinger 4e49b836db SF patch #961387: Make IDLE's paragraph reformatting width configurable 2004-06-04 06:31:08 +00:00
Raymond Hettinger c5e378da41 Testing for None should be done with 'is' 2004-05-04 08:34:56 +00:00
Kurt B. Kaiser e3636e05de Fix a bug I introduced which causes all block openers at an indent level
to be shown, instead of outdenting each level.
2004-04-26 22:26:04 +00:00
Kurt B. Kaiser d00587a2ed 1. Add an Options menu entry: Code Context
2. Add a <<toggle-code-context>> envent to the [CodeContext] section of
   config-extensions.def and also a default-on variable, set to 0.
3. Update the help file to include Code Context.

M CodeContext.py
M config-extensions.def
M help.txt
2004-04-24 03:08:13 +00:00
Kurt B. Kaiser 610c7e07f3 1. Polish variables in EditorWindow extension loading and Tkinter variable code.
2. Add exception handling to EditorWindow Tkinter variable setvar() and getvar() fcns.
3. EditorWindow: remove some unneeded comments.
4. Add a separator to the Options menu
5. extend.txt: describe how to create a menu entry which has no keybinding.

M Bindings.py
M EditorWindow.py
M extend.txt
2004-04-24 03:01:48 +00:00
Kurt B. Kaiser 54d1a3b920 - New Extension: CodeContext. Provides block structuring hints for code
which has scrolled above an edit window. Patch 936169 Noam Raphael.

A CodeContext.py
M NEWS.txt
M config-extensions.def
2004-04-21 20:06:26 +00:00
Kurt B. Kaiser cf6f1b69eb M EditorWindow.py
M IOBinding.py
M NEWS.txt
M configDialog.py

- If nulls somehow got into the strings in recent-files.lst
  EditorWindow.update_recent_files_list() was failing.  Python Bug 931336.
2004-04-11 03:16:07 +00:00
Kurt B. Kaiser 6e4620bfb1 1. Make builtin foreground Royal Purple instead of Barney Purple.
2. Touch up help.txt

M config-highlight.def
M help.txt
2004-03-16 03:36:41 +00:00
Kurt B. Kaiser 0bc3d9857f 1. Bug in Patch 805830 fixed by Nigel Rowe
2. Convert 1/0 to True/False
3. Fix a couple of long lines

M ColorDelegator.py
M NEWS.txt
2004-03-15 04:26:37 +00:00
Kurt B. Kaiser 73360a3e61 Add a highlight theme for builtin keywords. Python Patch 805830 Nigel Rowe
M ClassBrowser.py
M ColorDelegator.py
M EditorWindow.py
M NEWS.txt
M PyShell.py
M TreeWidget.py
M config-highlight.def
M configDialog.py
M configHandler.py
2004-03-08 18:15:31 +00:00
Walter Dörwald 70a6b49821 Replace backticks with repr() or "%r"
From SF patch #852334.
2004-02-12 17:35:32 +00:00
Kurt B. Kaiser 7663729ec7 There was an error in the Tk error dialog fix at Rev 1.84 which caused starting
w/o the subprocess to fail.  Check in a fix to IDLE and IDLEfork.

M PyShell.py

Backport candidate, combine with previous.
2004-01-21 22:10:01 +00:00
Kurt B. Kaiser d6ab77d27d rpc.py:SocketIO - Large modules were generating large pickles when downloaded
to the execution server.  The return of the OK response from the subprocess
initialization was interfering and causing the sending socket to be not
ready.  Add an IO ready test to fix this.  Moved the polling IO ready test
into pollpacket().

M NEWS.txt
M rpc.py

Backport candidate.
2004-01-21 19:21:11 +00:00
Kurt B. Kaiser af3eb87802 Added a Tk error dialog to run.py inform the user if the subprocess can't
connect to the user GUI process.  Added a timeout to the GUI's listening
socket.  Added Tk error dialogs to PyShell.py to announce a failure to bind
the port or connect to the subprocess.  Clean up error handling during
connection initiation phase.  This is an update of Python Patch 778323.

M NEWS.txt
M PyShell.py
M ScriptBinding.py
M run.py

Backport candidate.
2004-01-21 18:54:30 +00:00
Kurt B. Kaiser e9802a301d - Print correct exception even if source file changed since shell was
restarted.  IDLEfork Patch 869012 Noam Raphael

Modified Files:
	NEWS.txt run.py
2004-01-02 04:04:04 +00:00
Kurt B. Kaiser 188e25f637 Fix a typo introduced at 1.21
M IOBinding.py

Backported to 23-maint
2003-11-25 05:01:00 +00:00
Kurt B. Kaiser 2303b1c19a Keybindings with the Shift modifier now work correctly. So do bindings
which use the Space key.  Limit unmodified user keybindings to the
function keys.
Python Bug 775353, IDLEfork Bugs 755647, 761557

Improve error handling during startup if there's no Tkinter.

M NEWS.txt
M PyShell.py
M config-keys.def
M configHandler.py
M keybindingDialog.py

Backport candidate.
2003-11-24 05:26:16 +00:00
Kurt B. Kaiser c714d45bf5 Update NEWS.txt to include some items missed earlier. Update the
IDLE version to 1.1a0.
Modified Files:
	NEWS.txt idlever.py
2003-11-24 03:23:16 +00:00
Kurt B. Kaiser 924f616421 - After an exception, run.py was not setting the exception vector. Noam
Raphael suggested correcting this so pdb's postmortem pm() would work.
  IDLEfork Patch 844675

Modified: NEWS.txt  run.py
2003-11-19 04:52:32 +00:00
Neal Norwitz 9920430107 SF #775057, fix IDLE problem in about dialog
If the file doesn't exist, the code to display an error message was broken
Will backport.
2003-10-28 21:57:10 +00:00
Thomas Heller 84ef153c74 Let IDLE use the HTMLHelp docs on Windows, if found.
Already 'backported' to release23-maint.
2003-09-23 20:53:10 +00:00
Kurt B. Kaiser 62685d36aa Python Bug 775061
1. Remove "idle" script, it lives in Tools/scripts/ now.
2. Remove shebang from idle.py, should be called explicitly.
3. Remove obsolete test code from rpc.py; needs unit test.
2003-09-10 02:42:18 +00:00
Martin v. Löwis 8ad1dd7df1 Catch locale.error as well. Fixes #788378. Will backport to 2.3. 2003-09-03 05:13:14 +00:00
Kurt B. Kaiser b785518d05 IDLE didn't start correctly when Python was installed in "Program Files"
on W2K and XP.  Python Bugs 780451, 784183

Backported to 2.2-maint
2003-08-14 14:54:28 +00:00
Kurt B. Kaiser 3f42a6d267 IDLEfork Bug 782759
backported to 23-maint
2003-08-09 01:51:28 +00:00
Martin v. Löwis 249d50a25f Make sure eol_convention is an ASCII string. Fixes #774680.
Will backport to 2.3.
2003-08-05 05:51:20 +00:00
Kurt B. Kaiser 220fecf0f4 Added a banner to the shell startup message discussing possible
warnings from personal firewall software.  Added the same text
to README.txt, updated NEWS.txt for release.

M NEWS.txt
M PyShell.py
M README.txt
2003-07-27 03:24:19 +00:00
Kurt B. Kaiser 7fbc3046df Update for release. 2003-07-27 00:56:41 +00:00
Kurt B. Kaiser 6145a624b8 1. Python Bug 775541: Calltips error when docstring is None. Introduced
by patch 769142.  Fixed by patch 776062. KBK will backport net result
   to IDLE release22-maint and IDLEfork.
2. Update NEWS.txt and idlever for release.
2003-07-23 15:42:14 +00:00
Kurt B. Kaiser cca912279a Update to reflect the current status of the configuration system.
Extensions must still be configured manually and there is currently one
set of extension key bindings for all platforms.

Bring NEWS.txt up to date.

Update CREDITS.txt and idlever.py for release.

M NEWS.txt
M config-extensions.def
M extend.txt
M help.txt
M idlever.py
2003-07-16 03:10:43 +00:00
Raymond Hettinger 61bfb736b4 SF bug #769142: CallTip trimming may loop forever.
Needs to be backported to both IDLE and IDLEFORK.
2003-07-13 10:25:14 +00:00
Raymond Hettinger 931237e2e6 SF patch #768187: replace apply(f, args, kwds) with f(*args, **kwds) 2003-07-09 18:48:24 +00:00
Kurt B. Kaiser bea57c6c35 SF Bug 767794
"Break or continue outside loop causes crash"
2003-07-09 04:27:24 +00:00
Martin v. Löwis bcc651a1f9 Idlefork patch #682347: convert Unicode strings from readline to
IOBinding.encoding. Also set sys.std{in,out,err}.encoding, for both
the local and the subprocess case.
2003-06-22 07:52:56 +00:00
Kurt B. Kaiser 7345375771 Add ':' after IDLE version, fix spacing on a couple of lines I missed 2003-06-16 18:46:42 +00:00
Martin v. Löwis 424a415951 Make CREDITS.txt a Latin-1 file. Extend ViewFile to support file encodings. 2003-06-15 22:28:05 +00:00
Kurt B. Kaiser 7de3772b28 Forwardport Patch from IDLEfork SF 615312
Convert characters from the locale's encoding on output
2003-06-15 17:49:59 +00:00
Kurt B. Kaiser 9e8b828f07 Support testing in .../Lib/idlelib when calling <python PyShell.py>
by providing other modules access to globals set up in PyShell.main()
2003-06-15 17:38:45 +00:00
Kurt B. Kaiser f35092c3d4 Move to Version 1.0b2 2003-06-15 17:12:25 +00:00
Kurt B. Kaiser 61e2c9a402 Forwardport Patch from IDLEfork SF 610329
Remove deprecated tempfile usage
2003-06-14 17:56:25 +00:00
Kurt B. Kaiser b3a0a666f2 Remove the 2.2 compatibility module boolcheck.py and related code
M PyShell.py
R boolcheck.py
M run.py
2003-06-14 03:33:20 +00:00
Kurt B. Kaiser ae8bbff231 Remove reference to IDLEfork 2003-06-14 03:23:56 +00:00
Kurt B. Kaiser 76bcb5cb6d Update NEWS.txt and move info on release 0.8.1 and earlier to HISTORY.txt
M HISTORY.txt
M NEWS.txt
2003-06-14 02:51:06 +00:00
Kurt B. Kaiser 93e8e54924 Interrupt module has been folded into the thread module
Modified Files:
 	run.py
 Removed Files:
 	interruptmodule.c
2003-06-13 22:03:43 +00:00
Kurt B. Kaiser a4e5c4da4d No longer needed. 2003-06-12 04:38:13 +00:00
Kurt B. Kaiser 09cb74ba20 aboutDialog.py:
1. Add additional buttons for Python Copyright and Credits
2. Use the Python LICENSE file instead of the old IDLE LICENSE.txt
3. Add additional buttons for IDLE's README and NEWS
4. Implement a method to read text from a _Printer object
5. Rename the Ok button to Close
6. Clean up to conform to Python code formatting standards

textView.py:
1. Change background to white on all platforms
2. Increase height of frame
3. Add an optional parameter to textViewer to allow inserting text into
   the viewer instead of reading a file.
4. Rename the Ok button to Close
 Modified Files:
 	aboutDialog.py textView.py
2003-06-12 04:20:56 +00:00
Kurt B. Kaiser d78b23025c 1. Remove the Readme entry on the Help Menu, now in About dialog.
2. Change title on About dialog.
 Modified Files:
 	Bindings.py EditorWindow.py
2003-06-12 04:03:49 +00:00
Kurt B. Kaiser fe04afc629 Direct readers to CVS logs. 2003-06-12 03:57:23 +00:00
Kurt B. Kaiser 31dea4cf43 It /is/ a package... 2003-06-12 03:55:24 +00:00
Kurt B. Kaiser 1821056002 Updated for IDLEfork re-integration 2003-06-12 03:51:27 +00:00
Kurt B. Kaiser b67e13d278 Will use the Python LICENSE file instead. 2003-06-12 03:45:55 +00:00
Kurt B. Kaiser d5407da4bc Remove setup file, no longer needed. 2003-06-12 03:44:01 +00:00
Kurt B. Kaiser a00d7bd41c Remove unneeded MANIFEST template. 2003-06-12 03:41:01 +00:00
Kurt B. Kaiser a737bb378b Remove unneeded installation instructions. 2003-06-12 03:39:08 +00:00
Kurt B. Kaiser a8f22d711c Update version. 2003-06-12 03:15:47 +00:00
Kurt B. Kaiser 9067c8d85c SF 748975 Printing unsaved shell fails
M IOBinding.py
2003-06-09 03:12:42 +00:00
Kurt B. Kaiser ef58adf8d6 1. Find in Files Dialog shows text selection if there is one
2. Remove obsolete comment associated with Window menu updating

M EditorWindow.py
M GrepDialog.py
2003-06-07 03:21:17 +00:00
Kurt B. Kaiser 260cb9034c 1. Update WindowList registry when filename changes so that
Window menu updates.
2. Display Python Shell window in Window menu
3. Remove some dead code in FileList.py

M EditorWindow.py
M FileList.py
M WindowList.py
2003-06-06 21:58:38 +00:00
Kurt B. Kaiser 24d7e0cbb8 Avoid problem resolving 'localhost'
M PyShell.py
M rpc.py
M run.py
2003-06-05 23:51:29 +00:00
Guido van Rossum 852f35bbeb Change to <<open-module>>: always pop up the dialog, using the current
selection as the default value.  This is easier to use habitually.
2003-06-05 11:36:55 +00:00
Kurt B. Kaiser 3f8ace9a0f SF 747667 Error Doesn't Decolorize
Also improved error notification if Tabnanny detects a TokenError.

M ScriptBinding
2003-06-05 02:38:32 +00:00
Kurt B. Kaiser d2f4861a0b SF 748973 Guido van Rossum patch
New Window should save in the directory of the Editor Window
from which it was selected.

M EditorWindow.py
M FileList.py
M IOBinding.py
2003-06-05 02:34:04 +00:00
Kurt B. Kaiser 01e3273164 Eliminate the Revert to Default Settings submenu of Option menu.
Not implemented and not needed.
2003-06-02 01:51:38 +00:00
Kurt B. Kaiser 9f36609720 Modify the remote stack viewer to work in the threaded subprocess.
M PyShell.py
M run.py
2003-06-02 01:50:19 +00:00
Kurt B. Kaiser 5ddef75fcf Update for release
Modified Files:
 	NEWS.txt README.txt TODO.txt
2003-06-01 01:11:14 +00:00
Kurt B. Kaiser 6c8579ed4d Set the default for delete-exitfunc in config-main.def to True to handle
abnormal exit situations cleanly, especially stuck user threads.  Future
plan is to intercept the user's atexit functions and run them under
IDLE's control.
2003-06-01 01:08:32 +00:00
Kurt B. Kaiser ce5b6d55b8 SF 745525
Excecution environment and residual shell has cwd set to the directory of
the module being run.

M ScriptBinding.py
2003-05-31 23:44:18 +00:00
Kurt B. Kaiser e394ef8b4a Update for release
Modified Files:
 	CREDITS.txt INSTALL.txt LICENSE.txt aboutDialog.py setup.py
2003-05-30 02:42:02 +00:00
Kurt B. Kaiser 62df044885 Added a config-main General option to delete sys.exitfunc. The default
is not to do that.  VPython and student environment support.

M PyShell.py
M config-main.def
M run.py
2003-05-28 01:47:46 +00:00
Kurt B. Kaiser 8d1f11b0ef Whitespace Normalization
Modified Files:	PyShell.py ScriptBinding.py buildapp.py
2003-05-26 22:20:34 +00:00
Kurt B. Kaiser 053916959a 1. SF Bug 661676
The default font is not highlighted in the Options dialog when
   IDLEfork is first installed.

2. Reduce default font to 10 pt and increase default window height to give
   a better initial impression on Windows.

M config-main.def
M configDialog.py
2003-05-26 20:35:53 +00:00
Kurt B. Kaiser 6c638b6755 Bruce Sherwood RFE/Patch
SF 661318

Adds autosave capability to IDLE and IDLE configuration dialog.

User can Run/F5 without explicit save dialog.

The default is to require the user to confirm the save.

M ScriptBinding.py
M config-main.def
M configDialog.py
2003-05-26 06:23:10 +00:00
Kurt B. Kaiser 6f80594229 Improved the RESTART annotation in the shell window when the user
restarts the shell while it is generating output.  Also improved
annotation when user repeatedly hammers the Ctrl-F6 restart.
2003-05-24 21:12:46 +00:00
Kurt B. Kaiser 36364be3bf Fix a bug in Rev 1.10 - Windows can't handle a leading ':' if the
user's PYTHONPATH is empty (though Linux can).
Modified Files:
	idle idle.py idle.pyw
2003-05-24 21:01:39 +00:00
Kurt B. Kaiser 67fd0ea46d 1. Stake Freddy.
e.g. further improve subprocess interrupt, exceptions, and termination.
2. Remove the workarounds in PyShell.py and ScriptBinding.py involving
   interrupting the subprocess prior to killing it, not necessary anymore.
3. Fix a bug introduced at PyShell Rev 1.66: was getting extra shell menu
   every time the shell window was recreated.

M PyShell.py
M ScriptBinding.py
M rpc.py
M run.py
2003-05-24 20:59:15 +00:00
Kurt B. Kaiser 88957d8d0d Fix race exposed by 2.4 GHz XP box: Don't tear down PyShell until
subprocess polling has terminated.  Tk callit gets unhappy if it can't
find the function 'after' scheduled to run.

M PyShell.py
2003-05-19 23:11:51 +00:00
Kurt B. Kaiser c626658a28 Let Python inform the user what went wrong with the import.
Modified Files:
 	idle idle.py idle.pyw
2003-05-19 02:07:44 +00:00
Kurt B. Kaiser 476740142d Whitespace Normalization 2003-05-18 02:24:32 +00:00
Kurt B. Kaiser 282f122250 Whitespace Normalization
Modified Files:
 	config-extensions.def config-highlight.def config-keys.def
 	config-main.def
2003-05-18 02:21:55 +00:00
Kurt B. Kaiser a2792bec1d Show Freddy the mirror
i.e. improve subprocess exit paths and exeception reporting
2003-05-17 21:04:10 +00:00
Tony Lownds 108c40c74c Added icon for IDLE on OS X 2003-05-17 15:14:10 +00:00
Kurt B. Kaiser 63af08aa93 Nigel Rowe's Patch
[ 735527 ] Re Bug [ 678325 ] ParenMatching Missing AutoIndent

AutoIndent was merged with EditorWindow, this patch corrects
the references in ParenMatch.
2003-05-17 03:51:57 +00:00
Kurt B. Kaiser a80d57c41d Noam Raphael's patch.
SF Patch 686254 "Run IDLEfork from any directory without set-up"

Allows IDLE to run when not installed and cwd is not the IDLE directory.

I took the liberty of moving it to the startup scripts since once IDLEfork
is again a part of Python it will be superfluous and I don't want it to
be forgotten.  But it is very useful for those using IDLEfork standalone!

M CREDITS.txt
M NEWS.txt
M idle
M idle.py
M idle.pyw
2003-05-17 03:15:48 +00:00
Kurt B. Kaiser 11659ade1e 1. When a module is run from an EditorWindow, if its directory is not in
sys.path, prepend it.  This allows the module to import other modules
   in the same directory.  Do the same for a script run from the command
   line.
2. Tweak the IDLE usage message a bit more.

SF Bug 706860 (closed)
SF Patch 686254 (reject specific solution)
SF Patch 507327 (similar)

M PyShell.py
M ScriptBinding.py
2003-05-15 23:23:21 +00:00
Kurt B. Kaiser 8f570a768f 1. Add a command line switch to run without the subprocess
2. Remove the shell menu and associated bindings when running
   without the subprocess.
3. Update the IDLE Help and usage text.
4. Update display_port_binding_error to suggest using -n

M PyShell.py
M help.txt
2003-05-15 18:52:51 +00:00
Kurt B. Kaiser 5db4843c5e 1. Make the startup more robust by not spawning the subprocess if IDLE
can't acquire the port to listen on.
2. Shorten the retry and simplify the messages.
2003-05-15 03:40:51 +00:00
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