Compare commits

..

No commits in common. "1163a6039acc11c82ce681006605cdaa3f8ec350" and "27819965eabe26d6521d6607873b04480c430e26" have entirely different histories.

16 changed files with 44 additions and 528 deletions

6
.gitignore vendored
View file

@ -49,10 +49,6 @@
# latexrun # latexrun
latex.out/ latex.out/
## Files from failed runs
*.bbl-SAVE-ERROR
*.bcf-SAVE-ERROR
## Auxiliary and intermediate files from other packages: ## Auxiliary and intermediate files from other packages:
# algorithms # algorithms
*.alg *.alg
@ -125,7 +121,7 @@ acs-*.bib
*.sls *.sls
# uncomment this for glossaries-extra (will ignore makeindex's style files!) # uncomment this for glossaries-extra (will ignore makeindex's style files!)
*.ist # *.ist
# gnuplot # gnuplot
*.gnuplot *.gnuplot

View file

@ -1,430 +0,0 @@
\documentclass[presentation,aspectratio=169]{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\graphicspath{{./graphics/}}
\usepackage[main=ngerman,english]{babel}
\usepackage{tabularx,longtable,capt-of,fvextra,csquotes}
\MakeOuterQuote{"}
\usepackage{wrapfig,rotating}
\usepackage[normalem]{ulem}
\usepackage{amsmath,amssymb}
\usepackage{acro}
\usepackage[nonumberlist]{glossaries}
\makeglossaries
\renewcommand{\glossarysection}[2][]{}
\usepackage{hyperref}
\usepackage{listings,minted}
\usepackage[duration=20]{pdfpc}
\usetheme{metropolis}
\author{Julius Freudenberger}
\date{Cyberweek Sommersemester 2025}
\title{WYSIWYAF with \LaTeX}
\subtitle{Wissenschaftliche Arbeiten oder Präsentationen mit \LaTeX -- Fortgeschrittene}
\mode<presentation>{\usetheme{metropolis}}
\mode<beamer|handout>{\metroset{sectionpage=progressbar}}
\mode<beamer|handout>{\metroset{subsectionpage=progressbar}}
\mode<beamer|handout>{\metroset{progressbar=frametitle}}
\mode<beamer|handout>{\metroset{block=fill}}
\institute[Hochschule Esslingen]{Hochschule Esslingen}
\hypersetup{
pdfauthor={Julius Freudenberger},
pdftitle={WYSIWYAF with LaTeX -- Aufbaukurs},
pdfkeywords={},
pdfsubject={},
pdflang={German},
colorlinks,
linkcolor=black,
citecolor=black,
filecolor=black,
urlcolor=blue
}
\input{codebeispiele/acro-used-acronyms.tex}
\input{codebeispiele/glossaries-used-words.tex}
\usepackage{biblatex}
\begin{document}
\maketitle
\begin{frame}[fragile]{Bevor wir beginnen: Was brauche ich?}
\begin{itemize}
\item \LaTeX-Distribution: \TeX{}Live oder Mik\TeX{}
\begin{itemize}
\item Windows: \href{https://miktex.org/}{https://miktex.org/}
\item Mac: \href{https://tug.org/mactex/}{https://tug.org/mactex/}
\item Linux: Installation über den Paketmanager
\begin{itemize}
\item deb: \verb|texlive-base|, rpm: \verb|texlive texlive-latex|
\item Arch Linux: \verb|texlive-core|
\item NixOS: \verb|nixpkgs.texliveBasic|
\end{itemize}
\item Docker: \verb|texlive/texlive|
\end{itemize}
\item Texteditor
\begin{itemize}
\item \href{https://code.visualstudio.com/}{VSCode} mit \href{https://marketplace.visualstudio.com/items?itemName=James-Yu.latex-workshop}{\LaTeX-Workshop}, \href{https://www.vim.org/}{vim} mit \href{https://github.com/lervag/vimtex}{vimtex}
\item \href{https://www.xm1math.net/texmaker/index.html}{\TeX{}Maker}
\end{itemize}
\item Alternativ: Online-Editoren
\begin{itemize}
\item Overleaf (\href{https://www.overleaf.com}{https://www.overleaf.com}, Registrierung erforderlich)
\item \TeX{}Viewer (\href{https://texviewer.herokuapp.com}{https://texviewer.herokuapp.com}, direkt nutzbar)
\end{itemize}
\end{itemize}
\end{frame}
\input{about-me}
\begin{frame}{Wer seid ihr?}
\begin{itemize}
\item Name
\item Fakultät? Was macht ihr da?
\item Schon von \LaTeX{} gehört oder etwas damit gemacht?
\item Was stört dich am meisten an traditionellen Textverarbeitungsprogrammen?
\item Nächste (wissenschaftliche) Arbeit, die du vielleicht mit \LaTeX{} schreiben möchtest?
\end{itemize}
\end{frame}
\begin{frame}{Materialien für den Kurs}
\begin{itemize}
\item Dieser Foliensatz
\item Kleine Vorlagen zum Mitmachen
\item Dokumente, die wir im Laufe des Kurses erstellen
\bigskip
\item wird alles im geteilten Ordner hochgeladen
\end{itemize}
\end{frame}
\begin{frame}{Inhalt}
\tableofcontents
\end{frame}
\section{Tabellen}
\begin{frame}{Setzen von Tabellen}
\begin{itemize}
\item Tabellen haben eigene Syntax in \LaTeX
\item Ausrichtung einzelner Spalten kann individuell festgelegt werden
\item Linien können für jede Spalte/Zeile individuell festgelegt werden
\end{itemize}
\end{frame}
\begin{frame}[fragile]{Beispieltabelle}
\begin{columns}
\begin{column}{.49\textwidth}
\input{codebeispiele/table-simple.tex}
\end{column}
\begin{column}{.5\textwidth}
\inputminted{latex}{codebeispiele/table-simple.tex}
\end{column}
\end{columns}
\end{frame}
\begin{frame}[fragile]{Setzen von Tabellen}
\begin{itemize}
\item Spaltentrennung
\begin{itemize}
\item Spalten werden in jeder Zeile durch \verb|&| getrennt
\item muss nicht zwingend untereinander stehen, sieht aber aufgeräumt im Code aus $\rightarrow$ hat keine Auswirkung auf die Formatierung der Tabelle
\end{itemize}
\item Zeilentrennung
\begin{itemize}
\item jede Zeile endet \emph{zwingend} mit \verb|\\|
\item Linie wird mit \verb|\hline| erstellt
\item muss zwischen allen Zeilen gesetzt werden, wo eine Linie auftauchen soll
\end{itemize}
\item Zweiter Parameter
\begin{itemize}
\item gibt an, wie viele Spalten es gibt und wie sie ausgerichtet sind
\begin{itemize}
\item \verb|c| -- centered
\item \verb|l| -- left
\item \verb|r| -- right
\end{itemize}
\item \verb/|/ gibt an, ob die Spalten durch eine Linie getrennt werden sollen
\end{itemize}
\end{itemize}
\end{frame}
\begin{frame}[fragile]{Beschriftung einer Tabelle}
\begin{columns}
\begin{column}{.45\textwidth}
\input{codebeispiele/table-float.tex}
\end{column}
\begin{column}{.5\textwidth}
\inputminted{latex}{codebeispiele/table-float.tex}
\end{column}
\end{columns}
\vspace{1em}
\begin{itemize}
\centering
\item gleiche Platzierungsregeln wie bei anderen Floats gelten
\end{itemize}
\end{frame}
\begin{frame}[fragile]{Einschränkungen von tabular}
\begin{itemize}
\item Wenn der Text zu lang ist, wird kein Zeilenumbruch gesetzt
\begin{itemize}
\item Abhilfe: Spalte mit \verb|p{...cm}| deklarieren oder
\item \verb|\usepackage{tabularx}|
\end{itemize}
\item Tabellen mit \verb|tabular| können keine Seitenumbrüche
\begin{itemize}
\item Lange Tabellen werden am Ende der Seite einfach abgeschnitten
\item Lösung: \verb|longtable|
\end{itemize}
\end{itemize}
\end{frame}
\begin{frame}[fragile]{tabularx}
\begin{columns}
\begin{column}{.35\textwidth}
\input{codebeispiele/table-tabularx.tex}
\end{column}
\begin{column}{.55\textwidth}
\inputminted{latex}{codebeispiele/table-tabularx.tex}
\end{column}
\end{columns}
\end{frame}
\begin{frame}[fragile]{longtable}
\inputminted{latex}{codebeispiele/table-longtable.tex}
\end{frame}
\begin{frame}{Beispiel für longtable}
\input{codebeispiele/table-longtable.tex}
\end{frame}
\section{Weitere Verzeichnisse}
\begin{frame}[fragile]{Weitere Verzeichnisse}
\begin{itemize}
\item automatisch aktualisierendes Inhaltsverzeichnis sowie Verzeichnisse für Abbildungen, Codelistings (Abkürzungen, Stichwörter, Bibliographie, \dots)
\end{itemize}
\inputminted{latex}{codebeispiele/list-of-everything.tex}
\end{frame}
\subsection{Abkürzungen}
\begin{frame}{Abkürzungen mit acro}
\begin{itemize}
\item Liste von Abkürzungen mit ihrer langen Form
\item automatisches Einfügen der richtigen Form
\begin{itemize}
\item lange Form beim ersten Auftreten
\item Abkürzung sonst
\item manuell überschreibbar
\end{itemize}
\item Pluralformen in Abkürzung und langer Form
\item automatisches Verzeichnis der verwendeten Abkürzungen
\end{itemize}
\end{frame}
\begin{frame}[fragile]{Einrichtung des Pakets}
\inputminted{latex}{codebeispiele/acro-setup.tex}
\end{frame}
\begin{frame}[fragile]{Benutzte Abkürzungen in den Beispielen}
\inputminted{latex}{codebeispiele/acro-used-acronyms.tex}
\end{frame}
\begin{frame}[fragile]{Setzen von Abkürzungen}
\begin{columns}
\begin{column}{.49\textwidth}
\input{codebeispiele/acro-usage.tex}
\end{column}
\begin{column}{.5\textwidth}
\inputminted{latex}{codebeispiele/acro-usage.tex}
\end{column}
\end{columns}
\end{frame}
\begin{frame}[fragile]{Setzen von Abkürzungen}
\begin{itemize}
\item in den meisten Fällen reicht \verb|\ac|
\item für Großschreibung (wie an Satzanfängen) ein großes \verb|A| in den Befehlen verwenden: \verb|\Ac|
\end{itemize}
\end{frame}
\begin{frame}[fragile]{Besonderheiten in deutschen Texten -- Pluralformen}
\begin{itemize}
\item Pluralform nicht mit 's' gebildet
\end{itemize}
\inputminted[firstline=8,lastline=8]{latex}{codebeispiele/acro-used-acronyms.tex}
\vspace{2em}
\begin{columns}
\begin{column}{.49\textwidth}
\input{codebeispiele/acro-german-plurals.tex}
\end{column}
\begin{column}{.5\textwidth}
\inputminted{latex}{codebeispiele/acro-german-plurals.tex}
\end{column}
\end{columns}
\end{frame}
\begin{frame}[fragile]{Besonderheiten in deutschen Texten -- Übersetzungen}
geläufige englische Abkürzung für deutschen Begriff
\inputminted[firstline=3,lastline=7]{latex}{codebeispiele/acro-used-acronyms.tex}
\input{codebeispiele/acro-german.tex}
\end{frame}
\begin{frame}[fragile]{Besonderheiten in deutschen Texten -- Abweichender Kasus in langer Form}
\begin{itemize}
\item Bei langer Form bei der ersten Erwähnung wird das Wort in einem anderen Kasus benötigt
\item Trick: Pluralform missbrauchen
\end{itemize}
\inputminted[firstline=9,lastline=12]{latex}{codebeispiele/acro-used-acronyms.tex}
\vspace{2em}
\begin{columns}
\begin{column}{.49\textwidth}
\input{codebeispiele/acro-german-different-case.tex}
\end{column}
\begin{column}{.5\textwidth}
\inputminted{latex}{codebeispiele/acro-german-different-case.tex}
\end{column}
\end{columns}
\end{frame}
\subsection{Glossar}
\begin{frame}{Glossar mit glossaries}
\begin{itemize}
\item Liste von Wörtern mit ihren Erklärungen
\item im Text wird Wort (mit Link auf das Glossar) gesetzt
\item Glossar enthält alle benutzten Wörter und ihre Erklärungen
\end{itemize}
\end{frame}
\begin{frame}[fragile]{Einrichtung des Pakets}
\inputminted{latex}{codebeispiele/glossaries-setup.tex}
\end{frame}
\begin{frame}[fragile]{Setzen eines Wortes aus dem Glossar}
\begin{columns}
\begin{column}{.49\textwidth}
\input{codebeispiele/glossaries-usage.tex}
\end{column}
\begin{column}{.5\textwidth}
\inputminted{latex}{codebeispiele/glossaries-usage.tex}
\end{column}
\end{columns}
\end{frame}
\begin{frame}{Resultierendes Glossar}
%\minted{latex}{\printglossary}
\printglossary
\end{frame}
\begin{frame}[fragile]{Besonderheit beim Kompilieren}
\begin{itemize}
\item Erstellung des Glossars geschieht mittels externem Befehl (ähnlich wie bei Literaturverzeichnissen)
\item \verb|> makeglossaries <filename>|
\vspace{1em}
\item alternativ: anstatt \verb|\makeglossaries| \verb|\makenoidxglossaries| nutzen
\item dann wird Sortierung intern gemacht (langsamer)
\item zum Anzeigen des Glossars dann \verb|\printnoidxglossaries|
\end{itemize}
\end{frame}
\section{Die Dokumentenklasse scrbook}
\begin{frame}[fragile]{Bücher?}
\begin{itemize}
\item nicht nur geeignet für Bücher
\item kann auch für Abschlussarbeiten verwendet werden, besonders wenn diese gedruckt werden
\item weist bestimmte Besonderheiten im Gegensatz zu z.\,B. \verb|scrartcl| auf
\end{itemize}
\end{frame}
\begin{frame}[fragile]{Besonderheiten der Klasse scrbook}
\begin{itemize}
\item neue Überschriftsebene \verb|chapter|
\item zweiseitiges Layout
\begin{itemize}
\item Seitenzahlen immer außen
\item Kapitel beginnen immer auf einer rechten Seite
\end{itemize}
\item Gliederung in Abschnitte \verb|\frontmatter| \verb|\mainmatter| \verb|\backmatter|
\begin{itemize}
\item \verb|\frontmatter| römische Seitenzahlen
\item \verb|\mainmatter| und \verb|\backmatter| arabische Seitenzahlen
\end{itemize}
\end{itemize}
\end{frame}
\section{Präsentationen}
\begin{frame}[fragile]{Präsentationen}
\begin{itemize}
\item Dokumentenklasse \verb|beamer|
\item Präsentation besteht aus einer Abfolge von Folien
\inputminted{latex}{codebeispiele/beamer-frame.tex}
\end{itemize}
\end{frame}
\begin{frame}[fragile]{Präsentationen -- Besonderheiten}
\begin{itemize}
\item \verb|\section| oder \verb|\subsection| erstellen einzelne Folien mit den Überschriften
\item \verb|\maketitle| erstellt Titelfolie
\item zu langer Inhalt verschiebt sich nicht automatisch auf die nächste Folie
\item Für Listings oder \verb|verbatim| muss der Frame als \verb|fragile| gekennzeichnet werden
\inputminted{latex}{codebeispiele/frame-fragile.tex}
\end{itemize}
\end{frame}
\begin{frame}[fragile]{"Animationen" -- Overlays}
\begin{itemize}
\item PDF kann keine bewegten Animationen
\item aber Aufzählungspunkte oder anderer Inhalt kann nacheinander eingeblendet werden
\item jedes Overlay wird auf einer neuen PDF-Seite angezeigt
\inputminted{latex}{codebeispiele/beamer-overlays.tex}
\end{itemize}
\end{frame}
\begin{frame}[fragile]{Themes}
\begin{itemize}
\item Klassische Themes in der \href{https://hartwork.org/beamer-theme-matrix/}{Beamer Theme Matrix}
\item Modernes Theme (auch in dieser Präsentation): \href{https://ctan.org/pkg/beamertheme-metropolis}{Metropolis}
\begin{itemize}
\item Moderne Font (wenn mit Xe\LaTeX{} oder Lua\LaTeX{} kompiliert wird)
\item kann optional einen Fortschrittsbalken anzeigen
\item Einstellungen mit \verb|\metroset|
\end{itemize}
\end{itemize}
\end{frame}
\begin{frame}[fragile]{Bewerbungsunterlagen}
\begin{columns}
\column{.5\textwidth}
\centering
\begin{itemize}
\item Lebenslauf mit \verb|moderncv|
\end{itemize}
\includegraphics[height=.7\textheight]{Lebenslauf}
\column{.5\textwidth}
\centering
\begin{itemize}
\item Anschreiben mit \verb|dinbrief|
\end{itemize}
\includegraphics[height=.7\textheight]{Anschreiben}
\end{columns}
\end{frame}
\begin{frame}[fragile]{Wohin bei Problemen?}
\begin{itemize}
\item \verb|texdoc <paketname>|
\item Suchmaschine des Vertrauens
\item \href{https://de.wikibooks.org/wiki/LaTeX-Kompendium}{\LaTeX-Kompendium}
\item \href{https://www.overleaf.com/learn}{Overleaf documentation}
\item \href{https://golatex.de/wiki/index.php/Hauptseite}{Go\LaTeX-Wiki}
\item \href{https://tex.stackexchange.com}{\TeX-Stackexchange}
\end{itemize}
\end{frame}
\maketitle
\end{document}

View file

@ -1 +0,0 @@
Wir widmen uns dem \acfp{ufo}.

View file

@ -1 +0,0 @@
\aclp{sw}

View file

@ -1 +0,0 @@
\acf{api}

View file

@ -1,7 +0,0 @@
% Präambel
\usepackage{arco}
\DeclareAcronym{api}{short=API,
long=Application Programming Interface}
% min. short und long müssen gegeben sein
% erster Parameter is id

View file

@ -1,11 +0,0 @@
\ac{zB}
\\% automatisch (1. Mal voll,
% danach Abk.)
\ac{zB}\\
\acs{zB}
\\% Abkürzung
\acl{zB}
\\% lange Form
\acf{zB}
% volle Form (lange Form
% und Abkürzung in Klammern)

View file

@ -1,12 +0,0 @@
\acsetup{locale/display,locale/format=\emph}
\DeclareAcronym{zB}{short=z.\,B.,long=zum Beispiel}
\DeclareAcronym{api}{short=API,
long=Programmierschnittstelle,
foreign=Application Programming Interface,
foreign-locale=englisch,
foreign-babel=english}
\DeclareAcronym{sw}{short=SW,long=Sammelwerk,long-plural=e}
\DeclareAcronym{ufo}{short=UFO,
long=unidentifiziertes Flugobjekt,
long-plural-form=unidentifizierten Flugobjekt,
short-plural=}

View file

@ -1,11 +0,0 @@
% Präambel
\usepackage{glossaries}
\makeglossaries
\newglossaryentry{latex}
{
name=\LaTeX,
description={Markupsprache, die besonders für
wissenschaftliche Dokumente und
Präsentationen geeignet ist}
}

View file

@ -1,2 +0,0 @@
Dieses Dokument wurde in
\gls{latex} gesetzt.

View file

@ -1,8 +0,0 @@
\newglossaryentry{latex}
{
name=\LaTeX,
description={Markupsprache, die besonders für
wissenschaftliche Dokumente und
Präsentationen geeignet ist}
}

View file

@ -1,9 +0,0 @@
\begin{table}
\begin{tabular}{c|c|c}
Hallo & Beispiel & Ende \\
\hline
Dies & ist & Zeile 2 \\
\end{tabular}
\caption{Beispieltabelle mit
Beschriftung}
\end{table}

View file

@ -1,13 +0,0 @@
\begin{longtable}{c|c}
Wird \emph{nur} auf der & ersten Seite oben gezeigt \\
\endfirsthead
Wird auf \emph{jeder} & Seite oben gezeigt \\
% Funktioniert nur leider in Präsentationen nicht
\endhead
Wird auf \emph{jeder} & Seite unten gezeigt \\
\endfoot
Wird \emph{nur} auf der & letzten Seite unten gezeigt \\
\endlastfoot
Normaler & Inhalt \\
der & Tabelle \\
\end{longtable}

View file

@ -1,7 +0,0 @@
\begin{tabular}{|l|c|r|}
\hline
Hallo & Beispiel & Ende \\
\hline
Dies & ist & Zeile 2 \\
\hline
\end{tabular}

View file

@ -1,7 +0,0 @@
\begin{tabularx}{\textwidth}{X|X|X}
% X sorgt für Umbruch
% und "stretcht" die Spalte
Hallo & Beispieltext & Ende \\
\hline
Dies & ist & Zeile 2 \\
\end{tabularx}

View file

@ -14,9 +14,9 @@
\usepackage[duration=20]{pdfpc} \usepackage[duration=20]{pdfpc}
\usetheme{metropolis} \usetheme{metropolis}
\author{Julius Freudenberger} \author{Julius Freudenberger}
\date{Cyberweek Sommersemester 2025} \date{Cyberweek Wintersemester 2024/2025}
\title{WYSIWYAF with \LaTeX} \title{WYSIWYAF with \LaTeX}
\subtitle{Einstieg in Wissenschaftliche Arbeiten mit \LaTeX} \subtitle{Wissenschaftliche Arbeiten oder Präsentationen mit \LaTeX}
\mode<presentation>{\usetheme{metropolis}} \mode<presentation>{\usetheme{metropolis}}
\mode<beamer|handout>{\metroset{sectionpage=progressbar}} \mode<beamer|handout>{\metroset{sectionpage=progressbar}}
\mode<beamer|handout>{\metroset{subsectionpage=progressbar}} \mode<beamer|handout>{\metroset{subsectionpage=progressbar}}
@ -760,6 +760,47 @@
\end{itemize} \end{itemize}
\end{frame} \end{frame}
\section{Präsentationen}
\begin{frame}[fragile]{Präsentationen}
\begin{itemize}
\item Dokumentenklasse \verb|beamer|
\item Präsentation besteht aus einer Abfolge von Folien
\inputminted{latex}{codebeispiele/beamer-frame.tex}
\end{itemize}
\end{frame}
\begin{frame}[fragile]{Präsentationen -- Besonderheiten}
\begin{itemize}
\item \verb|\section| oder \verb|\subsection| erstellen einzelne Folien mit den Überschriften
\item \verb|\maketitle| erstellt Titelfolie
\item zu langer Inhalt verschiebt sich nicht automatisch auf die nächste Folie
\item Für Listings oder \verb|verbatim| muss der Frame als \verb|fragile| gekennzeichnet werden
\inputminted{latex}{codebeispiele/frame-fragile.tex}
\end{itemize}
\end{frame}
\begin{frame}[fragile]{"Animationen" -- Overlays}
\begin{itemize}
\item PDF kann keine bewegten Animationen
\item aber Aufzählungspunkte oder anderer Inhalt kann nacheinander eingeblendet werden
\item jedes Overlay wird auf einer neuen PDF-Seite angezeigt
\inputminted{latex}{codebeispiele/beamer-overlays.tex}
\end{itemize}
\end{frame}
\begin{frame}[fragile]{Themes}
\begin{itemize}
\item Klassische Themes in der \href{https://hartwork.org/beamer-theme-matrix/}{Beamer Theme Matrix}
\item Modernes Theme (auch in dieser Präsentation): \href{https://ctan.org/pkg/beamertheme-metropolis}{Metropolis}
\begin{itemize}
\item Moderne Font (wenn mit Xe\LaTeX{} oder Lua\LaTeX{} kompiliert wird)
\item kann optional einen Fortschrittsbalken anzeigen
\item Einstellungen mit \verb|\metroset|
\end{itemize}
\end{itemize}
\end{frame}
\subsection{\LaTeX{}-Dateien strukturieren} \subsection{\LaTeX{}-Dateien strukturieren}
\begin{frame}[fragile]{Modularisierung} \begin{frame}[fragile]{Modularisierung}
@ -786,7 +827,6 @@
\begin{frame}{Was kann \LaTeX{} noch?} \begin{frame}{Was kann \LaTeX{} noch?}
\begin{itemize} \begin{itemize}
\item Präsentationen
\item Zeichnen mit TikZ \item Zeichnen mit TikZ
\item Plotting mit pdfPlots \item Plotting mit pdfPlots
\item Chemische Formeln mit chemfig \item Chemische Formeln mit chemfig