在我的MacBook(OSX Mountain Lion)上,我曾使用此Pandoc命令将Markdown转换为PDF:
$ markdown2pdf -N -o pandoc_output.pdf --xetex --toc --template=mytemplate.tex myfile.md
但markdown2pdf
不再有效,--xetex
中的markdown2pdf -N -o ../../Desktop/pandoc_output.pdf --xetex --toc --template=mytemplate-headers-garamond_date.tex
选项已弃用。
如果我这样做:
$ pandoc -N -o Desktop/pandoc_output.pdf --xetex --toc --template=mytemplate.tex myfile.md
我明白了:
pandoc: unrecognized option `--xetex'
但如果我拿出--xetex
并执行此操作:
$ pandoc -N -o Desktop/pandoc_output.pdf --toc --template=mytemplate.tex myfile.md
然后我明白了:
pandoc: Error producing PDF from TeX source.
! Package hyperref Error: Wrong driver option `xetex',
(hyperref) because XeTeX is not detected.
See the hyperref package documentation for explanation.
Type H <return> for immediate help.
...
l.3925 \ProcessKeyvalOptions{Hyp}
解决方案是什么?
答案 0 :(得分:17)
尝试使用--latex-engine=xelatex
代替--xetex
答案 1 :(得分:6)
这个问题的先前答案对我有帮助,因为我几年前安装了pandoc,但从未使用过Tex Live。因此我不知道我是否正确安装它,所以放入整个路径帮助我看到它正常工作,如下所示:
pandoc --latex-engine=/usr/local/texlive/2012basic/bin/universal-darwin/xelatex
这是您从Pandoc安装页面下载的BasicTex设置的默认安装位置。
我也忘记了使用pandoc -D Latex >my-latex-template.tex
生成模板。在给出一个.tex模板而不是我的.html模板(导致'你没有BEGIN {'错误)之后,我得到了.PDF:换句话说,默认模板工作了。
另外,我没有准确地输入-t pdf
(上面没有显示)将pdf设置为输出格式,但这不正确。输出格式为Latex,然后转换为PDF。没有必要使用dash -t选项指定输出格式。
我希望这段轻微绊倒的记录可以节省一些时间。
答案 2 :(得分:0)
请参阅pandoc User's Guide(或手册页)了解--latex-engine
选项。