The following tools are required to render this dissertation:
python
3.7+;pandoc
2.11+;pandoc-crossref
;pandoc-plot
;inkscape
1.0+- A LaTeX toolchain, including
lualatex
andbiber
. I tested withMikTex
(Windows) andtexlive-full
(Ubuntu). - The fonts in
fonts/
need to be installed; they are used for plots.
To install the Python dependencies required to render figures:
python -m pip install -r requirements.txt
Once the environment has been set-up, use the dissc.py
script to build.
> python dissc.py
usage: dissc [-h] {clean,build,compute-prerequisites} ...
Dissertation compiler
positional arguments:
{clean,build,compute-prerequisites}
sub-command help
clean Clean auxiliary files that are transiently generated during build.
build Build dissertation.
compute-prerequisites
Compute plotting prerequisites from data.
optional arguments:
-h, --help show this help message and exit
The build
subcommand has other options:
usage: dissc build [-h] [--print]
optional arguments:
-h, --help show this help message and exit
--print Build the dissertation for printing media: no hyperlinks, single linespacing, etc.
Figures will be automatically generated by pandoc-plot
.
This sections describes the available mark-up tools that the toolchain supports.
Citations go inside square brackets and are separated by semicolons. Each citation must have a key, composed of ‘@’ + the citation identifier from the database, and may optionally have a prefix, a locator, and a suffix. The citation key must begin with a letter, digit, or _, and may contain alphanumerics, _, and internal punctuation characters (:.#$%&-+?<>~/). Here are some examples:
Blah blah [@smith04;@doe99].
Labels based on pandoc-crossref
are possible. To create a label for an item:
# Introduction {#sec:intro}
As you can read in the @sec:intro, ...
$$
e = m c ^2
$${#eq:label}
Take a look at @eq:label ...
For more complex equation forms (e.g. aligned equations), \label
s can be used. For example:
\begin{align}
...
\label{eq:myequation}
\end{align}
You can refer to the equation like so @eq:myequation
This is not entirely true[^1]
[^1]: details
This repository is partly based on pandoc-thesis
.