From 23d3dcfbb2116a43b1f8e64e958a887b5b141cb4 Mon Sep 17 00:00:00 2001 From: Julius Freudenberger Date: Wed, 20 Apr 2022 15:38:35 +0200 Subject: [PATCH] Add slides about code listings and lists --- codebeispiele/example.java | 3 + codebeispiele/graphics-figure.tex | 8 ++- codebeispiele/list-of-everything.tex | 8 +++ codebeispiele/listings-from-file.tex | 5 ++ codebeispiele/listings-lstlistings.tex | 5 ++ codebeispiele/listings-minted.tex | 5 ++ codebeispiele/listings-verbatim.tex | 7 +++ workshop.tex | 83 +++++++++++++++++++++++++- 8 files changed, 118 insertions(+), 6 deletions(-) create mode 100644 codebeispiele/example.java create mode 100644 codebeispiele/list-of-everything.tex create mode 100644 codebeispiele/listings-from-file.tex create mode 100644 codebeispiele/listings-lstlistings.tex create mode 100644 codebeispiele/listings-minted.tex create mode 100644 codebeispiele/listings-verbatim.tex diff --git a/codebeispiele/example.java b/codebeispiele/example.java new file mode 100644 index 0000000..4db5ee4 --- /dev/null +++ b/codebeispiele/example.java @@ -0,0 +1,3 @@ +public void main() { + System.out.println("HI"); +} diff --git a/codebeispiele/graphics-figure.tex b/codebeispiele/graphics-figure.tex index ac48d27..28935a5 100644 --- a/codebeispiele/graphics-figure.tex +++ b/codebeispiele/graphics-figure.tex @@ -1,6 +1,8 @@ \begin{figure} - \includegraphics[height= - .4\textheight]{katze} - \label{img:katze} + \includegraphics[width= + .7\textwidth]{katze} \caption{Eine Katze} + \label{fig:katze} \end{figure} +Abbildung \ref{fig:katze} +zeigt eine Katze. diff --git a/codebeispiele/list-of-everything.tex b/codebeispiele/list-of-everything.tex new file mode 100644 index 0000000..65515a7 --- /dev/null +++ b/codebeispiele/list-of-everything.tex @@ -0,0 +1,8 @@ +\tableofcontents + +\listoffigures +\listoflistings + +\printglossaries +\printindex +\printbibliography diff --git a/codebeispiele/listings-from-file.tex b/codebeispiele/listings-from-file.tex new file mode 100644 index 0000000..ec0e1fa --- /dev/null +++ b/codebeispiele/listings-from-file.tex @@ -0,0 +1,5 @@ +\lstinputlisting[language=java] +{codebeispiele/example.java} + +\inputminted{java} +{codebeispiele/example.java} diff --git a/codebeispiele/listings-lstlistings.tex b/codebeispiele/listings-lstlistings.tex new file mode 100644 index 0000000..f5981d5 --- /dev/null +++ b/codebeispiele/listings-lstlistings.tex @@ -0,0 +1,5 @@ +\begin{lstlisting}[language=java] +public void main() { + System.out.println("Hi"); +} +\end{lstlisting} diff --git a/codebeispiele/listings-minted.tex b/codebeispiele/listings-minted.tex new file mode 100644 index 0000000..bbac0a6 --- /dev/null +++ b/codebeispiele/listings-minted.tex @@ -0,0 +1,5 @@ +\begin{minted}{java} +public void main() { + System.out.println("Hi"); +} +\end{minted} diff --git a/codebeispiele/listings-verbatim.tex b/codebeispiele/listings-verbatim.tex new file mode 100644 index 0000000..6159ac0 --- /dev/null +++ b/codebeispiele/listings-verbatim.tex @@ -0,0 +1,7 @@ +\verb|Text in Monospacefont|. + +\begin{verbatim} +Absatz in Monospacefont. +Hier könnte Code dargestellt +werden. +\end{verbatim} diff --git a/workshop.tex b/workshop.tex index 0b4f825..5a77365 100644 --- a/workshop.tex +++ b/workshop.tex @@ -9,7 +9,7 @@ \usepackage[normalem]{ulem} \usepackage{amsmath,amssymb} \usepackage{hyperref} -\usepackage{minted} +\usepackage{listings,minted} \usepackage[duration=20]{pdfpc} \usetheme{metropolis} \author{Julius Freudenberger} @@ -270,14 +270,91 @@ pdflang={German}} \begin{frame}{Graphiken als Gleitobjekt} \begin{itemize} \item Automatische Positionierung im Text - \item Referenzierung über Nummerierung + \item Referenzierung mit Nummerierung über Label \end{itemize} \begin{minipage}[c]{.4\textwidth} - \include{codebeispiele/graphics-figure} + \input{codebeispiele/graphics-figure} \end{minipage} \hfill \begin{minipage}[c]{.5\textwidth} \inputminted{latex}{codebeispiele/graphics-figure.tex} \end{minipage} \end{frame} + +\begin{frame}[fragile]{Codelistings} + \begin{itemize} + \item Abdrucken von Codezeilen + \item Syntaxhighlighting und Zeilennummern + \item mögliche Pakete + \begin{itemize} + \item \verb|verbatim| + \item \verb|listings| + \item \verb|minted| + \end{itemize} + \end{itemize} +\end{frame} + +\begin{frame}[fragile]{Die verbatim-Umgebung} + \begin{itemize} + \item kein Syntaxhighlighting und Zeilennummern + \item Monospacefont + \item Befehle werden nicht ausgeführt + \end{itemize} + \begin{minipage}{.4\textwidth} + \input{codebeispiele/listings-verbatim.tex} + \end{minipage} + \hfill + \begin{minipage}{.5\textwidth} + \inputminted{latex}{codebeispiele/listings-verbatim.tex} + \end{minipage} +\end{frame} + +\begin{frame}[fragile]{Die lstlistings-Umgebung} + \begin{itemize} + \item Syntaxhighlighting bestimmter Sprachen und Zeilennummern + \item Customization mit Schriftgröße und Farben + \end{itemize} + \begin{minipage}{.4\textwidth} + \input{codebeispiele/listings-lstlistings.tex} + \end{minipage} + \hfill + \begin{minipage}{.5\textwidth} + \inputminted{latex}{codebeispiele/listings-lstlistings.tex} + \end{minipage} +\end{frame} + +\begin{frame}[fragile]{Die minted-Umgebung} + \begin{itemize} + \item Syntaxhighlighting vieler Sprachen + \item Farben direkt voreingestellt + \item benötigt \verb|pygmentize| und \verb|shell-escape|-Option beim Kompilieren + \end{itemize} + \begin{minipage}{.4\textwidth} + \input{codebeispiele/listings-minted.tex} + \end{minipage} + \hfill + \begin{minipage}{.5\textwidth} + \inputminted{latex}{codebeispiele/listings-minted.tex} + \end{minipage} +\end{frame} + +\begin{frame}[fragile]{Code aus Datei einbinden} + \begin{itemize} + \item besonders geeignet für längere Codeauszüge + \end{itemize} + \begin{minipage}{.4\textwidth} + \input{codebeispiele/listings-from-file.tex} + \end{minipage} + \hfill + \begin{minipage}{.5\textwidth} + \inputminted{latex}{codebeispiele/listings-from-file.tex} + \end{minipage} +\end{frame} + +\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} \end{document}