Compare commits

...

3 Commits

Author SHA1 Message Date
8a02ce4842 Start working on the README 2021-04-14 11:55:00 +02:00
d8e57f0ad4 Add exercise for literature 2021-04-14 11:37:39 +02:00
f126ed15ba Adjust to use bibtex 2021-04-14 11:34:25 +02:00
10 changed files with 146 additions and 6 deletions

View File

@ -20,6 +20,17 @@ preview: main.tex
@echo @echo
@echo Run \'make publication\' a few times to generate PDF and ZIP file for publication. @echo Run \'make publication\' a few times to generate PDF and ZIP file for publication.
# Compile a preview PDF containing all contents and the literature
preview-with-literature: main.tex
echo "\newcommand\exercisemode{any}" > exercise-mode.tex
pdflatex -shell-escape main.tex
bibtex main.aux
pdflatex -shell-escape main.tex
pdflatex -shell-escape main.tex
@echo
@echo
@echo Run \'make publication\' a few times to generate PDF and ZIP file for publication.
# Build all PDF and ZIP variants # Build all PDF and ZIP variants
publication: publication-pdf-without-exercises publication-pdf-with-exercises publication-pdf-with-solutions publication-zip-with-exercises publication-zip-with-solutions publication: publication-pdf-without-exercises publication-pdf-with-exercises publication-pdf-with-solutions publication-zip-with-exercises publication-zip-with-solutions
@ -35,26 +46,35 @@ publication-dir:
publication-pdf-without-exercises: publication-dir main.tex publication-pdf-without-exercises: publication-dir main.tex
echo "\newcommand\exercisemode{none}" > exercise-mode.tex echo "\newcommand\exercisemode{none}" > exercise-mode.tex
pdflatex -shell-escape -jobname=script-only main.tex pdflatex -shell-escape -jobname=script-only main.tex
bibtex main.aux
pdflatex -shell-escape -jobname=script-only main.tex
pdflatex -shell-escape -jobname=script-only main.tex
mv script-only.pdf public/ mv script-only.pdf public/
# Compile a printable PDF with exercises and without solutions # Compile a printable PDF with exercises and without solutions
publication-pdf-with-exercises: publication-dir main.tex publication-pdf-with-exercises: publication-dir main.tex
echo "\newcommand\exercisemode{exercises}" > exercise-mode.tex echo "\newcommand\exercisemode{exercises}" > exercise-mode.tex
pdflatex -shell-escape -jobname=script-with-exercises main.tex pdflatex -shell-escape -jobname=script-with-exercises main.tex
bibtex main.aux
pdflatex -shell-escape -jobname=script-with-exercises main.tex
pdflatex -shell-escape -jobname=script-with-exercises main.tex
mv script-with-exercises.pdf public/ mv script-with-exercises.pdf public/
# Compile a printable PDF with exercises and solutions # Compile a printable PDF with exercises and solutions
publication-pdf-with-solutions: publication-dir main.tex publication-pdf-with-solutions: publication-dir main.tex
echo "\newcommand\exercisemode{solutions}" > exercise-mode.tex echo "\newcommand\exercisemode{solutions}" > exercise-mode.tex
pdflatex -shell-escape -jobname=script-with-solutions main.tex pdflatex -shell-escape -jobname=script-with-solutions main.tex
bibtex main.aux
pdflatex -shell-escape -jobname=script-with-solutions main.tex
pdflatex -shell-escape -jobname=script-with-solutions main.tex
mv script-with-solutions.pdf public/ mv script-with-solutions.pdf public/
# Build a ZIP file with tasks and without solutions # Build a ZIP file with tasks and without solutions
publication-zip-with-exercises: publication-dir main.tex publication-zip-with-exercises: publication-dir main.tex
zip public/project-with-exercises main.tex praeamble.tex commands.tex literature.bib content/* graphics/* listings/**/*.{tex,pdf} exercises/**/{task.tex,*.raw.tex} zip public/project-with-exercises main.tex praeamble.tex commands.tex content/* graphics/* listings/**/*.{tex,pdf,bib} exercises/**/{task.tex,*.raw.tex,*.raw.bib}
# Build a ZIP file with tasks and solutions # Build a ZIP file with tasks and solutions
publication-zip-with-solutions: publication-dir main.tex publication-zip-with-solutions: publication-dir main.tex
zip public/project-with-solutions main.tex praeamble.tex commands.tex literature.bib content/* graphics/* listings/**/*.{tex,pdf} exercises/**/{task.tex,*.done.tex} zip public/project-with-solutions main.tex praeamble.tex commands.tex content/* graphics/* listings/**/*.{tex,pdf,bib} exercises/**/{task.tex,*.done.tex,*.done.bib}

43
README.md Normal file
View File

@ -0,0 +1,43 @@
# LaTeX Script by Fachschaft WIAI
This script introduces the most fundamental LaTeX mechanisms to get students started. It is used both as a reference and as exercise material for our [LaTeX workshop](https://wiai.de/latex-weekend), a **two-day tutorial aimed at students from various backgrounds**. At the moment, it is only available in German. The following topics are covered:
* general introduction to the LaTeX system
* basic document structure
* structuring a more complex project
* special characters
* text markup
* formatting paragraphs
* lists
* maths and formulas
* sourcecode listings
* graphics
* tables
* footnotes
* references
* literature management
Most chapters contain exercises to be performed within the script itself, practically teaching the aspects that are introduced by the text.
## Requirements
Compiling the script requires a working LaTeX installation.
For sourcecode listings, we are using Pygments and Python3.
The Makefile comes in handy for compiling the different versions of the script (see usage section).
TODO: Add detailed explanation.
## Usage
TODO: Describe the project setup.
## Contributing
You are welcome to contribute to this project by creating issues, opening pull requests, or reporting bugs. Note that our goal is to keep the content rather condensed, so we might not choose to incorporate further sections.
These are the contributors so far:
TODO: Add them.
## License
TODO: Add license.

View File

@ -49,7 +49,7 @@ Als hochwertige (wenn auch leider nicht vollständige) Quelle für Bib\TeX-Eintr
\subsection{Zitieren} \subsection{Zitieren}
Durch Bib\TeX{} wird \LaTeX{} um einige Befehle zum Zitieren erweitert (vgl. \cref{tbl:bibtex-commands}). Durch Bib\TeX{} wird \LaTeX{} um einige Befehle zum Zitieren erweitert (vgl. \cref{tbl:bibtex-commands}).
Zusätzlich benötigt wird das Paket \mintinline{latex}{natbib}. Zusätzlich benötigt wird das Paket \mintinline{sh}{natbib}.
\begin{table}[H] \begin{table}[H]
\centering \centering
@ -69,5 +69,6 @@ Zusätzlich benötigt wird das Paket \mintinline{latex}{natbib}.
Als \mintinline{latex}{<quelle>} einer Zitation wird immer der Bib\TeX-Key angegeben. Als \mintinline{latex}{<quelle>} einer Zitation wird immer der Bib\TeX-Key angegeben.
Verfügbare Zitierstile\footnote{Eine vollständigere Liste ist bei Overleaf zu finden: \url{https://www.overleaf.com/learn/latex/Biblatex_citation_styles}} sind zum Beispiel alpha, natdin und apa. Verfügbare Zitierstile\footnote{Eine vollständigere Liste ist bei Overleaf zu finden: \url{https://www.overleaf.com/learn/latex/Biblatex_citation_styles}} sind zum Beispiel alpha, natdin und apa.
Das Literaturverzeichnis erscheint immer an der Stelle, an der der Befehl \mintinline{latex}{\bibliography{<.bib-datei>}} aufgerufen wurde. Das Literaturverzeichnis erscheint immer an der Stelle, an der der Befehl \mintinline{latex}{\bibliography{<.bib-datei>}} aufgerufen wurde.
Zum Befehl \mintinline{latex}{\cite} existieren zahlreiche weitere Varianten\footnote{Vgl. \url{https://www.economics.utoronto.ca/osborne/latex/BIBTEX.HTM.}}.
\Example{lst:natdin-example}{literature/natdin-example}{literature/natdin-example_bib}{Beispiel für Zitationen im Stil \mintinline{latex}{natdin}.} \Example{lst:natdin-example}{literature/natdin-example}{literature/natdin-example_bib}{Beispiel für Zitationen im Stil \mintinline{latex}{natdin}.}

View File

@ -0,0 +1,34 @@
@book{lamport1994,
author = {Leslie Lamport},
title = {LaTeX - {A} Document Preparation System: User's Guide and Reference
Manual, Second Edition},
publisher = {Pearson / Prentice Hall},
year = {1994},
isbn = {978-0-201-52983-8},
timestamp = {Fri, 08 Apr 2011 18:21:00 +0200},
biburl = {https://dblp.org/rec/books/daglib/0023602.bib},
bibsource = {dblp computer science bibliography, https://dblp.org}
}
@book{datta2017,
author = {Dilip Datta},
title = {LaTeX in 24 Hours - {A} Practical Guide for Scientific Writing},
publisher = {Springer},
year = {2017},
doi = {10.1007/978-3-319-47831-9},
isbn = {978-3-319-47830-2},
timestamp = {Wed, 28 Jun 2017 15:07:35 +0200},
biburl = {https://dblp.org/rec/books/sp/Datta17.bib},
bibsource = {dblp computer science bibliography, https://dblp.org}
}
@book{goossensmittelbach2002,
author = {Michel Goossens and
Frank Mittelbach and
Alexander Samarin},
title = {Der LaTeX Begleiter},
publisher = {Addison-Wesley},
year = {2002},
isbn = {978-3-8273-7044-0},
timestamp = {Fri, 15 Apr 2011 13:37:33 +0200},
biburl = {https://dblp.org/rec/books/daglib/0011922.bib},
bibsource = {dblp computer science bibliography, https://dblp.org}
}

View File

@ -0,0 +1,10 @@
\inputminted[breaklines]{bibtex}{exercises/literature/literature.done.bib}
\begin{minted}[breaklines]{latex}
Das erstgenannte Buch \citep{lamport1994} wurde vom Schöpfer von LaTeX, Leslie Lamport, selbst verfasst.
Da es bereits etwas betagter ist, geben wir euch mit \glqq{}\LaTeX\ in 24 Hours\grqq{} \citep{datta2017} noch ein aktuelleres Buch in die Hand.
Es gibt eine Unmenge weiterer Handbücher \citep*[u.\thinspace a.][]{goossensmittelbach2002}.
\bibliographystyle{natdin}
\bibliography{exercises/literature/literature.done.bib}
\end{minted}

View File

@ -0,0 +1,13 @@
Das erstgenannte Buch (Lamport, 1994) wurde vom Schöpfer von LaTeX, Leslie Lamport, selbst verfasst.
Da es bereits etwas betagter ist, geben wir euch mit \glqq{}\LaTeX\ in 24 Hours\grqq{} (Datta, 2017) noch ein aktuelleres Buch in die Hand.
Es gibt eine Unmenge weiterer Handbücher (u.\thinspace a. Goossens, Mittelbach u. Samarin, 2002).
~\\
\noindent Literatur
\noindent [Datta 2017] Datta, Dilip: LaTeX in 24 Hours - A Practical Guide for Scientific Writing. Springer, 2017. \url{http://dx.doi.org/10.1007/978-3-319-47831-9}. ISBN 9783319478302
\noindent [Goossens u. a. 2002] Goossens, Michel ; Mittelbach, Frank ; Samarin, Alexander: Der LaTeX Begleiter. Addison-Wesley, 2002. ISBN 9783827370440
\noindent [Lamport 1994] Lamport, Leslie: LaTeX - A Document Preparation System: Users Guide and Reference Manual, Second Edition. Pearson / Prentice Hall, 1994. ISBN 9780201529838

View File

@ -0,0 +1,18 @@
\begin{enumerate}
\item Sucht bei Google Scholar eurer Wahl die Bib\TeX-Einträge für folgende \LaTeX-Handbücher:
\begin{itemize}
\item Leslie Lamport (1994): \LaTeX. A Document Preparation System.
\item Dilip Datta (2017): \LaTeX\ in 24 Hours. A Practical Guide for Scientific Writing.
\item Frank Mittelbach / Michel Goossens (2002): Der \LaTeX-Begleiter.
\end{itemize}
\item Vergleicht die Einträge mit den Ergebnissen, die euch \url{dblp.org} für dieselben Bücher liefert.
\item Erstellt im Ordner \mintinline{latex}{exercises/literature} eine neue Bib\TeX-Datei \mintinline{sh}{literature.bib}.
\item Fügt die Bib\TeX-Einträge in die Bib\TeX-Datei ein. Wählt hierfür aus Google Scholar und dblp die aus eurer Sicht geeigneteren Einträge.
\item Vergebt aussagekräftige Bib\TeX-Keys.
\item Bindet die Bib\TeX-Datei an einer geeigneten Stelle ein, an der später auch das Literaturverzeichnis zu sehen sein soll.
\item Zitiert die drei Handbücher im untenstehenden Text.
\item Wählt den Bibliographiestil \mintinline{sh}{natdin}.
\item \textbf{Hinweis}: Sollte das Kompilieren fehlschlagen, kann es hilfreich sein, einmal alle Hilfsdateien (\mintinline{sh}{main.aux/bbl/blg/loc/out/pdf/soc/toc}) zu löschen und neu zu kompilieren.
\end{enumerate}
\exercisematerial{exercises/literature/literature}

View File

View File

@ -44,9 +44,7 @@
\input{content/references.tex} \input{content/references.tex}
\exercise{references} \exercise{references}
\input{content/literature.tex} \input{content/literature.tex}
\exercise{literature}
\input{content/prospects.tex} \input{content/prospects.tex}
% References
\end{document} \end{document}

View File

@ -40,3 +40,6 @@
% Icons % Icons
\usepackage{fontawesome5} \usepackage{fontawesome5}
% Literature
\usepackage{natbib}