idle.py modified and simplified to better support

developing experimental versions of IDLE which are
not installed in the standard location.
This commit is contained in:
Kurt B. Kaiser 2009-05-03 01:03:44 +00:00
parent 07ef487a96
commit 106ac46b3f
2 changed files with 14 additions and 21 deletions

View File

@ -3,6 +3,9 @@ What's New in IDLE 2.7a0?
*Release date: XX-XXX-2009* *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 - OutputWindow/PyShell right click menu "Go to file/line" wasn't working with
file paths containing spaces. Bug 5559. file paths containing spaces. Bug 5559.

View File

@ -1,21 +1,11 @@
try: import os.path
import idlelib.PyShell import sys
except ImportError:
# IDLE is not installed, but maybe PyShell is on sys.path: # If we are working on a development version of IDLE, we need to prepend the
try: # parent of this idlelib dir to sys.path. Otherwise, importing idlelib gets
import PyShell # the version installed with the Python used to call this module:
except ImportError: idlelib_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
raise sys.path.insert(0, idlelib_dir)
else:
import os import idlelib.PyShell
idledir = os.path.dirname(os.path.abspath(PyShell.__file__)) idlelib.PyShell.main()
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()