14 febbraio 2012

Scrivere un libro usando Pandoc e Markdown

Per scrivere narrativa di solito si usano degli elaboratori di testo classici come Microsoft Office o Open Office. Con questo post vi spiego che c’è una via alternativa che usa un approccio diverso che vi consentirà di concentrarvi sui contenuti, lasciando da parte i troppi fronzoli che caratterizzano i programmoni menzionati sopra.
Il sistema Markdown di video scrittura che vado a descrivervi utilizza un semplice editor di testi come il notepad,

Cos’è il Markdown

Il Markdown è un linguaggio di formattazione semplicissimo; a differenza dell’HTML o del Latex, un documento scritto in Markdown può essere tranquillamente letto e stampato così com’è, è questa proprio la filosofia iniziale di questo linguaggio sviluppato da John Gruber il quale l’aveva concepito principalmente per creare creare pagine web. Con Pandoc invece, dal file Markdown oltre all’HTML possiamo ottenere anche ODT (Open Office) RTF, EPUB, Latex, PDF e molti altri formati.

Ecco un breve esempio di come si scrive in Markdown.

# Titolo 1 #

Questo è un paragrafo

Questo è un’altro paragrafo.

## Titolo 2 ##

*Testo in corsivo*

** Testo in grassetto**

>Questa è una citazione^[Questa è una nota a piè pagina]


(Il comando per le note a piè pagina è un’estensione Pandoc, non è presente nel Markdown originale). Con queste semplici regole potete scrivere un libro intero usando un editor di testi, poi ci sono comandi per altre funzioni, ma questi sono quelli basilari.

Programmi da utilizzare

Un editor qualsiasi
Personalmete preferisco Gedit su Linux, e Notapad++ su Windows, ma va bene qualsiasi editor, compreso il notepad l'importante è che salviate il file di testo come UTF-8 (Unicode)

Pandoc
Su Linux lo trovate direttamente nei repository delle migliori distribuzioni
Per le versioni Windows e Mac andate qui.

Come procedere
Dovete semplicemente creare un file di testo e scriverci usando le regole illustrate sopra.

Una volta che avremo il nostro testo (ad esempio: testo.txt) dovremo compilarlo:

Con il terminal su Linux o con il prompt MS-DOS su Windows spostatevi nella cartella di lavoro e digitate:

pandoc testo.txt -S -o testo.html
(Per creare il file HTML)

pandoc testo.txt -S -o testo.odt
(Per creare il file Open Office)

pandoc testo.txt -S -o testo.rtf
(Per creare il file RTF)

Il comando -o serve per produrre il file in uscita, quello -S per trasformare apostrofo e virgolette nei corrispettivi tipografici.

Ma questi sono solo i formati principali, molto utili possono risultare il formato ePub e il Latex. Avendo un sistema Latex installato sul nostro computer, Pandoc è anche in grado di trasformare i documenti direttamente in PDF.

Per un elenco completo dei comandi e delle funzioni i Pandoc potete rivolgervi direttamente al sito del programma realizzato da John MacFarlane: http://johnmacfarlane.net/pandoc/

Seguirà una guida che spiega come realizzare eBook in formato ePub con Pandoc, e come trasformarli in formato Kindle (mobi) con Calibre.

4 commenti:

gpweb ha detto...

interessante man... però nell'html ho il problema degli accenti... tu no ?

Renato ha detto...

E' per la codifica UTF-8. Pandoc ti crea il file HTML senza header, quelli li dovresti aggiungere tu se hai intenzione di pubblcare la pagina su web. Devi aggiungere questa stringa agli header HTML:

"meta content='text/html; charset=UTF-8' http-equiv='Content-Type'/"

(Al posto delle "" metti i <> che altrimenti il sistema di commenti lo scambia per TAG e non lo accetta)

Oppure trasformare il file HTML in ANSI.

Anonimo ha detto...

Salve, sto usando Linux Ubuntu e non riesco a convertire i file scritti in Markdown a Pandoc. Che dicitura dovrei usare per convertirgli correttamente? Grazie
A.N.

Renato ha detto...

@anonimo In che senso? Con Pandoc puoi usare tranquillamente il file Markdown e convertirlo.