Skip to content

Ein LaTeX Template für Transferleistungen an der Nordakademie

Notifications You must be signed in to change notification settings

psmey/nak-transferleistungs-template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NAK Transferleistungs LaTeX-Template

Ein Template für die Transferleistungen an der Nordakademie, basierend auf der Visual Studio Code Erweiterung LaTeX Workshop

Inhalt

Anleitung

Voraussetzungen

  • Visual Studio Code installieren.
  • Die Remote Development Erweiterung für Visual Studio Code installieren (das kann in VSC unter dem "Extensions" Tab erfolgen).
  • Docker installieren (FYI man benötigt keinen Account).

Nutzung

  1. Docker starten, die Docker Engine muss im Hintergrund laufen.
  2. Visual Studio Code öffnen und den Ordner fürs Template öffnen.
    1. Ganz unten links auf den Button "Open a Remote Window" klicken.
    2. Oben die Option "Reopen in Container" anklicken.

Kurzreferenz

Die Kurzreferenz ist eine Sammlung an Informationen, die ich regelmäßig gebraucht und hier abgelegt habe, damit ich sie nicht immer neu recherchieren muss, wenn man nach ein paar Monaten sie wieder vergessen hat. Das hier gezeigte ist auch teilweise in den Beispiel-Dateien bzw. -Code zu finden.

Simple Textformatierung

Fettgedruckt

Das ist ein Beispiel für fettgedruckt.

\textbf{<text>}

Kursiv

Das ist ein Beispiel für kursiv.

\textit{<text>}

Unterstrichen

Das ist ein Beispiel für Unterstrichen.

\underline{<text>}

Abkürzungen

Für Abkürzungen wird das Paket acro verwendet, mehr Information dazu gibt es in der Dokumentation.

\printacronyms funktioniert nicht immer beim ersten durchlauf, das Dokument muss ggf. mehrmals gebaut werden!

Erstellen

Abkürzungen werden in der folgenden Datei abgelegt:

transferleistungs_template/src/internal/acronyms.tex

Eine Abkürzung wird wie folgt angelegt (in der Dokumentation gibt noch weitere Parameter, die aber optional sind):

\DeclareAcronym{<id>}{
    short = <short>,
    long = <long>
}

Im Text verwenden

\ac{<id>} % -> <long> (<short>)
\acs{<id>} % -> <short>
\acl{<id>} % -> <long>

Anhänge

Anhänge werden unter /assets/appendix abgelegt. Anhänge können dann mit folgendem Custom Befehl hinzugefügt werden:

\addAppendix{<tile>}{<filename>}

FYI der Befehl ist in /src/internal/config.tex zu finden.

Bibliografie

Weiter schnelle Informationen über BibLaTeX sind hier zu finden.

Wenn zwei Attribute von einander mit einem / getrennt sind (z. B. year/date = {},) muss sich für eins entschieden werden.

Quelle hinzufügen

Quellen-Codeblöcke werden in die Datei /src/internal/bibliography.bib eingefügt.

Book

Ein Einzelstück, ein Buch mit einem oder mehreren Autoren, wo die Autoren alle zusammen gearbeitet haben.

@book{<id>,
  % pflicht
  author = {},
  title = {},
  year/date = {},

  % optional
  editor = {},
  editora = {},
  editorb = {},
  editorc = {},
  translator = {},
  annotator = {},
  commentator = {},
  introduction = {},
  foreword = {},
  afterword = {},
  subtitle = {},
  titleaddon = {},
  maintitle = {},
  mainsubtitle = {},
  maintitleaddon = {},
  language = {},
  origlanguage = {},
  volume = {},
  part = {},
  edition = {},
  volumes = {},
  series  = {},
  number = {},
  note = {},
  publisher = {},
  location = {},
  isbn = {},
  eid = {},
  chapter = {},
  pages = {},
  pagetotal = {},
  addendum = {},
  pubstate = {},
  doi = {},
  eprint = {},
  eprintclass = {},
  eprinttype = {},
  url = {},
  urldate = {},
}

Article

Ein Artikel in einem Journal, einer Zeitschrift, einer Zeitung oder einem anderem Periodikum, welches einen eigenen Abschnitt mit einem eigenen Titel erhält.

Die Datenfelder sind gleich zu @book mit dem Unterschied, dass journaltitle={} ein Pflichtfeld ist.

@article{<id>,
  % pflicht
  author={},
  title={},
  journaltitle={},
  year/date={},

  % optional
  editor = {},
  editora = {},
  editorb = {},
  editorc = {},
  translator = {},
  annotator = {},
  commentator = {},
  introduction = {},
  foreword = {},
  afterword = {},
  subtitle = {},
  titleaddon = {},
  maintitle = {},
  mainsubtitle = {},
  maintitleaddon = {},
  language = {},
  origlanguage = {},
  volume = {},
  part = {},
  edition = {},
  volumes = {},
  series  = {},
  number = {},
  note = {},
  publisher = {},
  location = {},
  isbn = {},
  eid = {},
  chapter = {},
  pages = {},
  pagetotal = {},
  addendum = {},
  pubstate = {},
  doi = {},
  eprint = {},
  eprintclass = {},
  eprinttype = {},
  url = {},
  urldate = {},
}

Online

Dieser Eingabetyp ist für reine Onlinequellen wie Websites gedacht. Zu beachten ist, dass alle Eingabetypen das url-Feld unterstützen. Zum Beispiel, beim Zitieren eines Artikels aus einer Zeitschrift, die online verfügbar ist, ist der @article-Typ und dessen url-Feld zu verweden.

@online{<id>,
  % plficht
  author/editor = {},
  title = {},
  year/date = {},
  doi/eprint/url = {},

  % optional
  subtitle = {},
  titleaddon = {},
  language = {},
  version = {},
  note = {},
  organization = {},
  month = {},
  addendum = {},
  pubstate = {},
  eprintclass = {},
  eprinttype = {},
  urldate = {},
}

Misc (Interne Quellen/Präsentationen)

Eine Fallbacklösung für Quellen, die sonst in keine Kategorie passen. Das Feld howpublished kann hilfreich sein für eine Klarifizierung wo die Quelle herkommt. Ein Augenmerk sei auch auf type zu legen um zu klären, was die Quelle überhaupt darstellt.

Es sollte auch unpublished erwähnt werden, jedoch fehlt da das organization Feld, welches jedoch bei internen Quellen benötigt wird.

@misc{<id>,
  % pflicht
  author/editor = {},
  title = {},
  year/date = {},

  % optional
  subtitle = {},
  titleaddon = {},
  language = {},
  howpublished = {},
  type = {},
  version = {},
  note = {},
  organization = {},
  location = {},
  month = {},
  addendum = {},
  pubstate = {},
  doi = {},
  eprint = {},
  eprintclass = {},
  eprinttype = {},
  url = {},
  urldate = {}
}

Zitieren

indirektes Zitieren

Im Gegensatz zu \cite sind bei \parencite die Klammern vorhanden

\parencite{<id>}
\parencite[vgl.][<seite>]{<id>}

direkte Zitate

Direkte Zitate sollten zwar möglichst vermieden werden, jedoch sind sie ab und zu nötig oder nützlich. Das Paket csqoutes bietet eine große Auswahl an Möglichkeiten. Mit dem folgenden Befehl wird eine ansehnliche weise des Zitierens verwendet, welche sich aus dem Text hervorhebt.

(Die Klammern werden schon von der Umgebung displayquotes gesetzt, daher kann \cite verwendet werden.)

\begin{displayquote}[\cite{<bibid>}]
    \emph{<text>}
\end{displayquote}

ChkTeX

Unterdrücken von Warnungen

Pro Zeile:

% chktex <cktex_warning_number>

Mehrere Warnungen in einer Zeile (für jede Warnung muss mit einem neuen chktex angekündigt werden):

% chktex <cktex_warning_number> chktex <cktex_warning_number>

Für das ganze Projekt können Regeln in der .chktexrc unterdrückt werden mit:

-n<cktex_warning_number>

Zum Beispiel

-n44
# 44: User Regex: -2:Use \toprule, midrule, or \bottomrule from booktabs.
# Because: booktabs my have a better handeling of tables but the difference in linethickness is very offputting with smaller tables and \hline is sufficient.

Ein Kommentar um welche Regel es sich handelt und warum sie deaktiviert ist kann hier sehr hilfreich sein!

Grafiken

Grafiken werden in /assets/images/ abgelegt.

Im Dokument verwenden

\begin{figure}[H] % Grafik soll hier im Text stehen.
  \centering
  \includegraphics[width=.8\linewidth]{<graphics name>} % importiere Grafik
  \caption{<caption text>} % Bildbeschreibung
  \label{<label>} % das lable um auf die Grafik zu referieren
\end{figure}

Subfigures

\begin{figure}[H]
    \centering

    \begin{subfigure}{.4\textwidth}
        \centering
        \includegraphics[width=.8\linewidth]{<subfig filename 1>}
        \caption{<suvfig caption 1>}
        \label{<subfig label 1>}
    \end{subfigure}
    \begin{subfigure}{.4\textwidth}
        \centering
        \includegraphics[width=.8\linewidth]{<subfig filename 2>}
        \caption{<suvfig caption 2>}
        \label{<subfig label 2>}
    \end{subfigure}

    \caption{<caption>}
    \label{<fig label>}
\end{figure}

Grafiken Referenzieren

\ref{fig:<label>}

Tabellen

TBD

Listen

Befehl

\begin{itemize}
    \item Item 1
    \item Item 2
    \item Item 3
\end{itemize}

Listensymbol ändern

\renewcommand{\labelitemi}{<symbol>}

Code

Codeblöcke werden mit dem Paket minted realisiert.

Verwendung

Codeblöcke als Listing

\begin{listing}[H]
    \begin{minted}{c} % sprache festlegen (hier c)
        int main() {
            // print hello world
            printf("hello, world!");
            return 0;
        }
    \end{minted}
    \caption{Hello world in C}
    \label{lst:listing}
\end{listing}

Code innerhalb einer Zeile

\mintinline{c}|int i = 1|.

Anpassungen

Quelltextverzeichnis

Festgelegt in src/transferleinstung/transferleistung.tex

% list of code
\renewcommand{\headingValue}{Quelltext}
\renewcommand\listoflistingscaption{\headingValue} % Name ändern (original List of Listings)
\listoflistings
\addcontentsline{toc}{section}{\headingValue}
\newpage

Quelltextüberschrift

Festgelegt in config/config.tex

\renewcommand{\listingscaption}{Quelltext}

Syntax-Highlighting

Festgelegt in config/config.tex

\usemintedstyle{vs}

Codeblock

Festgelegt in config/config.tex

\setminted{%
    autogobble,
    linenos, % enable line numbers
    % numbers = left, % default none
    % numbes is essentially the same as linenos exceot the side can be specified
    tabsize = 4 % default 8
}

Zeilennummerierung der Codeblöcke

Festgelegt in config/config.tex

Muss separat über das Makro \theFancyVerbLine angepasst werden.

\renewcommand{\theFancyVerbLine}{%
    \textcolor{gray}{%
        \ttfamily
        \scriptsize
        \oldstylenums{\arabic{FancyVerbLine}}
    }
}

Releases

No releases published