pandoc用户指南template介绍
pandoc使用模板文件来设置文档所需的各种标题,引用,代码块,页眉和页脚等的样式设定。
要查看使用的默认模板,只需输入pandoc -D latex
其中latex是输出格式的名称。这样查看的默认模板是default.latex模板文件。
您还可以将自定义的模板文件放在(linux环境下:/usr/share/pandoc/date/templates/)这个模板文件夹下
可以在pandoc转换指令中加入--template=mytemplate.latex
选项指定自定义模板。
相信使用过pandoc转pdf的人应该多少都遇到过一些头大的问题,不多说直接上问题
(先卖个关子,大多问题都可以通过设定latex模板来解决)
--latex-engine=xelatex
-V CJKmainfont="KaiTi"
)我是根据自己的需求从各个模板中取自己要的部分进行组合使用。模板的链接在下面都有介绍。
pandoc默认模板:
- default.latex模板
这是pandoc本身自带的默认模板,你可以在这个默认模板上加想要设定的内容,当然也可以自己重新自定义一个模板文件
pandoc自定义模板:
- template.tex模板,
电子书模板,内部对电子书的常规样式进行设定
- pm-template.latex模板
该模板好像使用的人蛮多的,使用改模板编译如遇到如下报错信息:
! Underfined control sequence #编译报错信息
102 \tightlist #编译报错信息
解决办法:
将以下代码加入到模板的导言区
\newcommand{\tightlist}{
\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
! Underfined control sequence #编译报错信息
135 \toprule #编译报错信息
解释:
我测试了下是因为markdown的表格语法开始的上一行是一个空行,就会报这个错。
但是markdownlint语法规则中,表格的上下要有空行分隔,而此模板表格上方出现空行就报错了。
因此要对模板中表格进行设定,可以借鉴eisvogel.tex模板中650行的表格设定来解决问题。
- eisvogel.tex模板
这是我见到写的非常全的一个模板了,里面对很多样式进行了设定,太菜了我没吃懂,也就i是借鉴里面的一些东西。
**使用该模板遇到问题**
用pandoc编译时会报错,报错信息是找不到 xxx.sty 文件,
将那个文件名复制到这个网站(https://ctan.org/pkg/sourcecodepro)
找到相应文件下载,将解压后的文件放到/usr/share/texlive/texmf-dis/tex/latex/路径下
(以上路径是linux环境下的texlive路径)
- yellowpaper的eisvogel.tex模板
yellowpaper这个里对eisvogel.tex这个模板进行了一些调整,也可以做为参考看看
在linux环境下使用指令安装的pandoc其模板的默认路径为:/usr/share/pandoc/date/templates/
有的可能没有date这个文件夹其路径为:/usr/share/pandoc/templates/
将模板文件放到这个路径下,把后缀名改为 .latex 使用pandoc指令转换文件时,指定模板编译
指令例如:pandoc --latex-engine=xelatex --template=pm-template.latex test.md -o test.pdf
这个问题其实还挺难的,我也想有个大佬指点一二,我也是模仿其他人的latex模板增增改改。 都
是看看大佬的模板是怎么写的借鉴模仿。