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

Reply via email to