markdown

Konvertere dokumenter fra Markdown til Microsoft Word-format

Konvertere dokumenter fra Markdown til Microsoft Word-format
Blant andre aktiviteter hører skriving og redigering av tekstdokumenter til de vanligste handlingene vi bruker (stasjonære) datamaskiner til. Den nøyaktige måten det gjøres på, følger forskjellige baner - fra å bruke en tekstredigerer som Vim til grafiske applikasjoner som Open / Libre Office eller skybaserte tjenester som er tilgjengelige via nettleser som Google Docs. Til vår ulempe kommer hvert verktøy med sitt eget originale dokumentformat samt utvalg av andre støttede dokumentformater. Kvaliteten på konverteringen mellom disse formatene varierer mye, og kan føre til mye frustrasjon når man krysser formatgrenser.

I denne artikkelen ser vi på konverteringen mellom Markdown [1] og DOCX - det opprinnelige dokumentformatet til Microsoft Word som er i bruk siden 2007. Du lurer kanskje på hvorfor en entusiast av Markdown og Asciidoc (som meg) takler denne saken. Vel, samarbeid med en gruppe andre forfattere kan føre til en situasjon mens en eller flere deltakere ber om DOCX som utdataformat. Ikke la noen gå ned, og finn ut hvilke begrensninger som finnes, i stedet, og hvordan vi kan prøve å gjøre alle gruppemedlemmene lykkelige.

Hva er Markdown?

Som allerede påpekt i “En introduksjon til Markdown” [2], er hensikten med Markdown en enkel tekst til HTML-konvertering. Tanken bak var å gjøre det å skrive websider, dokumentasjon og spesielt blogginnlegg like enkelt som å skrive en e-post. Per i dag er det de facto-synonymet for en klasse med lette markeringsbeskrivelsesspråk, og målet kan sees som nådd.

Markdown bruker en syntaks for formatering av ren tekst. Med en lignende tilnærming som HTML, angir et antall markører overskrifter, lister, bilder og referanser i teksten. De få linjene nedenfor illustrerer et grunnleggende dokument som inneholder to overskrifter (1. og 2. nivå), samt to avsnitt, og et listemiljø.

# Anbefalte steder å besøke i Europa
## Frankrike
Dette er et utvalg av steder:
* Paris (_Ile de France_)
* Strasbourg (_Alsace_)
For en skikkelig besøksplan omtrent en uke.

Konvertering til DOCX

For å konvertere Markdown-dokumentet ditt til DOCX, bruk verktøyet pandoc [3]. Pandoc er et Haskell-bibliotek, og beskriver seg selv som "den universelle dokumentomformeren", eller "den sveitsiske hærkniven for dokumentkonvertering". Den er tilgjengelig for en rekke plattformer som Linux, Microsoft Windows, Mac OS X og BSD. Pandoc er ofte inkludert som en pakke for Linux-distribusjoner som Debian GNU / Linux, Ubuntu og CentOS.

En enkel samtale for en konvertering er som følger:

$ pandoc -o test.docx-test.md

Den første parameteren '-o' refererer til utdatafilen, etterfulgt av navnet på filen ('test.docx '). Filutvidelsen hjelper pandoc med å identifisere ønsket utdataformat. Den andre parameteren navngir inndatafilen - i vårt tilfelle er den bare 'test'.md '.

Den lange versjonen av kommandoen vist ovenfor inneholder de to parametrene '-f markdown' og '-t docx'. Den første forkorter begrepet "smak", og beskriver formatet på inndatafilen. Den andre gjør det samme for utdatafilen, og forkorter '-to'.

Den fulle kommandoen er som følger:

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

Åpne den konverterte filen ved hjelp av Microsoft Word resulterer i følgende utdata:

For de forskjellige tekstelementene bruker Pandoc stilark. Dette lar deg justere disse elementene senere i henhold til dine behov gjennom hele dokumentet. De nyere versjonene av Pandoc tilbyr også omvendt - du kan konvertere en DOCX-fil til Markdown som følger:

$ pandoc -o test.md test.docx

Deretter har den genererte filen følgende innhold:

Anbefalte steder å besøke i Europa
========================================
Frankrike
------
Dette er et utvalg av steder:
-   Paris (* Ile de France *)
-   Strasbourg (* Alsace *)
For en skikkelig besøksplan omtrent en uke.

Nyttige kommandolinjealternativer

Listen over Pandoc-alternativer er ganske lang. Følgende hjelper deg med å gi bedre resultater og gjøre livet ditt mye enklere:

* '-P' (lang versjon '-preserve-tabs'): Bevar faner i stedet for å konvertere dem til mellomrom. Dette er nyttig for kodeblokker med innrykkede linjer som er en del av teksten din.

* '-S' (lang versjon '-smart'): Lag typografisk korrekt utdata.

Dette alternativet korrigerer anførselstegn, bindestrek / bindestreker samt ellipser (“…”). Ytterligere, ikke-brudd mellomrom blir lagt til etter visse forkortelser som "Mr.”.

* '-track-changes = value': Spesifiserer hva du skal gjøre med innsettinger, slettinger og kommentarer som produseres ved hjelp av Microsoft Word "Track Changes" -funksjonen. Verdien kan være enten godta, avvis eller alt for å inkludere eller fjerne endringene som er gjort i dokumentet. Resultatet er en flat fil.

For flere alternativer, se dokumentasjonen og manualsiden til Pandoc.

Sammendrag

Konverteringen mellom Markdown og DOCX er ikke lenger et mysterium. Det gjøres i løpet av få trinn, og fungerer veldig bra. Glad hacking 🙂

Lenker og referanser

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

Anerkjennelser

Forfatteren vil takke Annette Kalbow for hennes hjelp under forberedelsen av artikkelen.

Nyttige verktøy for Linux-spillere
Hvis du liker å spille spill på Linux, er sjansen stor for at du har brukt apper og verktøy som Wine, Lutris og OBS Studio for å forbedre spilloppleve...
HD Remastered Games for Linux som aldri hadde en Linux-utgave tidligere
Mange spillutviklere og utgivere kommer med HD-remaster av gamle spill for å forlenge franchisetiden, vennligst fans som ber om kompatibilitet med mod...
Hvordan bruke AutoKey til å automatisere Linux-spill
AutoKey er et desktopautomatiseringsverktøy for Linux og X11, programmert i Python 3, GTK og Qt. Ved å bruke skript og MACRO-funksjonalitet kan du aut...