Tim Arnold wrote: > I have an external process, 'tralics' that emits mathml when you feed it > latex equations. I want to get that mathml into a string. > > The problem for me is that tralics wants to talk to a tty and I've never > done that before; it basically starts its own subshell. > > I have the following code which works for simple things. I'm not sure > this is the best way though: basically I got this from google... > > import os,sys > import subprocess > import shlex > import pty > cmd = 'tralics --interactivemath' > > (master, slave) = pty.openpty() > p = subprocess.Popen(shlex.split(cmd),close_fds=True, > stdin=slave,stdout=slave,stderr=slave) > > os.read(master,1024) # start the process > os.write(master,'$\sqrt{x}$\n') # feed it an equation > mathml.append(os.read(master,1024)) # get the mathml in a string > > os.write(master,'$\sqrt{x}$\n') # feed more equations > mathml.append(os.read(master,1024)) # get the next string > > > Any suggestions for improvement?
Do you know about pexpect? http://pypi.python.org/pypi/pexpect -- http://mail.python.org/mailman/listinfo/python-list