Hi,

trying to make a small script which would translate wiki file into
LaTeX and when trying to translate possible HTML elements into LaTeX I
did this:

def latexEnvironments(matchobj):
    print >>sys.stderr,str(matchobj.groups())
    inStr = matchobj.group(1)
    translDict = {'dl': ('\\begin{description}','\\end{description}'),
        'ol': ('\\begin{enumerate}','\\end{enumerate}'),
        'ul': ('\\begin{itemize}','\\end{itemize}'),
        'blockquote': ('\\begin{quote}','\\end{quote}'),
        'center': ('\\begin{center}','\\end{center}'),
        'li': ('\\item',''),
        'pre': ('\\begin{ttfamily}','\\end{ttfamily}')}
    if translDict.has_key(inStr):
        retTuple = translDict[inStr]
    else:
        retTuple = ('','')
    if matchobj.group(0) == '/':
        return retTuple[1]
    else:
        return retTuple[0]

def latexHeadings(matchobj):
    print >>sys.stderr,str(matchobj.groups())
    inStr = matchobj.groups[1]
    translDict = {'h1': '\\section{}',
        'h2': '\\subsection{}',
        'h3': '\\subsubsection{}',
        'h4': '\\subsubsubsection{}',
        'h5': '\\paragraph{}'}
    if translDict.has_key(inStr) and (matchobj.groups[0] != '/'):
        return translDict[inStr]
    else:
        return ''

def latexEmptyElements(matchobj):
    retString = ""
    print >>sys.stderr,str(matchobj.groups())
    inStr = matchobj.group(0)
    translDict = {'br//': '\\\\',
        'hr': '\\par{}\\hrulefill{}\\par{}'}
    if translDict.has_key(inStr):
        return translDict[inStr]
    else:
        return ''



[... snip ...]

# Remove superfluous HTML elements
reEnvironments =
re.compile(r'<(/?)(dl|ol|ul|address|blockquote|center|del\
|ins|div|isindex|noscript|p|pre)>',re.IGNORE)
reHeadings = re.compile(r'<(/?)(h1|h2|h3|h4|h5|h6)>',re.IGNORE)
reEmpty = re.compile(r'<(hr|br)\s*/?>',re.IGNORE)
body = reEnvironments.sub(latexEnvironments,body)
body = reHeadings.sub(latexHeadings,body)
body = reEmpty.sub(latexEmptyElements,body)

The problem is that apparently RE never matches (and no function is
thus called). Can anybody tell me what's wrong with my REs, please?

Thanks for any help,

Matej

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to