# This is about all it requires to write a wish shell in Python! import _tkinter import os tk = _tkinter.create(os.environ['DISPLAY'], 'wish', 'Tk', 1) tk.call('update') cmd = '' while 1: if cmd: prompt = '' else: prompt = '% ' try: line = raw_input(prompt) except EOFError: break cmd = cmd + (line + '\n') if tk.getboolean(tk.call('info', 'complete', cmd)): tk.record(line) try: result = tk.call('eval', cmd) except _tkinter.TclError, msg: print 'TclError:', msg else: if result: print result cmd = ''