Unterstützt Projektarbeiten, Studienarbeiten und Bachelorarbeiten
Bachelorarbeit T3_3300
des Studiengangs Angewandte Informatik an der Dualen Hochschule Baden-Württemberg Mosbach
Bearbeitungszeitraum | 12 Wochen |
---|---|
Matrikelnummer, Kurs | 1234567 & 1234568, MOS-TINF19X |
Dualer Partner | My Cool Company, Berlin |
Betreuer*in des Dualen Partners | Herr Müller |
Gutachter*in der Dualen Hochschule | Frau Prof. Dr. Meier |
Dies ist ein zu kurzes Abstract. Das Abstract für tatsächliche Projektarbeiten sollte 200 bis 250 Wörter lang sein.
This is a similarly too short abstract, but in English. The abstract for actual papers should be between 200 and 250 words in length.
Eine Vorlage, um wissenschaftliche Arbeiten für die Duale Hochschule Baden-Württemberg (DHBW) in Pandoc verfassen zu können.
Dabei werden die in [1] beschriebenen Richtlinien nach bestem Gewissen umgesetzt.
Am einfachsten ist die Verwendung mit Drone. Wenn Drone und Docker installiert sind, reicht folgender Befehl:
drone exec
Basierend auf Drone lässt sich auch alternativ zu GitHub-Actions eine Build-Automatisierung nutzen.
Um diese Vorlage zu verwenden kann das Docker-Image siphalor/extended-pandoc
verwendet werden.
Unter Linux kann folgender Befehl zum Kompilieren der PDF mit Docker verwendet werden:
docker run --rm --volume $(pwd):/data --entrypoint make siphalor/extended-pandoc
Alternativ können die nötigen Extensions selbst installiert werden. Die Liste der Extensions findet sich in der Readme des Docker-Images.
Anschließend kann mit make index.pdf
die PDF-Datei
kompiliert werden. Unter Windows kann sich der entsprechende Befehl aus
dem Makefile
entnommen werden.
Im Folgenden wird die Installation unter Windows beschrieben. Die folgenden Befehle sollten in PowerShell ausgeführt werden (alternativ pwsh).
Als Package Manager wird Scoop genutzt, da dieser einfache Installationen und Updates ohne administrative Rechte ermöglicht.
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
irm get.scoop.sh | iex
Weiterhin wird pip
benötigt um die Python-basierten
Extensions zu installieren:
scoop install python
python -m ensurepip
Nun benötigen wir noch den make
command aus den GNU
coreutils. Hier kann beispielsweise die Rust-Implementierung dieser
Tools verwendet werden:
scoop install uutils-coreutils
Abschließend werden jetzt die Pandoc- und Latex-Umgebung installiert.
In den folgenden Befehlen wird TinyTeX, eine
[TeX-Live][https://tug.org/texlive/]-Distribution, verwendet.
Anstelle von tinytex
kann auch MikTex (bei Scoop als
miktex
) verwendet werden. Dies bietet unter anderem eine
grafische Oberfläche und eine einsteigerfreundlichere
Paket-Verwaltung.
# texlive installation
scoop bucket add r-bucket https://github.com/cderv/r-bucket.git
scoop install tinytex
# pandoc installation
scoop install pandoc pandoc-crossref
pip install pandoc-acro pandoc-include --user
Der Einfachheit halber am besten zunächst den Homebrew Package Manager installieren:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Python ist in den allermeisten Linux-Distributionen vorinstalliert,
eventuell ist es als python
statt python3
verfügbar:
python3 -m ensurepip
Schlussendlich können Pandoc, die nötigen Extensions und die TeX Live LaTeX-Umgebung installiert werden.
brew install pandoc pandoc-crossref texlive
pip install pandoc-acro pandoc-include --user
Unterstützt werden alle typischen Markdown-Features, sowie die nativen Erweiterungen von Pandoc:
kursiv, fett,
beides, durchgestrichen,
unterstrichen, Kapitälchen
Definitionen und Listen:
Zitation/Quellenangaben [1, Abschn. 9.1], [1, S. 23]
Latex-Ausdrücke, zum Beispiel für mathematische Ausdrücke $\sum_{i=1}^n\frac{1}{a_b}\cdot i$
Bilder
Tabellen:
Spalte 1 | Spalte 2 | Spalte 3 |
---|---|---|
A | B | C |
Code
und Code-Blöcke:
print("Hello World");
Listing 1: Ein Code-Block der nicht im Fließtext ist!
print("Floating Code Block!")
Hier geht der Stichpunkt weiter.
Für weitere native Pandoc-Features, siehe die offizielle Dokumentation.
Durch Extensions wird zusätzliche Funktionalität zur Verfügung gestellt:
pandoc-acro
— Abkürzungen:Abkürzungen können in der acronyms.yaml
definiert
werden:
acronyms:
options:
list/heading: chapter*
make-links: true
dhbw:
short: DHBW
Und anschließend verwendet werden: DHBW; Duale Hochschule Baden-Württemberg
pandoc-crossref
— Referenzen: