Lebenslauf mit Markdown erstellen
s Zum Glück müssen die meisten von uns nicht jeden Tag den eigenen Lebenslauf zu Papier bringen. Wann genau war ich nochmal bei Firma X? Wie lang dauerte das Praktikum in München? Und wie war nochmal der genaue Titel der Bachelorarbeit? …
Das eh schon aufwendige Prozedere wird noch ein bisschen aufwendiger, wenn man zusätzlich die Formatierungseigenheiten von Word verstehen muss. Richtig schön wird es, wenn sich Dateiformate geändert und einst schön formatierte Dokumente mittlerweile gruselig aussehen.
Ich hatte daher seit längerem den Wunsch, den nächsten Lebenslauf so nerdfreundlich wie möglich anzugehen. Idealerweise als leicht zu schreibendes Markdown-File, das trotzdem mit einer modernen Formatierung aufwarten kann.
Gesucht - Gefunden. Auf dem Blog von Christophe-Marie Duquesne bin ich fündig geworden. Das Design des dort vorgestellten Lebenslaufs hat mich zwar nur semi-überzeugt, aber das zugrunde liegende CSS lässt sich ja leicht anpassen.
Lass es uns ausprobieren!
- Als erstes installieren wir die notwendigen Programme: Wir benötigen einen Editor. Ich mag aktuell VS Code - du kannst aber jeden beliebigen verwenden (wenn es dich glücklich macht sogar vim).
- Zur Umwandlung des Markdown-Files nach HTML benötigen wir pandoc. Eine Anleitung zur Installation findest du hier: https://pandoc.org/installing.html
- Und schließlich solltest du noch wkhtmltopdf installieren, das aus den erzeugten HTML-Dateien schöne PDFs macht: https://wkhtmltopdf.org/downloads.html
Lebenslauf in Markdown übersetzen
Dann übersetzen wir den Lebenslauf nach Markdown. Die Datei könnte wie folgt aussehen (cv.md). Falls euch die Markdown-Syntax entfallen ist, könnt ihr hier nochmal spicken. Für mich neu war die ":"-Notation, um Definitionen zu erstellen. Das sorgt für ein schönes Zweispalten-Layout - ideal für den Lebenslauf.
cv.md
# Bruce Wayne
> +1 555 123456 • ceo@wayne-enterprises.com\
> Wayne Manor, Gotham, USA
## Berufserfahrung
1939 - heute
: **Wayne Enterprises**, Vorstandsvorsitzender
1939 - heute
: **Fledermaus-Fanclub**, Verbrechensbekämpfer
...
Design des Lebenslaufs definieren
Als nächstes definieren wir, wie die einzelnen Bestandteile formatiert werden sollen (style.css). Als Ausgangspunkt empfehle ich euch, die Vorlage aus Christophe-Maries GitHub-Repo zu verwenden. Ich habe sie für meinen Lebenslauf aber deutlich angepasst.
style.css
body {
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
color: #000000;
width: 800px;
margin: auto;
background: #FFFFFF;
padding: 10px 10px 10px 10px;
}
Befehle nur einmal schreiben, dank kleinem Skript
Um die Consolen-Befehle nur einmal tippen zu müssen, erstellen wir als letztes noch ein kleines Skript (create_cv.sh
). Bitte denkt daran, die Dateinamen anzupassen falls ihr andere verwendet habt. Ich gehe davon aus, dass der Lebenslauf cv.md
und das Stylesheet style.css
heißt.
create_cv.sh
#!/bin/bash
# Translate MD --> HTML
pandoc --standalone -c style.css --from markdown --to html -o cv.html cv.md --metadata pagetitle="CV"
# Translate HTML --> PDF
wkhtmltopdf cv.html cv.pdf
Lebenslauf erstellen
Lassen wir es laufen! Skript ausführbar machen und los geht’s!
batman@helium:~$ chmod + x create_cv.sh
batman@helium:~$ ./create_sv.sh
Danach solltet ihr zwei neue Dateien cv.html
und cv.pdf
im Ordner finden.
Fertig :-)
Unser Lebenslauf von Batman sieht übrigens im ersten Entwurf wie folgt aus. Mit ein bisschen mehr Inhalt und Farbe lässt sich das schnell aufhübschen.
Code auf Github
Wie immer findet ihr den gesamten Code auf GitHub: https://github.com/s01ren/markdown_cv
I used to have a comments box on this blog, but found that maintaining another system and dealing with the cookies is cumbersome. So, if you have any thoughts on what I wrote in this article, please write me an email and we can have a conversation about it.
reply via email ✉️
I put a lot of work into maintaining this blog and I really enjoy the interactions I get with you, dear readers. I you liked what you just read and want to do me a little favor, please tip me a cup of coffee as it's the fuel that keeps me going:
buy me a coffee ☕️