Markdown de muestra utilizado como un ejemplo reproducible (hipervínculo de GitHub)

Pegué la rebaja del hipervínculo anterior en el editor de texto Atom y lo guardé como un archivo documentation.md. Puedo ejecutar los siguientes dos comandos de Pandoc separados y cada uno de ellos funciona para reducir los márgenes en mi pdf y aumentar el tamaño de fuente a 12 en el pdf de salida.

pandoc -s -V documentation.md geometry:margin=1in -o documentation.pdf

pandoc -s -V documentation.md fontsize=12 -o documentation.pdf

Cuando combino los dos comandos en lo siguiente, aparece el error que se muestra a continuación. ¿Hay algún problema en la sintaxis de Pandoc?

pandoc -s -V documentation.md geometry:margin=1in fontsize=12 -o documentation.pdf

geometría pandoc: margin = 1in openBinaryFile: no existe (no existe tal archivo o directorio)

0
stackinator 13 nov. 2017 a las 17:25

2 respuestas

La mejor respuesta

Prueba esto:

pandoc documentation.md -V geometry:margin=1in -V fontsize:12pt -s -o documentation.pdf

Las preguntas frecuentes de Pandoc indican:

¿Cómo cambio los márgenes en la salida PDF?

La opción

-V geometry:margin=1in

fijará los márgenes a una pulgada en cada lado.

Tenga en cuenta que geometry:margin=1in es el valor de la bandera -V. Sin embargo, tiene el nombre de archivo documentation.md entre la bandera y su valor. Por lo tanto, está causando que el valor de la bandera sea documentation.md y se asume que geometry:margin=1in es un nombre de archivo. Después de todo, cualquier cadena de texto no precedida por una bandera debe ser un nombre de archivo (lo que explica el error "No existe tal archivo o directorio").

A modo de explicación, la documentación para la marca -V da este formato:

-V KEY[:VAL]

Tenga en cuenta que los corchetes en [:VAL] indican que esa parte es opcional. Entonces -V KEY es completamente válido sin valor, lo que significa que -V documentation.md resultó en que documentation.md sea el KEY de la marca -V (con un valor predeterminado {{X6 }} de true según los documentos).

Es cierto que -V geometry:margin=1in es un caso especialmente extraño y es fácil ver cómo uno puede confundirse. Sin embargo, en este caso, -V es la bandera, geometry es la "CLAVE" y margin=1in es la "VAL". Me doy cuenta de que margin=1in parece un KEY=VAL, pero en este caso todo es un "VAL" por sí solo. Presumiblemente, Pandoc lo procesa más tarde para dividir el "VAL" en sus partes.

Por supuesto, tamaño de fuente es otra variable, por lo que necesita una segunda {{X0 }} marca para definir esa variable: -V fontsize:12pt.

Finalmente, la bandera -s no acepta un valor, así que la moví para que quede claro.

1
Waylan 13 nov. 2017 a las 15:27

También debe escribir -V dos veces, directamente frente a las opciones variables que desea configurar:

pandoc -s documentation.md -V geometry:margin=1in -V fontsize=12 -o documentation.pdf

Consulte http://pandoc.org/getting-started.html y http://pandoc.org/MANUAL.html

0
mb21 13 nov. 2017 a las 14:45