Constantin Fürst
1 year ago
1 changed files with 2 additions and 163 deletions
-
165thesis/README.md
@ -1,164 +1,3 @@ |
|||||
[![Build](https://github.com/TUD-OS/latex-template/actions/workflows/build.yml/badge.svg)](https://github.com/TUD-OS/latex-template/actions/workflows/build.yml) |
|
||||
|
This is my bachelors thesis. |
||||
|
|
||||
## Was ist das? |
|
||||
|
|
||||
Dieses Diplomarbeits-Latex-Template stellt ein Skelett für eine |
|
||||
Diplomarbeit mit zugehöriger Make-Datei zur Verfügung. |
|
||||
|
|
||||
## Checkout Submodules First |
|
||||
|
|
||||
Um das `$ make checkbiw` ausführen zu können, musst du zuerst die |
|
||||
Submodule auschecken: `git submodule update --init --recursive` |
|
||||
|
|
||||
## So geht's los |
|
||||
|
|
||||
Als erstes solltest du in diplom.tex alle Vorkommen von Otto |
|
||||
Mustermann, "Dein Titel" und "Dein Betreuer" ersetzen. |
|
||||
|
|
||||
`diplom.tex` will deine Aufgabe als PDF einbinden. Es sucht |
|
||||
`images/diplom-aufgabe.pdf`, was eine A4 Seite sein muss. Mit |
|
||||
|
|
||||
convert <dein-gescanntes-bild> diplom-aufgabe.pdf |
|
||||
|
|
||||
solltest du eine beliebige Bilddatei in ein PDF umwandeln können, wenn |
|
||||
ImageMagick auf deinem System installiert ist. |
|
||||
|
|
||||
An diesen Punkt sollte `make` ein `diplom.pdf` produzieren. |
|
||||
|
|
||||
Das Template unterstützt sowohl englischen und deutschen Text. Englisch ist |
|
||||
standardmäßig eingestellt. Für deutschen Text kann der letzte `\selectlanguage` |
|
||||
Aufruf in `diplom.tex` einfach weggelassen werden. |
|
||||
|
|
||||
## How To Build |
|
||||
|
|
||||
- `$ make`: regular build that produces `diplom.pdf` and `yyyy-mm-dd_hhmmss DRAFT Diplomarbeit - Branch <branch>.pdf`. |
|
||||
- `$ make watch`: Performs a watch task, i.e. automatically re-builds everything quickly on changes. |
|
||||
If your PDF viewer supports automatic reload on file changes (such as the default PDF viewer in GNOME) |
|
||||
you get a cool productive working environment. |
|
||||
|
|
||||
### Build Prerequisites (Regular Build) |
|
||||
|
|
||||
In case you don't want to install `texlive-full` to save disk space, the following packages are |
|
||||
actually required: \ |
|
||||
|
|
||||
```shell |
|
||||
$ sudo apt install texlive-base \ |
|
||||
texlive-lang-german \ |
|
||||
texlive-lang-english \ |
|
||||
`# for siunits` \ |
|
||||
texlive-science \ |
|
||||
texlive-luatex \ |
|
||||
`# biber gets invoked by the utilities provided by bibtex-extra` \ |
|
||||
biber \ |
|
||||
texlive-bibtex-extra \ |
|
||||
`# for csquotes` \ |
|
||||
texlive-latex-extra |
|
||||
``` |
|
||||
|
|
||||
Additionally, please install also: |
|
||||
|
|
||||
```shell |
|
||||
$ sudo apt install \ |
|
||||
`# for the `make checkbiw` script` |
|
||||
diction \ |
|
||||
`# build system to build the latex project` |
|
||||
latexmk |
|
||||
``` |
|
||||
|
|
||||
### Build Prerequisites (Nix Build) |
|
||||
|
|
||||
This template can also be built using [Nix](https://nixos.org/download.html). You have |
|
||||
the option to either use `$ nix-build`, which will produce `result/diplom.pdf`, or to |
|
||||
use |
|
||||
```bash |
|
||||
$ nix-shell |
|
||||
$ make clean |
|
||||
$ make watch # (or just make) |
|
||||
``` |
|
||||
|
|
||||
## Grafiken einbinden |
|
||||
|
|
||||
Grafiken sollten im `images/` Verzeichnis abgelegt werden und im |
|
||||
Makefile in die entsprechende `DOC_IMG_*` Variable eingetragen |
|
||||
werden. Momentan werden Grafiken in den Formaten PDF, PNG und JPEG |
|
||||
unterstützt. PDF eignet sich für Vektorgrafiken und kann von den |
|
||||
meisten Vektorgrafikprogrammen erzeugt werden (Inkscape, OpenOffice |
|
||||
Draw, ...). |
|
||||
|
|
||||
## Tipps |
|
||||
|
|
||||
Diese Datei enthält im Moment ein Sammlung von Tipps und Tricks, sowie |
|
||||
einige Hintergrundinformationen. |
|
||||
|
|
||||
- passive voice: **do not use it** |
|
||||
- There is a Makefile template checking for 'Bugs in Writing' according |
|
||||
to the book of the same name (`make checkbiw`). Diction must be installed |
|
||||
somewhere in the path (check out the directory |
|
||||
`checkbiw/diction` for details). |
|
||||
- Vim users can add detection for passive voice and *weasel words* via |
|
||||
Björn's [`vim-weasel` package](https://github.com/bjoernd/vim-weasel) |
|
||||
- font sizes in images: adapt to other text size |
|
||||
(ideally, use PGF/TikZ and PGFPlots) |
|
||||
- avoid missing meta data in PDF files (title, keywords, author) |
|
||||
- "good" title page |
|
||||
- use biblatex for references, it pays off fast |
|
||||
- convert images to correct include types (vector formats, e.g. PDF) |
|
||||
- protected spaces between, e.g., `Figure~1`, `~\cite{xyz}` |
|
||||
- units: use the `siunitx` package to typeset units |
|
||||
- French spacing: tell latex what is an end of sentence with `\@.` |
|
||||
where it cannot know it (e.g., `This is a sentence ending on an |
|
||||
abbreviation BASIC\@. Next sentence.`) |
|
||||
- Again, you can try to detect a good portion of French spacing |
|
||||
using an automatic algorithm (`make check-french-spacing`). |
|
||||
Improvements are welcome. |
|
||||
- listings with at least three elements have a |
|
||||
comma before the last and/or (*serial* or *Oxford comma*): |
|
||||
*"Set A contains elements a, b, and c."* |
|
||||
- more stylistic information can be found in *Bugs in writing* (BIW) |
|
||||
by Lyn Dupré |
|
||||
- add chapters without a chapter number (e.g. appendix) with `\addchap{Chapter without Number}` |
|
||||
instead of `\chapter*{Chapter without Number}`. Otherwise, `\chaptername` and similar macros |
|
||||
inherit the name of the last chapter with a number in several cases. |
|
||||
`\addchap` is a macro provided by KOMA |
|
||||
- this project uses a `.editorconfig` which makes sure you have the same basic formatting |
|
||||
settings across IDEs **as you type**. Support exists in Clion, VS Code, IntelliJ, |
|
||||
vim, ... make sure to activate the setting or add the plugin for that into your IDE/editor |
|
||||
|
|
||||
|
|
||||
## spezielle Tipps von Frank |
|
||||
|
|
||||
- Ich verwende in der Vorlage KOMA-Script (`scrbook`), welches vor allem |
|
||||
für den deutschsprachigen Raum gedacht ist. KOMA-Script kann auch |
|
||||
international verwendet werden, das Format ist aber für |
|
||||
Englischsprachige Arbeiten etwas unüblich. |
|
||||
|
|
||||
- Ein Hinweis zum Erstellen der Grafiken: Viele verwenden xfig, ich |
|
||||
habe meine Grafiken mit OpenOffice Draw erzeugt. Dort hat man mehr |
|
||||
Möglichkeiten. Einfach als PDF exportieren. Damit alle Grafiken |
|
||||
eine gleichmäßige Größe besitzen, habe ich einfach immer die |
|
||||
Seitengröße so gesetzt, dass die Zeichnung voll erfasst wird. Dann |
|
||||
habe ich immer die gleiche Schriftgröße gesetzt. Beim Einbinden der |
|
||||
Grafiken ins LaTeX-File habe ich einen Faktor, z.B. |
|
||||
|
|
||||
\includegraphics[width=190\figurewidth]{architecture} |
|
||||
|
|
||||
mit eingebaut. Den Faktor setze ich dann einfach am Anfang mit |
|
||||
|
|
||||
\setlength{\figurewidth}{.070cm} |
|
||||
|
|
||||
und bin damit in der Lage, alle Grafiken zugleich in der Größe zu verändern. |
|
||||
Die Zahl 190 aus dem includegraphics-Statement kommt von der gewählten |
|
||||
Seitengröße in OpenOffice Draw (190mm). |
|
||||
|
|
||||
- Wenn man viele Grafiken hat, die man genau ausrichten will, ist ein |
|
||||
|
|
||||
\usepackage{placeins} |
|
||||
|
|
||||
sinnvoll. Dann kann man am Ende einer Seite |
|
||||
|
|
||||
\FloatBarrier |
|
||||
|
|
||||
schreiben und erzwingt die Ausgabe aller noch offenen Grafiken an |
|
||||
diesem Punkt. Mir ist bewusst, dass das etwas unschön ist, aber |
|
||||
manchmal braucht man das wirklich, z.B. wenn man alle Messwerte auf |
|
||||
einer Seite unterbringen will. |
|
||||
|
Source of the TEX-Template: https://github.com/TUD-OS/latex-template |
Write
Preview
Loading…
Cancel
Save
Reference in new issue