markdown

Prevod dokumentov z Markdown do formátu Microsoft Word

Prevod dokumentov z Markdown do formátu Microsoft Word
Medzi ďalšie činnosti patrí písanie a úprava textových dokumentov najbežnejšie činnosti, na ktoré naše (stolné) počítače používame. Presný spôsob, akým sa to deje, sleduje rôzne cesty - od použitia holého textového editora, ako je Vim, po grafické aplikácie, ako je Open / Libre Office, alebo cloudové služby, ktoré sú prístupné cez webový prehliadač, ako sú napríklad dokumenty Google. Na našu nevýhodu má každý nástroj vlastný natívny formát dokumentu, ako aj výber ďalších podporovaných formátov dokumentu. Kvalita prevodu medzi týmito formátmi sa veľmi líši a môže viesť k veľkej frustrácii pri prekračovaní hraníc formátu.

V tomto článku sa pozrieme na konverziu medzi Markdown [1] a DOCX - natívnym formátom dokumentu pre Microsoft Word, ktorý sa používa od roku 2007. Možno by vás zaujímalo, prečo sa nadšenec Markdownu a Asciidocu (ako ja) zaoberá týmto prípadom. Spolupráca so skupinou ďalších autorov môže viesť k situácii, zatiaľ čo jeden alebo viacerí účastníci požadujú DOCX ako výstupný formát. Nikoho nesklamte a zistite, aké obmedzenia existujú, a ako sa môžeme pokúsiť urobiť šťastnými všetkých členov skupiny.

Čo je to Markdown?

Ako už bolo zdôraznené v časti „Úvod do Markdown“ [2], zámerom Markdown je jednoduchá konverzia textu na HTML. Myšlienkou bolo, aby písanie webových stránok, dokumentácie a hlavne blogových záznamov bolo také ľahké ako písanie e-mailov. Od dnešného dňa je de facto synonymom pre triedu ľahkých jazykov popisu značiek a cieľ je možné považovať za dosiahnutý.

Markdown používa syntax formátovania obyčajného textu. Pri podobnom prístupe ako HTML množstvo značiek označuje nadpisy, zoznamy, obrázky a odkazy vo vašom texte. Niekoľko riadkov nižšie ilustruje základný dokument, ktorý obsahuje dva nadpisy (1. a 2. úroveň), ako aj dva odseky a prostredie zoznamu.

# Odporúčané miesta na návštevu v Európe
## Francúzsko
Toto je výber miest:
* Paríž (_Ile de France_)
* Štrasburg (_Alsace_)
Plán správnej návštevy je asi týždeň.

Konverzia na DOCX

Ak chcete svoj dokument Markdown previesť na DOCX, použite nástroj pandoc [3]. Pandoc je knižnica Haskell a označuje sa za „univerzálneho prevádzača dokumentov“ alebo „švajčiarsky armádny nôž na konverzie dokumentov“. Je k dispozícii pre rôzne platformy, ako sú Linux, Microsoft Windows, Mac OS X a BSD. Pandoc je bežne dodávaný ako balík pre distribúcie Linuxu ako Debian GNU / Linux, Ubuntu a CentOS.

Jednoduchá výzva na konverziu je nasledovná:

$ pandoc -o test.test docx.md

Prvý parameter '-o' sa vzťahuje na výstupný súbor, za ktorým nasleduje názov súboru ('test.docx '). Prípona súboru pomáha programu pandoc identifikovať požadovaný výstupný formát. Druhý parameter pomenuje vstupný súbor - v našom prípade je to jednoducho 'test.md '.

Dlhá verzia vyššie zobrazeného príkazu obsahuje dva parametre „-f markdown“ a „-t docx“. Prvý z nich skracuje termín „príchuť“ a popisuje formát vstupného súboru. Druhá robí to isté pre výstupný súbor a má skratku „-to“.

Celý príkaz je nasledovný:

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

Otvorenie prevedeného súboru pomocou aplikácie Microsoft Word má za následok nasledujúci výstup:

Pre rôzne textové prvky používa Pandoc šablóny štýlov. To vám umožní neskôr upraviť tieto prvky podľa vašich potrieb v celom dokumente. Novšie verzie Pandocu ponúkajú aj opačnú cestu - súbor DOCX môžete previesť na Markdown nasledovne:

$ pandoc -o test.md test.docx

Potom má vygenerovaný súbor nasledujúci obsah:

Odporúčané miesta na návštevu v Európe
======================================
Francúzsko
------
Toto je výber miest:
-   Paríž (* Ile de France *)
-   Štrasburg (* Alsasko *)
Plán správnej návštevy je asi týždeň.

Užitočné možnosti príkazového riadku

Zoznam možností Pandoc je pomerne dlhý. Nasledujúce vám pomôžu dosiahnuť lepšie výsledky a uľahčia vám život:

* '-P' (dlhá verzia '-preserve-tabs'): Zachovať karty namiesto ich prevodu na medzery. To je užitočné pre bloky kódu s odsadenými riadkami, ktoré sú súčasťou vášho textu.

* '-S' (dlhá verzia '-smart'): Produkuje typograficky správny výstup.

Táto možnosť opravuje úvodzovky, pomlčky / pomlčky, ako aj elipsy („…“). Ďalšie nerozlomiteľné medzery sa pridávajú za určité skratky ako napríklad „Mr.“.

* '-track-changes = value': Určuje, čo robiť s vloženiami, odstráneniami a komentármi, ktoré sa vytvárajú pomocou funkcie „Sledovať zmeny“ programu Microsoft Word. Hodnota môže byť buď prijať, odmietnuť, alebo všetko, aby bolo možné zahrnúť alebo odstrániť zmeny vykonané v dokumente. Výsledkom je plochý súbor.

Ďalšie možnosti nájdete v dokumentácii a na manuálnej stránke programu Pandoc.

Zhrnutie

Konverzia medzi Markdown a DOCX už nie je záhadou. Robí sa to v priebehu niekoľkých krokov a funguje to veľmi dobre. Šťastné hackovanie 🙂

Odkazy a referencie

* [1] Zníženie ceny
* [2] Frank Hofmann: Introduction to Markdown
* [3] Pandoc

Poďakovanie

Autor by chcel poďakovať Annette Kalbowovej za pomoc pri príprave článku.

Hry SuperTuxKart pre Linux
SuperTuxKart pre Linux
SuperTuxKart je vynikajúci titul navrhnutý tak, aby vám priniesol zážitok z hry Mario Kart zadarmo na vašom systéme Linux. Je to dosť náročné a zábavn...
Hry Výukový program Battle for Wesnoth
Výukový program Battle for Wesnoth
Battle for Wesnoth je jednou z najpopulárnejších open source strategických hier, ktoré si v súčasnosti môžete zahrať. Táto hra bola nielen vyvinutá ve...
Hry 0 A.D. Výukový program
0 A.D. Výukový program
Z mnohých strategických hier je tu 0 A.D. dokáže vyniknúť ako komplexný titul a veľmi hlboká, taktická hra napriek tomu, že je otvoreným zdrojom. Vývo...