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