2013-02-14 8 views
13

Używam Przecena & pandoc na piśmie naukowym, wiem, że mogę zmienić marginesy końcowego pdf używającUstawić podwójne odstępy i linia numery podczas konwersji z Markdown do formatu PDF z pandoc

Set margin size when converting from Markdown to PDF with pandoc

Ale bardzo często czasopisma wymagają podwójnych wierszy i numerów wierszy w przesłanych manuskryptach. Pytanie brzmi: jak je zmienić, nie wiem zbyt wiele o LaTeksie, więc zagubiłem się w tej dżungli.

Dzięki!

+1

LaTeX dostarcza pakiet ['setspace'] (http://ctan.org/pkg/setspace), a także [' lineno'] (http://ctan.org/pkg/lineno). Nie znam interfejsu Pandoka ani jego użycia, więc nie jestem w stanie mu pomóc. Jeśli okaże się to problemem czysto TeX/LaTeX, rozważ zgłoszenie własnego postu i przesłanie prośby o przeniesienie do [TeX.SE] (http://tex.stackexchange.com). Nie repostuj tam; raczej flagę do migracji. – Werner

Odpowiedz

20

Jest może w łatwy sposób: wygenerować plik z pakietami my Potrzebuję:

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

Nazwę to options.sty. I użyj opcji -H PLIK, która zawiera zawartość PLIKU na końcu preambuły. (Stosowany w https://github.com/karthikram/smb_git)

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

Zaletą jest to, że nie trzeba zmieniać szablon. Aby dodać prążki, zmień marginesy i ustaw odstępy, działa.

+0

@denten, sposób, w jaki działa dobrze –

+0

Tak, masz rację! Plik wyjściowy następuje po -o. Usunięto, aby uniknąć nieporozumień. – denten

12

Musisz użyć niestandardowego szablonu LaTeX. Najpierw użyj pandoc, aby utworzyć kopię domyślnego szablonu:

pandoc -D latex > mytemplate.latex 

Teraz edytuj ten szablon. Gdzieś w preambule (między \documentclass{...} i \begin{document}), wstawić linie

\usepackage{setspace} 
\doublespacing 

Następnie, aby użyć własnego szablonu:

pandoc --template mytemplate.latex mypaper.txt -o mypaper.tex 
+0

Aby dodać numery linii, czytam dokumentację pakietu 'lineno', ale nie wiem, jak je dodać. – Leosar

24

W nowszej wersji Pandoc można użyć YAML header i dołączyć do tego garść metadanych, zamiast używać opcji z wiersza poleceń. Tak więc, na przykład, można umieścić to na górze pliku .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 

i pandoc odczyta te opcje i stosuje je automatycznie.