From 1b0d1d4b8f373d9c05996055fb85ea8a2bb949a7 Mon Sep 17 00:00:00 2001 From: Benedikt Peetz Date: Thu, 3 Oct 2024 11:17:29 +0200 Subject: refactor(templates/latex): Split the preamble up into multiple files --- common/latex/preamble.tex | 2 + common/latex/preamble/academia/mod.tex | 4 + .../preamble/academia/theorems/definitions.tex | 90 +++++++ common/latex/preamble/academia/theorems/mod.tex | 2 + .../latex/preamble/academia/theorems/packages.tex | 6 + common/latex/preamble/academia/visuals.tex | 1 + common/latex/preamble/beamer/appendix.tex | 1 + common/latex/preamble/beamer/columns.tex | 1 + common/latex/preamble/beamer/float_positioning.tex | 4 + common/latex/preamble/beamer/mod.tex | 6 + common/latex/preamble/beamer/pdfpc.tex | 2 + common/latex/preamble/core/chemistry.tex | 5 + common/latex/preamble/core/copyright.tex | 15 ++ common/latex/preamble/core/date_and_time.tex | 1 + common/latex/preamble/core/encoding.tex | 4 + common/latex/preamble/core/graphics_and_floats.tex | 22 ++ common/latex/preamble/core/index.tex | 8 + common/latex/preamble/core/linting.tex | 1 + common/latex/preamble/core/margindate.tex | 37 +++ common/latex/preamble/core/math.tex | 25 ++ common/latex/preamble/core/mod.tex | 15 ++ common/latex/preamble/core/notes.tex | 1 + common/latex/preamble/core/references.tex | 37 +++ common/latex/preamble/core/visuals.tex | 10 + common/latex/preamble/mod.tex | 3 + templates/latex/academia/headers/preamble.tex | 292 +-------------------- templates/latex/academia/headers/preamble/academia | 1 + templates/latex/academia/headers/preamble/core | 1 + templates/latex/academia/headers/preamble/mod.tex | 2 + 29 files changed, 309 insertions(+), 290 deletions(-) create mode 100644 common/latex/preamble.tex create mode 100644 common/latex/preamble/academia/mod.tex create mode 100644 common/latex/preamble/academia/theorems/definitions.tex create mode 100644 common/latex/preamble/academia/theorems/mod.tex create mode 100644 common/latex/preamble/academia/theorems/packages.tex create mode 100644 common/latex/preamble/academia/visuals.tex create mode 100644 common/latex/preamble/beamer/appendix.tex create mode 100644 common/latex/preamble/beamer/columns.tex create mode 100644 common/latex/preamble/beamer/float_positioning.tex create mode 100644 common/latex/preamble/beamer/mod.tex create mode 100644 common/latex/preamble/beamer/pdfpc.tex create mode 100644 common/latex/preamble/core/chemistry.tex create mode 100644 common/latex/preamble/core/copyright.tex create mode 100644 common/latex/preamble/core/date_and_time.tex create mode 100644 common/latex/preamble/core/encoding.tex create mode 100644 common/latex/preamble/core/graphics_and_floats.tex create mode 100644 common/latex/preamble/core/index.tex create mode 100644 common/latex/preamble/core/linting.tex create mode 100644 common/latex/preamble/core/margindate.tex create mode 100644 common/latex/preamble/core/math.tex create mode 100644 common/latex/preamble/core/mod.tex create mode 100644 common/latex/preamble/core/notes.tex create mode 100644 common/latex/preamble/core/references.tex create mode 100644 common/latex/preamble/core/visuals.tex create mode 100644 common/latex/preamble/mod.tex create mode 120000 templates/latex/academia/headers/preamble/academia create mode 120000 templates/latex/academia/headers/preamble/core create mode 100644 templates/latex/academia/headers/preamble/mod.tex diff --git a/common/latex/preamble.tex b/common/latex/preamble.tex new file mode 100644 index 0000000..110e3a0 --- /dev/null +++ b/common/latex/preamble.tex @@ -0,0 +1,2 @@ +\input{headers/preamble/mod.tex} +\input{headers/preamble/preamble_local.tex} diff --git a/common/latex/preamble/academia/mod.tex b/common/latex/preamble/academia/mod.tex new file mode 100644 index 0000000..39b9230 --- /dev/null +++ b/common/latex/preamble/academia/mod.tex @@ -0,0 +1,4 @@ +% derived from: +% https://github.com/gillescastel/lecture-notes/blob/929672a96abc27eaeb6fa58b1d277b3582d28532/group-theory/preamble.tex +\input{headers/preamble/academia/theorems/mod.tex} +\input{headers/preamble/academia/visuals.tex} diff --git a/common/latex/preamble/academia/theorems/definitions.tex b/common/latex/preamble/academia/theorems/definitions.tex new file mode 100644 index 0000000..4355b3c --- /dev/null +++ b/common/latex/preamble/academia/theorems/definitions.tex @@ -0,0 +1,90 @@ +\renewcommand\qedsymbol{\ensuremath{\text{\textit{O.}}~\epsilon.~\delta.}} +% \renewcommand\qedsymbol{\dots} + +\theoremstyle{definition} + + +\declaretheoremstyle[ + headfont=\bfseries\sffamily\color{NavyBlue!80}, + bodyfont=\normalfont, + headpunct={:\\}, + qed=\qedsymbol, + mdframed={ + linewidth=2pt, + rightline=false, topline=false, bottomline=false, + linecolor=NavyBlue, backgroundcolor=NavyBlue!5, + }, +]{thmexample} +\declaretheorem[numbered=no, style=thmexample,name=Beispiel]{eg} + +\declaretheoremstyle[ + headfont=\bfseries\sffamily\color{RawSienna!80}, + bodyfont=\normalfont, + headpunct={:\\}, + qed=\qedsymbol, + mdframed={ + linewidth=2pt, + rightline=false, topline=false, bottomline=false, + linecolor=RawSienna, backgroundcolor=RawSienna!5, + }, +]{thmexercise} +\declaretheorem[numbered=no, style=thmexercise, name=Aufgabe]{ex} + + +\declaretheoremstyle[ + headfont=\bfseries\sffamily\color{ForestGreen!80}, + bodyfont=\normalfont, + headpunct={:\\}, + qed=\qedsymbol, + mdframed={ + linewidth=2pt, + rightline=false, topline=false, bottomline=false, + linecolor=ForestGreen, backgroundcolor=ForestGreen!5, + }, +]{thmdef} +\declaretheorem[numbered=yes, style=thmdef, name=Definition]{definition} + +\declaretheoremstyle[ + headfont=\bfseries\sffamily\color{RawSienna!70!black}, + bodyfont=\normalfont, + headpunct={:\\}, + qed=\qedsymbol, + mdframed={ + linewidth=2pt, + leftline=false, rightline=true, topline=false, bottomline=false, + linecolor=RawSienna, backgroundcolor=Red!5, + } +]{thmtheorem} +\declaretheorem[numbered=yes, style=thmtheorem, name=Satz]{theorem} + + +\declaretheoremstyle[ + headfont=\bfseries\sffamily\color{Violet!80}, + bodyfont=\normalfont, + headpunct={:\\}, + notebraces={f\"ur }{}, + qed=\qedsymbol, + mdframed={ + linewidth=2pt, + rightline=false, topline=false, bottomline=false, + linecolor=Violet, backgroundcolor=Violet!5, + }, +]{thmsolution} +\makeatletter +\@ifclasswith{report}{nosolutions} +{% + \NewEnviron{solution}[1][]{Eine L\"osung mit dem Name ("L\"osung für #1") wurde ausgeblendet.\ \\ \par} + \newcommand\hdsolution[1]{L\"osung ausgeblendet} +}{% + \declaretheorem[numbered=no, style=thmsolution, name=L\"osung]{replacementSolution} + + \NewEnviron{solution}[1][]{ + \vspace{-1em} + \begin{replacementSolution}[#1] + \ + \BODY + \end{replacementSolution} + } + \newcommand\hdsolution[1]{#1} +} +\makeatother diff --git a/common/latex/preamble/academia/theorems/mod.tex b/common/latex/preamble/academia/theorems/mod.tex new file mode 100644 index 0000000..8350276 --- /dev/null +++ b/common/latex/preamble/academia/theorems/mod.tex @@ -0,0 +1,2 @@ +\input{headers/preamble/academia/theorems/definitions.tex} +\input{headers/preamble/academia/theorems/packages.tex} diff --git a/common/latex/preamble/academia/theorems/packages.tex b/common/latex/preamble/academia/theorems/packages.tex new file mode 100644 index 0000000..c881ab5 --- /dev/null +++ b/common/latex/preamble/academia/theorems/packages.tex @@ -0,0 +1,6 @@ +\usepackage[framemethod=TikZ]{mdframed} +\mdfsetup{skipabove=1em,skipbelow=0em, innertopmargin=5pt, innerbottommargin=6pt} + +\usepackage{amsthm} % math commands for theorems +\usepackage{thmtools} % improved theorems +\usepackage{environ} % for hiding of the solution env diff --git a/common/latex/preamble/academia/visuals.tex b/common/latex/preamble/academia/visuals.tex new file mode 100644 index 0000000..dada594 --- /dev/null +++ b/common/latex/preamble/academia/visuals.tex @@ -0,0 +1 @@ +\usepackage{fancyhdr} % Text layout and margins, headers so on diff --git a/common/latex/preamble/beamer/appendix.tex b/common/latex/preamble/beamer/appendix.tex new file mode 100644 index 0000000..e0599b9 --- /dev/null +++ b/common/latex/preamble/beamer/appendix.tex @@ -0,0 +1 @@ +\usepackage{appendixnumberbeamer} diff --git a/common/latex/preamble/beamer/columns.tex b/common/latex/preamble/beamer/columns.tex new file mode 100644 index 0000000..594bc49 --- /dev/null +++ b/common/latex/preamble/beamer/columns.tex @@ -0,0 +1 @@ +\usepackage{multicol} % allows for multi-columns everywhere, with the "multicols" environment diff --git a/common/latex/preamble/beamer/float_positioning.tex b/common/latex/preamble/beamer/float_positioning.tex new file mode 100644 index 0000000..28a9167 --- /dev/null +++ b/common/latex/preamble/beamer/float_positioning.tex @@ -0,0 +1,4 @@ +% \usepackage[absolute,overlay,showboxes]{textpos} +\usepackage[absolute,overlay]{textpos} + +\usepackage{adjustbox} diff --git a/common/latex/preamble/beamer/mod.tex b/common/latex/preamble/beamer/mod.tex new file mode 100644 index 0000000..a82acad --- /dev/null +++ b/common/latex/preamble/beamer/mod.tex @@ -0,0 +1,6 @@ +\setbeamercolor{itemize/enumerate body}{fg=gray} + +\input{headers/preamble/beamer/appendix.tex} +\input{headers/preamble/beamer/columns.tex} +\input{headers/preamble/beamer/float_positioning.tex} +\input{headers/preamble/beamer/pdfpc.tex} diff --git a/common/latex/preamble/beamer/pdfpc.tex b/common/latex/preamble/beamer/pdfpc.tex new file mode 100644 index 0000000..93e1f2d --- /dev/null +++ b/common/latex/preamble/beamer/pdfpc.tex @@ -0,0 +1,2 @@ +% "overridenote" must be specified as a package option +\usepackage[overridenote]{pdfpc} diff --git a/common/latex/preamble/core/chemistry.tex b/common/latex/preamble/core/chemistry.tex new file mode 100644 index 0000000..94f2592 --- /dev/null +++ b/common/latex/preamble/core/chemistry.tex @@ -0,0 +1,5 @@ +\usepackage[locale = %INIT_SIUNITX_LANGUAGE]{siunitx} % For easy unit representation +\sisetup{per-mode = fraction} + +\usepackage[version=4]{mhchem} % for \ce command +\usepackage{chemfig} diff --git a/common/latex/preamble/core/copyright.tex b/common/latex/preamble/core/copyright.tex new file mode 100644 index 0000000..268b910 --- /dev/null +++ b/common/latex/preamble/core/copyright.tex @@ -0,0 +1,15 @@ +\ExplSyntaxOn +\cs_new_protected:Npn \SetAuthors #1 +{ + \tl_const:Nn \AuthorList {#1} +} +\cs_new_protected:Npn \SetYears #1 +{ + \tl_const:Nn \YearList {#1} +} +\ExplSyntaxOff + +\usepackage[scale=2]{ccicons} % Typeset the cc icons + +% TODO: Add a `\copyright` macro, that generates the copyright text automatically and +% language defined <2024-10-03> diff --git a/common/latex/preamble/core/date_and_time.tex b/common/latex/preamble/core/date_and_time.tex new file mode 100644 index 0000000..32e838d --- /dev/null +++ b/common/latex/preamble/core/date_and_time.tex @@ -0,0 +1 @@ +\usepackage[%INIT_DATE_TIME_LANGUAGE, showdow]{datetime2} % make handling dates easier diff --git a/common/latex/preamble/core/encoding.tex b/common/latex/preamble/core/encoding.tex new file mode 100644 index 0000000..1f48d2a --- /dev/null +++ b/common/latex/preamble/core/encoding.tex @@ -0,0 +1,4 @@ + +\usepackage[utf8]{inputenc} % use utf8 encoding +\usepackage[T1]{fontenc} % for 8bit font support +\usepackage{lmodern} % latin modern fonts, should be better than ae, aecompl diff --git a/common/latex/preamble/core/graphics_and_floats.tex b/common/latex/preamble/core/graphics_and_floats.tex new file mode 100644 index 0000000..b975c5f --- /dev/null +++ b/common/latex/preamble/core/graphics_and_floats.tex @@ -0,0 +1,22 @@ +\usepackage{graphicx} % allows for easy inclusion of graphics +\usepackage{xcolor} % colors and color mixing \color{red!30!green!40!blue} + +\usepackage{tikz} % Nice drawn graphics, for library see: https://tex.stackexchange.com/a/42664 +\usetikzlibrary{calc} + +\usepackage{pgfplots} % plots, 2D and 3D +\pgfplotsset{compat=1.19} % Set a compatibility level, to be able to use the new versions + +\usetikzlibrary{external} +\tikzexternalize[prefix=figures/, mode=list and make] + +% \usetikzlibrary{intersections, angles, quotes, calc, positioning} +% \usetikzlibrary{arrows.meta} %TODO maybe deprecated? + +% \usepackage{tikz-cd} % better commutative diagrams +% \usepackage{subcaption} % like caption package, but for subfigures +% \usepackage{booktabs} % better tables + + +\usepackage{float} % Allows placing floats here (H) and creating new floats `\newfloat` +\usepackage{wrapfig} % Wraps text around figures with the \begin{wrapfigure} environment diff --git a/common/latex/preamble/core/index.tex b/common/latex/preamble/core/index.tex new file mode 100644 index 0000000..a52cc20 --- /dev/null +++ b/common/latex/preamble/core/index.tex @@ -0,0 +1,8 @@ +\usepackage{index} % Helps to create an index +\makeindex + +\ifdraft{ + \usepackage{showidx} +} { + \message {Draft packages not loaded, showidx not loaded.} +} diff --git a/common/latex/preamble/core/linting.tex b/common/latex/preamble/core/linting.tex new file mode 100644 index 0000000..a1bbe34 --- /dev/null +++ b/common/latex/preamble/core/linting.tex @@ -0,0 +1 @@ +\usepackage{nag} diff --git a/common/latex/preamble/core/margindate.tex b/common/latex/preamble/core/margindate.tex new file mode 100644 index 0000000..5579f98 --- /dev/null +++ b/common/latex/preamble/core/margindate.tex @@ -0,0 +1,37 @@ +\DTMnewdatestyle{margindate}{ + \renewcommand*\DTMdisplaydate[4]{ + \MakeLowercase{\DTMshortweekdayname{##4}}\space + \number##3\relax\space + \MakeLowercase{\DTMshortmonthname{##2}}\space + \DTMtwodigits{\DTMtwodigits{##1}} + } + \renewcommand*\DTMDisplaydate[4]{ + \DTMshortweekdayname{##4}\space + ##3\space + \DTMshortmonthname{##2}\space + \DTMtwodigits{\DTMtwodigits{##1}} + } +} + +\NewDocumentCommand\MarginContent{m}{ + \marginpar{ + \small\textsf{\mbox{#1}} + }\relax +} + +\NewDocumentCommand\MarginDate{m}{ + { + \DTMsetdatestyle{margindate} + + \MarginContent{\DTMDate{#1}} + } +} + +\NewDocumentCommand\AnnotatedSection{m m}{ + \section{#1} + \MarginContent{#2} +} +\NewDocumentCommand\DatedSection{m m}{ + \section{#1} + \MarginDate{#2} +} diff --git a/common/latex/preamble/core/math.tex b/common/latex/preamble/core/math.tex new file mode 100644 index 0000000..35144df --- /dev/null +++ b/common/latex/preamble/core/math.tex @@ -0,0 +1,25 @@ +\usepackage{amsmath} % extensive math commands +\usepackage{amsfonts} % more fonts for math (fracture, boldfaced and so on) +\usepackage{mathtools} % extension to amsmath, with more sensible defaults (eq numbers only when referenced) +\usepackage{amssymb} % more symbols, mostly redundant because already loaded by something else +\usepackage{mathrsfs} % support for the RSFS fonts (through \mathscr command) +\usepackage{cancel} % allows to cancel a part in math mode, for example to shorten a term +\usepackage{bm} % bold mode in math, but better than \boldsymbol command from ams. \bm + +% number sets +\NewDocumentCommand\N{}{\ensuremath{\mathbb{N}}} +\NewDocumentCommand\R{}{\ensuremath{\mathbb{R}}} +\NewDocumentCommand\Z{}{\ensuremath{\mathbb{Z}}} +\NewDocumentCommand\Q{}{\ensuremath{\mathbb{Q}}} +\NewDocumentCommand\C{}{\ensuremath{\mathbb{C}}} +\NewDocumentCommand\O{}{\ensuremath{\emptyset}} % replaces the Ø + +% readable limits +\let\svlim\lim{} +\renewcommand\lim{\svlim\limits} + +% aliases +\let\implies\Rightarrow{} +\let\impliedby\Leftarrow{} + +\let\epsilon{\varepsilon} % I like the textual epsilon more diff --git a/common/latex/preamble/core/mod.tex b/common/latex/preamble/core/mod.tex new file mode 100644 index 0000000..3a800a1 --- /dev/null +++ b/common/latex/preamble/core/mod.tex @@ -0,0 +1,15 @@ +% Core packages (used in the implementation of this preamble) +\usepackage{ifdraft} + +\input{headers/preamble/core/chemistry.tex} +\input{headers/preamble/core/copyright.tex} +\input{headers/preamble/core/date_and_time.tex} +\input{headers/preamble/core/encoding.tex} +\input{headers/preamble/core/graphics_and_floats.tex} +\input{headers/preamble/core/index.tex} +\input{headers/preamble/core/linting.tex} +\input{headers/preamble/core/margindate.tex} +\input{headers/preamble/core/math.tex} +\input{headers/preamble/core/notes.tex} +\input{headers/preamble/core/references.tex} +\input{headers/preamble/core/visuals.tex} diff --git a/common/latex/preamble/core/notes.tex b/common/latex/preamble/core/notes.tex new file mode 100644 index 0000000..8eab467 --- /dev/null +++ b/common/latex/preamble/core/notes.tex @@ -0,0 +1 @@ +\usepackage[obeyFinal,%INIT_BABLE_LANGUAGE]{todonotes} diff --git a/common/latex/preamble/core/references.tex b/common/latex/preamble/core/references.tex new file mode 100644 index 0000000..69a6ad6 --- /dev/null +++ b/common/latex/preamble/core/references.tex @@ -0,0 +1,37 @@ +\usepackage[%INIT_BABLE_LANGUAGE]{babel} % For language support +\usepackage{csquotes} % required by biblatex + +% \usepackage{biblatex-dw} +\usepackage[backend=biber, + % style=footnote-dw, + % pageref=true, + % annotation=true, + % library=true, + % + style=numeric, + autocite=plain, + doi=true, + isbn=true, + loccittracker=true, + opcittracker=true, + % No idea what it does, but it was recomended to me + defernumbers=true +]{biblatex} % For bibtex references +\addbibresource{ref/references.bib} +% \bibliography{res/reference} % Set the location of the references + +\usepackage[nospace,%INIT_BABLE_LANGUAGE]{varioref} % for \vref +\usepackage[%INIT_BABLE_LANGUAGE, noabbrev, nameinlink]{cleveref} +\usepackage[pdflang=%INIT_DATE_TIME_LANGUAGE]{hyperref} +\hypersetup{ + colorlinks, + linkcolor={black}, + citecolor={black}, + urlcolor={blue!80!black} +} + +\ifdraft{ + \usepackage{showlabels} +} { + \message {Draft packages not loaded, showlabels not loaded.} +} diff --git a/common/latex/preamble/core/visuals.tex b/common/latex/preamble/core/visuals.tex new file mode 100644 index 0000000..96a2fd2 --- /dev/null +++ b/common/latex/preamble/core/visuals.tex @@ -0,0 +1,10 @@ +\usepackage[disable=ifdraft]{microtype} % makes text better to read +\usepackage{emptypage} % no page numbers and headings on empty pages + +\usepackage{blindtext} % blindtext + + +% horizontal rule +\NewDocumentCommand{\hr}{}{ + \par\noindent\rule[0.5ex]{\linewidth}{0.5pt} +} diff --git a/common/latex/preamble/mod.tex b/common/latex/preamble/mod.tex new file mode 100644 index 0000000..f11ff21 --- /dev/null +++ b/common/latex/preamble/mod.tex @@ -0,0 +1,3 @@ +\input{headers/preamble/academia/mod.tex} +\input{headers/preamble/beamer/mod.tex} +\input{headers/preamble/core/mod.tex} diff --git a/templates/latex/academia/headers/preamble.tex b/templates/latex/academia/headers/preamble.tex index d87943d..110e3a0 100644 --- a/templates/latex/academia/headers/preamble.tex +++ b/templates/latex/academia/headers/preamble.tex @@ -1,290 +1,2 @@ -% This preamble assumes pdflatex -% derived from: -% https://github.com/gillescastel/lecture-notes/blob/929672a96abc27eaeb6fa58b1d277b3582d28532/group-theory/preamble.tex -% encodings -\usepackage[utf8]{inputenc} % use utf8 encoding -\usepackage[T1]{fontenc} % for 8bit font support -\usepackage{lmodern} % latin modern fonts, should be better than ae, aecompl -% \usepackage{ae,aecompl} % full T1 font support -% \usepackage{textcomp} % support for yen and so on, not needed since latex2e(2020) - -% references -\usepackage[%INIT_BABLE_LANGUAGE]{babel} % For English language support, with reformed orthography! -\usepackage{csquotes} % required by biblatex -% \usepackage{biber} % required by biblatex - -% \usepackage{biblatex-dw} -\usepackage[backend=biber, - style=footnote-dw, - % - pageref=true, - annotation=true, - library=true, - % - % style=numeric, - autocite=superscript, - % FIXME: Keep this here? <2024-03-20> - doi=true, - isbn=true, - loccittracker=true, - opcittracker=true - ]{biblatex} % For bibtex references -\addbibresource{resources/reference.bib} -% \renewcommand{\autocite}[1]{\footcite{#1}\supercite{#1}} -% \bibliography{res/reference} % Set the location of the references - -% dates, time -\usepackage[%INIT_DATE_TIME_LANGUAGE, showdow]{datetime2} % make handling dates easier - -% index -% \usepackage{index} % Helps to create an index TODO compare with other such packages -% \makeindex - -% math -\usepackage{amsmath} % extensive math commands -\usepackage{amsfonts} % more fonts for math (fracture, boldfaced and so on) -\usepackage{mathtools} % extension to amsmath, with more sensible defaults (eq numbers only when referenced) -\usepackage{amssymb} % more symbols, mostly redundant because already loaded by something else -\usepackage{mathrsfs} % support for the RSFS fonts (through \mathscr command) -\usepackage{cancel} % allows to cancel a part in math mode, for example to shorten a term -\usepackage{bm} % bold mode in math, but better than \boldsymbol command from ams. \bm -\usepackage[locale = %INIT_SIUNITX_LANGUAGE]{siunitx} % For easy unit representation -\sisetup{per-mode = fraction} -\usepackage[version=4]{mhchem} % for \ce command - - - -% graphics and floats -\usepackage{float} % makes dealing with floats easier -\usepackage{graphicx} % allows for easy inclusion of graphics -\usepackage[shortlabels]{enumitem} % makes enumerate, itemize and description better -\usepackage{wrapfig} % Wraps text around figures with the \wrapfigure environment -\usepackage[dvipsnames]{xcolor} % colors and color mixing \color{red!30!green!40!blue} -\usepackage{pgfplots} % plots, 2D and 3D -\pgfplotsset{compat=1.18} % use version 1.13 -\usepackage{tikz} % Nice drawn graphics, for library see: https://tex.stackexchange.com/a/42664 -% \usetikzlibrary{intersections, angles, quotes, calc, positioning} -% \usetikzlibrary{arrows.meta} %TODO maybe deprecated? -% \usepackage{tikz-cd} % better commutative diagrams -% \usepackage{subcaption} % like caption package, but for subfigures -% \usepackage{booktabs} % better tables - - -% visuals -\usepackage{fancyhdr} % Text layout and margins, headers so on -\usepackage{microtype} % makes text better to read -\usepackage{multicol} % allows for multi-columns everywhere, with the "multicols" environment -\usepackage{emptypage} % no page numbers and headings on empty pages -% \usepackage[a4paper, left=2cm, right=2cm, top=2cm, bottom=2cm]{geometry} % For nice margins -% \usepackage{xspace} % Adds a space when it thinks it is necessary -\usepackage{blindtext} % blindtext - -% tikz style config -\tikzset{help_lines/.style={step=.5cm,gray!50,very thin}} - -% notes -% \usepackage{todonotes} - -% links -% \usepackage[hidelinks]{hyperref} % Links in the pdf -\usepackage[nospace]{varioref} -\usepackage[pdflang=%INIT_DATE_TIME_LANGUAGE]{hyperref} -% \hypersetup{ -% colorlinks, -% linkcolor={black}, -% citecolor={black}, -% urlcolor={blue!80!black} -% } - - -% \usepackage{stmaryrd} % for \lightning -% \newcommand\contra{\scalebox{1.1}{$\lightning$}} - -% number sets -\newcommand\N{\ensuremath{\mathbb{N}}} -\newcommand\R{\ensuremath{\mathbb{R}}} -\newcommand\Z{\ensuremath{\mathbb{Z}}} -\newcommand\Q{\ensuremath{\mathbb{Q}}} -\newcommand\C{\ensuremath{\mathbb{C}}} -\renewcommand\O{\ensuremath{\emptyset}} % replaces the Ø - -% readable limits -\let\svlim\lim{} -\renewcommand\lim{\svlim\limits} - -% aliases -\let\implies\Rightarrow{} -\let\impliedby\Leftarrow{} -\let\iff\Leftrightarrow{} - -\renewcommand\epsilon{\varepsilon} % I like the textual epsilon more -% \renewcommand\phi{\varphi} - -% horizontal rule -\newcommand\hr{ - \par\noindent\rule[0.5ex]{\linewidth}{0.5pt} - } - -% copyright: -\makeatletter -\DeclareRobustCommand\authors[1]{\gdef\@authors{#1}} -\DeclareRobustCommand\years[1]{\gdef\@years{#1}} -\makeatother - -% theorems -% packages: -\usepackage[framemethod=TikZ]{mdframed} -\mdfsetup{skipabove=1em,skipbelow=0em, innertopmargin=5pt, innerbottommargin=6pt} -\usepackage{amsthm} % math commands for theorems -\usepackage{thmtools} % improved theorems -\usepackage{environ} % for hiding of the solution env - -% styles: -% \renewcommand\qedsymbol{\ensuremath{\text{\textit{O.}}~\epsilon.~\delta.}} -\renewcommand\qedsymbol{\dots} -\theoremstyle{definition} -\declaretheoremstyle[ - headfont=\bfseries\sffamily\color{NavyBlue!80}, - bodyfont=\normalfont, - headpunct={:\\}, - qed=\qedsymbol, - mdframed={ - linewidth=2pt, - rightline=false, topline=false, bottomline=false, - linecolor=NavyBlue, backgroundcolor=NavyBlue!5, - }, - ]{thmexample} -\declaretheoremstyle[ - headfont=\bfseries\sffamily\color{RawSienna!80}, - bodyfont=\normalfont, - headpunct={:\\}, - qed=\qedsymbol, - mdframed={ - linewidth=2pt, - rightline=false, topline=false, bottomline=false, - linecolor=RawSienna, backgroundcolor=RawSienna!5, - }, - ]{thmexercise} -\declaretheoremstyle[ - headfont=\bfseries\sffamily\color{Violet!80}, - bodyfont=\normalfont, - headpunct={:\\}, - notebraces={f\"ur }{}, - qed=\qedsymbol, - mdframed={ - linewidth=2pt, - rightline=false, topline=false, bottomline=false, - linecolor=Violet, backgroundcolor=Violet!5, - }, - ]{thmsolution} -\declaretheoremstyle[ - headfont=\bfseries\sffamily\color{ForestGreen!80}, - bodyfont=\normalfont, - headpunct={:\\}, - qed=\qedsymbol, - mdframed={ - linewidth=2pt, - rightline=false, topline=false, bottomline=false, - linecolor=ForestGreen, backgroundcolor=ForestGreen!5, - }, - ]{thmdef} -\declaretheoremstyle[ - headfont=\bfseries\sffamily\color{RawSienna!70!black}, - bodyfont=\normalfont, - headpunct={:\\}, - qed=\qedsymbol, - mdframed={ - linewidth=2pt, - leftline=false, rightline=true, topline=false, bottomline=false, - linecolor=RawSienna, backgroundcolor=Red!5, - } - ]{thmtheorem} - -\declaretheorem[numbered=yes, style=thmdef, name=Definition]{definition} -\declaretheorem[numbered=no, style=thmexample,name=Beispiel]{eg} -\declaretheorem[numbered=no, style=thmexercise, name=Aufgabe]{ex} -\declaretheorem[numbered=yes, style=thmtheorem, name=Satz]{theorem} -% \declaretheorem[style=thmredbox, name=Proposition]{prop} -% \declaretheorem[style=thmredbox, name=Lemma]{lemma} -% \declaretheorem[style=thmredbox, numbered=no, name=Corollary]{corollary} - -% Solutions -\makeatletter -\@ifclasswith{report}{nosolutions} - {% - \NewEnviron{solution}[1][]{Eine L\"osung mit dem Name ("L\"osung für #1") wurde versteckt.\ \\ \par} - \newcommand\hdsolution[1]{L\"osung versteckt} - }{% - \declaretheorem[numbered=no, style=thmsolution, name=L\"osung]{replacementSolution} - - \NewEnviron{solution}[1][]{ - \vspace{-1em} - \begin{replacementSolution}[#1] - \ - \BODY - \end{replacementSolution} - } - \newcommand\hdsolution[1]{#1} - } -\makeatother - -\DTMnewdatestyle{margindate}{ - \renewcommand*\DTMdisplaydate[4]{ - \MakeLowercase{\DTMshortweekdayname{##4}}\space - \number##3\relax\space - \MakeLowercase{\DTMshortmonthname{##2}}\space - \DTMtwodigits{\DTMtwodigits{##1}} - } - \renewcommand*\DTMDisplaydate[4]{ - \DTMshortweekdayname{##4}\space - ##3\space - \DTMshortmonthname{##2}\space - \DTMtwodigits{\DTMtwodigits{##1}} - } - } - -\newcommand*\margindate[1]{ - \DTMsetdatestyle{margindate} - \marginpar{ - \small\textsf{\mbox{\DTMDate{#1}}} - }\relax - } - -\def\@lesson{}% -\newcommand{\lesson}[3]{ - \if\relax\detokenize{#3}\relax - \def\@lesson{Unterricht: #1}% - \else - % \def\@lesson{Unterricht #1: #3}% - \def\@lesson{#1: #3}% - \fi - \subsection*{\@lesson} - \margindate{#2} - } - -% \pagestyle{fancy} -% \fancyhf{} -% \fancyhead[LE, RO]{} -% \fancyhead[RO, LE]{\@lesson} -% \fancyhead[RE, LO]{} -% \fancyfoot[LE, RO]{\thepage} -% \fancyfoot[C]{\leftmark} - - -% Parameters -% \renewcommand{\sfdefault}{ptm} -% \pagenumbering{arabic} -% \setcounter{page}{2} -% \renewcommand{\thesection}{\Roman{section}} -% \renewcommand{\thesubsection}{\thesection.\Roman{subsection}} -% - -%% Footers and Headers -%\pagestyle{fancy} -%\fancyhf{} -%\renewcommand{\headrulewidth}{2pt} -%\renewcommand{\footrulewidth}{1pt} -%\renewcommand{\baselinestretch}{1.5} -%\fancyhead[L]{{\textbf{\titleset}}} -%\fancyhead[R]{\textbf{\course}} -%\fancyfoot[L]{\thepage} +\input{headers/preamble/mod.tex} +\input{headers/preamble/preamble_local.tex} diff --git a/templates/latex/academia/headers/preamble/academia b/templates/latex/academia/headers/preamble/academia new file mode 120000 index 0000000..0bbd48e --- /dev/null +++ b/templates/latex/academia/headers/preamble/academia @@ -0,0 +1 @@ +../../../../../common/latex/preamble/academia \ No newline at end of file diff --git a/templates/latex/academia/headers/preamble/core b/templates/latex/academia/headers/preamble/core new file mode 120000 index 0000000..f7f9f73 --- /dev/null +++ b/templates/latex/academia/headers/preamble/core @@ -0,0 +1 @@ +../../../../../common/latex/preamble/core \ No newline at end of file diff --git a/templates/latex/academia/headers/preamble/mod.tex b/templates/latex/academia/headers/preamble/mod.tex new file mode 100644 index 0000000..91ae2d7 --- /dev/null +++ b/templates/latex/academia/headers/preamble/mod.tex @@ -0,0 +1,2 @@ +\input{headers/preamble/academia/mod.tex} +\input{headers/preamble/core/mod.tex} -- cgit 1.4.1