![Passare a Linux può causare problemi con la compatibilità dei file. Ad esempio, i documenti non sono uguali in LibreOffice come in Word. Questa è solo una delle ragioni per cui hai bisogno di Pandoc.](img/linux/164/how-easily-convert-between-document-formats-linux.png)
Uno dei problemi spesso citati con il passaggio a Linux è la compatibilità dei file. Invariabilmente invierai utenti di altri file di sistemi operativi e non sembreranno gli stessi quando vengono aperti in applicazioni come Word. Mentre è possibile installare i font o provare VM o emulatori 4 modi per rendere Linux compatibile con un numero ancora maggiore di software 4 modi per rendere Linux compatibile con un numero ancora maggiore di software Leggi di più per cercare di garantire che le cose si presentino con un aspetto coerente, un altro approccio è fare il tuo lavoro in un formato di testo normale, quindi convertilo dopo aver finito.
Uno strumento che puoi usare per convertire tra diversi formati è pandoc, uno strumento essenziale in qualsiasi toolbox di un utente Linux.
Installazione e utilizzo di Pandoc di base
Installare pandoc sulla maggior parte delle distribuzioni Linux è una questione di semplice viaggio nei repository. Sui sistemi basati su Ubuntu, il seguente comando lo installa per te:
sudo apt-get install pandoc
Una volta installato, è possibile iniziare a utilizzare il programma della riga di comando per convertire i file. Eccellente nella gestione di Markdown e altri linguaggi di marcatura leggeri, se si dispone di un file .MD in giro, è possibile convertirlo in HTML con il seguente:
pandoc -o myfile.html myfile.md
L'indicatore -o indica il nome del file di output che si desidera. In questo caso deduce anche il formato di output (HTML) dall'estensione del nome file. Puoi usare i flag -r (per leggere ) e -w (per scrivere ) per dire a pandoc il tipo di conversione che vuoi. Supponiamo che tu sia abituato a scrivere in Markdown, ma devi pubblicare qualcosa su una pagina basata su Mediawiki:
pandoc -r markdown -w mediawiki -o markdown.wiki markdown.md
Nelle sue versioni precedenti, pandoc era focalizzato sul "potenziamento" dei file, nel senso che poteva convertire formati più semplici (come Markdown) in altri più complessi (ad esempio ODT o Microsoft DOCX). Ma ora leggerà anche questi formati più complicati. Ciò significa che se sei abituato a un word processor ma sei tentato da tutti i motivi per utilizzare un formato di testo semplice più piccolo e più portatile. What Is Markdown? 4 motivi per cui dovresti impararlo ora Cos'è Markdown? 4 motivi per cui dovresti impararlo ora Stanco degli editor HTML e WYSIWYG? Allora Markdown è la risposta per te, indipendentemente da chi tu sia. Per saperne di più, è diventato molto più facile.
Data una directory piena di file di Word, il seguente comando convertirà ciascuno di essi in Markdown:
for file in * do pandoc -r docx -w markdown -o "$file".md "$file" done
Tieni presente che questo ti lascerà con i file filename.docx.md, quindi dovrai eseguire un comando di rinomina rapida (o, meglio ancora, aggiungerlo a uno script di shell 5 Idee di impostazione per principianti Linux per Cron Jobs & Shell Script 5 Principianti Idee per l'installazione di Linux per lavori di Cron e script di shell Con bash scripting, è possibile eseguire una serie complessa di attività in un unico passaggio, quindi è perfetto per esigenze elaborate e ripetitive ed è anche un ottimo modo per conoscere il terminale. ).
Opzioni della riga di comando Pandoc
Ora che hai alcune nozioni di base, vedremo alcune delle opzioni più avanzate delle opzioni della riga di comando di pandoc.
File di riferimento ODT / DOCX
Supponi di aver convertito tutti i tuoi file di word processor vecchi e voluminosi in Markdown. Mentre ti godi della gioia di creare testi in chiaro, a un certo punto dovrai condividerli con qualcuno. E che qualcuno potrebbe non essere illuminato come te. È possibile invertire semplicemente i flag di lettura e scrittura per riconvertire il file in formato Word:
pandoc -r markdown -w docx -o wordfile.docx wordfile.md
Ma a qualcuno piace il loro file Word con caratteri particolari, intestazioni numerate, ecc. Il back-end DOCX di Pandoc supporta i file modello, chiamati file di riferimento, proprio per questa occasione. Questi sono i file ODT o DOCX che hai impostato con tutti gli stili di cui hai bisogno. Quindi pandoc applica questi stili quando converte se lo passi al file di riferimento sulla riga di comando:
pandoc -r markdown -w odt --reference-odt=/home/user/path/to/ref-file.odt -o lowriter.odt lowriter.md
Si noti come i caratteri configurati nel file di riferimento sopra (Arial Black per Intestazione 1, ecc.) Vengano visualizzati nel file convertito sotto. Puoi creare tanti di questi file di riferimento di cui hai bisogno (ad esempio, uno per client). Quindi ignora completamente la formattazione mentre scrivi e applica lo stile in un solo passaggio durante la conversione.
Back-end di rendering PDF
Creare PDF è anche un esercizio semplice, una volta installati alcuni pacchetti necessari. Un modo leggero per ottenere la capacità di scrittura in PDF consiste nell'installare il pacchetto wkhtmltopdf, uno strumento da riga di comando per convertire l'HTML in PDF. pandoc lo supporta in modo nativo, quindi se imposti il flag di scrittura in HTML, ma il file di output come PDF, interpreterà questo come tuo intento di usare wkhtmltopdf da solo!
pandoc -r markdown -w html -o nicepub.pdf nicepub.md
In alternativa, puoi utilizzare l'opzione completa utilizzando il sistema di composizione TeTex. Approfitta del fatto che questi pacchetti sono Installazioni consigliate per il pacchetto pandoc reinstallando con il seguente comando:
sudo apt-get install --install-suggests pandoc
Quindi, siediti mentre un sacco (molto, molto) di pacchetti si installa. Una volta completati, puoi convertire il file direttamente in PDF specificandolo come flag di scrittura :
pandoc -r markdown -w pdf -o nicepub-tetex.pdf nicepub.md
Mentre l'opzione wkhtmltopdf richiede l'installazione di un solo pacchetto, con TeTex è possibile ottenere ulteriori risultati di stampa. Vale a dire, i caratteri serif sono usati di default e le pagine sono automaticamente numerate.
Ebook Generator
Infine, pandoc può convertire i tuoi file in ebook adatti per la lettura su un telefono o un e-reader Come gestire la tua collezione di ebook per Amazon Kindle con Calibre Come gestire la tua collezione di ebook per Amazon Kindle con Calibre Il più grande problema con un eReader Kindle di Amazon è che richiede uno sforzo irragionevole per spostare libri tra dispositivi diversi. Prima di Kindle, mi sono innamorato di Calibre. Un po 'pesante ... Per saperne di più. I back-end epub e epub3 ti daranno un ebook formattato correttamente:
pandoc -r markdown -w epub -o mybook.epub mybook.md
Suggerimenti avanzati
I vantaggi di pandoc vanno al di là della sua potenza come utility a riga di comando ... ad esempio, include il supporto per una versione migliorata di Markdown e può essere facilmente integrato con applicazioni grafiche.
Pandoc's Markdown Flavor
Oltre ad essere uno strumento di conversione, pandoc supporta un sapore leggermente migliorato di Markdown. Utilizzando pandoc al posto del comando markdown standard, sono disponibili alcune funzionalità aggiuntive, tra cui:
- Metadata : il sapore di Markdown di Pandoc consente di includere informazioni nell'intestazione del documento come autore, data, indirizzo email, ecc.
- Decorazioni di testo - È possibile applicare decorazioni di testo come barrato o super / pedice che non sono supportate in Markdown standard tramite pandoc.
- Tabelle - Questo da solo rende pandoc utile rispetto a "vanilla" Markdown. Usando il carattere pipe per separare le celle di una tabella, puoi creare una tabella che va da veramente brutto a leggibile da umani in testo semplice e in formato renderizzato.
- Liste di fantasia : Pandoc consente di formattare elenchi con livelli di stile struttura, ad esempio "1.", quindi "A.", quindi "i., " Ecc. È inoltre possibile specificare un numero iniziale per gli elenchi, in cui gli elenchi sono in chiaro Markdown inizia da "1."
- Evidenziazione della sintassi del codice : è possibile applicare l'evidenziazione ai blocchi di codice dicendo a pandoc qual è la lingua.
Quanto sopra sono solo una selezione delle funzionalità di pandoc Markdown. Visita la pagina del manuale su pandoc.org per un elenco completo degli extra che questo aroma di Markdown offre.
Usa una GUI con pandoc
Mentre pandoc è efficace come strumento da riga di comando, contiene molte opzioni. Se sei nuovo su Linux, potresti preferire usare pandoc con un'interfaccia GUI. Anche se non contiene un'interfaccia grafica per impostazione predefinita, puoi installare PanDocElectrion per convertire i tuoi documenti con point-and-click. Scarica lo script di installazione dal sito web dell'app, quindi eseguilo per installare tutti i pacchetti necessari e il programma stesso.
Una volta installato, il comando npm start nella directory PanDocElectron avvierà l'applicazione. Con elenchi a discesa per i formati e la possibilità di scegliere il file di input con una finestra di dialogo, questo ti aiuterà ad abituarti ai "dentro e fuori" di pandoc, per così dire.
Se sei a tuo agio con la miriade di opzioni e flag di pandoc ma vuoi solo un modo per chiamarlo facilmente, puoi integrarlo con l'editor di testo della GUI. Ad esempio, l'editor Atom contiene un numero di pacchetti che forniscono la possibilità di salvare il file corrente in diversi formati usando pandoc (pacchetto pandoc-convert):
Un'altra opzione è quella di eseguire comandi pandoc usando le funzioni built-in di un editor, come il comando build. Il pacchetto di strumenti di sviluppo di Atom ti dà la possibilità di specificare comandi personalizzati:
Quindi, puoi chiamare il comando build sui tuoi file compatibili con pandoc, proprio come faresti sul codice sorgente:
Pandoc prende alcuni degli stress dal cambiamento
Con pandoc nel tuo toolkit, puoi stare tranquillo sapendo che puoi sempre portare i tuoi documenti ad altre persone nel formato di cui hanno bisogno. Allo stesso tempo, è possibile sfruttare alcune delle grandi funzionalità di Linux (si consideri dare uno degli editor di testo basati sul terminale come vim a try).
Ti capita spesso di convertire i file avanti e indietro tra i formati? Se hai problemi di compatibilità, faccelo sapere nei commenti, e vedremo se possiamo usare pandoc per risolverti!
Immagine di credito: Nirat.pix tramite Shutterstock.com