Conversion des documents de Markdown en format Microsoft Word

Conversion des documents de Markdown en format Microsoft Word
Parmi les autres activités, l'écriture et l'édition de documents texte appartiennent aux actions les plus courantes que nous utilisons nos ordinateurs (de bureau) pour. La façon exacte dont il est fait suit différents chemins - de l'utilisation d'un éditeur de texte nu comme Vim vers des applications graphiques comme Open / Libre Office ou des services basés sur le cloud qui sont accessibles via WebBrowser comme Google Docs. À notre inconvénient, chaque outil est livré avec son propre format de document natif ainsi que la sélection d'autres formats de documents pris en charge. La qualité de la conversion entre ces formats varie considérablement et peut conduire à beaucoup de frustration lors de la franchissement des limites du format.

Dans cet article, nous examinons la conversion entre Markdown [1] et Docx - le format de document natif de Microsoft Word qui est utilisé depuis 2007. Vous vous demandez peut-être pourquoi un passionné de Markdown et Asciidoc (comme moi) traite de cette affaire. Eh bien, collaborer avec un groupe d'autres écrivains peut conduire à une situation tandis qu'un ou plusieurs participants demandent DOCX comme format de sortie. Ne laissez personne tomber et découvrez plutôt quelles limites existent, et comment nous pouvons essayer de rendre tous les membres du groupe heureux.

Qu'est-ce que Markdown?

Comme nous l'avons déjà souligné dans «Une introduction dans Markdown» [2], l'intention de Markdown est un texte simple à la conversion HTML. L'idée derrière cela a été de rendre la rédaction de pages Web, la documentation et surtout les entrées de blog aussi simples que la rédaction d'un e-mail. À ce jour, c'est le synonyme de facto pour une classe de langues de description de balisage léger, et l'objectif peut être considéré comme atteint.

Markdown utilise une syntaxe de formatage de texte brut. Avec une approche similaire à HTML, un certain nombre de marqueurs indiquent les titres, les listes, les images et les références dans votre texte. Les quelques lignes ci-dessous illustrent un document de base qui contient deux titres (1er et 2e niveau) ainsi que deux paragraphes, et un environnement de liste.
# Des endroits recommandés à visiter en Europe
## France
Ceci est une sélection de lieux:
* Paris (_ile de France_)
* Strasbourg (_alsace_)
Pour un plan de visite approprié environ une semaine.

Conversion en docx

Afin de convertir votre document Markdown en DOCX, utilisez l'outil Pandoc [3]. Pandoc est une bibliothèque Haskell et se décrit comme «le convertisseur de documents universels», ou le «couteau suisse pour les conversions de documents». Il est disponible pour une variété de plates-formes telles que Linux, Microsoft Windows, Mac OS X et BSD. Pandoc est généralement inclus comme un package pour les distributions Linux comme Debian GNU / Linux, Ubuntu et Centos.

Un simple appel à une conversion est le suivant:

$ pandoc -o test.test docx.Maryland

Le premier paramètre '-o' fait référence au fichier de sortie, suivi du nom du fichier ('Test.docx '). L'extension de fichier aide Pandoc à identifier le format de sortie souhaité. Le deuxième paramètre nomme le fichier d'entrée - dans notre cas, il s'agit simplement de tester.Maryland'.

La version longue de la commande illustrée ci-dessus contient les deux paramètres '-f Markdown' et '-t docx'. Le premier abréviate le terme «saveur» et décrit le format du fichier d'entrée. Le second fait de même pour le fichier de sortie et abréviate '-to'.

La commande complète est la suivante:

$ pandoc -o test.Docx -f Markdown -T Test Docx.Maryland

L'ouverture du fichier converti à l'aide de Microsoft Word en résulte la sortie suivante:

Pour les différents éléments de texte, Pandoc utilise des feuilles de style. Cela vous permet d'ajuster ces éléments plus tard en fonction de vos besoins tout au long du document. Les nouvelles versions de Pandoc offrent également l'inverse - vous pouvez convertir un fichier DOCX en Markdown comme suit:

$ pandoc -o test.test MD.docx

Ensuite, le fichier généré a le contenu suivant:

Endroits recommandés à visiter en Europe
=================================================
France
------
Ceci est une sélection de lieux:
- Paris (* Ile de France *)
- Strasbourg (* Alsace *)
Pour un plan de visite approprié environ une semaine.

Options de ligne de commande utiles

La liste des options pandoc est assez longue. Les suivants vous aident à produire de meilleurs résultats et à vous faciliter la vie:

* '-P' (version longue '-preserve-tabs'): conserver les onglets au lieu de les convertir en espaces. Ceci est utile pour les blocs de code avec des lignes en retrait qui font partie de votre texte.

* '-S' (version longue '-smart'): produire une sortie typographiquement correcte.

Cette option corrige les citations, les traits de trait / tirets ainsi que les ellipses («…»). Des espaces supplémentaires et non révolutionnaires sont ajoutés après certaines abréviations telles que «M.".

* '-track-changes = valeur': spécifie ce qu'il faut faire avec les insertions, les suppressions et les commentaires qui sont produits à l'aide de la fonction Microsoft Word «Track Changes». La valeur peut être acceptée, rejeter ou tout pour inclure ou supprimer les modifications apportées dans le document. Le résultat est un fichier plat.

Pour plus d'options, jetez un œil à la documentation et à la page manuelle de Pandoc.

Résumé

La conversion entre Markdown et Docx n'est plus un mystère. Cela se fait en quelques étapes et fonctionne très bien. Happy Hacking 🙂

Liens et références

* [1] Markdown
* [2] Frank Hofmann: Introduction à Markdown
* [3] Pandoc

Remerciements

L'auteur tient à remercier Annette Kalbow pour son aide lors de la préparation de l'article.