\documentclass[presentation,aspectratio=169]{beamer} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{graphicx} \graphicspath{{./graphics/}} \usepackage[ngerman]{babel} \usepackage{longtable,capt-of,fvextra,csquotes} \usepackage{wrapfig,rotating} \usepackage[normalem]{ulem} \usepackage{amsmath,amssymb} \usepackage{hyperref} \usepackage{minted} \usepackage[duration=20]{pdfpc} \usetheme{metropolis} \author{Julius Freudenberger} \date{Hackathon Sommersemester 2022} \title{WYSIWYAF with \LaTeX} \mode{\usetheme{metropolis}} \mode{\metroset{sectionpage=progressbar}} \mode{\metroset{subsectionpage=progressbar}} \mode{\metroset{block=fill}} \institute[Hochschule Esslingen]{Hochschule Esslingen} \hypersetup{ pdfauthor={Julius Freudenberger}, pdftitle={WYSIWYAF with LaTeX}, pdfkeywords={}, pdfsubject={}, pdflang={German}} \usepackage{biblatex} \begin{document} \maketitle \begin{frame}[fragile]{Bevor wir beginnen: Was brauche ich?} \begin{itemize} \item \LaTeX-Distribution: \TeX{}Live \begin{itemize} \item Windows: \href{https://tug.org/texlive/windows.html}{https://tug.org/texlive/windows.html} %TODO MikTeX? \item Mac: \href{https://tug.org/mactex/}{https://tug.org/mactex/} \item Linux: Installation über den Paketmanager \begin{itemize} \item deb: \verb|texlive-base| (deb), \verb|texlive texlive-latex| (rpm) \item Arch Linux: \verb|texlive-core| \item NixOS: \verb|nixpkgs.texlive.combined.scheme-basic| \end{itemize} \item Docker: \verb|texlive/texlive| \end{itemize} \item Texteditor \begin{itemize} \item VSCode mit \LaTeX-Workshop, vim mit vimtex \item \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} \begin{frame}{Was ist \LaTeX?} \pdfpcnote{ - Entwicklung seit Anfang der 1980er - What you see is what you get --> What you see is what you asked for} \begin{itemize} \item Textsatzsystem \item setzt vorgegebenen Text und weitere Anweisungen automatisch \item versucht automatisch bestmögliches Layout \item kein WYSIWYG, sondern WYSIWYAF \item Quellcode wird \glqq{}kompiliert\grqq{} \item Dokument wird als PDF, PS, DVI oder sogar HTML ausgegeben \end{itemize} \end{frame} \begin{frame}{Warum \LaTeX?} \pdfpcnote{ Vergleich zu Word - schöner Blocksatz, bestmögliche Zeilenumbrüche und Worttrennungen - Inhaltsverzeichnis und Verzeichnisse für Abbildungen, Stichworte, Abkürzungen und Literatur - Abbildungen und weitere Referenzelemente werden automatisch an der bestmöglichen Stelle eingefügt - Deutlich mehr Automatisierungen als bei Word, "Layoutarbeit" am Ende einer Arbeit deutlich geringer} \begin{itemize} \item Automatischer Textsatz \item Automatische Referenzen \item Automatisches Layout \end{itemize} \end{frame} \begin{frame}{Wie sieht \LaTeX-Code aus?} \pdfpcnote{ - Befehle werden mit \ angegeben - Parameter mit {} - Einrückung hilft bei Lesbarkeit, ist nicht notwendig - Beginn und Ende - normaler Text } \inputminted{latex}{codebeispiele/beispiel.tex} \end{frame} \begin{frame}{Grundlegender Aufbau} \pdfpcnote{ - Dokumentenklasse (book, article, beamer) - Präambel - Metadaten (Titel, Autor, Datum) - Zusätzliche Pakete - Einstellungen - Eigentliches Dokument } \inputminted{latex}{codebeispiele/aufbau.tex} \end{frame} \begin{frame}{Vorlage herunterladen} \begin{itemize} \item \href{https://www2.hs-esslingen.de/~jufrit00/latex/}{https://www2.hs-esslingen.de/\textasciitilde{}jufrit00/latex/} \item \href{https://gitlab.hs-esslingen.de/jufrit00/latex-workshop}{https://gitlab.hs-esslingen.de/jufrit00/latex-workshop} \item \href{https://github.com/JuliusFreudenberger/latex-workshop}{https://github.com/JuliusFreudenberger/latex-workshop} \end{itemize} \end{frame} \begin{frame}[fragile]{Projekt kompilieren} \begin{itemize} \item Im Projektverzeichnis \verb|pdflatex file.tex| \item automatisierter mit \verb|latexmk -pdf file.tex| \item In \TeX{}Maker \glqq{}Schnelles Übersetzen\grqq{} \item mittels Docker und Docker Compose: %TODO \item Outputfile \verb|file.pdf| als PDF-Datei im gleichen Verzeichnis \end{itemize} \end{frame} \begin{frame}[fragile]{Erste eigene Änderungen} \pdfpcnote{ - Stärke von LaTeX: Änderungen wirken sich konsistent auf das gesamte Dokument aus. - Keine manuelle Anpassung an mehreren Stellen nötig. - Niedrigste Stufe: subsubsection - Bei Text am Besten ein Satz in eine Zeile. } \begin{itemize} \item Eigener Text, Absätze \item Textformatierung: \textbf{fett} und \textit{kursiv} mit \verb|\textbf{fett}|, \verb|\textit{kursiv}| \item Eigene Abschnitte mit \verb|\section{} und \subsection{}| \item Metadaten ändern \begin{itemize} \item Titel des Dokuments ändern mit \verb|\title{}| \item Eigener Name als Autor mit \verb|\author{}| \end{itemize} \end{itemize} \end{frame} \begin{frame}[fragile]{Umgebungen} \begin{itemize} \item kennzeichnen besondere Bereiche im Dokument \item beginnen mit \verb|\begin{}| und enden mit \verb|\end{}| \item können verschachtelt werden, aber nicht geschnitten \item Aufzählungen \verb|enumerate| (nummeriert) und \verb|itemize| (unnummeriert) \end{itemize} \begin{center} \centering \begin{minted}{latex} \begin{itemize} \item Erster Punkt \item Zweiter Punkt \end{itemize} \end{minted} \end{center} \end{frame} \begin{frame}[fragile]{Wichtige besondere Zeichen} \begin{tabular}{c|c|c} Schrägstrich & \textbackslash & \verb|\textbackslash| \\ \hline Tilde & \textasciitilde & \verb|\textasciitilde| \\ \hline geschütztes Leerzeichen (ohne Zeilenumbruch) & ~ & \verb|~| \\ \hline schmales geschütztes Leerzeichen & z.\,B. & \verb|z.\,B.| \\ \hline Gedankenstrich (Halbgeviertstrich) & -- & \verb|--| \\ \hline Geviertstrich & --- & \verb|---| \end{tabular} \end{frame} \begin{frame}[fragile]{Verweise} \begin{itemize} \item Label setzen: \verb|\label{}| \item Abschnitt referenzieren: \verb|\ref{}| \item Seite referenzieren: \verb|\pageref{}| \item Referenz nutzt immer aktuellste Abschnittnummer und Seitenzahl \item zur Aktualisierung doppelte Durchläufe notwendig \end{itemize} \end{frame} \begin{frame}{Mathematik} \begin{itemize} \item \TeX{} ist für seine gute Formeleingabe bekannt \item verschiedene Modi, in denen Formeln gesetzt werden können \begin{itemize} \item inline \item Block \item Gleichung \end{itemize} \end{itemize} \end{frame} \begin{frame}[fragile]{Mathematik --- inline} \begin{itemize} \item setzt die Gleichung in einen Fließtext ein \item keine Referenzierung \item Beginn und Ende mit \verb|$| \end{itemize} \begin{minipage}{.4\textwidth} \input{codebeispiele/math-inline} \end{minipage} \hfill \begin{minipage}{.5\textwidth} \inputminted{latex}{codebeispiele/math-inline.tex} \end{minipage} \end{frame} \begin{frame}[fragile]{Mathematik --- block} \begin{itemize} \item setzt die Gleichung als Block mit Absätzen \item keine Referenzierung \item Beginn mit \verb|\[|, Ende mit \verb|\]| \end{itemize} \begin{minipage}{.4\textwidth} \input{codebeispiele/math-block} \end{minipage} \hfill \begin{minipage}{.5\textwidth} \inputminted{latex}{codebeispiele/math-block.tex} \end{minipage} \end{frame} \begin{frame}[fragile]{Mathematik --- Gleichung} \begin{itemize} \item setzt die Gleichung als Block mit Absätzen \item Referenzierung über Nummerierung \item Beginn mit \verb|\begin{equation}| Ende mit \verb|\end{equation}| \end{itemize} \begin{minipage}{.4\textwidth} \input{codebeispiele/math-equation} \end{minipage} \hfill \begin{minipage}{.5\textwidth} \inputminted{latex}{codebeispiele/math-equation.tex} \end{minipage} \end{frame} \begin{frame}[fragile]{Abbildungen und Graphiken} \begin{itemize} \item Paket \verb|graphicx| \item Unterstützung von jpg, png und pdf, Dateiendung kann weggelassen werden \item Höhe und Breite als optionale Parameter \begin{itemize} \item \verb|\textwidth| oder \verb|textheight| \end{itemize} \item \begin{minted}{latex} \includegraphics[width=.5\textwidth]{} \end{minted} \end{itemize} \begin{center} \includegraphics[height=.5\textheight]{katze} \end{center} \end{frame} \begin{frame}{Graphiken als Gleitobjekt} \begin{itemize} \item Automatische Positionierung im Text \item Referenzierung über Nummerierung \end{itemize} \begin{minipage}[c]{.4\textwidth} \include{codebeispiele/graphics-figure} \end{minipage} \hfill \begin{minipage}[c]{.5\textwidth} \inputminted{latex}{codebeispiele/graphics-figure.tex} \end{minipage} \end{frame} \end{document}