Comment convertir facilement entre les formats de document sous Linux

Passer à Linux peut entraîner des problèmes de compatibilité des fichiers. Par exemple, les documents n'ont pas la même apparence dans LibreOffice que dans Word. C'est juste une des raisons pour lesquelles vous avez besoin de pandoc.

Passer à Linux peut entraîner des problèmes de compatibilité des fichiers.  Par exemple, les documents n'ont pas la même apparence dans LibreOffice que dans Word.  C'est juste une des raisons pour lesquelles vous avez besoin de pandoc.
Publicité

L'un des problèmes les plus souvent cités avec le passage à Linux est la compatibilité des fichiers. Vous enverrez invariablement des utilisateurs d'autres fichiers de systèmes d'exploitation, et ils ne seront pas identiques lorsqu'ils sont ouverts dans des applications telles que Word. Alors que vous pouvez installer des polices ou essayer des VM ou des émulateurs 4 façons de rendre Linux compatible avec encore plus de logiciels 4 façons de rendre Linux compatible avec encore plus de logiciels Lisez la suite pour essayer de faire en sorte que tout soit cohérent. dans un format de texte brut, puis le convertir après que vous avez terminé.

Un outil que vous pouvez utiliser pour convertir entre les formats est pandoc, un outil essentiel dans toute boîte à outils de l'utilisateur Linux.

Installation et utilisation de base de Pandoc

L'installation de pandoc sur la plupart des distributions Linux est un simple voyage dans les dépôts. Sur les systèmes basés sur Ubuntu, la commande suivante l'installe pour vous:

sudo apt-get install pandoc 

Une fois installé, vous pouvez commencer à utiliser le programme de ligne de commande pour convertir les fichiers. Excellent pour la gestion de Markdown et d'autres langages de balisage légers, si vous avez un fichier .MD qui traîne, vous pouvez le convertir en HTML avec ce qui suit:

 pandoc -o myfile.html myfile.md 

cible de la source de pandoc markdown

L'indicateur -o indique le nom du fichier de sortie souhaité. Dans ce cas, il déduit également le format de sortie (HTML) par l'extension du nom de fichier. Vous pouvez utiliser les options -r (pour read ) et -w (pour write ) pour indiquer à pandoc le type de conversion souhaité. Supposons que vous ayez l'habitude d'écrire dans Markdown, mais que vous ayez besoin de publier quelque chose sur une page basée sur Mediawiki:

 pandoc -r markdown -w mediawiki -o markdown.wiki markdown.md 

pandoc convertir markdown source mediawiki

Dans ses versions précédentes, pandoc se concentrait sur la «mise à niveau» des fichiers, dans le sens où il pouvait convertir des formats plus simples (tels que Markdown) en des formats plus complexes (par exemple ODT ou Microsoft DOCX). Mais il va maintenant lire ces formats plus compliqués. Cela signifie que si vous êtes habitué à un traitement de texte, mais êtes tenté par toutes les raisons d'utiliser un format texte plus petit et plus portable Qu'est-ce que Markdown? 4 raisons pour lesquelles vous devriez apprendre maintenant Qu'est-ce que Markdown? 4 raisons pour lesquelles vous devriez apprendre maintenant fatigué des éditeurs HTML et WYSIWYG? Alors Markdown est la réponse pour vous, peu importe qui vous êtes. Lire la suite, il est devenu beaucoup plus facile.

Étant donné un répertoire plein de fichiers Word, la commande suivante convertira chacun d'entre eux en Markdown:

 for file in * do pandoc -r docx -w markdown -o "$file".md "$file" done 

Pandoc convertir le résultat du lot

Notez que cela vous laissera avec des fichiers nommés filename.docx.md, vous aurez donc besoin d'exécuter une commande de renommage rapide (ou mieux encore, ajoutez-la à ce qui est décrit ci-dessus en tant que script shell). Scripts 5 Idées de configuration Linux pour débutants pour les scripts cron et les scripts shell Avec les scripts bash, vous pouvez effectuer une série complexe de tâches en une seule fois, ce qui est idéal pour les besoins complexes et répétitifs. ).

Options de ligne de commande Pandoc

Maintenant que vous avez quelques notions de base, nous allons examiner certaines des options les plus avancées des options de ligne de commande de Pandoc.

Fichiers de référence ODT / DOCX

Supposons que vous avez converti tous vos vieux fichiers volumineux de traitement de texte à Markdown. Pendant que vous vous délectez dans la joie de créer en texte brut, à un moment donné, vous aurez besoin de partager avec quelqu'un. Et que quelqu'un ne soit pas aussi éclairé que vous. Vous pouvez simplement inverser les indicateurs de lecture et d' écriture pour convertir votre fichier au format Word:

 pandoc -r markdown -w docx -o wordfile.docx wordfile.md 

Mais certaines personnes aiment leurs fichiers Word avec des polices particulières, des en-têtes numérotés, etc. Le back-end DOCX de Pandoc prend en charge les fichiers modèles, appelés fichiers de référence, pour une telle occasion. Ce sont des fichiers ODT ou DOCX que vous avez configurés avec tout le style dont vous avez besoin. Alors pandoc applique ces styles quand il convertit si vous lui passez le fichier de référence sur la ligne de commande:

 pandoc -r markdown -w odt --reference-odt=/home/user/path/to/ref-file.odt -o lowriter.odt lowriter.md 

style de référence pandoc odt

Remarquez comment les polices configurées dans le fichier de référence ci-dessus (Arial Black pour Heading 1, etc.) s'affichent dans le fichier converti ci-dessous. Vous pouvez créer autant de fichiers de référence que vous le souhaitez (par exemple, un par client). Ignorez complètement la mise en forme pendant l'écriture et appliquez le style en une seule étape lors de la conversion.

sortie de référence pandoc odt

PDF Rendering Back-Ends

Création de fichiers PDF est également un exercice simple, une fois que vous installez certains paquets nécessaires. Un moyen léger pour obtenir la capacité d'écriture PDF est d'installer le paquet wkhtmltopdf, un outil en ligne de commande pour convertir du HTML en PDF. pandoc prend en charge ce natif, donc si vous définissez l'indicateur d' écriture en HTML, mais le fichier de sortie en PDF, il interprétera cela comme votre intention d'utiliser wkhtmltopdf tout seul!

 pandoc -r markdown -w html -o nicepub.pdf nicepub.md 

Alternativement, vous pouvez opter pour l'option complète en utilisant le système de composition TeTex. Tirez parti du fait que ces paquets sont des installations suggérées pour le paquet pandoc en les réinstallant avec la commande suivante:

 sudo apt-get install --install-suggests pandoc 

Ensuite, asseyez-vous alors que beaucoup (vraiment, beaucoup) de paquets s'installent. Une fois qu'ils sont terminés, vous pouvez convertir votre fichier directement en PDF en le spécifiant comme indicateur d' écriture :

 pandoc -r markdown -w pdf -o nicepub-tetex.pdf nicepub.md 

Alors que l'option wkhtmltopdf nécessite l'installation d'un seul paquet, vous pouvez obtenir des résultats plus faciles à imprimer avec TeTex. À savoir, les polices serif sont utilisées par défaut et les pages sont automatiquement numérotées.

résultat de pandoc pdf tetex

Générateur d'ebook

Enfin, pandoc peut convertir vos fichiers en ebooks adaptés à la lecture sur un téléphone ou e-reader Comment gérer votre collection Ebook pour le Kindle d'Amazon avec Caliber Comment gérer votre collection Ebook pour le Kindle d'Amazon avec Caliber Le plus gros problème avec un eReader comme Kindle de l'Amazone est qu'il nécessite des efforts déraisonnables pour déplacer des livres entre différents appareils. Avant Kindle, je suis tombé amoureux de Caliber. Un peu sur le lourd ... Lire la suite. Les back-ends epub et epub3 vous donneront un ebook correctement formaté:

 pandoc -r markdown -w epub -o mybook.epub mybook.md 

sortie pandoc epub

Conseils avancés

Les avantages de pandoc vont au-delà de sa puissance en tant qu'utilitaire de ligne de commande ... par exemple, il inclut le support d'une version améliorée de Markdown, et peut facilement être intégré avec des applications graphiques.

La saveur de Markdown de Pandoc

En plus d'être un outil de conversion, pandoc prend en charge une saveur légèrement améliorée de Markdown. En utilisant pandoc au lieu de la commande markdown standard, vous disposez de fonctionnalités supplémentaires, notamment les suivantes:

  • Métadonnées - La saveur de Markdown de Pandoc vous permet d'inclure des informations dans l'en-tête de votre document, telles que l'auteur, la date, l'adresse e-mail, etc.
  • Décorations de texte - Vous pouvez appliquer des décorations de texte telles que barré ou super / indice qui ne sont pas prises en charge dans Markdown standard via pandoc.
  • Tables - Cela seul rend le pandoc intéressant par rapport à "vanille" Markdown. En utilisant le caractère de tuyau pour séparer les cellules de tableau, vous pouvez créer une table qui va de très moche à lisible en texte brut ainsi que le format rendu.
  • Listes de fantaisie - Pandoc vous permet de formater des listes avec des niveaux de style de contour, par exemple "1.", puis "A.", puis "i.", Etc. Vous pouvez également spécifier un numéro de départ pour les listes. commencez par "1"
  • Mise en évidence de la syntaxe du code - Vous pouvez appliquer une mise en surbrillance à vos blocs de code en indiquant à pandoc la langue utilisée.

Ce qui précède ne sont qu'une sélection des fonctionnalités de pandoc Markdown. Visitez la page de manuel sur pandoc.org pour une liste complète des extras que cette saveur de Markdown fournit.

Utilisez une interface graphique avec pandoc

Alors que Pandoc est efficace en tant qu'outil de ligne de commande, il contient beaucoup d'options. Si vous êtes nouveau sur Linux, vous préférerez peut-être utiliser pandoc avec une interface graphique. Bien qu'il ne contienne pas d'interface graphique par défaut, vous pouvez installer PanDocElectrion pour convertir vos documents en pointer-cliquer. Téléchargez le script d'installation à partir du site Web de l'application, puis exécutez-le pour installer tous les packages nécessaires et le programme lui-même.

pandoc convertir pandocelectron installer

Une fois installée, la commande npm start du répertoire PanDocElectron lancera l'application. Avec des listes déroulantes pour les formats et la possibilité de choisir le fichier d'entrée avec une boîte de dialogue, cela vous aidera à vous habituer aux "entrants et sortants" de pandoc, pour ainsi dire.

pandoc convertir pandocelectron ui

Si vous êtes à l'aise avec les options et les drapeaux innombrables de pandoc, mais que vous voulez juste un moyen de l' appeler facilement, vous pouvez l'intégrer avec votre éditeur de texte GUI. Par exemple, l'éditeur Atom contient un certain nombre de packages qui permettent d'enregistrer le fichier en cours dans différents formats à l'aide de pandoc (package pandoc-convert):

pandoc convert atom commandes

Une autre option consiste à exécuter des commandes Pandoc en utilisant les fonctions intégrées d'un éditeur, telles que la commande de construction. Le package build-tools d' Atom vous permet de spécifier des commandes personnalisées:

pandoc convert buildtools config

Ensuite, vous pouvez appeler la commande build sur vos fichiers compatibles avec pandoc, comme vous le feriez avec le code source:

commande pandoc convert buildtools

Pandoc prend une partie du stress de la commutation

Avec pandoc dans votre boîte à outils, vous pouvez vous reposer plus facilement en sachant que vous pouvez toujours obtenir vos documents à d'autres personnes dans le format dont ils ont besoin. En même temps, vous pouvez tirer parti de certaines des fonctionnalités géniales de Linux (pensez à donner l'un des éditeurs de texte basés sur les terminaux comme vim a try).

Vous trouvez-vous souvent en train de convertir des fichiers entre les formats? Si vous rencontrez des problèmes de compatibilité, faites-nous savoir dans les commentaires, et nous verrons si nous pouvons utiliser pandoc pour vous trier!

Crédit d'image: Nirat.pix via Shutterstock.com

In this article