#howto - Convertire i formati con Pandoc
Potrebbe capitarci di dover convertire un file word in un semplice txt, oppure un file latex in markdown, un tool semplice e facile da usare che fa al caso nostro si chiama pandoc.
Cos’è
Pandoc è un tool open source da linea di comando scritto in Haskell, che serve a convertire da un linguaggio di markup ad un altro in modo semplice e veloce. Supporta svariati formati tra cui:
latex
markdown
html
docx
Una lista completa dei linguaggi supportati la trovate qui.
Inoltre è in grado di convertire i file da un determinato linguaggio di markup ad un formato pdf, epub ecc…
Pandoc è anche una libreria open source, perciò potrete implementarlo nel vostro codice per usufruire delle sue funzionalità, trovate la documentazione della libreria qui.
Installazione
Come spiegato nella wiki, pandoc si trova in quasi tutti i repository delle distro principali perciò ci bastera scaricarlo con il nostro package manager preferito:
Ubuntu e derivate
apt install pandoc
Fedora
dnf install pandoc
Archlinux
pacman -S pandoc
Utilizzo
Per convertire un file da un formato all’altro ci basterà eseguire:
pandoc -s nomefile.formato -o nomefile.nuovoformato
Per esempio, immaginiamo di voler convertire il nostro file markdown note.md
in un file latex note.tex
ci bastera eseguire:
pandoc -s note.md -o note.tex
NOTA BENE: NON è possibile convertire un pdf o epub in un linguaggio di markup
Altre opzioni
esistono poi opzioni molto interessanti, ne elenchiamo alcune:
--write=formato
: che va a specificare la versione del formato, pensiamo magari di voler convertire un file inhtml5
scriveremo--write=html5
.--template=nometemplate
: che va a creare un file partendo da un template creato da noi in formatoyaml
.--log=nomefile
: Scrive i log della conversione in un filejson
--toc
: Per aggiungere una table of contents, utile perpdf
eepub
--number-sections
: Per numerare sezioni, chapitoli e sottocapitoli quando andremo a convertire un file inpdf
eepub
.