markdown

Konvertering af dokumenter fra markdown til Microsoft Word-format

Konvertering af dokumenter fra markdown til Microsoft Word-format
Blandt andre aktiviteter hører skrivning og redigering af tekstdokumenter til de mest almindelige handlinger, vi bruger vores (desktop) computere til. Den nøjagtige måde, det gøres på, følger forskellige stier - fra at bruge en ren teksteditor som Vim til grafiske applikationer som Open / Libre Office eller skybaserede tjenester, der er tilgængelige via webbrowser som Google Docs. Til vores ulempe kommer hvert værktøj med sit eget originale dokumentformat samt udvalg af andre understøttede dokumentformater. Kvaliteten af ​​konverteringen mellem disse formater varierer meget og kan føre til en masse frustration, når man krydser formatgrænser.

I denne artikel ser vi på konverteringen mellem Markdown [1] og DOCX - det oprindelige dokumentformat af Microsoft Word, der er i brug siden 2007. Du undrer dig måske over, hvorfor en entusiast af Markdown og Asciidoc (som mig) behandler denne sag. Nå, samarbejde med en gruppe andre forfattere kan føre til en situation, mens en eller flere deltagere anmoder om DOCX som outputformat. Lad ikke nogen svigte, og find ud af, hvilke begrænsninger der findes, i stedet, og hvordan vi kan prøve at gøre alle gruppemedlemmer lykkelige.

Hvad er Markdown?

Som allerede påpeget i "En introduktion til Markdown" [2], er hensigten med Markdown en simpel tekst til HTML-konvertering. Ideen bag det var at gøre skrivning af websider, dokumentation og især blogindlæg lige så let som at skrive en e-mail. Fra i dag er det de facto-synonym for en klasse af lette markup-beskrivelsessprog, og målet kan ses som nået.

Markdown bruger en syntaks til formatering af almindelig tekst. Med en lignende tilgang som HTML angiver et antal markører overskrifter, lister, billeder og referencer i din tekst. De få linier nedenfor illustrerer et grundlæggende dokument, der indeholder to overskrifter (1. og 2. niveau) samt to afsnit og et listemiljø.

# Anbefalede steder at besøge i Europa
## Frankrig
Dette er et udvalg af steder:
* Paris (_Ile de France_)
* Strasbourg (_Alsace_)
For en ordentlig besøgsplan omkring en uge.

Konvertering til DOCX

For at konvertere dit Markdown-dokument til DOCX skal du bruge værktøjet pandoc [3]. Pandoc er et Haskell-bibliotek og beskriver sig selv som "den universelle dokumentkonverter" eller "den schweiziske hærkniv til konvertering af dokumenter". Den er tilgængelig til en række forskellige platforme som Linux, Microsoft Windows, Mac OS X og BSD. Pandoc er almindeligt inkluderet som en pakke til Linux-distributioner som Debian GNU / Linux, Ubuntu og CentOS.

Et simpelt kald til en konvertering er som følger:

$ pandoc-o test.docx test.md

Den første parameter '-o' refererer til outputfilen efterfulgt af filens navn ('test.docx '). Filtypen hjælper pandoc med at identificere det ønskede outputformat. Den anden parameter navngiver inputfilen - i vores tilfælde er den simpelthen 'test.md '.

Den lange version af kommandoen vist ovenfor indeholder de to parametre '-f markdown' og '-t docx'. Den første forkorter udtrykket 'smag' og beskriver formatet på inputfilen. Den anden gør det samme for outputfilen og forkorter '-to'.

Den fulde kommando er som følger:

$ pandoc-o test.docx -f markdown -t docx test.md

Åbning af den konverterede fil ved hjælp af Microsoft Word resulterer i følgende output:

For de forskellige tekstelementer bruger Pandoc typografiark. Dette giver dig mulighed for at justere disse elementer senere efter dine behov i hele dokumentet. De nyere versioner af Pandoc tilbyder også omvendt - du kan konvertere en DOCX-fil til Markdown som følger:

$ pandoc-o test.md test.docx

Derefter har den genererede fil følgende indhold:

Anbefalede steder at besøge i Europa
=======================================
Frankrig
------
Dette er et udvalg af steder:
-   Paris (* Ile de France *)
-   Strasbourg (* Alsace *)
For en ordentlig besøgsplan omkring en uge.

Nyttige kommandolinjemuligheder

Listen med Pandoc-indstillinger er ret lang. Følgende hjælper dig med at producere bedre resultater og gøre dit liv meget lettere:

* '-P' (lang version '-preserve-tabs'): Bevar faner i stedet for at konvertere dem til mellemrum. Dette er nyttigt til kodeblokke med indrykkede linjer, der er en del af din tekst.

* '-S' (lang version '-smart'): Producer typografisk korrekt output.

Denne indstilling korrigerer anførselstegn, bindestreger / bindestreger samt ellipser (“…”). Yderligere, ikke-brudende mellemrum tilføjes efter visse forkortelser, såsom “Mr.”.

* '-track-ændringer = værdi': Angiver hvad der skal gøres med indsættelser, sletninger og kommentarer, der produceres ved hjælp af Microsoft Word-funktionen "Spor ændringer". Værdien kan enten være accept, afvis eller alt for at inkludere eller fjerne de ændringer, der er foretaget i dokumentet. Resultatet er en flad fil.

For flere muligheder, se dokumentationen og manualsiden til Pandoc.

Resumé

Konverteringen mellem Markdown og DOCX er ikke længere et mysterium. Det gøres inden for få trin og fungerer meget godt. Glad hacking 🙂

Links og referencer

* [1] Markdown
* [2] Frank Hofmann: Introduktion til Markdown
* [3] Pandoc

Anerkendelser

Forfatteren vil gerne takke Annette Kalbow for hendes hjælp under forberedelsen af ​​artiklen.

Vulkan til Linux-brugere
Med hver nye generation af grafikkort ser vi spiludviklere skubbe grænserne for grafisk troskab og komme et skridt tættere på fotorealisme. Men på tro...
OpenTTD vs Simutrans
Oprettelse af din egen transportsimulering kan være sjovt, afslappende og ekstremt lokkende. Derfor skal du sørge for at prøve så mange spil som mulig...
OpenTTD Tutorial
OpenTTD er et af de mest populære forretningssimuleringsspil derude. I dette spil skal du oprette en vidunderlig transportvirksomhed. Du starter dog i...