2013-04-25 7 views
3

Я пытаюсь использовать pandoc для создания слайд-шоу html из файла уценки с некоторым латексом.Получение некоторых проблем с pandoc и mathjax

Файл here at github.

Если я запускаю следующую команду pandoc:

pandoc -s -t s5 --mathjax apresentacao.md -o index.html 

Математика отлично отображается на MathJax, но я только получить веб-страницу со всеми горками и без функциональных групп слайд-шоу.

Если я бег follwing команды:

pandoc -s --self-contained -t s5 --mathjax apresentacao.md -o index.html 

я получаю совершенно нормально представление, но MathJax не загружается. Получившийся html-файл (без изменений) заполняется двоичными файлами в нем, для загружаемых изображений и загружаемых javascript-библиотек. Но, похоже, он неправильно включил MathJax.

У вас, ребята, была эта проблема? Есть ли простой способ исправить это?

Я использую следующий pandoc версии:

$ pandoc --version 
pandoc 1.11.1 
Compiled with citeproc-hs 0.3.8, texmath 0.6.1.3, highlighting-kate 0.5.3.8. 
Syntax highlighting is supported for the following languages: 
    actionscript, ada, apache, asn1, asp, awk, bash, bibtex, boo, c, changelog, 
    clojure, cmake, coffee, coldfusion, commonlisp, cpp, cs, css, curry, d, 
    diff, djangotemplate, doxygen, doxygenlua, dtd, eiffel, email, erlang, 
    fortran, fsharp, gnuassembler, go, haskell, haxe, html, ini, java, javadoc, 
    javascript, json, jsp, julia, latex, lex, literatecurry, literatehaskell, 
    lua, makefile, mandoc, matlab, maxima, metafont, mips, modula2, modula3, 
    monobasic, nasm, noweb, objectivec, objectivecpp, ocaml, octave, pascal, 
    perl, php, pike, postscript, prolog, python, r, relaxngcompact, rhtml, ruby, 
    rust, scala, scheme, sci, sed, sgml, sql, sqlmysql, sqlpostgresql, tcl, 
    texinfo, verilog, vhdl, xml, xorg, xslt, xul, yacc, yaml 
Default user data directory: /home/calsaverini/.pandoc 
Copyright (C) 2006-2013 John MacFarlane 
Web: http://johnmacfarlane.net/pandoc 
This is free software; see the source for copying conditions. There is no 
warranty, not even for merchantability or fitness for a particular purpose. 
+0

Я предполагаю, что вы намеревались положить '-self-contains' в свою вторую командную строку. См. Https://github.com/jgm/pandoc/issues/682 –

+0

Хорошо указав, я исправлю это. –

ответ

8

Это known issue: --mathjax не очень хорошо работает с --self-contained. Я не изучил его достаточно, чтобы придумать исправление, но предложения приветствуются.

+0

Ничего себе! Андер Джон МакФарлейн сам! : D Спасибо за указание. Любые идеи, почему первая команда не создает рабочую презентацию? Я попробовал это с помощью s5, slidy и некоторых других бэкэндов, и все они просто приводят к простой веб-странице со всем содержимым и без представления. –

+1

Цитирование README: «Для Slidy, Slideous, opens.js и S5 файл, созданный pandoc с опцией' -s/- standalone', включает ссылку на javascripts и файлы CSS, которые предположительно доступны в относительный путь 's5/default' (для S5), ...« Я предполагаю, что у вас нет файлов s5. –

0

Я просто написал питон скрипт для компиляции файла уценки в автономный (требуется подключение к Интернету) HTML файлов с поддержкой MathJax:

#!/usr/bin/env python 
''' 
pandoc_compile.py 

Usage: 
pandoc_compile.py markdown_file template_file 
''' 
import subprocess, re, sys, os 

print("Compiling Markdown file: "+sys.argv[1]) 
print("Using template: "+sys.argv[2]) 
print("Output file: "+sys.argv[1]+".html") 
pandoc_result = subprocess.Popen(['pandoc','--mathjax',sys.argv[1]], stdout=subprocess.PIPE).stdout.read() 
with open(sys.argv[2]) as f: template = f.read() 
final_result = re.sub('{{pandoc_output}}', pandoc_result, template) 
with open(sys.argv[1]+".html", "w") as f: f.write(final_result) 

Он компилирует уценки с pandoc, а затем помещает результат в следующем шаблоне HTML ,

<html> 

<head> 
<script type="text/javascript" 
    src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"> 
</script> 
</head> 

<body> 

{{pandoc_output}} 

</body> 
</html> 
+0

Примечание от будущего: cdn.mathjax.org близится к концу своего срока, проверьте https://mathjax.org/cdn-shutting -down для советов по миграции. –