I would like to find out how I can launch an independent Python program from existing one in a cross-platform way. The result I am after is that a new terminal window should open (for io independent of the original script).
The following seems to work correctly under Ubuntu and Windows ... but I haven't been able to find a way to make it work under Mac OS. def exec_external(code, path): """execute code in an external process currently works under: * Windows NT (tested) * GNOME (tested) [January 2nd and 15th change untested] This also needs to be implemented for OS X, KDE and some form of linux fallback (xterm?) """ if os.name == 'nt': current_dir = os.getcwd() target_dir, fname = os.path.split(path) filename = open(path, 'w') filename.write(code) filename.close() if os.name == 'nt': os.chdir(target_dir) # change dir so as to deal with paths that # include spaces Popen(["cmd.exe", ('/c start python %s'%fname)]) os.chdir(current_dir) elif os.name == 'posix': try: os.spawnlp(os.P_NOWAIT, 'gnome-terminal', 'gnome- terminal', '-x', 'python', '%s'%path) except: raise NotImplementedError else: raise NotImplementedError ========================== Any help would be greatly appreciated. André -- http://mail.python.org/mailman/listinfo/python-list