A Template for Thesis Documents written in Markdown
- Install docker from https://hub.docker.com/search/?type=edition&offering=community
- Build docker image containing all dependencies, e.g. pandoc and TeX Live:
make docker
Note: You will need about 2GB of free disk space:
$ docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
pandoc-thesis latest b8680fd61337 10 seconds ago 2GB
debian stable-slim eb8569e750e6 5 days ago 69.2MB
- Install pandoc from https://pandoc.org/
- You also need to install LaTeX, e.g. from https://www.tug.org/texlive/
- Install packages needed by pandoc: https://pandoc.org/MANUAL.html#creating-a-pdf
- Either set an environment variable
PANDOC
pointing to the location of your pandoc installation or change the linePANDOC ?= docker run --rm -v $(WORKDIR):/pandoc pandoc-thesis pandoc
in theMakefile
to reflect your settings
- Eisvogel: For using the Eisvogel template, download the latest
version of the template
eisvogel.tex
and move it to the project folder (Note: Latest tested commit isad404d0446
(version 2.0.0).) - Clean Thesis: For using the Clean Thesis template, download the latest version
of the template
cleanthesis.sty
and move it to the project folder (Note: Latest tested commit is63d1fdd815
.)
Note: If the template files do not yet exist in the project folder, use make eisvogel
or make cleanthesis
to download them.
- Maintain your references in
references.bib
- Put the title of your thesis, your name and other meta information in
md/metadata.yaml
- Adjust optional definitions in
md/metadata.yaml
to your needs:- Disable extras like
abstract-*
oracknowledgements
orrestrictionnote
: Remove or comment this optional definitions - Modify content (text) of optional definitions like
abstract-*
oracknowledgements
orrestrictionnote
- If you like Eisvogel but want a more useful
^W
conventional page header (i.e. chapter/section instead of the thesis title) activate (i.e. remove comment in front of)headeralternative
- Disable extras like
- Fill the markdown files under
md/
with your content- The default files in the folder
md/
correspond to a typical structure of a scientific thesis (see also@Balzert2017
: Balzert et al. "Wissenschaftliches Arbeiten", Springer, 2017). You can just use this as starting point for your work ... Hint: You will find some help regarding the use of Markdown inmd/introduction.md
as well as typical number of pages for each chapter in the comment section of each file. - In case you see need for an other layout, please do not forget to reflect the changed filenames in
Makefile
.
- The default files in the folder
- Pandoc uses per default the Chicago Manual of Style for citations (cf. pandoc.org/MANUAL.html#citations).
You can search zotero.org/styles or editor.citationstyles.org/searchByName
for alternative style definitions, download the corresponding
.csl
file to your project folder and activate the style in theMakefile
(option--csl=XXX.csl
). - Build the thesis:
- Using the simple layout:
make simple
- Using Eisvogel:
make eisvogel
- Using Clean Thesis:
make cleanthesis
- Using the simple layout:
- Clean up:
- To remove temporary (generated) filed:
make clean
- To also remove the generated thesis (PDF):
make distclean
- To remove temporary (generated) filed:
The above mentioned files constitute a minimal working example. To start your own project, simply clone this project and customize the files mentioned above.
The generated PDF is intended to be printed double sided like a book. Also, chapters start always on a new (right) page, i.e. this may produce an empty left page at the end of a chapter.
Note: When switching between templates, please make sure to make clean
first! Failing to do so may lead to strange behaviour
or even to weird errors.
Note: In rare circumstances, e.g. when using Cygwin, the path to the working directory is not correctly recognized by make
.
In this case, set it manually by overwriting the variable WORKDIR
in the Makefile
(use absolute paths).
Simple Titlepage | Simple Chapter |
---|---|
Eisvogel Titlepage | Eisvogel Chapter |
---|---|
Clean Thesis Titlepage | Clean Thesis Chapter |
---|---|
This work by Carsten Gips and contributors is licensed under MIT.