make latex pre/postamble a model property

This commit is contained in:
Damien Elmes 2011-04-24 14:10:36 +09:00
parent 3327c27d81
commit 5856ad7545
3 changed files with 18 additions and 18 deletions

View file

@ -41,16 +41,6 @@ defaultConf = {
'nextGid': 2,
'nextGcid': 2,
'mediaURL': "",
'latexPre': """\
\\documentclass[12pt]{article}
\\special{papersize=3in,5in}
\\usepackage[utf8]{inputenc}
\\usepackage{amssymb,amsmath}
\\pagestyle{empty}
\\setlength{\\parindent}{0in}
\\begin{document}
""",
'latexPost': "\\end{document}",
'fontFamilies': [
[u' 明朝',u'ヒラギノ明朝 Pro W3',u'Kochi Mincho', u'東風明朝']
],

View file

@ -33,17 +33,17 @@ def stripLatex(text):
def mungeQA(html, type, fields, model, gname, data, deck):
"Convert TEXT with embedded latex tags to image links."
for match in regexps['standard'].finditer(html):
html = html.replace(match.group(), _imgLink(deck, match.group(1)))
html = html.replace(match.group(), _imgLink(deck, match.group(1), model))
for match in regexps['expression'].finditer(html):
html = html.replace(match.group(), _imgLink(
deck, "$" + match.group(1) + "$"))
deck, "$" + match.group(1) + "$", model))
for match in regexps['math'].finditer(html):
html = html.replace(match.group(), _imgLink(
deck,
"\\begin{displaymath}" + match.group(1) + "\\end{displaymath}"))
"\\begin{displaymath}" + match.group(1) + "\\end{displaymath}", model))
return html
def _imgLink(deck, latex):
def _imgLink(deck, latex, model):
"Return an img link for LATEX, creating if necesssary."
txt = _latexFromHtml(deck, latex)
fname = "latex-%s.png" % checksum(txt)
@ -53,7 +53,7 @@ def _imgLink(deck, latex):
elif not build:
return "[latex]"+latex+"[/latex]"
else:
err = _buildImg(deck, txt, fname)
err = _buildImg(deck, txt, fname, model)
if err:
return err
else:
@ -69,11 +69,11 @@ def _latexFromHtml(deck, latex):
latex = latex.encode("utf-8")
return latex
def _buildImg(deck, latex, fname):
def _buildImg(deck, latex, fname, model):
# add header/footer
latex = (deck.conf["latexPre"] + "\n" +
latex = (model.conf["latexPre"] + "\n" +
latex + "\n" +
deck.conf["latexPost"])
model.conf["latexPost"])
# write into a temp file
log = open(namedtmp("latex_log.txt"), "w")
texfile = file(namedtmp("tmp.tex"), "w")

View file

@ -15,6 +15,16 @@ defaultConf = {
'gid': 1,
'tags': [],
'clozectx': False,
'latexPre': """\
\\documentclass[12pt]{article}
\\special{papersize=3in,5in}
\\usepackage[utf8]{inputenc}
\\usepackage{amssymb,amsmath}
\\pagestyle{empty}
\\setlength{\\parindent}{0in}
\\begin{document}
""",
'latexPost': "\\end{document}",
}
defaultField = {