This template is a general template for scientific theses. Currently, it is the unoffical LaTeX template for Master, Bachelor, Diploma, and Student Theses at the University of Stuttgart, Computer Science. It will be extended to support theses from different universities.
More information at https://github.com/latextemplates/scientific-thesis-template.
- UTF-8
- pdflatex
- latexmk
- biblatex+biber instead of plain bibtex
- Most recent packages and package configuration based on long-time experience
- Open for contributions
Even though AuToLaTeX is more powerful than latexmk, it is not included in MiKTeX and therefore it is not used here.
If you don't want to use git, just download https://github.com/latextemplates/scientific-thesis-template/archive/template.zip
- offline: Grammar and spell checking is available at TeXstudio.
Please download LanguageTool and configure TeXstudio to use it.
Note that it is enough to point to
languagetool.jar
. Use JabRef to manage your bibliography. Quick installation using Chocolatey:choco install texstudio languagetool jabref
- online: overleaf. Also with git support.
See LaTeX Editors/IDEs question on TeX.SX for a complete list of LaTeX editors.
- biber/biblatex too old -> see installation hints of how to update them at different systems
! pdfTeX error (font expansion): auto expansion is only possible with scalable fonts.
-> Install thecm-super
package using the MiKTeX package manager. Then, runinitexmf --mkmaps
on the command line. (Long description: http://tex.stackexchange.com/a/324972/9075)
Ubuntu currently ships biber 2.4, so you have to upgrade your texlive distribution. The easiest way is to uninstall the ubuntu package and use install-tl-ubuntu. Then, you can follow the instructions given at http://tex.stackexchange.com/a/55459/9075 to update your tex live distribution. If you do not want to have an updated installation, but fiddle around with dirty patching your installation, please follow http://tex.stackexchange.com/questions/84624/how-to-upgrade-biblatex-properly.
- The default installation of MiKTeX ships with incompatible biblatex and biber packages. You have to keep your MiKTeX up to date. In case you followed the linked installation steps, you only have to run "Update MiKTeX". If you installed MiKTeX other ways, you have to run "Update MiKTeX (Admin)" and "Update MiKTeX" and check in both tools for updates (see http://tex.stackexchange.com/a/108490/9075)
- Install other tools using chocolatey:
choco install texstudio sumatrapdf.install latexmk strawberryperl jabref languagetool jre8
. This allows you to runchoco upgrade all
to keep the software updated. - Ensure that in the "MiKTeX Package Manager" "biber" and "biblatex-lni" are installed
- Download the basic installer from http://miktex.org/download
- Start it
- First screen: Read the license condiditions and be sure that you really agree.
- Second screen: "Shared Installation": Install MiKTeX for: "Only for:
username
" - Third screen: "Installation Directory": Install MiKTeX to:
C:\MiKTeX
. This enabled browsing for documentation atC:\MiKTeX29\doc\latex
- Fourth screen: "Settings": Preferred paper: A4 and Install missing packages on the fly:
Yes
- Fifth screen: Press "Start"
- After the installation:
- Open
cmd.exe
- Execute
mpm --update-db
- Execute
mpm --update
- Execute
mpm --install=cm-super
- Execute
initexmf --update-fndb
- Open
This howto assumes that you have not a git repository for your thesis. If you have, just add https://github.com/latextemplates/scientific-thesis-template.git as upstream and merge the branch "template" into your "master" branch.
- Open command line
- Change to the directory where you want to have your main tex file.
- Fetch the template from github:
git clone https://github.com/latextemplates/scientific-thesis-template.git .
- Rename
origin
togithub
to enable adding your ownorigin
repository:git remote rename origin github
- Create a new branch master starting from the latest commit in the
template
branch:git checkout -b master
Now, you are on the master
branch, where you can write your thesis and push it to your (remote) origin
repository, in case you have one.
If you want to merge updates from github, do the following:
- git fetch github
- git merge github/template
The template is compiled using normal LaTeX commands. Your LaTeX environment (such as TeXStudio) should take care about the compilation transparently. When the "Package Installation" dialog pops up at TeXStudio, choose your username at "The package will be installed for:" and uncheck "Always show this dialog before installing packages." If you want to include .svg graphics, inkscape has to be in your path.
If you want to compile using the command line, you can use following tools.
latexmk ausarbeitung
latexmk -pvc ausarbeitung
This will open a Sumatra PDF and only works with the supplied configuration.
This repository ships a .latexmk
which is read by latexmk.
It is configured for Windows and especially sets Sumatra PDF as default PDF viewer.
You can make this local configuration a global configuration, when you put it at the right place.
If you want to add more packages, configure it there. For instance, for support of makeglossaries see http://tex.stackexchange.com/questions/1226/how-to-make-latexmk-use-makeglossaries.
The template has been built primarily for German documents. English documents, however, are also very welcome.
Five steps to switch to English typesetting:
ausarbeitung.tex
: Exchange commands\ifdeutsch
and\ifenglisch
. (Lines 11,12 <-> 15,16).- Cleanup everything (e.g.,
latexmk -c ausarbeitung
). Otherwise pdflatex will complain because ofngerman
.
Edit preambel/chapterheads.tex
.
- If you included some version control statements, please remove them. Currently, the template does not support any, but it used to support SVN.
- By using
\largeparge
and\shortpage
, single lines at the bottom or at the top of the page can be manually fixed. - Search the PDF for "TODO" or similar things. Remove
\usepackage{todonotes}
inpreambel/packages_and_options
. - Ensure that you run
pdflatex
at least three times and that there no "undefined references". - The margins are intended for a duplex printing. Do not change them (or do exactly know what you are doing).
For those, who have cygwin installed or run a linux machine, this template offers a simple LaTeX makefile. It is not so sophisticated as other projects, but does its job.
make
Make targets:
pdf
(default): Generates ausarbeitung.pdfaspell
: Checks all files using aspell.clean
: Removes all temporary files.mrproper
: Cleans up and removes also editor backup files.stand
: Creates a new PDF with the current status of the thesis.view
: Opens the configured viewer6
: Generates a 3x2 postscriptfile using psnup.
- https://github.com/akerbos/ltx2any
- https://github.com/shiblon/latex-makefile
- https://github.com/ransford/pdflatex-makefile
- https://github.com/brotchie/latex-rubber-makefile
- LaTeX-Mk
- See also http://stackoverflow.com/questions/1240037/recommended-build-system-for-latex and http://tex.stackexchange.com/questions/40738/how-to-properly-make-a-latex-project
See http://wiki.flupp.de/LaTeX.
- ausarbeitung.tex
- Main file
- New chapters are added by using
\input
- Adjust title etc. here
- Makefile: The Makefile.
- README.md: This file.
- uni-stuttgart-cs-cover.sty: Verbatim copy of uni-stuttgart-cs-cover.sty available at https://github.com/latextemplates/uni-stuttgart-computer-science-cover
bibliography.bib
. Bibliography. biblatex format. Manage it with JabRef.- content/: Place for the actual content
- content/einleitung.tex: First chapter: The introduction
- content/kapitel2.tex: Second chapter
- content/zusammenfassung
_
und_
ausblick.tex: Conclusion and outlook. - content/anhang.tex
- graphics/: Directory containing the figures. By using PDFLaTeX it is possible to use PDFs, JPGs, PNGs, ... We recommend to use PDFs to enable smooth scaling.
- macros/: Directory for macros.
- macros/commands.tex: Example macros
- preambel/: Latex header of the document ("preambel" in latex)
- preambel/chapterheads.tex: Definition for the chapter headings.
- preambel/fonts.tex: Font selection
- preambel/margins.tex: Margin settings / Einstellung der Seitenränder
- preambel/packages
_
and_
options.tex: Includes required packages and their options. - preambel/pagestyle.tex: Defines the head and the foot of a page.