\NeedsTeXFormat{LaTeX2e} \ProvidesPackage{mkessler-math}[2021/03/31 - Math package] %%%%%%Provides the basic math packages used for my lecture-note write-ups %The language to pass to babel \newif\ifenglish\englishtrue \DeclareOption{german}{\englishfalse} \DeclareOption{english}{\englishtrue} %If beamer shall be activated \newif\ifbeamer\beamerfalse \DeclareOption{beamer}{\beamertrue} \DeclareOption{nobeamer}{\beamerfalse} \DeclareOption*{\PackageWarning{mkessler-math}{Unknown '\CurrentOption'}} \ProcessOptions\relax \RequirePackage{newunicodechar} \newunicodechar{α}{\ensuremath\alpha} \newunicodechar{β}{\ensuremath\beta} \newunicodechar{γ}{\ensuremath\gamma} \newunicodechar{δ}{\ensuremath\delta} \newunicodechar{ε}{\ensuremath\epsilon} \newunicodechar{ζ}{\ensuremath\zeta} \newunicodechar{η}{\ensuremath\eta} \newunicodechar{θ}{\ensuremath\theta} \newunicodechar{ι}{\ensuremath\iota} \newunicodechar{κ}{\ensuremath\kappa} \newunicodechar{λ}{\ensuremath\lambda} \newunicodechar{μ}{\ensuremath\mu} \newunicodechar{ν}{\ensuremath\nu} \newunicodechar{ξ}{\ensuremath\xi} \newunicodechar{π}{\ensuremath\pi} \newunicodechar{ρ}{\ensuremath\rho} \newunicodechar{σ}{\ensuremath\sigma} \newunicodechar{τ}{\ensuremath\tau} \newunicodechar{υ}{\ensuremath\upsilon} \newunicodechar{φ}{\ensuremath\phi} \newunicodechar{χ}{\ensuremath\chi} \newunicodechar{ψ}{\ensuremath\psi} \newunicodechar{ω}{\ensuremath\omega} \RequirePackage{etoolbox} \RequirePackage{amsmath} \RequirePackage{mathtools} \RequirePackage{amsthm} \RequirePackage{amssymb} \RequirePackage{latexsym} \RequirePackage{mathrsfs} \ifbeamer\else \RequirePackage[shortlabels]{enumitem} \fi \RequirePackage{pgfplots} % Plots \pgfplotsset{compat=1.7} \RequirePackage{tikz} % Plots / drawings \usetikzlibrary{calc, intersections, through, quotes, angles, babel, positioning, snakes} \RequirePackage{tikz-cd} %Commutative diagrams %%for small diagrams, similar to tikz-cd \usepackage{xy} % for small diagrams, e.g. arrows \xyoption{all} %%Theorems needed in any case (fancy or not fancy theorems) % Für Formeln \RequirePackage{mathabx} \RequirePackage{faktor} \RequirePackage[mathscr]{eucal} \RequirePackage{blindtext} \RequirePackage{tabto} \RequirePackage{lastpage} %\pageref{LastPage} for reference on the last page % Für Tabulatoren \RequirePackage{pdfpages} % PDF-Dateien einbinden % Für Zeilenumbruch \RequirePackage{microtype} \RequirePackage{changepage} \RequirePackage{esint} \RequirePackage{IEEEtrantools} \RequirePackage[ngerman,ruled,vlined]{algorithm2e} %%% Custom commands %%Load additional operators \RequirePackage{mkessler-operators} %Short commands for \mathbb{} \newcommand{\C}{\ensuremath{\mathbb{C}}} \newcommand{\F}{\ensuremath{\mathbb{F}}} \newcommand{\K}{\ensuremath{\mathbb{K}}} \newcommand{\N}{\ensuremath{\mathbb{N}}} \newcommand{\Q}{\ensuremath{\mathbb{Q}}} \newcommand{\R}{\ensuremath{\mathbb{R}}} \newcommand{\Z}{\ensuremath{\mathbb{Z}}} %Paired Delimiters \DeclarePairedDelimiter\ceil{\lceil}{\rceil} \DeclarePairedDelimiter\floor{\lfloor}{\rfloor} %Norm and absolute value %Make them scaling by default and have \abs*{} as the non-scaling version of the command \DeclarePairedDelimiter\abs{\lvert}{\rvert} \makeatletter \let\oldabs\abs \def\abs{\@ifstar{\oldabs}{\oldabs*}} \DeclarePairedDelimiter\norm{\lVert}{\rVert} \let\oldnorm\norm \def\norm{\@ifstar{\oldnorm}{\oldnorm*}} \makeatother %%%Fixes of common misbehaviour %Proper Degree command \renewcommand{\degree}{^\circ} % Always put limits under \limit \let\oldlim\lim\def\lim{\oldlim\limits} \newcommand{\emphasize}[1]{{\color{red} #1}} %For setting counters of itemns in \enemerate \makeatletter \newcommand\setItemnumber[1]{\setcounter{enum\romannumeral\@enumdepth}{\numexpr#1-1\relax}} \makeatother