diff options
author | michele.simionato <devnull@localhost> | 2007-12-02 11:13:11 +0000 |
---|---|---|
committer | michele.simionato <devnull@localhost> | 2007-12-02 11:13:11 +0000 |
commit | 20ce686b0193d67ea56823a30551140f88b3aee1 (patch) | |
tree | 76015e7e4dc0b000bd857a2bdba6fb7976ac29a7 /pypers/wsgi/rst2s5_math.py | |
parent | f08f40335ad7f0ac961f25dabaaed34c4d4bcc44 (diff) | |
download | micheles-20ce686b0193d67ea56823a30551140f88b3aee1.tar.gz |
Commited all py papers into Google code
Diffstat (limited to 'pypers/wsgi/rst2s5_math.py')
-rw-r--r-- | pypers/wsgi/rst2s5_math.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/pypers/wsgi/rst2s5_math.py b/pypers/wsgi/rst2s5_math.py new file mode 100644 index 0000000..3554824 --- /dev/null +++ b/pypers/wsgi/rst2s5_math.py @@ -0,0 +1,29 @@ +import os, re, subprocess + +LATEX_EXPR = re.compile(r'\$.*\$') + +def indent(text): + return '\n ' + '\n '.join(text.splitlines()) + +def latex2mathml(latex): + itex2MML = subprocess.Popen( + ['./itex2MML'], stdin=subprocess.PIPE, stdout=subprocess.PIPE) + out, err = itex2MML.communicate(latex) + assert not err, err + return '\n.. raw:: html\n%s ' % indent(out) + +def rst2s5(rst): + converter = subprocess.Popen( + ['rst2s5'], stdin=subprocess.PIPE, stdout=subprocess.PIPE) + out, err = converter.communicate(rst) + assert not err, err + return out + +def convertfile(fname): + rst = LATEX_EXPR.sub( + lambda m: latex2mathml(m.group()), file('%s.txt' % fname).read()) + print >> file('%s.html' % fname, 'w'), rst2s5(rst), + +if __name__ == '__main__': + convertfile('formulas') + |