% ▄▄█▀▀▀█▄█ % ▄██▀ ▀█ % ██▀ ▀ ▄██▀██▄▀███▄███ ▄▄█▀██ % ██ ██▀ ▀██ ██▀ ▀▀ ▄█▀ ██ % ██▄ ██ ██ ██ ██▀▀▀▀▀▀ % ▀██▄ ▄▀██▄ ▄██ ██ ██▄ ▄ % ▀▀█████▀ ▀█████▀▄████▄ ▀█████▀ % This file contains all necessary dependencies for the document to compile (at all) and some core macros % Imports % \typeout{[Core] Importing!} \usepackage[table, dvipsnames]{xcolor} \usepackage{amsmath} \usepackage{graphicx} \usepackage{subcaption} \usepackage[export]{adjustbox} \usepackage[most]{tcolorbox} \usepackage{cancel} \usepackage{dsfont} \usepackage{amssymb} \usepackage{mathrsfs} \usepackage{lipsum} \usepackage{ulem} \usepackage{soul} \usepackage{parskip} \usepackage{fancyhdr} \usepackage{lastpage} \usepackage{tocloft} \usepackage{wasysym} \usepackage{wrapfig} \usepackage{multicol} \usepackage{ifthen} \usepackage[hidelinks]{hyperref} \usepackage{enumitem} % Language Switching. Currently only English and German are supported % See docs for how to use \newcounter{lang} \newcommand{\setLang}[1]{ \edef\lang{#1} \edef\en{en} \edef\de{de} \ifx\lang\en \typeout{[Lang Switcher] Loading English} \setcounter{lang}{1} \else \ifx\lang\de \typeout{[Lang Switcher] Loading German} \setcounter{lang}{2} \input{\dir/main/lang/de} \else \typeout{[Lang Switcher] No such language!} \fi \fi } \newcommand{\loadLang}{ \ifnum\value{lang}<2{ \typeout{[Lang Loader] Loaded English} }\else { \typeout{[Lang Loader] Loaded German} \setcounter{lang}{2} } \fi } % Create config counters / variables. See the config file for changing them \newcounter{numberingConfig} \newcounter{numberSubsections} \newcounter{descriptorShadeStrength} \newcounter{shadeStrength} % Set up the latex document, configure author, title (as first argument), as well as headers and footers \newcommand{\setup}[1]{ \typeout{[Setup] Setting up...} \loadLang \usepackage[a4paper,textwidth=17.5cm,textheight=25cm,includehead]{geometry} \title{\Huge \textbf{#1}} \author{\authorTitle} \makeatletter \makeatother \fancyhead{} \fancyhead[L]{#1} \fancyhead[R]{\authorHeaders} \fancyfoot{} \fancyfoot[L]{\today} \fancyfoot[R]{\thepage\ /\ \pageref{LastPage}} \fancypagestyle{plain}{% \fancyhead{} \fancyhead[L]{#1} \fancyhead[R]{\authorHeaders} \fancyfoot{} \fancyfoot[L]{\today} \fancyfoot[R]{\thepage\ /\ \pageref{LastPage}} } } % Start document command (required) \newcommand{\startDocument}{ \maketitle \pagestyle{fancy} \thispagestyle{fancy} } % Set up the latex document, only configuring the author, title and page size \newcommand{\setupBarebones}[1]{ \loadLang \usepackage[a4paper,textwidth=17.5cm,textheight=25cm,includehead]{geometry} \title{\Huge \textbf{#1}} \author{\authorTitle} } % Set up the latex document for exam summaries (Extra wide body, small margins, no header) \newcommand{\setupCheatSheet}[1]{ \loadLang \usepackage[a4paper,textwidth=20cm,textheight=28cm,includehead]{geometry} \title{#1} \author{\authorTitle} } % translate the document between two languages \newcommand{\translate}[2]{\ifnum\value{lang}<2{#1}\else{#2}\fi}