From f4c225f2947fdaae8142570a697cc28e93c236e0 Mon Sep 17 00:00:00 2001 From: Marcel Schneider Date: Sun, 14 Mar 2021 14:46:40 +0100 Subject: [PATCH] initial commit --- .gitignore | 287 +++++++++++++++++++++++++++++++++ Makefile | 33 ++++ README.md | 31 ++++ common/commands.tex | 21 +++ common/config.tex | 42 +++++ content/abstract.tex | 7 + content/acronyms.tex | 9 ++ content/appendix_a.tex | 2 + content/ch1_introduction.tex | 4 + content/ch2_basics.tex | 4 + content/ch3_analysis.tex | 4 + content/ch4_design.tex | 3 + content/ch5_implementation.tex | 14 ++ content/ch6_conclusion.tex | 4 + content/coverpage.tex | 71 ++++++++ content/quellen.bib | 8 + content/statement.tex | 12 ++ creationdate.lua | 2 + creationdate.timestamp | 2 + template.pdf | Bin 0 -> 65406 bytes template.tex | 168 +++++++++++++++++++ template.xmpdata | 5 + version.dat | 1 + 23 files changed, 734 insertions(+) create mode 100644 .gitignore create mode 100644 Makefile create mode 100644 README.md create mode 100644 common/commands.tex create mode 100644 common/config.tex create mode 100644 content/abstract.tex create mode 100644 content/acronyms.tex create mode 100644 content/appendix_a.tex create mode 100644 content/ch1_introduction.tex create mode 100644 content/ch2_basics.tex create mode 100644 content/ch3_analysis.tex create mode 100644 content/ch4_design.tex create mode 100644 content/ch5_implementation.tex create mode 100644 content/ch6_conclusion.tex create mode 100644 content/coverpage.tex create mode 100644 content/quellen.bib create mode 100644 content/statement.tex create mode 100644 creationdate.lua create mode 100644 creationdate.timestamp create mode 100644 template.pdf create mode 100644 template.tex create mode 100644 template.xmpdata create mode 100644 version.dat diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..de9c5b0 --- /dev/null +++ b/.gitignore @@ -0,0 +1,287 @@ +## Core latex/pdflatex auxiliary files: +*.aux +*.lof +*.log +*.lot +*.fls +*.out +*.toc +*.fmt +*.fot +*.cb +*.cb2 +.*.lb + +## Intermediate documents: +*.dvi +*.xdv +*-converted-to.* +# these rules might exclude image files for figures etc. +# *.ps +# *.eps +# *.pdf + +## Generated if empty string is given at "Please type another file name for output:" +.pdf + +## Bibliography auxiliary files (bibtex/biblatex/biber): +*.bbl +*.bcf +*.blg +*-blx.aux +*-blx.bib +*.run.xml + +## Build tool auxiliary files: +*.fdb_latexmk +*.synctex +*.synctex(busy) +*.synctex.gz +*.synctex.gz(busy) +*.pdfsync + +## Build tool directories for auxiliary files +# latexrun +latex.out/ + +## Auxiliary and intermediate files from other packages: +# algorithms +*.alg +*.loa + +# achemso +acs-*.bib + +# amsthm +*.thm + +# beamer +*.nav +*.pre +*.snm +*.vrb + +# changes +*.soc + +# comment +*.cut + +# cprotect +*.cpt + +# elsarticle (documentclass of Elsevier journals) +*.spl + +# endnotes +*.ent + +# fixme +*.lox + +# feynmf/feynmp +*.mf +*.mp +*.t[1-9] +*.t[1-9][0-9] +*.tfm + +#(r)(e)ledmac/(r)(e)ledpar +*.end +*.?end +*.[1-9] +*.[1-9][0-9] +*.[1-9][0-9][0-9] +*.[1-9]R +*.[1-9][0-9]R +*.[1-9][0-9][0-9]R +*.eledsec[1-9] +*.eledsec[1-9]R +*.eledsec[1-9][0-9] +*.eledsec[1-9][0-9]R +*.eledsec[1-9][0-9][0-9] +*.eledsec[1-9][0-9][0-9]R + +# glossaries +*.acn +*.acr +*.glg +*.glo +*.gls +*.glsdefs +*.lzo +*.lzs + +# uncomment this for glossaries-extra (will ignore makeindex's style files!) +# *.ist + +# gnuplottex +*-gnuplottex-* + +# gregoriotex +*.gaux +*.gtex + +# htlatex +*.4ct +*.4tc +*.idv +*.lg +*.trc +*.xref + +# hyperref +*.brf + +# knitr +*-concordance.tex +# TODO Uncomment the next line if you use knitr and want to ignore its generated tikz files +# *.tikz +*-tikzDictionary + +# listings +*.lol + +# luatexja-ruby +*.ltjruby + +# makeidx +*.idx +*.ilg +*.ind + +# minitoc +*.maf +*.mlf +*.mlt +*.mtc[0-9]* +*.slf[0-9]* +*.slt[0-9]* +*.stc[0-9]* + +# minted +_minted* +*.pyg + +# morewrites +*.mw + +# nomencl +*.nlg +*.nlo +*.nls + +# pax +*.pax + +# pdfpcnotes +*.pdfpc + +# sagetex +*.sagetex.sage +*.sagetex.py +*.sagetex.scmd + +# scrwfile +*.wrt + +# sympy +*.sout +*.sympy +sympy-plots-for-*.tex/ + +# pdfcomment +*.upa +*.upb + +# pythontex +*.pytxcode +pythontex-files-*/ + +# tcolorbox +*.listing + +# thmtools +*.loe + +# TikZ & PGF +*.dpth +*.md5 +*.auxlock + +# todonotes +*.tdo + +# vhistory +*.hst +*.ver + +# easy-todo +*.lod + +# xcolor +*.xcp + +# xmpincl +*.xmpi + +# xindy +*.xdy + +# xypic precompiled matrices and outlines +*.xyc +*.xyd + +# endfloat +*.ttt +*.fff + +# Latexian +TSWLatexianTemp* + +## Editors: +# WinEdt +*.bak +*.sav + +# Texpad +.texpadtmp + +# LyX +*.lyx~ + +# Kile +*.backup + +# gummi +.*.swp + +# KBibTeX +*~[0-9]* + +# TeXnicCenter +*.tps + +# auto folder when using emacs and auctex +./auto/* +*.el + +# expex forward references with \gathertags +*-tags.tex + +# standalone packages +*.sta + +# Makeindex log files +*.lpz + +# xwatermark package +*.xwm + +# REVTeX puts footnotes in the bibliography by default, unless the nofootinbib +# option is specified. Footnotes are the stored in a file with suffix Notes.bib. +# Uncomment the next line to have this generated file ignored. +#*Notes.bib +ba.ist +ba.pdf +*.ist diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..81627bb --- /dev/null +++ b/Makefile @@ -0,0 +1,33 @@ +TARGET=ba +COMPILER=xelatex -shell-escape --synctex=1 -output-driver="xdvipdfmx -z 1" +TEX_SOURCES=$(TARGET).tex content/*.tex +VERAPDF=/opt/verapdf/verapdf + +all: fast bibtex + +fast-verify: fast verify + +verify: $(TARGET).pdf + $(VERAPDF) --format text $(TARGET).pdf + +fast: $(TEX_SOURCES) + $(COMPILER) -halt-on-error $(TARGET) + +bibtex: $(TARGET).aux + $(COMPILER) -halt-on-error $(TARGET) + biber $(TARGET) + $(COMPILER) -halt-on-error $(TARGET) + $(COMPILER) -halt-on-error $(TARGET) + makeglossaries $(TARGET) + $(COMPILER) -halt-on-error $(TARGET) + $(COMPILER) -halt-on-error $(TARGET) + +index: $(TARGET).aux + $(COMPILER) -halt-on-error $(TARGET) + makeindex $(TARGET) + $(COMPILER) -halt-on-error $(TARGET) + $(COMPILER) -halt-on-error $(TARGET) + +clean: + rm -f *.log *.toc *.lof *.lot *.out *.pdf *.aux *.bbl *.blg *.idx *.ilg *.ind *.lol *.acn *.bcf *.glo *.ist *.run.xml *.xmpdata *.xmpi *.acr *.alg *.glg *.gls + diff --git a/README.md b/README.md new file mode 100644 index 0000000..e5be145 --- /dev/null +++ b/README.md @@ -0,0 +1,31 @@ +# Template für Abschlussarbeiten + +Das IFI stellt ein offizielles Template bereit, die letzte Änderung daran war +jedoch 2015 und es nutzt viele veraltete Dinge. +In den letzten 6 Jahren hat sich einiges geändert, dieses Template hier ist an +einen (recht) modernen Workflow angepasst. + +So wird vollständig auf KOMAscript gesetzt und als Compiler xelatex genutzt. +Lualatex sollte auch funktionieren. +Damit dieses projekt mit latexmk (automatisch) gebaut werden kann, muss in die +config `~/.config/latexmk/latexmkrc` folgendes eingetragen werden: + +``` +$hash_calc_ignore_pattern{'dat'} = '^'; +$hash_calc_ignore_pattern{'timestamp'} = '^'; +$pdflatex = 'xelatex --shell-escape %O %S'; +``` + +Dadurch werden die Zusatzdateien ignoriert, die für die Erstellung des +PDF/A-kompatiblen Dokuments benötigt werden. Ohne diese Einträge, würde latexmk +ständig neubauen, da diese dateien sich beim build ändern. +In der letzten Zeile wird xelatex als compiler konfiguriert. + +Das Makefile bietet das Kommando `verify` um mit verapdf die Kompatibilität zu +PDF/A zu prüfen. +Dazu muss im Makefile für die Variable `VERAPDF` der korrekte Pfad zur +Executable liegen. + +Für Fragen, Wünsche, Anregungen bitte den issue tracker nutzen. + +Viel Spaß und Erfolg mit eurer Arbeit diff --git a/common/commands.tex b/common/commands.tex new file mode 100644 index 0000000..7d7f800 --- /dev/null +++ b/common/commands.tex @@ -0,0 +1,21 @@ +% +% own commands +% + +%double empty page +\newcommand \myemptypage { + \clearpage + \thispagestyle{empty} + \null + \cleardoublepage +} + +%create abstract environment that is not available in latex book style +\newcommand\abstractname{Abstract} +\newenvironment{abstract}{% + \begin{center}% + \normalfont\Large\bfseries \abstractname + \end{center}% + \it% + } + {} diff --git a/common/config.tex b/common/config.tex new file mode 100644 index 0000000..a9b3914 --- /dev/null +++ b/common/config.tex @@ -0,0 +1,42 @@ +% +% general configuration +% + +\usepackage[draft=false]{scrlayer-scrpage} +\usepackage{ifdraft} +\renewcommand*{\chaptermarkformat}{\MakeUppercase{\chapapp}~\thechapter\autodot\enskip} +\chead{} +%\chead*{Entwicklungsversion \version} +\ihead{\headmark} +\ohead{\pagemark} + +% Use microtype to improve typesetting +\usepackage{microtype} + +%set page margin for DIN A4 +\geometry{a4paper, left=2.5cm, right=2.5cm, top=4cm, + bottom=5cm, bindingoffset=1cm} + +%makes TeX less fussy about line breaking + % but makes it also look like Word +%\sloppy + +% Replacement for changing parskip and parindent directly +%\usepackage{parskip} + +%1.5 spacing +\onehalfspacing +{} + + +%define some colors +\definecolor{darkblue}{rgb}{0.0,0.0,0.5} +\definecolor{grey}{rgb}{0.8,0.8,0.8} +\definecolor{lightgrey}{rgb}{0.95,0.95,0.95} + + +%override reference title and listings title +\renewcommand \bibname{References} +%\renewcommand{\lstlistlistingname}{List of Listings} + +\newtheorem{definition}{Definition} diff --git a/content/abstract.tex b/content/abstract.tex new file mode 100644 index 0000000..34252eb --- /dev/null +++ b/content/abstract.tex @@ -0,0 +1,7 @@ + +\begin{center}\normalfont\textbf{Abstract}\end{center} + +\begin{quotation} + This is the abstract of the document +\end{quotation} + diff --git a/content/acronyms.tex b/content/acronyms.tex new file mode 100644 index 0000000..54229ab --- /dev/null +++ b/content/acronyms.tex @@ -0,0 +1,9 @@ + + +\newglossaryentry{python} +{ + name={Python}, + description={a scripting language} +} + +\newacronym{gau}{GAU}{Geor-Auguts-Universität Göttingen} diff --git a/content/appendix_a.tex b/content/appendix_a.tex new file mode 100644 index 0000000..dd24a29 --- /dev/null +++ b/content/appendix_a.tex @@ -0,0 +1,2 @@ +\chapter{Anhang A}% + diff --git a/content/ch1_introduction.tex b/content/ch1_introduction.tex new file mode 100644 index 0000000..f4bb238 --- /dev/null +++ b/content/ch1_introduction.tex @@ -0,0 +1,4 @@ +\chapter{Einleitung}% +\label{chap:introduction} + +Einleitungstext diff --git a/content/ch2_basics.tex b/content/ch2_basics.tex new file mode 100644 index 0000000..0f3353e --- /dev/null +++ b/content/ch2_basics.tex @@ -0,0 +1,4 @@ +\chapter{Theoretischer Hintergrund}% +\label{chap:theorie} + +Basics und Theorie diff --git a/content/ch3_analysis.tex b/content/ch3_analysis.tex new file mode 100644 index 0000000..70556b7 --- /dev/null +++ b/content/ch3_analysis.tex @@ -0,0 +1,4 @@ +\chapter{Analyse}% +\label{chap:analysis} + +Analyse des status quo diff --git a/content/ch4_design.tex b/content/ch4_design.tex new file mode 100644 index 0000000..08d439f --- /dev/null +++ b/content/ch4_design.tex @@ -0,0 +1,3 @@ +\chapter{Design} + +Desing des neuen Systems, vielleicht mit \gls{python} ? diff --git a/content/ch5_implementation.tex b/content/ch5_implementation.tex new file mode 100644 index 0000000..2b42fbe --- /dev/null +++ b/content/ch5_implementation.tex @@ -0,0 +1,14 @@ +\chapter{Implementation} +\label{chap:implementation} + +Implementation des ganzen, vielleicht nach einem vorherigen Blick in ein Buch +\parencite[vgl.][49]{martin2018}. + +SI-Einheiten können per Befehl geschrieben werden: \SI{43}{\kilo\gram\per\square\metre} + +Für code wird Minted genutzt: +\begin{minted}{python} +def add(a: int, b: int) -> int: + """Really not the best addition function""" + return a + b +\end{minted} diff --git a/content/ch6_conclusion.tex b/content/ch6_conclusion.tex new file mode 100644 index 0000000..d345e88 --- /dev/null +++ b/content/ch6_conclusion.tex @@ -0,0 +1,4 @@ +\chapter{Auswertung}% +\label{chap:fazit} + +Fazit und Ausblick diff --git a/content/coverpage.tex b/content/coverpage.tex new file mode 100644 index 0000000..f603a11 --- /dev/null +++ b/content/coverpage.tex @@ -0,0 +1,71 @@ +% +% title page +% + +\begin{titlepage} + %default settings for the rest + \large + \centering + + \vspace{3cm} + + \textbf{\LARGE \mytype} + + + im Studiengang ``\mycourse'' + + \vspace{2.5cm} + + \textbf{\LARGE \mytitle} + + \vspace{2cm} + + \myauthor + + \vspace{2cm} + + \mydepartment + + \vspace{2cm} + + Bachelor- und Masterarbeiten\\ + des Zentrums für angewandte Informatik\\ + an der Georg-August-Universität Göttingen + + \vspace{0.2cm} + + \mysubmissiondate + + + %--- new page --- + \clearpage + \thispagestyle{empty} + \null + \flushleft + %\onehalfspacing + \normalsize + + \vspace{8cm} + + Georg-August-Universität Göttingen\\ + Institut für Informatik\\[3ex] + Goldschmidtstrasse 7\\ + 37077 Göttingen\\ + Germany\\[3ex] + + \begin{tabular}{@{}ll} + Telefon & +49 (551) 39-172000\\ + Fax & +49 (551) 39-14403\\ + E-Mail & \href{mailto:office@informatik.uni-goettingen.de}{office@informatik.uni-goettingen.de}\\ + Web & \url{www.informatik.uni-goettingen.de}\\ + \end{tabular} + + \vspace{1.0cm} + + \begin{tabular}{@{}ll} + Erstbetreuer: & \myfirstsupervisor\\ + Zweitbetreuer:& \mysecondsupervisor\\ + \end{tabular} + +\end{titlepage} + diff --git a/content/quellen.bib b/content/quellen.bib new file mode 100644 index 0000000..8ec35bc --- /dev/null +++ b/content/quellen.bib @@ -0,0 +1,8 @@ + +@book{martin2018, + title={Clean architecture: a craftsman's guide to software structure and design}, + author={Martin, Robert C}, + year={2018}, + publisher={Prentice Hall} +} + diff --git a/content/statement.tex b/content/statement.tex new file mode 100644 index 0000000..e3574d4 --- /dev/null +++ b/content/statement.tex @@ -0,0 +1,12 @@ +\thispagestyle{empty} + +\null +\vspace{16.0cm} + +\rule{\textwidth}{0.4pt} + +Ich erkläre hiermit, dass ich die vorliegende Arbeit selbständig verfasst und keine anderen als die angegebenen Quellen und Hilfsmittel verwendet habe. + +\vspace{0.2cm} + +Göttingen, den \mysubmissiondate diff --git a/creationdate.lua b/creationdate.lua new file mode 100644 index 0000000..be88818 --- /dev/null +++ b/creationdate.lua @@ -0,0 +1,2 @@ + os.remove("creationdate.timestamp") + io.output("creationdate.timestamp"):write(os.date("\\edef\\tempa{\\string D:%Y%m%d%H%M%S}\n\\def\\tempb{%z}")) diff --git a/creationdate.timestamp b/creationdate.timestamp new file mode 100644 index 0000000..6f8cbae --- /dev/null +++ b/creationdate.timestamp @@ -0,0 +1,2 @@ +\edef\tempa{\string D:20210314143807} +\def\tempb{+0100} \ No newline at end of file diff --git a/template.pdf b/template.pdf new file mode 100644 index 0000000000000000000000000000000000000000..6e5b203a677dd9e6c5bc0b7313f5cf1f7488aa24 GIT binary patch literal 65406 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%0DNQukH9dn> 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 literal 0 HcmV?d00001 diff --git a/template.tex b/template.tex new file mode 100644 index 0000000..79a17bc --- /dev/null +++ b/template.tex @@ -0,0 +1,168 @@ +\documentclass[a4paper, oneside, 10pt,chapterprefix=true,listof=totoc,parskip=half]{scrbook} + +\usepackage{morewrites} +\usepackage{fontspec} +\usepackage{polyglossia} +\setmainlanguage[spelling=new,babelshorthands=true]{german} +\usepackage{geometry} +\usepackage{graphicx} +\usepackage[german,pdfa=true]{hyperref} +\usepackage[sortlocale=auto, style=authoryear, citestyle=authoryear, backend=biber, autopunct=true, dashed=false]{biblatex} +\usepackage[acronym,automake,toc]{glossaries} +\usepackage{float} +\usepackage{siunitx} +\usepackage{multirow} +\usepackage{setspace} +\usepackage{xcolor} +\usepackage{tabularx} +\usepackage{amsmath} +\usepackage{mVersion} +\usepackage{booktabs} +\usepackage{tikz} +\usepackage{listing} +\usepackage{minted} +\usepackage{csquotes} +\usepackage{framed} +\usepackage{marvosym} + +\setmonofont{Fira Code Regular}[Scale=MatchLowercase] + + +\increaseBuild + +%--- basic document configuration --- +\newcommand{\mytype}{Bachelorarbeit} +%\newcommand{\mytype}{Masterarbeit} + +\newcommand{\mycourse}{Angewandte Informatik} +%\newcommand{\mycourse}{Internet Technologies and Information Systems} + +\newcommand{\mytitle}{Ein Template für Abschlussarbeiten im Jahre 2021} +\newcommand{\myauthor}{Fleißiger Studierender} +\newcommand{\mydepartment}{Institut für Informatik} +\newcommand{\mysubmissiondate}{\today} +%\newcommand{\mysubmissiondate}{23. Februar 2021} +%\newcommand{\mythesisid}{201x-xx} %assigned by examination office +\newcommand{\myfirstsupervisor}{Prof. Supervisor} +\newcommand{\mysecondsupervisor}{Dr. Zweitprüfer} + + +%--- pdf/a format ---- +% insert metadata about the document here +%\RequirePackage{filecontents} +\begin{filecontents*}{\jobname.xmpdata} + \Title{\mytitle v\version} + \Author{\myauthor} + \Language{de-DE} + \Subject{\mytitle} + \Keywords{bachelor\sep computer\sep science} +\end{filecontents*} +\usepackage{colorprofiles} +\usepackage[a-1b, mathxmp]{pdfx}[2018/12/22] +\hypersetup{pdfstartview=} + + +\addbibresource{content/quellen.bib} + + +% +% This is based on the official thesis template of +% the Institute of Computer Science at the +% Georg-August-University of Göttingen +% +% originial author: kellner@cs.uni-goettingen.de +% +% If you find any sort of mistake please let me know +% so that it can be fixed in future releases. +% + +%%--- include custom commands --- +\input{common/commands} +% +%%--- include general configuration --- +\input{common/config} + +%--- list of acronyms --- +\makeglossaries +\loadglsentries{content/acronyms} +\clearpage + +\begin{document} + %lower case roman page numbers + \pagenumbering{roman} + \setcounter{page}{1} + + %--- cover page --- + \input{content/coverpage} + \clearpage + + %--- statement page --- + \input{content/statement} + \clearpage + + %--- abstract --- + \clearpage\phantomsection\pdfbookmark{\abstractname}{abstract} + \thispagestyle{empty} + \input{content/abstract} + \clearpage + + %reset acronyms after abstract + \glsresetall{} + + %--- table of contents --- + \clearpage\phantomsection\pdfbookmark{\contentsname}{toc} + \tableofcontents + \printglossary[type=\acronymtype]{} + \printglossary[type=main]{} + \clearpage + + %--- list of figures --- + \listoffigures + \clearpage + + %--- list of tables --- + \listoftables + \clearpage + + %--- list of listings --- + %\renewcommand{\listoflistings}{% + %\cleardoublepage + %%\addcontentsline{toc}{chapter}{\listoflistingscaption}% + %\listof{listing}{\listoflistingscaption}% + %} + %\listoflistings + %\clearpage + + %arabic page numbers + \pagenumbering{arabic} + \setcounter{page}{1} + + %--- chaper 1..n --- + \input{content/ch1_introduction} + \clearpage + + \input{content/ch2_basics} + \clearpage + + \input{content/ch3_analysis} + \clearpage + + \input{content/ch4_design} + \clearpage + + \input{content/ch5_implementation} + \clearpage + + \input{content/ch6_conclusion} + \clearpage + + % References + \printbibliography{} + \addcontentsline{toc}{chapter}{\bibname} + + %--- appendix --- + \appendix + \input{content/appendix_a} + \clearpage +\end{document} + diff --git a/template.xmpdata b/template.xmpdata new file mode 100644 index 0000000..db21226 --- /dev/null +++ b/template.xmpdata @@ -0,0 +1,5 @@ + \Title{\mytitle v\version} + \Author{\myauthor} + \Language{de-DE} + \Subject{\mytitle} + \Keywords{bachelor\sep computer\sep science} diff --git a/version.dat b/version.dat new file mode 100644 index 0000000..983ac6f --- /dev/null +++ b/version.dat @@ -0,0 +1 @@ +0.0;4