Esta es una solución que utiliza LaTeX para generar el PDF. Si tienes texto largo en los archivos Markdown y quieres optimizar la legibilidad tipográfica (y sospecho que lo haces), LaTeX tiende a hacer un trabajo mucho mejor en comparación con los motores HTML.
Utiliza pandoc
como intermediario entre Markdown y LaTeX, y también produce el PDF para usted.
Principal script
#!/bin/bash
md-dir="MARKDOWN_DIRECTORY_HERE"
pdf-dir="PDF_DIRECTORY_HERE"
cd "${md-dir}"
for filename in *.md; do
target-pdf="${pdf-dir}/${filename}.pdf"
pandoc "${filename}" -t latex --latex-engine=xelatex -V geometry=a4paper -V fontsize=11pt -V listings -V header-includes="\usepackage{fancyhdr}\pagestyle{fancyplain}\cfoot{}\rhead{\thepage}\lhead{\texttt{\lstinline/${filename}/}}" -V header-includes="\linespread{2.0}" -o "${target-pdf}"
echo "produced ${filename}.pdf"
lpr "${target-pdf}"
done
Configuración requerida
- Obtenga
pandoc
de Homebrew: brew install pandoc
- Instale la versión mínima de LaTeX llamada BasicTeX
Probando si tienes la configuración correcta
Deberías poder ejecutar en una nueva ventana de Terminal (con bash)
echo "test" | pandoc -t latex --latex-engine=xelatex -o test.pdf
y obtener un test.pdf
documento con sólo la palabra "test"
Personalizaciones
Hay muchas cosas que puedes ajustar con la configuración de LaTeX desde la línea de comandos
- ajustar el espacio entre líneas cambiando el
\linespread{2.0}
multiplicador
- ajustar las marcas sustituyendo
geometry=a4paper
con geometry=a4paper,left=XXmm,right=XXmm,top=XXmm,bottom=XXmm
- cambiar el tamaño de la fuente encadenando
11pt
a 10pt o 12pt, y todo debería escalar en consecuencia
- cambiar la fuente principal añadiendo otro argumento a
pandoc
: -V mainfont="NAME OF FONT"
. También se puede establecer monofont
de esta manera.