<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DZone Snippets: web code</title>
    <link>http://snippets.dzone.com/posts</link>
    <pubDate>Wed, 08 Oct 2008 01:34:06 GMT</pubDate>
    <description>DZone Snippets: web code</description>
    <item>
      <title>Latex2wiki</title>
      <link>http://snippets.dzone.com/posts/show/2847</link>
      <description>Translate a subset of LaTeX into MoinMoin wiki syntax.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;#!/usr/bin/env python&lt;br /&gt;&lt;br /&gt;#    Copyright (C) 2003, Maxime Biais &lt;maxime@biais.org&gt;&lt;br /&gt;#&lt;br /&gt;#    This program is free software; you can redistribute it and/or modify&lt;br /&gt;#    it under the terms of the GNU General Public License as published by&lt;br /&gt;#    the Free Software Foundation; either version 2 of the License, or&lt;br /&gt;#    (at your option) any later version.&lt;br /&gt;#&lt;br /&gt;#    This program is distributed in the hope that it will be useful,&lt;br /&gt;#    but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the&lt;br /&gt;#    GNU General Public License for more details.&lt;br /&gt;#&lt;br /&gt;#    You should have received a copy of the GNU General Public License&lt;br /&gt;#    along with this program; if not, write to the Free Software&lt;br /&gt;#    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA&lt;br /&gt;#&lt;br /&gt;# $Id: latex2wiki.py,v 1.1.1.1 2004/03/14 18:31:50 max Exp $&lt;br /&gt;&lt;br /&gt;import sys, re&lt;br /&gt;&lt;br /&gt;def dummy(d):&lt;br /&gt;    pass&lt;br /&gt;&lt;br /&gt;NONE = "__@NONE@__"&lt;br /&gt;&lt;br /&gt;tr_list = [&lt;br /&gt;    (r"\\includegraphics.*{(.*)\.eps}", "attachment::%s.png", dummy),&lt;br /&gt;    (r"\\caption{.*}", "", dummy),&lt;br /&gt;    (r"\\label{.*}", "", dummy),&lt;br /&gt;    (r"(.*)\\emph{(.*)}(.*)", """%s'''%s'''%s""", dummy),&lt;br /&gt;    (r"\\item (.*)", " * %s", dummy),&lt;br /&gt;    (r"\\begin{.*}", "", dummy),&lt;br /&gt;    (r"\\end{.*}", "", dummy),&lt;br /&gt;    (r"(.*)``(.*)''(.*)", "%s\"%s\"%s", dummy),&lt;br /&gt;    (r"\\chapter{(.*)}", NONE, dummy),&lt;br /&gt;    (r"\\paragraph{(.*)}", "==== %s ====", dummy),&lt;br /&gt;    (r"\\subsubsection{(.*)}", "==== %s ====", dummy),&lt;br /&gt;    (r"\\subsection{(.*)}", "=== %s ===", dummy),&lt;br /&gt;    (r"\\section{(.*)}", "== %s ==", dummy),&lt;br /&gt;    (r"(.*)\\fig{.*}(.*)", "%s suivant %s", dummy)&lt;br /&gt;    ]&lt;br /&gt;&lt;br /&gt;in_stream  = open(sys.argv[1], "r")&lt;br /&gt;if len(sys.argv) &lt; 3:&lt;br /&gt;    out_stream = sys.stdout&lt;br /&gt;else:&lt;br /&gt;    out_stream = open(sys.argv[2], "w")&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;for i in in_stream.readlines():&lt;br /&gt;    cur_write = 0&lt;br /&gt;    for reg in tr_list:&lt;br /&gt;        m = re.search(reg[0], i)&lt;br /&gt;        if m:&lt;br /&gt;            reg[2](i)&lt;br /&gt;            cur_write = 1&lt;br /&gt;            if reg[1] == NONE:&lt;br /&gt;                break&lt;br /&gt;            print &gt;&gt; out_stream, reg[1] % m.groups()&lt;br /&gt;            break&lt;br /&gt;    if not cur_write:&lt;br /&gt;        out_stream.write(i)&lt;br /&gt;&lt;/code&gt;</description>
      <pubDate>Tue, 17 Oct 2006 12:10:39 GMT</pubDate>
      <guid>http://snippets.dzone.com/posts/show/2847</guid>
      <author>bugmenot (BugMeNot)</author>
    </item>
  </channel>
</rss>
