Saltar al contenido
56K

56K

Slow IT – Just 4 Fun

Menú
  • Sistemas Operativos:
  • Virtualización:
Menú

⌨️ Pandoc – De MD a PDF en GNU+Linux

Publicada el 01/04/202520/03/2026 por fanta

Hello outlander. Posiblemente te has dado cuenta de que los archivos MD (MarkDown) no siempre cuando se visualizan tienen el mismo aspecto.

Por ejemplo los generados en hackmd.io no se ven igual que los generados en github o en gitlab.

La respuesta es sencilla y es que por si mismos los archivos MD no llevan estilo. Son simplemente archivos de texto plano escritos con una serie de marcas que posteriormente son interpretadas.

Por tanto en este nuevo post vamos a ver como podemos convertir un archivo escrito en MD a PDF. Para ello vamos a utilizar pandoc.

Instalamos las dependencias

# apt-get install pandoc texlive-latex-base texlive-fonts-recommended texlive-extra-utils texlive-xetex

Un ejemplo de convertir MD a PDF

# pandoc archivo.md --pdf-engine=xelatex -o archivo.pdf

Un ejemplo con más estilo de convertir MD a PDF


$ find /var/www/notas/public/MD/ -cmin -5 -type f -name "*.md" -exec pandoc --toc {} --listings -H /var/www/notas/listings-setup.tex --pdf-engine=xelatex -o {}.pdf \;

Eso permite realizar una busqueda en el directorio /var/www/notas/public/MD/  para convertir los archivos MD a pdf del tirón.

 

Lo interesante es el archivo .tex que le pasamos para aplicarle estilos. Ese archivo podría tener por ejemplo este contenido:

% Contents of listings-setup.tex
\tightlist
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\rhead{Fanta <fanta@56k.es>}
\lhead{notas.56k.es}

\usepackage{xcolor}

\lstset{
basicstyle=\ttfamily,
%numbers=left,
keywordstyle=\color[rgb]{0.13,0.29,0.53}\bfseries,
stringstyle=\color[rgb]{0.31,0.60,0.02},
commentstyle=\color[rgb]{0.56,0.35,0.01}\itshape,
numberstyle=\footnotesize,
%stepnumber=1,
%numbersep=5pt,
backgroundcolor=\color[RGB]{248,248,248},
showspaces=false,
showstringspaces=false,
showtabs=false,
tabsize=2,
captionpos=b,
breaklines=true,
breakatwhitespace=true,
breakautoindent=true,
escapeinside={\%*}{*)},
linewidth=\textwidth,
basewidth=0.5em,
}

Y eso es todo amigo.

Saludos cordiales.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

fanta de naranja
🎩 WEARING THE LETTER
🐌 ALARGALESCENCIA
💾 ABANDONWARE
⛏️ POST-SILICON
⌨️ LESS IS MORE
✍️ THOUGHTS
🎹 MIXTAPES
👨🏻‍💻 SISTEMAS
🔓 HACKING
🛠️ TMP

📰 Feed RSS
🕵️ Buscador
✉️ fanta@56k.es

Comentarios recientes

  • fanta en dosemu2 – Ejecutar aplicaciones de DOS en LINUX
  • Ardillas en la red en dosemu2 – Ejecutar aplicaciones de DOS en LINUX
  • fanta en dosemu2 – Ejecutar aplicaciones de DOS en LINUX
  • Anthk en dosemu2 – Ejecutar aplicaciones de DOS en LINUX
  • Su muy sagrado general Dounalis en dosemu2 – Ejecutar aplicaciones de DOS en LINUX
©2026 56K | Construido utilizando WordPress y Responsive Blogily tema por Superb