20

我正在使用 markdown 和 pandoc 进行科学写作,我知道我可以使用更改最终 pdf 的边距

使用 pandoc 从 Markdown 转换为 PDF 时设置边距大小

但是很多时候期刊要求在投稿中使用双行和行号,问题是如何更改这些,我对 LaTex 了解不多,所以我迷失在那个丛林中。

谢谢!

4

3 回答 3

38

在更新的 Pandoc 版本中,您可以使用YAML 标头并在其中包含一堆元数据,而不是使用命令行上的选项。因此,例如,您可以将其放在.md文件的顶部:

---
title: The Document Title
author:
    - Your Name
    - Co Author
date: \today{}
geometry: margin=2cm
header-includes:
    - \usepackage{setspace}
    - \doublespacing
    - \usepackage{lineno}
    - \linenumbers
---

Document Text

pandoc 将读取这些选项并自动应用它们。

于 2015-04-15T06:42:26.727 回答
23

也许有一个简单的方法:生成一个包含我们需要的包的文件

 \usepackage{setspace}
 \doublespacing
 \usepackage[vmargin=1in,hmargin=1in]{geometry}
 \usepackage{lineno}
 \linenumbers

我将其命名为 options.sty。并使用 -H FILE 选项,该选项在序言末尾包含 FILE 的内容。(在https://github.com/karthikram/smb_git中使用)

 pandoc -H options.sty --bibliography mypaper.bib mypaper.md -o mypaper.pdf 

优点是我们不需要编辑模板。要添加行号、更改边距和设置间距,它可以工作。

于 2013-02-20T03:54:06.400 回答
12

您需要使用自定义的 LaTeX 模板。首先,使用 pandoc 创建默认模板的副本:

pandoc -D latex > mytemplate.latex

现在编辑这个模板。在序言中的某处(在\documentclass{...}和之间\begin{document}),插入行

\usepackage{setspace}
\doublespacing

然后,使用您的自定义模板:

pandoc --template mytemplate.latex mypaper.txt -o mypaper.tex
于 2013-02-15T01:19:46.680 回答