mirror of
				https://github.com/python/cpython.git
				synced 2025-10-25 15:58:57 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			27 lines
		
	
	
	
		
			536 B
		
	
	
	
		
			Python
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
	
		
			536 B
		
	
	
	
		
			Python
		
	
	
		
			Executable file
		
	
	
	
	
| # 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 = ''
 | 
