""" See the latex2 parser, this is just a thin wrapper around it. """ # Imports from MoinMoin import wikiutil import re Dependencies = [] splitre = re.compile(r'([^\\])%') class latex2: def __init__(self, macro, args): self.macro = macro self.formatter = macro.formatter self.text = args def renderInPage(self): # return immediately if getting links for the current page if self.macro.request.mode_getpagelinks: return '' if self.text is None: # macro call without parameters return '' # get an exception? for moin 1.3.2 use the following line instead: # L = wikiutil.importPlugin(self.macro.cfg, 'parser', 'latex2', 'Parser') L = wikiutil.importPlugin('parser', 'latex2', 'Parser', self.macro.cfg.data_dir) if L is None: return self.formatter.text("<>") l = L('', self.macro.request) tmp = splitre.split(self.text, 1) if len(tmp) == 3: prologue,p2,tex=tmp prologue += p2 else: prologue = '' tex = tmp[0] return l.get(self.formatter, tex, prologue) def execute(macro, args): return latex2(macro, args).renderInPage()