8

在我的 MacBook(OSX Mountain Lion)上,我曾经使用这个 Pandoc 命令将 Markdown 转换为 PDF:

$ markdown2pdf -N -o pandoc_output.pdf  --xetex --toc --template=mytemplate.tex myfile.md

markdown2pdf不再有效,并且--xetex选项 inmarkdown2pdf -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}

解决方案是什么?

4

3 回答 3

18

尝试--latex-engine=xelatex代替--xetex

于 2012-12-29T09:16:26.317 回答
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。不必使用破折号 -t 选项指定输出格式。

我希望我的小失误记录可以节省一些时间。

于 2013-05-29T01:00:24.357 回答
0

有关该选项,请参阅pandoc 用户指南(或手册页)--latex-engine

于 2012-11-04T18:24:19.180 回答