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:
++
+ # Enable running IDLE with idlelib in a non-standard location.
+ # This was once used to run development versions of IDLE.
+ # Because PEP 434 declared idle.py a public interface,
+ # removal should require deprecation.
idlelib_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
- sys.path.insert(0, idlelib_dir)
+ if idlelib_dir not in sys.path:
+ sys.path.insert(0, idlelib_dir)
- import idlelib.pyshell
- idlelib.pyshell.main()
-from idlelib.PyShell import main # This is subject to change
++from idlelib.pyshell import main # This is subject to change
+ main()