Skip to content

Latest commit

 

History

History
242 lines (171 loc) · 6.91 KB

index.md

File metadata and controls

242 lines (171 loc) · 6.91 KB
date lang documentclass papersize linestretch title subtitle author matricle-number course location paper-type working-period university-location degree-course company company-location company-logo company-tutor university-tutor abstract other-abstracts babel-otherlangs colorlinks
\today
de-DE
scrreport
a4
1.5
Pandoc-Vorlage für Arbeiten an der DHBW-Mosbach
Unterstützt Projektarbeiten, Studienarbeiten und Bachelorarbeiten
Maxi Muster
Max Muster
1234567
1234568
MOS-TINF19X
Mosbach
Bachelorarbeit T3_3300
12 Wochen
Mosbach
Angewandte Informatik
My Cool Company
Berlin
img/company_logo.png
Herr Müller
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.
english
This is a similarly too short abstract, but in English. The abstract for actual papers should be between 200 and 250 words in length.
english
true

\pagebreak

Abkürzungsverzeichnis {#acronyms -}

Einleitung

Eine Vorlage, um wissenschaftliche Arbeiten für die +dhbw in Pandoc verfassen zu können.

Dabei werden die in [@DHBW.2021] beschriebenen Richtlinien nach bestem Gewissen umgesetzt.

Verwendung

Drone

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.

Docker {#sec:usage-docker}

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

Manuell

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.

Windows

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

Linux

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

Demo

Unterstützt werden alle typischen Markdown-Features, sowie die nativen Erweiterungen von Pandoc:

  • kursiv, fett, beides, durchgestrichen, [unterstrichen]{.underline}, [Kapitälchen]{.smallcaps}

  • Definitionen und Listen:

    Wort: : Dies ist eine Beschreibung über mehrere Zeilen.

    Unsortierte Listen: : - Eins

    • Zwei
    • Drei

    Unsortierte Listen: : 1. Eins 2. Zwei 3. Drei

  • Fußnoten12

  • Zitation/Quellenangaben [@DHBW.2021, Abschnitt 9.1], [@DHBW.2021, S. 23]

  • Latex-Ausdrücke, zum Beispiel für mathematische Ausdrücke $\sum_{i=1}^n\frac{1}{a_b}\cdot i$

  • Bilder

    Firmen-Logo{#fig:some-image}

  • Tabellen:

    Spalte 1 Spalte 2 Spalte 3
    A B C
    : Tabellen-Beschriftung {#tbl:some-table}
  • Code und Code-Blöcke:

    print("Hello World");
    print("Floating Code Block!")
    

    Hier geht der Stichpunkt weiter.

Für weitere native Pandoc-Features, siehe die offizielle Dokumentation.

Überschrift-Ebene 2

Überschrift-Ebene 3

Überschrift-Ebene 4

Überschrift-Ebene 5

Extensions {#sec:extensions}

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:

```yaml
acronyms:
  options:
    list/heading: chapter*
    make-links: true
  dhbw:
    short: DHBW
```

Und anschließend verwendet werden: +dhbw; [+dhbw]{.long}

pandoc-crossref --- Referenzen: : Referenzen für Abschnitte (@sec:extensions), Bilder (@fig:some-image), Code-Blöcke (@lst:floating-code-block) und Tabellen (@tbl:some-table).

Literaturverzeichnis

Footnotes

  1. Dies ist eine Fußnote.

  2. Dies ist eine zweite Fußnote.