diff options
author | Kurt B. Kaiser <kbk@shore.net> | 2009-05-06 03:38:31 (GMT) |
---|---|---|
committer | Kurt B. Kaiser <kbk@shore.net> | 2009-05-06 03:38:31 (GMT) |
commit | 1521fdae594d87cfc724711aef1a50aa555947d2 (patch) | |
tree | 919f33789a693b0976fd3b74924f4112b5413c33 | |
parent | cef4b81fae5dd90a0c00b04412c3a8ea03064326 (diff) | |
download | cpython-1521fdae594d87cfc724711aef1a50aa555947d2.zip cpython-1521fdae594d87cfc724711aef1a50aa555947d2.tar.gz cpython-1521fdae594d87cfc724711aef1a50aa555947d2.tar.bz2 |
Merged revisions 72226 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r72226 | kurt.kaiser | 2009-05-02 21:03:44 -0400 (Sat, 02 May 2009) | 3 lines
idle.py modified and simplified to better support
developing experimental versions of IDLE which are
not installed in the standard location.
........
-rw-r--r-- | Lib/idlelib/NEWS.txt | 3 | ||||
-rw-r--r-- | Lib/idlelib/idle.py | 33 |
2 files changed, 14 insertions, 22 deletions
diff --git a/Lib/idlelib/NEWS.txt b/Lib/idlelib/NEWS.txt index 9bb47ba..573f45f 100644 --- a/Lib/idlelib/NEWS.txt +++ b/Lib/idlelib/NEWS.txt @@ -30,6 +30,9 @@ What's New in IDLE 2.7? (UNRELEASED, but merged into 3.1 releases above.) *Release date: XX-XXX-2009* +- idle.py modified and simplified to better support developing experimental + versions of IDLE which are not installed in the standard location. + - OutputWindow/PyShell right click menu "Go to file/line" wasn't working with file paths containing spaces. Bug 5559. diff --git a/Lib/idlelib/idle.py b/Lib/idlelib/idle.py index 52e2ebb..a249557 100644 --- a/Lib/idlelib/idle.py +++ b/Lib/idlelib/idle.py @@ -1,22 +1,11 @@ -try: - import idlelib, idlelib.PyShell -except ImportError: - # IDLE is not installed, but maybe PyShell is on sys.path: - print("*** idle.py import error! Trying alternate approach....") - try: - import PyShell - except ImportError: - raise - else: - import os - idledir = os.path.dirname(os.path.abspath(PyShell.__file__)) - if idledir != os.getcwd(): - # We're not in the IDLE directory, help the subprocess find run.py - pypath = os.environ.get('PYTHONPATH', '') - if pypath: - os.environ['PYTHONPATH'] = pypath + ':' + idledir - else: - os.environ['PYTHONPATH'] = idledir - PyShell.main() -else: - idlelib.PyShell.main() +import os.path +import sys + +# If we are working on a development version of IDLE, we need to prepend the +# parent of this idlelib dir to sys.path. Otherwise, importing idlelib gets +# the version installed with the Python used to call this module: +idlelib_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) +sys.path.insert(0, idlelib_dir) + +import idlelib.PyShell +idlelib.PyShell.main() |