| import sys | |
| if __spec__ is not None and not sys.flags.safe_path: | |
| # Remove the current directory, prepended by "python -m", so that | |
| # user files do not shadow IDLE's imports (gh-70331). | |
| del sys.path[0] | |
| import os.path | |
| # 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__))) | |
| if idlelib_dir not in sys.path: | |
| sys.path.insert(0, idlelib_dir) | |
| from idlelib.pyshell import main # This is subject to change | |
| main() |