blob: bc91a0b35abfea2247b2658e398968777180a7ae [file] [log] [blame]
Guido van Rossum57cd21f2003-04-29 10:23:27 +00001#!/usr/bin/env pythonw
2# IDLE.app
3#
4# Installation:
5# see the install_IDLE target in python/dist/src/Mac/OSX/Makefile
6#
7# Usage:
8#
9# 1. Double clicking IDLE icon will open IDLE.
10# 2. Dropping file on IDLE icon will open that file in IDLE.
11# 3. Launch from command line with files with this command-line:
12#
13# /Applications/Python/IDLE.app/Contents/MacOS/python file1 file2 file3
14#
15#
16
17# Add IDLE.app/Contents/Resources/idlelib to path.
18# __file__ refers to this file when it is used as a module, sys.argv[0]
19# refers to this file when it is used as a script (pythonw macosx_main.py)
20import sys
21
22from os.path import split, join, isdir
23try:
24 __file__
25except NameError:
26 __file__ = sys.argv[0]
27idlelib = join(split(__file__)[0], 'idlelib')
28if isdir(idlelib):
29 sys.path.append(idlelib)
30
31# see if we are being asked to execute the subprocess code
32if '-p' in sys.argv:
33 # run expects only the port number in sys.argv
34 sys.argv.remove('-p')
35
36 # this module will become the namespace used by the interactive
37 # interpreter; remove all variables we have defined.
38 del sys, __file__, split, join, isdir, idlelib
39 __import__('run').main()
40else:
41 # Load idlelib/idle.py which starts the application.
42 import idle