Commit 81c12ad9 authored by Jonathan Klamroth's avatar Jonathan Klamroth 🏍
Browse files

add template

parents
$pdf_previewer = 'start zathura';
TARGET = thesis
BUILD_DIR = build
SRC = $(TARGET).tex $(TARGET).bib
SRC += $(TARGET).cls
SRC += literatur.tex
SRC += preamble chapters
SRC += images docs
.PHONY: all
all: $(BUILD_DIR)/$(TARGET).pdf
.PHONY: prepare
prepare:
[ -d $(BUILD_DIR) ] || mkdir $(BUILD_DIR)
cd $(BUILD_DIR) && for f in $(SRC) ; do ln -sf $(PWD)/$$f . ; done
$(BUILD_DIR)/$(TARGET).pdf: prepare $(TARGET).tex
cd $(BUILD_DIR) && latexmk -pdf $(TARGET).tex
.PHONY: preview
preview: prepare
cd $(BUILD_DIR) && latexmk -pdf -pv $(TARGET).tex
.PHONY: livepreview
livepreview: prepare
cd $(BUILD_DIR) && latexmk -pdf -pvc $(TARGET).tex
.PHONY: clean
clean:
rm -rf $(BUILD_DIR)
%----------------------------------------------------------------------
% ANMERKUNGEN
% Diese Datei enthält einige Anmerkungen und Hinweise zu dieser LaTeX-
% Vorlage für Abschlussarbeiten.
%----------------------------------------------------------------------
\chapter{Anmerkungen zur Vorlage}
Einige Anmerkungen und Hinweise zur \LaTeX{}-Vorlage für Abschlussarbeiten.
%----------------------------------------------------------------------
% ANPASSUNGEN
%----------------------------------------------------------------------
\section{Notwendige Anpassungen}
\label{ref:anpassungen}
Folgende Anpassungen sind unbedingt vorzunehmen:
\begin{itemize}
\item \file{preamble/header.tex} \\
Alle Daten im Abschnitt \enquote{ALLGEMEINE DATEN} müssen angepasst werden.
Diese werden automatisch an allen Stellen, wo die Daten verwendet werden
eingefügt.
\end{itemize}
%----------------------------------------------------------------------
% GRAPHIKEN
%----------------------------------------------------------------------
\section{Graphiken}
\label{ref:graphiken}
Das Einbinden von Graphiken erfolgt zumeist in sogenannten float-Umgebung, die
die Abbildung an der nächsten passenden Position im Dokument einfügt:
\begin{verbatim}
\begin{figure}[htb]
\centering
\includegraphics*[width=0.20\textwidth]{images/hsrm}
\caption{\em Logo der Hochschule RheinMain}
\label{fig:fhw_logo}
\end{figure}
\end{verbatim}
Obiges Kommando erzeugt folgende Ausgabe:
\begin{figure}[htb]
\centering
\includegraphics*[width=0.20\textwidth]{images/hsrm}
\caption{\em Logo der Hochschule RheinMain}
\label{fig:fhw_logo}
\end{figure}
%----------------------------------------------------------------------
% QUELLCODE
%----------------------------------------------------------------------
\section{Quellcode}
\label{ref:quellcode}
\textbf{Anmerkung}: Besser das Paket \verb+minted+ verwenden.
Quellcode-Ausschnitte können mit der \code{listings}-Umgebung eingefügt werden:
\begin{lstlisting}[caption={\emph{A simple loop}}, label={lst:simple_loop}]{}
// The for-loop
for (int i=0;i<10;i++) {
doSomething();
}
\end{lstlisting}
Die Formatierung der eingefügten Codestücke kann über die Angaben in
\file{header.tex} (siehe \enquote{Definitionen für Quellcodes/Listings})
vorgenommen werden. Details zu den möglichen Parametern sind in der
Dokumentation (zu finden mit einer beliebigen Suchmaschine) nachzulesen.
Mit dem Kommando \textbackslash{}code\{\} lassen sich kurze Codestücke wie
Klassen- oder Methodennamen in den Fließtext integrieren:
\begin{verbatim}
\code{myMethod(String param)}
\end{verbatim}
%----------------------------------------------------------------------
% TOOLS
%----------------------------------------------------------------------
\section{Tools}
\label{ref:tools}
Eine kleine Auswahl an nützlichen Werkzeugen für \LaTeX{}:
\textbf{Anmerkung}: Ggf. outdated (bis auf Punkt 1)
\begin{itemize}
\item \textbf{vim + vimtex} \\
Was auch sonst 8)
\item \textbf{MiKTeX} \\
\LaTeX{}-Distribution für Windows. \\
\guillemotright \url{http://www.miktex.org}
\item \textbf{teTeX} \\
\LaTeX{}-Distribution für
Linux\textbackslash{}Unix\textbackslash{}MacOS. \\
\guillemotright \url{http://www.tug.org/tetex/}
\item \textbf{TeXnicCenter} \\
Komfortabler \LaTeX{}-Editor (Textmodus) für Windows. \\
\guillemotright \url{http://www.toolscenter.org}
\item \textbf{Kile} \\
Komfortabler \LaTeX{}-Editor (Textmodus) für Linux (KDE). \\
\guillemotright \url{http://kile.sourceforge.net}
\item \textbf{AUCTeX} \textbackslash{} \textbf{Preview-Latex} \\
Erweiterung für den Texteditor Emacs zur Unterstützung von \LaTeX{},
teilweise mit WYSIWYG. \\
\guillemotright \url{http://www.gnu.org/software/auctex/index.html}
\item \textbf{TeXmacs} \\
Editor mit WYSIWYG-Fähigkeiten. Für zahlreiche Plattformen. \\
\guillemotright \url{http://www.texmacs.org}
\item \textbf{Lyx} \\
\LaTeX{}-Editor mit WYSIWYG-Fähigkeiten. \\
\guillemotright \url{http://www.lyx.org}
\item \textbf{JabRef} \\
Plattformunabhängiges (Java) Werkzeug zum Verwalten von Literaturquellen im
\BibTeX{}-Format. \\
\guillemotright \url{http://jabref.sourceforge.net}
\item \textbf{Dia} \\
OpenSource-Klon von Microsofts Visio zur Erstellung von Diagrammen. Gute
Unterstützung für EPS (siehe Abschnitt \ref{ref:graphiken}). \\
\guillemotright \url{http://www.gnome.org/projects/dia} \\
\guillemotright \url{http://dia-installer.sourceforge.net} (Windows)
\end{itemize}
%----------------------------------------------------------------------
% LINKS
%----------------------------------------------------------------------
\section{Links}
\label{ref:links}
\begin{itemize}
\item \url{http://www.weinelt.de/latex/} \\
Eine \LaTeX{}-Befehlsübersicht. \\
(wAs iST diEseS httpS ?)
\item \url{https://www.dante.de} \\
Deutschsprachige Anwendervereinigung TeX e.V. (Dante)
\item \url{https://archiv.dante.de/TeX-Service/TSP/tex/cookbook/cookbook.html} \\
Kochbuch für \LaTeX{} von Dante.
\item \url{https://www.ctan.org} \\
CTAN - The Comprehensive TeX Archive Network.
\item \url{https://github.com/texdoc/abschlussarbeit-mit-latex} \\
\textit{Abschlussarbeit mit LaTeX.}
\item \url{https://www.latexbuch.de/latex-windows-installieren/} \\
Ein komplettes Setup unter Windows.
\item \url{http://makingtexwork.sourceforge.net/mtw/} \\
\textit{Making TeX Work} von Norman Walsh \\
(wAs iST diEseS httpS ?)
\end{itemize}
\section{Literaturverweise}
Literaturverweise werden im BibTeX-Format notiert. Referenzen auf Literatur
können mithilfe von \code{\textbackslash{}cite\{SymbolischerName\}} eingebunden
werden. Beispiel: \cite{tanenbaum:2001}. Nur referenzierte Literatur wird im
generierten Verzeichnis dargestellt.
% vim: tabstop=2 softtabstop=2 shiftwidth=2 expandtab
% vim: textwidth=80
File added
%----------------------------------------------------------------------
% LITERATURVERZEICHNIS
% Literaturverzeichnis der Abschlussarbeit, per BibTeX
%----------------------------------------------------------------------
\bibliography{thesis} % BibTeX-File
% ANMERKUNG:
%
% vim: tabstop=2 softtabstop=2 shiftwidth=2 expandtab
% vim: textwidth=80
%----------------------------------------------------------------------
% ERKLÄRUNGEN
% Eidesstattliche Versicherung und Verbreitungsformen
%----------------------------------------------------------------------
\pagestyle{plain}
% ERKLÄRUNG
\chapter*{Erklärung}
Ich versichere, dass ich die \abschluss-Thesis selbstständig verfasst und keine
anderen als die angegebenen Hilfsmittel benutzt habe.
\vspace{2cm}
Wiesbaden, \displaydate{erklaerung} \hfill{} \autor
% VERBREITUNGSFORMEN
\vspace{3cm}
Hiermit erkläre ich mein Einverständnis mit den im Folgenden aufgeführten
Verbreitungsformen dieser \abschluss-Thesis:
\begin{longtable}{|p{0.35\linewidth}|c|c|}
\hline
\textbf{Verbreitungsform} & {\centering\textbf{~~ja~~}} & {\centering
\textbf{~nein~}} \\
\hline
\endhead
Einstellung der Arbeit in die Bibliothek der HSRM &
\ifeinstellungbibliothek \centering \( _{\surd } \) \fi &
\ifeinstellungbibliothek \else { \centering \( _{\times } \) } \fi \\
\hline
Veröffentlichung des Titels der Arbeit im Internet &
\iftitelveroeffentlichung \centering \( _{\surd } \) \fi &
\iftitelveroeffentlichung \else { \centering \( _{\times } \) } \fi \\
\hline
Veröffentlichung der Arbeit im Internet &
\ifarbeitveroeffentlichung \centering \( _{\surd } \) \fi &
\ifarbeitveroeffentlichung \else { \centering \( _{\times } \) } \fi \\
\hline
\end{longtable}
\vspace{2cm}
Wiesbaden, \displaydate{verbreitungsformen} \hfill{} \autor
% vim: tabstop=2 softtabstop=2 shiftwidth=2 expandtab
% vim: textwidth=80
%----------------------------------------------------------------------
% HEADER
% Einstellungen, Makros etc.
%----------------------------------------------------------------------
\documentclass[12pt,a4paper,twoside]{thesis}
\NeedsTeXFormat{LaTeX2e}[1994/06/01]
% Verwendete Pakete
\usepackage{ae}
\usepackage{times}
\usepackage[ngerman]{babel} % Deutsche Besonderheiten (neue Rechtschreibung)
\usepackage[utf8]{inputenc} % UTF-8 (z.B. ß)
\usepackage[T1]{fontenc} % T1-Schriften verwenden (statt CM)
\usepackage{textcomp} % Zusätzliche Textsymbole von T1
\usepackage{makeidx} % Index
\usepackage[bottom,hang,marginal]{footmisc}
\usepackage{fancyhdr} % Definition von Kopf-/Fußzeilen
\usepackage{float} % Gleitumgebungen
\usepackage{setspace}
\usepackage{doc} % Für's BibTeX-Logo (Siehe vorlage.tex)
\usepackage{changebar}
\usepackage{listings} % Formatierungen für Quellcode
%\usepackage{color}
\usepackage{multirow}
\usepackage{longtable} % Tabellen über mehrere Seiten
\usepackage{multicol} % Mehrspaltiger Satz
\usepackage[german]{varioref} % Variable Referenzen
\usepackage{pdflscape} % Querformat
\usepackage{footnpag} % Fußnoten: Nummerierung auf jeder Seite bei 1 beginnen
\usepackage[normalem]{ulem} % Unterstreichung
\usepackage{xspace}
\usepackage{amsmath}
\usepackage[bf,SL,BF]{subfigure}
\usepackage{gastex}
\usepackage{array}
\usepackage{eurosym}
\usepackage{ragged2e}
\usepackage{csquotes}
\usepackage{datetime}
\usepackage[all]{nowidow}
% Die Algorithmus-Umgebung für Pseudocode
\usepackage{algorithmic}
\usepackage{algorithm}
\numberwithin{algorithm}{chapter}
\renewcommand{\listalgorithmname}{Verzeichnis der Algorithmen}
\renewcommand{\algorithmiccomment}[1]{// #1}
\floatname{algorithm}{Algorithmus}
\newcommand{\theHalgorithm}{\arabic{algorithm}}
%\setlength{\footnotemargin}{0pt}
% set font-style to computer modern sans-serif (cmss)
%\renewcommand{\sfdefault}{cmss}
%\renewcommand{\familydefault}{\sfdefault}
%----------------------------------------------------------------------
% ALLGEMEINE DATEN
\newif\ifeinstellungbibliothek
\newif\iftitelveroeffentlichung
\newif\ifarbeitveroeffentlichung
\newcommand{\abschluss}{Bachelor}
\newcommand{\abschlusskurz}{B. Sc.}
\newcommand{\titel}{Thema der Arbeit}
\newcommand{\autor}{Max Mustermann}
\newcommand{\keywords}{Key, Words}
\newcommand{\fachbereich}{Design Informatik Medien}
\newcommand{\studiengang}{Informatik - Technische Systeme}
\newcommand{\referent}{Prof. Dr. XXX}
\newcommand{\korreferent}{Prof. Dr. XXX}
% Einstellung der Arbeit in die Bibliothek der HSRM
\einstellungbibliothekfalse
%\einstellungbibliothektrue
% Veröffentlichung des Titels der Arbeit im Internet
\titelveroeffentlichungfalse
%\titelveroeffentlichungtrue
% Veröffentlichung der Arbeit im Internet
\arbeitveroeffentlichungfalse
%\arbeitveroeffentlichungtrue
\newdate{vorgelegt}{01}{01}{1970}
\newdate{erklaerung}{01}{01}{1970}
\newdate{verbreitungsformen}{01}{01}{1970}
%----------------------------------------------------------------------
% PDF Einstellungen
\usepackage{graphicx}
\pdfcompresslevel=9
\usepackage{url}
\usepackage[
pdftex,
colorlinks=true,
linkcolor=blue,
urlcolor=blue,
citecolor=blue,
plainpages=false,
pdfpagelabels,
bookmarksnumbered=true,
pdftitle={\titel},
pdfauthor={\autor},
pdfkeywords={\keywords}
]{hyperref}
\usepackage{cleveref}
%-----------------------------------------------------------------------
% Seitenlayout festlegen
\voffset-1in
\hoffset-1in
\setlength{\oddsidemargin}{4cm}
\setlength{\evensidemargin}{2cm}
\topmargin15pt
\textwidth150mm
\textheight230mm
\footskip1.5cm
\headheight25pt
\pagestyle{fancyplain}
% Definition von Kopf- und Fußzeilen
\lhead[\fancyplain{}{\nouppercase{\sl\rightmark}}]{\fancyplain{}{\nouppercase{\sl\leftmark}}}
%\rhead[\fancyplain{}{\nouppercase{\sl\leftmark}}]{\fancyplain{}{\nouppercase{\sl\leftmark}}}
\rhead[\fancyplain{}{\nouppercase{\sl\leftmark}}]{\fancyplain{}{\nouppercase{\sl\rightmark}}}
%-----------------------------------------------------------------------
% Definitionen für Quellcodes/Listings
% besser `minted` statt `listings` verwenden ...
\lstloadlanguages{Java}
\lstset{
language=[AspectJ]Java, % Java with AspectJ-Dialect
tabsize=4, % Tabulatorbreite
linewidth=\linewidth, % Width of a line
breaklines=true, % Break long lines
breakatwhitespace=true, % Only break at whitespaces
basicstyle=\scriptsize\ttfamily, % Schriftart/-größe
numbers=left, % Linenumbers left
numberfirstline=false, % Not: Always number 1. line
numberstyle=\scriptsize, % Größe der Zeilennummern
stepnumber=1, % Jede 2. Zeilennummer anzeigen
numbersep=5pt, % Abstand Nr - Quellcode
showspaces=false, % Spaces nicht anzeigen
showtabs=false, % Tabs nicht anzeigen
showstringspaces=false, % Don't show tabs in strings
showlines=false, % Leerzeilen am Sourceende weglassen
extendedchars=true, % ASCII-Zeichnen > 127 zulassen
identifierstyle=\bfseries, % Identifier
keywordstyle=\bfseries, % Keywords
commentstyle=\itshape, % Style of comments
stringstyle=\ttfamily, % Strings (!= Keywords)
flexiblecolumns=false, % Use fixed width for fonts
fontadjust=true, % "Base width" nicht jede Zeile anpassen
frame=trbl, % Frame; trBL
captionpos=b, % Position of the caption
aboveskip=25pt, % Space between text and the top of the listing
}
%-----------------------------------------------------------------------
% VERZEICHNISSE
\makeindex
% Namen für Quellcodes und Quellcode-Verzeichnis
\renewcommand\lstlistingname{\normalsize Quellcode}
\renewcommand\lstlistlistingname{Verzeichnis der Quellcodes}
% Layout für Literaturverzeichnis (BibTeX)
\bibliographystyle{alphadin} % Alphab., Verfasser + Jahr (DIN 1502)
% Inhaltsverzeichnis
\setcounter{tocdepth}{3}
\setcounter{secnumdepth}{3}
\makeatother
%-----------------------------------------------------------------------
% Debug-Optionen - sollten fuer die Final Version gelöscht werden
\vrefwarning
\nochangebars
% Tabellen über Seitengrenzen zulassen
\setlongtables
% Absatztrennung durch Abstand - keine Einrückung
\setlength\parskip{\medskipamount}
\setlength\parindent{0pt}
% Abstand Text - Graphik (nur Mitten in Text)
\setlength{\intextsep}{25pt plus 3pt minus 2pt}
%-----------------------------------------------------------------------
% EIGENE KOMMANDOS
% \comment{<text>}: Kommentar, nicht im Dokument sichtbar
\newcommand{\comment}[1]{}
% \markup{<test>}: Unterstrichener Text
\newcommand{\markup}[1]{\uline{#1}}
% \file{<text>}: Formatierung für Dateinamen
\newcommand{\file}[1]{{\sffamily #1}}
% \code{<text>}: Formatierung von "Code" (Klassenname, Methodennamen etc.) im Fließtext
\newcommand{\code}[1]{\mbox{\texttt{#1}}}
%-----------------------------------------------------------------------
% Spezielle TRENN-VORGABEN
\hyphenation{Tren-nung}
% vim: tabstop=2 softtabstop=2 shiftwidth=2 expandtab
% vim: textwidth=80
%----------------------------------------------------------------------
% TITELSEITE
% Titelseite / Deckblatt der Abschlussarbeit
%----------------------------------------------------------------------
\begin{titlepage}
\topmargin0mm
\textwidth170mm
\enlargethispage{3cm}
\oddsidemargin3cm
\setlength{\parindent}{0em}
%--------------------------------------------------------------------
\begin{minipage}{\textwidth}
\centering
\vspace{0.8cm}
\begin{large}
Hochschule RheinMain \\
Fachbereich \fachbereich \\
Studiengang \studiengang
\end{large}
\end{minipage}
%---------------------------------------------
\begin{minipage}{\textwidth}
\centering
\vspace{0.8cm}
\begin{large}
\abschluss-Thesis \\
zur Erlangung des akademischen Grades \\
{\abschluss} of Science (\abschlusskurz)
\end{large}
\vspace{4cm}
\renewcommand{\baselinestretch}{1.8}
\small\normalsize
{\LARGE \bf \titel} \\
\renewcommand{\baselinestretch}{1}
\small\normalsize
\end{minipage}
\vspace{6.5cm}
vorgelegt von \autor \\
\\
am \displaydate{vorgelegt} \\
\\
\\
\\
Referent: \referent \\
Korreferent: \korreferent
\clearpage
\end{titlepage}
% vim: tabstop=2 softtabstop=2 shiftwidth=2 expandtab
% vim: textwidth=80
@BOOK{tanenbaum:2001,
title = {Modern Operating Systems},
publisher = {Prentice Hall International},
year = {2001},
author = {Andrew S. Tanenbaum}
}
This diff is collapsed.
%----------------------------------------------------------------------
% HAUPTDATEI
% Enthält die Verknüpfungen aller Dateien zur gesamten Abschlussarbeit
%----------------------------------------------------------------------
\input{preamble/header.tex} % Definitionen, Makros...
\begin{document} % Beginn des Dokuments
%----------------------------------------------------------------------
% TITELSEITEN
\pagenumbering{Roman} % Römische Ziffern für Seitenzahlen
\input{preamble/titelseite.tex} % Titelseite
\pagestyle{plain} % Keine Titelzeile
\input{preamble/erklaerung.tex} % Erklärung, Verbreitungsformen
\cleardoublepage % Neue Doppelseite beginnen
%----------------------------------------------------------------------
% VERZEICHNISSE
\tableofcontents % Inhaltsverzeichnis
\listoffigures % Abbildungsverzeichnis