Markdown Files zu PDF konvertieren

Markdown ist eine sehr einfache „Markup“ Sprache, um Texte schnell und einfach zu formatieren. Mit einem entsprechenden Markdown Konverter kann man ein einfaches Markdown File in kurzer Zeit ins HTML Format konvertieren.

In der Vorlesung Programmieren 2 der Universität Bern erhalten wir wöchentlich unsere Programmiere Aufgaben in einem in Markdown geschriebenen File. In der Übungsstunde habe ich festgestellt, dass man mit TextMate eine schöne Vorschau generieren kann. Leider ist TextMate nur für den Mac verfügbar, so musste ich mich unter Linux eine andere Lösung finden.

Nach einigen Webrecherchen bin ich auf das Markup Konvertierungstool Pandoc gestossen, welches unter anderem auch das Markdown Format unterstützt.

Pandoc kann man unter Ubuntu via

sudo apt-get install pandoc

installieren.

Pandoc biete eine separates Skript, welches Markdown Dokumente in ein PDF File konvertieren kann (markdown2pdf).

Da mir beim ersten Versuch die PDF Ausgabe noch nicht gefallen hat, habe ich mich daran versucht die Ausgabe zu ändern. Glücklicherweise arbeitet das Skript mit pdflatex, somit war es möglich einen eigenen Latex Header zu erstellen und einzubinden.

Das Programm muss für einen alternativen Header mit folgenden Parametern aufgerufen werden:

markdown2pdf -C head.sty document.mdown -o document.pdf

Das Resultat lässt sich sehen, die Problemstellungen sind nun viel angenehmer zu lesen.

Anbei mein erstelltes Headerfile head.sty

\documentclass[a4paper,10pt,leqno]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{marvosym}

%Seitenlayout%
\usepackage{vmargin}
\setmarginsrb{2.0cm}{2.0cm}{2.0cm}{2.0cm}{0.6cm}{0.6cm}{0.6cm}{0.5cm}

%Schriftart%
\usepackage{mathptmx,charter,courier}
\usepackage[scaled]{helvet}

%Header %
\usepackage{fancyhdr}
\pagestyle{fancy} %eigener Seitenstil
\fancyhf{} %alle Kopf- und Fußzeilenfelder bereinigen
\fancyhead[L]{P2 problemset} %Kopfzeile links
\fancyhead[C]{} %zentrierte Kopfzeile
\fancyhead[R]{markdown2pdf} %Kopfzeile rechts
\renewcommand{\headrulewidth}{0.4pt} %obere Trennlinie
\fancyfoot[C]{\thepage} %Seitennummer
\renewcommand{\footrulewidth}{0.4pt} %untere Trennlinie

1 Kommentar

  1. Wem pdflatex zu mächtig ist kann mit rst2pdf auch PDF-Dokumente erzeuge. Pandoc kann Markdown zu reStruckturedText (rst) wandeln. rst2pdf benötigt nur Phyton und braucht nichts weiteres.

    http://code.google.com/p/rst2pdf/

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert