Commit cae8e17e authored by Sergey Goncharov's avatar Sergey Goncharov
Browse files
parent 3f292ba8
Pipeline #29256 passed with stage
in 31 seconds
src = $(wildcard *.tex)
pdf = $(src:.tex=.pdf)
imgpdf = $(wildcard img/*.pdf)
.PHONY: all clean install
all: $(pdf) $(imgpdf)
%.pdf: %.tex $(wildcard src/*.tex) $(wildcard *.bib) $(imgpdf)
latexmk -file-line-error -synctex=1 -halt-on-error -pdf $<
fast:
# enforce tex execution
pdflatex -synctex=1 $(src)
clean:
latexmk -C $(src)
rm -f $(wildcard *.out *.nls *.nlo *.bbl *.blg *-blx.bib *.run.xml *.bcf *.synctex.gz *.fdb_latexmk *.fls *.toc)
rm -f $(wildcard src/*.aux)
README
======
About
-----
The present collection of files offers a template for a final thesis (no matter
whether project, bachelor, or master thesis). You are welcome to modify anything
to your personal needs. In case of any ambiguity, consult your supervisor on
formal aspects of the document, instead of just relying of my design choices for
the present template.
Also see the content of template-master-thesis.pdf for some more suggestions.
Usage
-----
It is strongly recommended to use a latex wrapper like latexmk (or rubber), in
order to build it. You can find a Makefile in the toplevel directory providing
a nice interface to latexmk:
Type `make` In order to build the PDF, type `make clean` to remove all
automatically generated files (including the PDF).
// vim: tw=80 ft=asciidoc
\chapter{Some Introduction and Examples}
You can freely use the present template for your final thesis (i.e.~master or
bachelor or project thesis).
This template was made from the following theses:
\begin{itemize}
\item \url{http://thorsten-wissmann.de/theses/ma-wissmann.pdf}
\item \url{http://thorsten-wissmann.de/theses/project-wissmann.pdf}
\item \url{http://thorsten-wissmann.de/theses/bachelor-thesis-wissmann.pdf}
\end{itemize}
\section{Meaning}
It is not mandatory at all to use this template for your final thesis. It is
just a suggestion! You are also allowed to change anything you would like to
change in order to fit your needs/taste/$\ldots$.
Of course, you should adjust some places when using it for your final thesis:
\begin{enumerate}
\item In the parameters to the \texttt{hyperref}-package, you should adjust the
fields \texttt{pdfauthor} and \texttt{pdftitle} to your name and the title of
your thesis.
\item In \texttt{src/titlepage.tex} you should adjust the title and (possibly
the) subtitle of your thesis, the degree of your thesis (Masters degree?
Bachelor?), your name and the name of your advisors.
\end{enumerate}
\section{Some hints}
\subsection{Macros}
% some macros only needed for these hints here
\newcommand{\C}{\ensuremath{\mathcal{C}}\xspace}
\newcommand{\preview}[2]{
\begin{center}
\fbox{\begin{minipage}[t]{.47\textwidth}
#1
\end{minipage}}%
\hspace{.02\textwidth}%
\fbox{\begin{minipage}[t]{.47\textwidth}
#2
\end{minipage}}%
\end{center}}
When using certain mathematical symbols very often, it makes sense to define
macros for them, e.g.~
\begin{verbatim}
\newcommand{\C}{\ensuremath{\mathcal{C}}\xspace}
\end{verbatim}
The \texttt{ensuremath} enforces mathmode and the \texttt{xspace} inserts a
space if necessary:
\preview{
\Verb|Some \textbackslash C in the midle of the sentence|
\Verb|and at the end: \textbackslash C.|
}{
Some \C in the midle of the sentence
and at the end: \C.
}
\subsection{UTF-8}
I strongly recommend exploiting the utf8 capability of \LaTeX:
\begin{verbatim}
\usepackage{newunicodechar}
\newunicodechar{}{\ensuremath{\forall}}
\newunicodechar{}{\ensuremath{\exists}}
\newunicodechar{×}{\ensuremath{\times}}
\newunicodechar{ø}{\ensuremath{\emptyset}}
\newunicodechar{}{\ensuremath{\le}}
\newunicodechar{}{\ensuremath{\in}}
\newunicodechar{}{\ensuremath{\to}}
\newunicodechar{}{\ensuremath{\subseteq}}
\newunicodechar{}{\ensuremath{\otimes}}
\newunicodechar{}{\ensuremath{\wedge}}
\end{verbatim}
with that, you can write:
\begin{verbatim}
\begin{definition}[Transitivity]
A relation $\text{``}\text{''} ⊆ X×X$ has upper bounds if
\[
∀a,b ∈ X\ ∃ c ∈ X: a ≤ c ∧ b ≤ c
\]
\end{definition}
\end{verbatim}
It will result in the following:
\begin{definition}[Transitivity]
A relation $\text{``}\text{''} ⊆ X×X$ has upper bounds if
\[
∀a,b ∈ X\ ∃ c ∈ X: a ≤ c ∧ b ≤ c
\]
\end{definition}
In order to input unicode characters, just configure a compose key, e.g.:
\begin{itemize}
\item \url{https://en.wikipedia.org/wiki/Compose_key}
\item
\url{https://wiki.archlinux.org/index.php/Keyboard_configuration_in_Xorg#Configuring_compose_key}
\end{itemize}
\subsection{Autoref}
Let \LaTeX~include whether something references is a definition or what else
using the \texttt{\textbackslash autoref} command:
\begin{verbatim}
\begin{definition}[label={relation},name={Relation}]
A relation $R$ between sets $X$ and $Y$ is just a subset of $X×Y$.
\end{definition}
We have just seen \autoref{relation}.
\end{verbatim}
This results in:
\begin{definition}[label={relation},name={Relation}]
A relation $R$ between sets $X$ and $Y$ is just a subset of $X×Y$.
\end{definition}
We have just seen \autoref{relation}.
\subsection{Further Comments}
For even more convenience while writing, you should look at the following:
synctex, git (for managing your \TeX-sources).
% vim: tw=80 nospell spelllang=en nocul
\begin{titlepage}
\newcommand{\drop}{0.07\textheight}
\begin{center}
\begingroup%
\vfill
{\LARGE\textsc{%
Friedrich-Alexander-Universität\\[2mm]
Erlangen-Nürnberg%
}}\\[\drop]
{%
% trim= left bottom right top
\includegraphics[height=1.8cm,trim=0cm 0mm 0 0mm]{img/tcs}\\
\textsc{\large Chair for Computer Science 8}\\
\textsc{\large Theoretical Computer Science}}%\\[\drop]
\vfill
\rule{\textwidth}{1pt}\par
\vspace{0.5\baselineskip}
{% maybe \itshape?
\Huge\bfseries
\makeatletter
\@title \\[1cm]
\makeatother
\large\bfseries
An example title page layout, main \TeX\ file
\\ and other hopefully useful hints
\\[1cm]
\textbf{\large Master Thesis in Computer Science}
}\\[0.5\baselineskip]
\rule{\textwidth}{1pt}\par
\vfill
{\Large{\makeatletter\@author\makeatother}
%\\ {\large\normalsize{maybe-ur-mail@example.org}}
}
\vfill
\large Advisors:
\vfill
\begin{tabular}{ccc}
\large
The name of
&
your advisors
\end{tabular}
\vfill
% trim= left bottom right top
\includegraphics[height=1.8cm,trim=0cm -5mm 0 0mm]{img/fau}
\vfill
{\large Erlangen, \today}
\endgroup
\end{center}
\end{titlepage}
% vim: tw=80 spell spelllang=en nocul
\documentclass[a4paper,11pt,twopage,numbers=noenddot]{scrbook}
\usepackage[top=2cm,lmargin=1in,rmargin=1in,bottom=3cm,hmarginratio=1:1]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{thmtools}
\usepackage{fancyvrb}
\usepackage{mathtools}
\usepackage{amsmath}
\usepackage{ifthen}
\usepackage{xspace}
\usepackage{hyperref}
\usepackage{makeidx}
\usepackage{graphicx}
%\usepackage[right]{showlabels}
%\usepackage[justific=raggedright,totoc]{idxlayout}
\addto\extrasenglish{%
\renewcommand{\chapterautorefname}{Section}
\renewcommand{\sectionautorefname}{Section}
\renewcommand{\subsectionautorefname}{Subsection}
}
\newcommand\chap[1]{%
\chapter*{#1}%
\chaptermark{#1}%
\addcontentsline{toc}{chapter}{#1}}
\declaretheorem[name=Definition,style=definition,numberwithin=chapter]{definition}
\declaretheorem[name=Example,style=definition,sibling=definition]{example}
\declaretheorem[style=definition,numbered=no]{exercise}
\declaretheorem[name=Remark,style=definition,sibling=definition]{remark}
\declaretheorem[name=Assumption,style=definition,sibling=definition]{assumption}
\declaretheorem[name=Observation,style=definition,sibling=definition]{observation}
\declaretheorem[name=Theorem,sibling=definition]{theorem}
\declaretheorem[sibling=definition]{corollary}
\declaretheorem[name=Fact,sibling=definition]{fact}
\declaretheorem[sibling=definition]{lemma}
\declaretheorem[sibling=lemma]{proposition}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% Spacing settings %
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\setlength{\parindent}{0pt}
\setlength{\parskip}{6pt}
\setlength{\marginparsep}{0cm}
\title{An example latex template\\
for final theses}
\author{Your name}
\makeatletter
\hypersetup{
pdftex,
pdfauthor={\@author},
pdftitle={\@title},
% kill those ugly red rectangles around links
hidelinks,
}
\makeatother
\usepackage{newunicodechar}
\newunicodechar{}{\ensuremath{\forall}}
\newunicodechar{}{\ensuremath{\exists}}
\newunicodechar{×}{\ensuremath{\times}}
\newunicodechar{ø}{\ensuremath{\emptyset}}
\newunicodechar{}{\ensuremath{\le}}
\newunicodechar{}{\ensuremath{\in}}
\newunicodechar{}{\ensuremath{\to}}
\newunicodechar{}{\ensuremath{\subseteq}}
\newunicodechar{}{\ensuremath{\otimes}}
\newunicodechar{}{\ensuremath{\wedge}}
\begin{document}
\pagestyle{plain}
\input{src/titlepage}%
\tableofcontents
\include{src/examples}
\end{document}
% vim: tw=80 nospell spelllang=en nocul
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment