Mercurial > cpython-lru_cache-weakref
diff Lib/idlelib/PyShell.py @ 18649:8aa63aea7269 legacy-trunk
Implement idle command interface as suggested by GvR [idle-dev] 16 July
****************
PyShell: Added functionality:
usage: idle.py [-c command] [-d] [-i] [-r script] [-s] [-t title] [arg] ...
idle file(s) (without options) edit the file(s)
-c cmd run the command in a shell
-d enable the debugger
-i open an interactive shell
-i file(s) open a shell and also an editor window for each file
-r script run a file as a script in a shell
-s run $IDLESTARTUP or $PYTHONSTARTUP before anything else
-t title set title of shell window
Remaining arguments are applied to the command (-c) or script (-r).
******************
idles: Removed the idles script, not needed
******************
idle: Removed the IdleConf references, not required anymore
| author | Kurt B. Kaiser <kbk@shore.net> |
|---|---|
| date | Tue, 17 Jul 2001 04:59:01 +0000 |
| parents | 384a61fa6f5a |
| children | 1ca228e21a98 |
line wrap: on
line diff
--- a/Lib/idlelib/PyShell.py Tue Jul 17 04:05:43 2001 +0000 +++ b/Lib/idlelib/PyShell.py Tue Jul 17 04:59:01 2001 +0000 @@ -709,17 +709,19 @@ return 1 usage_msg = """\ -usage: idle.py [-c command] [-d] [-e] [-s] [-t title] [arg] ... +usage: idle.py [-c command] [-d] [-i] [-r script] [-s] [-t title] [arg] ... + +idle file(s) (without options) edit the file(s) --c command run this command --d enable debugger --e edit mode; arguments are files to be edited --s run $IDLESTARTUP or $PYTHONSTARTUP before anything else --t title set title of shell window +-c cmd run the command in a shell +-d enable the debugger +-i open an interactive shell +-i file(s) open a shell and also an editor window for each file +-r script run a file as a script in a shell +-s run $IDLESTARTUP or $PYTHONSTARTUP before anything else +-t title set title of shell window -When neither -c nor -e is used, and there are arguments, and the first -argument is not '-', the first argument is run as a script. Remaining -arguments are arguments to the script or to the command run by -c. +Remaining arguments are applied to the command (-c) or script (-r). """ class usageError: @@ -781,29 +783,34 @@ cmd = None edit = 0 debug = 0 + interactive = 0 + script = None startup = 0 try: - opts, args = getopt.getopt(argv, "c:deist:") + opts, args = getopt.getopt(argv, "c:dir:st:") except getopt.error, msg: sys.stderr.write("Error: %s\n" % str(msg)) sys.stderr.write(usage_msg) sys.exit(2) for o, a in opts: - noshell = 0 + noshell = 0 # There are options, bring up a shell if o == '-c': cmd = a if o == '-d': debug = 1 - if o == '-e': - edit = 1 + if o == '-i': + interactive = 1 + if o == '-r': + script = a if o == '-s': startup = 1 if o == '-t': PyShell.shell_title = a if noshell: edit=1 + if interactive and args and args[0] != "-": edit = 1 for i in range(len(sys.path)): sys.path[i] = os.path.abspath(sys.path[i]) @@ -860,9 +867,11 @@ shell.open_debugger() if cmd: interp.execsource(cmd) - elif not edit and args and args[0] != "-": - interp.execfile(args[0]) - + elif script: + if os.path.isfile(script): + interp.execfile(script) + else: + print "No script file: ", script shell.begin() self.idle()
