From 3c60945f4cbd8e31b535d37d489df56a45e6e84e Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Sat, 25 Jan 2025 22:07:37 +0100 Subject: [PATCH 01/14] Begin refinement --- generator-latex-template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generator-latex-template b/generator-latex-template index 650853f..d9fe717 160000 --- a/generator-latex-template +++ b/generator-latex-template @@ -1 +1 @@ -Subproject commit 650853ffdc03a48aff00ca2f1e7fbf0c493d31b6 +Subproject commit d9fe7176c8c8c0c4bf11526373f2d1675f293bad From 8ac11f47448608fbea566a979b68602758e1ede5 Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Sat, 25 Jan 2025 22:44:50 +0100 Subject: [PATCH 02/14] Update LTG --- generator-latex-template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generator-latex-template b/generator-latex-template index d9fe717..89f2c3b 160000 --- a/generator-latex-template +++ b/generator-latex-template @@ -1 +1 @@ -Subproject commit d9fe7176c8c8c0c4bf11526373f2d1675f293bad +Subproject commit 89f2c3b7bd0cd4d5567ff7f989792729247bb885 From 79421de9442d4e5d3707ed2e729472715c0ca736 Mon Sep 17 00:00:00 2001 From: koppor Date: Sat, 25 Jan 2025 21:45:35 +0000 Subject: [PATCH 03/14] Update files based on generated files by template generator --- README.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index d598d98..df92dfa 100644 --- a/README.md +++ b/README.md @@ -206,15 +206,17 @@ The most simple solution to get more space is to exchange the font. Execute following command: - latexindent -l -s -sl -w paper.tex +```bash +latexindent -l -s -sl -w paper.tex +``` ### Q: I want to obey the one-sentence-per-line rule. How can I do that? Execute following command: - latexindent -m -l -s -sl -w paper.tex - -Attention! This is work in progress and does not always produce best results. +```bash +latexindent -m -l -s -sl -w paper.tex +``` ### Q: Can I also write in German? From be32f7c7bb531b5e280e5a0c6ae3e3550215b368 Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Sat, 25 Jan 2025 23:06:54 +0100 Subject: [PATCH 04/14] Update LTG --- generator-latex-template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generator-latex-template b/generator-latex-template index 89f2c3b..809bc03 160000 --- a/generator-latex-template +++ b/generator-latex-template @@ -1 +1 @@ -Subproject commit 89f2c3b7bd0cd4d5567ff7f989792729247bb885 +Subproject commit 809bc03c5cd2f656b3b90b0637b88bafe25680ff From 256ba3998518b5afef8a93ad49bbc9306d5ee42a Mon Sep 17 00:00:00 2001 From: koppor Date: Sat, 25 Jan 2025 22:07:35 +0000 Subject: [PATCH 05/14] Update files based on generated files by template generator --- README.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index df92dfa..55c0ac0 100644 --- a/README.md +++ b/README.md @@ -95,7 +95,7 @@ Currently, following extensionsa re recommended: Then, change the setting of LaTeX Workshop to use biber: Update the following lines in the VSCode `settings.json` to contain: -```json +```javascript "latex-workshop.latex.recipes": [ { "name": "lualatex ➞ bibtex ➞ lualatex × 2 🔃", @@ -108,7 +108,7 @@ Update the following lines in the VSCode `settings.json` to contain: }, ], "latex-workshop.latex.tools": [ - ... + // ... { "name": "bibtex", "command": "bibtex", @@ -117,19 +117,19 @@ Update the following lines in the VSCode `settings.json` to contain: ], "env": {} }, - ... + // ... ], ``` The following settings are additionally recommended: -```json +```javascript { - "editor.wordWrap": "on", # enable soft line breaks - "latex-workshop.view.pdf.viewer": "tab", # display the generaded PDF in a separate tab - "latex-workshop.view.pdf.backgroundColor": "#cccccc", # use a darker background in de PDF viewer to lift of the pages from it - "latex-workshop.latex.autoBuild.run": "onSave", # automatically build on saving .tex files - "editor.renderWhitespace": "all", # display all whitespaces + "editor.wordWrap": "on", // enable soft line breaks + "latex-workshop.view.pdf.viewer": "tab", // display the generaded PDF in a separate tab + "latex-workshop.view.pdf.backgroundColor": "#cccccc", // use a darker background in de PDF viewer to lift of the pages from it + "latex-workshop.latex.autoBuild.run": "onSave", // automatically build on saving .tex files + "editor.renderWhitespace": "all", // display all whitespaces } ``` From 620b98d3dca30c416934c9ca6a3f96c786cd309e Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Sun, 26 Jan 2025 20:00:14 +0100 Subject: [PATCH 06/14] Update LTG --- generator-latex-template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generator-latex-template b/generator-latex-template index 809bc03..cd1a80f 160000 --- a/generator-latex-template +++ b/generator-latex-template @@ -1 +1 @@ -Subproject commit 809bc03c5cd2f656b3b90b0637b88bafe25680ff +Subproject commit cd1a80f07869f1b51129ed8a8909ad89847e45bc From b2eea07ace49014a0d8bf1b7690f462d63dbc249 Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Sun, 26 Jan 2025 20:01:42 +0100 Subject: [PATCH 07/14] Update LTG --- generator-latex-template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generator-latex-template b/generator-latex-template index cd1a80f..a877867 160000 --- a/generator-latex-template +++ b/generator-latex-template @@ -1 +1 @@ -Subproject commit cd1a80f07869f1b51129ed8a8909ad89847e45bc +Subproject commit a877867c4594e13807e465461332c6de49af25cc From 47ee04bb2767bb66fa93489f6711b8277c1fee03 Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Sun, 26 Jan 2025 20:07:12 +0100 Subject: [PATCH 08/14] Update LTG --- generator-latex-template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generator-latex-template b/generator-latex-template index a877867..1c33e37 160000 --- a/generator-latex-template +++ b/generator-latex-template @@ -1 +1 @@ -Subproject commit a877867c4594e13807e465461332c6de49af25cc +Subproject commit 1c33e378b671f1193d810709eb243b03f2a9908c From 0766db3759d83957ec96f759db017ccb204ffc0f Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Sun, 26 Jan 2025 20:35:31 +0100 Subject: [PATCH 09/14] Update LTG --- generator-latex-template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generator-latex-template b/generator-latex-template index 1c33e37..932af9f 160000 --- a/generator-latex-template +++ b/generator-latex-template @@ -1 +1 @@ -Subproject commit 1c33e378b671f1193d810709eb243b03f2a9908c +Subproject commit 932af9f714832748acb0fe30faab8c8944870913 From 864130f910a05d66adece5110b6af98eda6b4172 Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Mon, 27 Jan 2025 09:21:32 +0100 Subject: [PATCH 10/14] Update committer for updates --- .github/workflows/update-files.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/update-files.yml b/.github/workflows/update-files.yml index 06c80c3..fa1a0f5 100644 --- a/.github/workflows/update-files.yml +++ b/.github/workflows/update-files.yml @@ -92,7 +92,8 @@ jobs: uses: EndBug/add-and-commit@v9 with: message: 'Update files based on generated files by template generator' - committer_email: actions@github.com + author_name: 'github-actions[bot]' + author_email: 'github-actions[bot]@users.noreply.github.com' push: false - name: Push changes run: | From 5e81509014c0d3e1e2c6ed98de19bb4708896b81 Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Mon, 27 Jan 2025 09:21:55 +0100 Subject: [PATCH 11/14] Updat LTG --- generator-latex-template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generator-latex-template b/generator-latex-template index 932af9f..184e703 160000 --- a/generator-latex-template +++ b/generator-latex-template @@ -1 +1 @@ -Subproject commit 932af9f714832748acb0fe30faab8c8944870913 +Subproject commit 184e703fe3f77c9025e473a00ebeb73a00dc0220 From e8696b5226f659a393e3c3037332bda06cc35db0 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 27 Jan 2025 08:25:35 +0000 Subject: [PATCH 12/14] Update files based on generated files by template generator --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index 55c0ac0..4ec40bc 100644 --- a/README.md +++ b/README.md @@ -236,6 +236,10 @@ If you don't do this, `latexmk` tries to execute `latex`, which tries to produce - Other templates: +## License + +The license of this work is [0BSD](https://spdx.org/licenses/0BSD.html) which corresponds to "public domain". +Any derived work can freely be relicensed and can omit original copyright and license information. [biber]: https://www.ctan.org/pkg/biber [biblatex]: http://tex.stackexchange.com/tags/biblatex/info [bibtex]: https://www.ctan.org/pkg/bibtex From 07f02b2ff2ff781ee94f1a0bae23fef463bc7e58 Mon Sep 17 00:00:00 2001 From: Oliver Kopp Date: Mon, 27 Jan 2025 10:45:21 +0100 Subject: [PATCH 13/14] Update LTG --- generator-latex-template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generator-latex-template b/generator-latex-template index 184e703..c76322a 160000 --- a/generator-latex-template +++ b/generator-latex-template @@ -1 +1 @@ -Subproject commit 184e703fe3f77c9025e473a00ebeb73a00dc0220 +Subproject commit c76322ac9fc2527e74bd8c9288d951426cb4abc1 From 3d4063261c5f0e211632db8b3b3d419478a324b3 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 27 Jan 2025 09:46:11 +0000 Subject: [PATCH 14/14] Update files based on generated files by template generator --- README.md | 87 ++++++++++++++++++++++++++++++++++++++++++++++------ commands.tex | 30 ++++++++++++++++++ 2 files changed, 107 insertions(+), 10 deletions(-) create mode 100644 commands.tex diff --git a/README.md b/README.md index 4ec40bc..eb0114b 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ In case you need other configurations, please adapt `paper-conference.tex` or ru ## Usage -- `thesis-example.tex` is the main document +- `paper.tex` is the main document - Use "lualatex + bibtex" in your TeX editor or `latexmk paper` / `make` in the command line ### Using `latexmk` @@ -41,6 +41,9 @@ On the command line, there are additional features: - `latexmk -C` or `make clean` for cleaning up - `make format` to reformat the `.tex` files (one sentence per line and indent) - `make aspell` for interactive spell checking +- `make stand`: Creates a new PDF with the current status of the thesis. +- `make view`: Opens the configured viewer +- `make mrproper`: Cleans up and removes also editor backup files. ## Benefits @@ -175,6 +178,29 @@ Following one-time setup is required: docker build -t ltg . ``` + +## Contained Directories and Files + +### Directories + +- [figures](graphics/) Directory containing the figures. + By using LuaLaTex/PDFLaTeX it is possible to use PDFs, JPGs, PNGs, ... We recommend to use PDFs to enable smooth scaling. + +### Files + +- `paper.tex` - The main `.tex` file loading all LaTeX packages and their configurations. + - Add text here + - Adjust title etc. here +- [bibliography.bib](bibliography.bib) - Bibliography. [biblatex] format. Manage it with [JabRef]. +- [abbreviations.tex](abbreviations.tex) - Acronyms and abbreviations. +- [commands.tex](commands.tex) - Example LaTeX macros. + +Following additional files are included, which do not need to be adapted: + +- [localSettings.yaml](localSettings.yaml) - Settings for [latexindent](https://ctan.org/pkg/latexindent) +- [Makefile](Makefile) - The Makefile. Builds on latexmk. +- [Texlivefile](Texlivefile) - List of packages required for a minimal TeXLive installation. + ## FAQs ### Q: How can I synchronize updates from the template to my repository? @@ -204,19 +230,21 @@ The most simple solution to get more space is to exchange the font. ### Q: How can I reformat my `.tex` files? -Execute following command: +Execute `latexindent -l -s -sl -w paper.tex` -```bash -latexindent -l -s -sl -w paper.tex -``` +Alternatively, execute `make format`. -### Q: I want to obey the one-sentence-per-line rule. How can I do that? +### Q: How I want to obey the one-sentence-per-line rule. How to do? -Execute following command: +See "How can I reformat my `.tex` files?" -```bash -latexindent -m -l -s -sl -w paper.tex -``` +### Q: I want to use minted, because I think its syntax highlighting seems to be better. + +You can re-generate the template and choose `minted` as listings environment. +Moreover, ensure that python and [pygments](https://pygments.org/) are installed properly: + +- `choco install python` +- `pip install pygments` ### Q: Can I also write in German? @@ -232,14 +260,53 @@ You seem to use `latexmk` locally. Please move `_latexmkrc` to `latexmkrc` to get `latexmk` working. If you don't do this, `latexmk` tries to execute `latex`, which tries to produce a DVI file (and not a PDF file). +### Q: I get `Font "LatinModernMath-Regular" not found.`. What can I do? + +Error message: + +```text +luaotfload | db : Reload initiated (formats: otf,ttf,ttc); reason: Font "LatinModernMath-Regular" not found. +luaotfload | resolve : sequence of 3 lookups yielded nothing appropriate. + +! Package fontspec Error: The font "LatinModernMath-Regular" cannot be found. +``` + +Install the package `lm-math` manually. + +### Q: I get `! Package fontspec Error: The font "TeXGyreTermes" cannot be found.`. What can I do? + +Install the package `tex-gyre` and `tex-gyre-math` manually. + +### Q: I get `! error: (type 1): cannot find encoding file 'ntx-ot1-tlf.enc' for reading`. What can I do? + +See : Install the packages `newpx` and `newtxsf` manually. + +### Q: I get `! TeX capacity exceeded, sorry [main memory size=3000000].`. What can I do? + +Follow the steps at + +Try with following command + +```bash +lualatex -shell-escape --extra-mem-top=10000000 --synctex=1 paper.tex +``` + +See for details. + ## Further information - Other templates: +- For German users, go to . +- Frank Mittelbach with Ulrike Fischer: [The LaTeX Companion](https://www.latex-project.org/news/2023/03/17/TLC3/) is the ultimate guide for LaTeX: The authors went through all packages offered by [CTAN](https://ctan.org/), selected the most promising ones, described them, and provide minimal working example for each of it. +- Lutz Hering, Heike Hering: [How to Write Technial Reports](https://doi.org/10.1007/978-3-540-69929-3), Springer, 2010; also available in German [Technische Berichte - verständlich gliedern, gut gestalten, überzeugend vortragen](https://doi.org/10.1007/978-3-8348-8317-9). - Highly recommended, because it guides through all aspects of a report (such as a Master Thesis). +- Marcus Deininger et al.: [Studienarbeiten - Ein Leitfaden zur Erstellung, Durchführung und Präsentation wissenschaftlicher Abschlussarbeiten am Beispiel Informatik](https://vdf.ch/studienarbeiten.html?author_id=2877), vdf. - Recommended as guideline for planning and working on the whole thesis. +- Charles Lipson, [Cite Right, Second Edition: A Quick Guide to Citation Styles--MLA, APA, Chicago, the Sciences, Professions, and More](http://www.press.uchicago.edu/ucp/books/book/chicago/C/bo10702043.html), Chicago Guides to Writing, Editing, and Publishing, 2011. - Recommended in case you are unsure about how to correctly cite something. ## License The license of this work is [0BSD](https://spdx.org/licenses/0BSD.html) which corresponds to "public domain". Any derived work can freely be relicensed and can omit original copyright and license information. + [biber]: https://www.ctan.org/pkg/biber [biblatex]: http://tex.stackexchange.com/tags/biblatex/info [bibtex]: https://www.ctan.org/pkg/bibtex diff --git a/commands.tex b/commands.tex new file mode 100644 index 0000000..394254e --- /dev/null +++ b/commands.tex @@ -0,0 +1,30 @@ +% 🇩🇪 wird fuer Tabellen benötigt (z.B. >{centering\RBS}p{2.5cm} erzeugt einen zentrierten 2,5cm breiten Absatz in einer Tabelle +\newcommand{\RBS}{\let\\=\tabularnewline} + +% 🇺🇸 To avoid issues with Springer's \mathplus. See also http://tex.stackexchange.com/q/212644/9075 +\providecommand\mathplus{+} + +% 🇺🇸 from hmks makros.tex - \indexify +\newcommand{\toindex}[1]{\index{#1}#1} + +% 🇩🇪 Tipp aus "The Comprehensive LaTeX Symbol List" +\newcommand{\dotcup}{\ensuremath{\,\mathaccent\cdot\cup\,}} + +% 🇩🇪 Anstatt $|x|$ $\abs{x}$ verwenden. Die Betragsstriche skalieren automatisch, falls "x" etwas größer sein sollte... +\newcommand{\abs}[1]{\left\lvert#1\right\rvert} + +% 🇺🇸 For the algorithmic package +\newcommand{\commentchar}{\ensuremath{/\mkern-4mu/}} +\algrenewcommand{\algorithmiccomment}[1]{\hfill $\commentchar$ #1} + +% 🇩🇪 Seitengrößen - Gegen Schusterjungen und Hurenkinder... +\newcommand{\largepage}{\enlargethispage{\baselineskip}} +\newcommand{\shortpage}{\enlargethispage{-\baselineskip}} + +\newcommand{\initialism}[1]{% + \textlcc{#1}\xspace% +} +\newcommand{\OMG}{\initialism{OMG}} +\newcommand{\BPEL}{\initialism{BPEL}} +\newcommand{\BPMN}{\initialism{BPMN}} +\newcommand{\UML}{\initialism{UML}}