summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-05-26 21:33:02 +0000
committerKarl Berry <karl@freefriends.org>2020-05-26 21:33:02 +0000
commit4f70182523140d6686036b7a1b2e7d30495cdb35 (patch)
treeb22396c158cd29eaf9976a02ec4c5500511e86f2 /Master/texmf-dist/tex
parent541682dd2c08c02da8f18457ba250167a2c37ef9 (diff)
utf8add (26may20)
git-svn-id: svn://tug.org/texlive/trunk@55291 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r--Master/texmf-dist/tex/latex/utf8add/utf8add.sty457
-rw-r--r--Master/texmf-dist/tex/latex/utf8add/utf8hax.sty123
2 files changed, 580 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/utf8add/utf8add.sty b/Master/texmf-dist/tex/latex/utf8add/utf8add.sty
new file mode 100644
index 00000000000..90ce4b5675e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/utf8add/utf8add.sty
@@ -0,0 +1,457 @@
+% Copyright 2020 Palle Jorgensen, hamselv@pallej.dk
+%
+% This file is part of utf8add.
+%
+% utf8add is free software: you can redistribute it and/or modify it
+% under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% (at your option) any later version.
+%
+% utf8add is distributed in the hope that it will be useful, but
+% WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+% General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with utf8add. If not, see <https://www.gnu.org/licenses/>.
+\ProvidesPackage{utf8add}[2020/05/26 Palle Jorgensen]
+
+%% Package dependencies
+\RequirePackage[utf8]{inputenc}
+\RequirePackage{upgreek}
+\RequirePackage{amsmath}
+\RequirePackage{xkeyval}
+\RequirePackage{gensymb}
+\RequirePackage{nicefrac}
+
+%% Options
+%% Choosing the uppercase greek style :-/
+\newif\if@uppercasegreek@default@
+\newif\if@uppercasegreek@upright@
+\newif\if@uppercasegreek@italic@
+\@uppercasegreek@default@true
+
+\DeclareOptionX{uppercasegreek}[default]{%
+ \csname @uppercasegreek@#1@true\endcsname}
+
+%% Choosing the lowercase greek style :-/
+\newif\if@lowercasegreek@default@
+\newif\if@lowercasegreek@upright@
+\newif\if@lowercasegreek@italic@
+\@lowercasegreek@default@true
+\DeclareOptionX{lowercasegreek}[default]{%
+ \csname @lowercasegreek@#1@true\endcsname}
+
+%% Choosing the overall greek style :-D
+\DeclareOptionX{greek}[default]{%
+ \csname @uppercasegreek@#1@true\endcsname
+ \csname @lowercasegreek@#1@true\endcsname}
+
+%% Italic lowercase is default
+\if@lowercasegreek@italic@
+\@lowercasegreek@default@true\fi
+
+%%
+\newif\if@math@inferior@
+\@math@inferior@false
+\newif\if@math@superior@
+\@math@superior@false
+\newif\if@math@fractions@
+\@math@fractions@false
+\newif\if@nicefrac@
+\@nicefrac@false
+
+%% Superior and inferieor numbers; fractions: Math or built-in support?
+\DeclareOptionX{mathinferior}{\@math@inferior@true}
+\DeclareOptionX{mathsuperior}{\@math@superior@true}
+\DeclareOptionX{mathfigures}{\s@math@superior@true\@math@inferior@true}
+\DeclareOptionX{mathfractions}{\@math@fractions@true}
+\DeclareOptionX{math}{\@math@superior@true\@math@inferior@true\@math@fractions@true}
+\DeclareOptionX{nicefrac}{\@nicefrac@true}
+
+\ProcessOptionsX
+
+%% Default provisions
+\AtBeginDocument{%
+%% Italic greek/latin characters. Supplementary
+ \providecommand*\omicron{\mathit{o}}
+ \providecommand*\Alpha{\mathit{A}}
+ \providecommand*\Beta{\mathit{B}}
+ \providecommand*\Chi{\mathit{X}}
+ \providecommand*\Epsilon{\mathit{E}}
+ \providecommand*\Eta{\mathit{H}}
+ \providecommand*\Iota{\mathit{I}}
+ \providecommand*\Kappa{\mathit{K}}
+ \providecommand*\Mu{\mathit{M}}
+ \providecommand*\Nu{\mathit{N}}
+ \providecommand*\Omicron{\mathit{O}}
+ \providecommand*\Rho{\mathit{P}}
+ \providecommand*\Tau{\mathit{T}}
+ \providecommand*\Zeta{\mathit{Z}}
+%% Upright greek/latin characters. Supplementary
+ \providecommand*\Upomicron{\mathrm{o}}
+ \providecommand*\Upalpha{\mathrm{A}}
+ \providecommand*\Upbeta{\mathrm{B}}
+ \providecommand*\Upchi{\mathrm{X}}
+ \providecommand*\Upepsilon{\mathrm{E}}
+ \providecommand*\Upeta{\mathrm{H}}
+ \providecommand*\Upiota{\mathrm{I}}
+ \providecommand*\Upkappa{\mathrm{K}}
+ \providecommand*\Upmu{\mathrm{M}}
+ \providecommand*\Upnu{\mathrm{N}}
+ \providecommand*\Upomicron{\mathrm{O}}
+ \providecommand*\Uprho{\mathrm{P}}
+ \providecommand*\Uptau{\mathrm{T}}
+ \providecommand*\Upzeta{\mathrm{Z}}
+}
+
+\if@math@superior@
+\AtBeginDocument{%
+ \def\textonesuperior{\ensuremath{^{1}}}
+ \def\texttwosuperior{\ensuremath{^{2}}}
+ \def\textthreesuperior{\ensuremath{^{3}}}
+ \def\textfoursuperior{\ensuremath{^{4}}}
+ \def\textfivesuperior{\ensuremath{^{5}}}
+ \def\textsixsuperior{\ensuremath{^{6}}}
+ \def\textsevensuperior{\ensuremath{^{7}}}
+ \def\texteightsuperior{\ensuremath{^{8}}}
+ \def\textninesuperior{\ensuremath{^{9}}}
+ \def\textzerosuperior{\ensuremath{^{0}}}
+}
+\else
+\AtBeginDocument{%
+ \providecommand*\textonesuperior{\ensuremath{^{1}}}
+ \providecommand*\texttwosuperior{\ensuremath{^{2}}}
+ \providecommand*\textthreesuperior{\ensuremath{^{3}}}
+ \providecommand*\textfoursuperior{\ensuremath{^{4}}}
+ \providecommand*\textfivesuperior{\ensuremath{^{5}}}
+ \providecommand*\textsixsuperior{\ensuremath{^{6}}}
+ \providecommand*\textsevensuperior{\ensuremath{^{7}}}
+ \providecommand*\texteightsuperior{\ensuremath{^{8}}}
+ \providecommand*\textninesuperior{\ensuremath{^{9}}}
+ \providecommand*\textzerosuperior{\ensuremath{^{0}}}}
+\fi
+
+\if@math@inferior@
+\AtBeginDocument{%
+ \def\textoneinferior{\ensuremath{_{1}}}
+ \def\texttwoinferior{\ensuremath{_{2}}}
+ \def\textthreeinferior{\ensuremath{_{3}}}
+ \def\textfourinferior{\ensuremath{_{4}}}
+ \def\textfiveinferior{\ensuremath{_{5}}}
+ \def\textsixinferior{\ensuremath{_{6}}}
+ \def\textseveninferior{\ensuremath{_{7}}}
+ \def\texteightinferior{\ensuremath{_{8}}}
+ \def\textnineinferior{\ensuremath{_{9}}}
+ \def\textzeroinferior{\ensuremath{_{0}}}
+}
+\else
+\AtBeginDocument{%
+ \providecommand*\textoneinferior{\ensuremath{_{1}}}
+ \providecommand*\texttwoinferior{\ensuremath{_{2}}}
+ \providecommand*\textthreeinferior{\ensuremath{_{3}}}
+ \providecommand*\textfourinferior{\ensuremath{_{4}}}
+ \providecommand*\textfiveinferior{\ensuremath{_{5}}}
+ \providecommand*\textsixinferior{\ensuremath{_{6}}}
+ \providecommand*\textseveninferior{\ensuremath{_{7}}}
+ \providecommand*\texteightinferior{\ensuremath{_{8}}}
+ \providecommand*\textnineinferior{\ensuremath{_{9}}}
+ \providecommand*\textzeroinferior{\ensuremath{_{0}}}
+}
+\fi
+
+\def\@autofrac#1#2{%
+ \@ifstar{\ensuremath{\tfrac{#1}{#2}}}{%
+ \ifmmode
+ \frac{#1}{#2}
+ \else
+ \if@nicefrac@
+ \nicefrac{#1}{#2}
+ \else
+ \ensuremath{\tfrac{#1}{#2}}\fi\fi}}
+
+%% Fractions
+\if@math@fractions@
+\AtBeginDocument{%
+%% Defining the math fractions
+ \def\textonehalf {\@autofrac{1}{2}}
+ \def\textonethird {\@autofrac{1}{3}}
+ \def\texttwothirds {\@autofrac{2}{3}}
+ \def\textzerothirds {\@autofrac{0}{3}}
+ \def\textonequarter {\@autofrac{1}{4}}
+ \def\textthreequarters {\@autofrac{3}{4}}
+ \def\textonefifth {\@autofrac{1}{5}}
+ \def\texttwofifths {\@autofrac{2}{5}}
+ \def\textthreefifths {\@autofrac{3}{5}}
+ \def\textfourfifths {\@autofrac{4}{5}}
+ \def\textonesixth {\@autofrac{1}{6}}
+ \def\textfivesixths {\@autofrac{5}{6}}
+ \def\textoneseventh {\@autofrac{1}{7}}
+ \def\textoneeighth {\@autofrac{1}{8}}
+ \def\textthreeeighths {\@autofrac{3}{8}}
+ \def\textfiveeighths {\@autofrac{5}{8}}
+ \def\textseveneighths {\@autofrac{7}{8}}
+ \def\textonenininth {\@autofrac{1}{9}}
+ \def\textonetenth {\@autofrac{1}{10}}
+ %% Different spellings
+ \let\texttwothird\texttwothirds
+ \let\textthreequarter\textthreequarters
+ \let\texttwofifth\texttwofifths
+ \let\textthreefifth\textthreefifths
+ \let\textfourfifth\textfourfifths
+ \let\textfivesixth\textfivesixths
+ \let\textthreeeighth\textthreeeighths
+ \let\textfiveeighth\textfiveeighths
+ \let\textseveneighth\textseveneighths
+}
+\else
+%% Math commandsfractions as backup
+\AtBeginDocument{%
+ \providecommand*\textonehalf {\@autofrac{1}{2}}
+ \providecommand*\textonethird {\@autofrac{1}{3}}
+ \providecommand*\texttwothirds {\@autofrac{2}{3}}
+ \providecommand*\textzerothirds {\@autofrac{0}{3}}
+ \providecommand*\textonequarter {\@autofrac{1}{4}}
+ \providecommand*\textthreequarters {\@autofrac{3}{4}}
+ \providecommand*\textonefifth {\@autofrac{1}{5}}
+ \providecommand*\texttwofifths {\@autofrac{2}{5}}
+ \providecommand*\textthreefifths {\@autofrac{3}{5}}
+ \providecommand*\textfourfifths {\@autofrac{4}{5}}
+ \providecommand*\textonesixth {\@autofrac{1}{6}}
+ \providecommand*\textfivesixths {\@autofrac{5}{6}}
+ \providecommand*\textoneseventh {\@autofrac{1}{7}}
+ \providecommand*\textoneeighth {\@autofrac{1}{8}}
+ \providecommand*\textthreeeighths {\@autofrac{3}{8}}
+ \providecommand*\textfiveeighths {\@autofrac{5}{8}}
+ \providecommand*\textseveneighths {\@autofrac{7}{8}}
+ \providecommand*\textonenininth {\@autofrac{1}{9}}
+ \providecommand*\textonetenth {\@autofrac{1}{10}}
+ %% Different spellings
+ \providecommand*\texttwothird{\texttwothirds}
+ \providecommand*\textthreequarter{\textthreequarters}
+ \providecommand*\texttwofifth{\texttwofifths}
+ \providecommand*\textthreefifth{\textthreefifths}
+ \providecommand*\textfourfifth{\textfourfifths}
+ \providecommand*\textfivesixth{\textfivesixths}
+ \providecommand*\textthreeeighth{\textthreeeighths}
+ \providecommand*\textfiveeighth{\textfiveeighths}
+ \providecommand*\textseveneighth{\textseveneighths}
+}
+\fi
+
+\DeclareUnicodeCharacter{00BD}{\textonehalf}
+\DeclareUnicodeCharacter{2153}{\textonethird}
+\DeclareUnicodeCharacter{2154}{\texttwothirds}
+\DeclareUnicodeCharacter{00BC}{\textonequarter}
+\DeclareUnicodeCharacter{00BE}{\textthreequarters}
+\DeclareUnicodeCharacter{2155}{\textonefifth}
+\DeclareUnicodeCharacter{2156}{\texttwofifths}
+\DeclareUnicodeCharacter{2157}{\textthreefifths}
+\DeclareUnicodeCharacter{2158}{\textfourfifths}
+\DeclareUnicodeCharacter{2159}{\textonesixth}
+\DeclareUnicodeCharacter{215A}{\textfivesixths}
+\DeclareUnicodeCharacter{2150}{\textoneseventh}
+\DeclareUnicodeCharacter{215B}{\textoneeighth}
+\DeclareUnicodeCharacter{215C}{\textthreeeighths}
+\DeclareUnicodeCharacter{215D}{\textfiveeighths}
+\DeclareUnicodeCharacter{215E}{\textseveneighths}
+\DeclareUnicodeCharacter{2151}{\textonenininth}
+\DeclareUnicodeCharacter{2152}{\textonetenth}
+\DeclareUnicodeCharacter{2189}{\textzerothirds}
+
+%% Lowercase Greek Letters
+\if@lowercasegreek@upright@
+\DeclareUnicodeCharacter{03B1}{\ensuremath{\upalpha}}
+\DeclareUnicodeCharacter{03B2}{\ensuremath{\upbeta}}
+\DeclareUnicodeCharacter{03B3}{\ensuremath{\upgamma}}
+\DeclareUnicodeCharacter{03B4}{\ensuremath{\updelta}}
+\DeclareUnicodeCharacter{03B5}{\ensuremath{\upepsilon}}
+\DeclareUnicodeCharacter{03F5}{\ensuremath{\upvarepsilon}}
+\DeclareUnicodeCharacter{03B6}{\ensuremath{\upzeta}}
+\DeclareUnicodeCharacter{03B7}{\ensuremath{\upeta}}
+\DeclareUnicodeCharacter{03B8}{\ensuremath{\uptheta}}
+\DeclareUnicodeCharacter{03B9}{\ensuremath{\upiota}}
+\DeclareUnicodeCharacter{03BA}{\ensuremath{\upkappa}}
+\DeclareUnicodeCharacter{03BB}{\ensuremath{\uplambda}}
+\DeclareUnicodeCharacter{03BC}{\ensuremath{\upmu}}
+\DeclareUnicodeCharacter{03BD}{\ensuremath{\upnu}}
+\DeclareUnicodeCharacter{03BE}{\ensuremath{\upxi}}
+\DeclareUnicodeCharacter{03BF}{\ensuremath{\upomicron}}
+\DeclareUnicodeCharacter{03C0}{\ensuremath{\uppi}}
+\DeclareUnicodeCharacter{03C1}{\ensuremath{\uprho}}
+\DeclareUnicodeCharacter{03C3}{\ensuremath{\upsigma}}
+\DeclareUnicodeCharacter{03C2}{\ensuremath{\upvarsigma}}
+\DeclareUnicodeCharacter{03C4}{\ensuremath{\uptau}}
+\DeclareUnicodeCharacter{03C5}{\ensuremath{\upupsilon}}
+\DeclareUnicodeCharacter{03C6}{\ensuremath{\upphi}}
+\DeclareUnicodeCharacter{03C7}{\ensuremath{\upchi}}
+\DeclareUnicodeCharacter{03C8}{\ensuremath{\uppsi}}
+\DeclareUnicodeCharacter{03C9}{\ensuremath{\upomega}}
+
+\else\if@lowercasegreek@default@
+
+\DeclareUnicodeCharacter{03B1}{\ensuremath{\alpha}}
+\DeclareUnicodeCharacter{03B2}{\ensuremath{\beta}}
+\DeclareUnicodeCharacter{03B3}{\ensuremath{\gamma}}
+\DeclareUnicodeCharacter{03B4}{\ensuremath{\delta}}
+\DeclareUnicodeCharacter{03B5}{\ensuremath{\varepsilon}}
+\DeclareUnicodeCharacter{03F5}{\ensuremath{\epsilon}}
+\DeclareUnicodeCharacter{03B6}{\ensuremath{\zeta}}
+\DeclareUnicodeCharacter{03B7}{\ensuremath{\eta}}
+\DeclareUnicodeCharacter{03B8}{\ensuremath{\theta}}
+\DeclareUnicodeCharacter{03D1}{\ensuremath{\vartheta}}
+\DeclareUnicodeCharacter{03B9}{\ensuremath{\iota}}
+\DeclareUnicodeCharacter{03BA}{\ensuremath{\kappa}}
+\DeclareUnicodeCharacter{03BB}{\ensuremath{\lambda}}
+\DeclareUnicodeCharacter{03BC}{\ensuremath{\mu}}
+\DeclareUnicodeCharacter{03BD}{\ensuremath{\nu}}
+\DeclareUnicodeCharacter{03BE}{\ensuremath{\xi}}
+\DeclareUnicodeCharacter{03BF}{\ensuremath{\omicron}}
+\DeclareUnicodeCharacter{03C0}{\ensuremath{\pi}}
+\DeclareUnicodeCharacter{03C1}{\ensuremath{\rho}}
+\DeclareUnicodeCharacter{03C2}{\ensuremath{\varsigma}}
+\DeclareUnicodeCharacter{03C3}{\ensuremath{\sigma}}
+\DeclareUnicodeCharacter{03C4}{\ensuremath{\tau}}
+\DeclareUnicodeCharacter{03C5}{\ensuremath{\upsilon}}
+\DeclareUnicodeCharacter{03D5}{\ensuremath{\phi}}
+\DeclareUnicodeCharacter{03C6}{\ensuremath{\varphi}}
+\DeclareUnicodeCharacter{03C7}{\ensuremath{\chi}}
+\DeclareUnicodeCharacter{03C8}{\ensuremath{\psi}}
+\DeclareUnicodeCharacter{03C9}{\ensuremath{\omega}}
+\fi\fi
+
+%% Uppercase Greek Letters
+\if@uppercasegreek@upright@
+\DeclareUnicodeCharacter{0391}{\ensuremath{\Upalpha}}
+\DeclareUnicodeCharacter{0392}{\ensuremath{\Upbeta}}
+\DeclareUnicodeCharacter{0393}{\ensuremath{\Upgamma}}
+\DeclareUnicodeCharacter{0394}{\ensuremath{\Updelta}}
+\DeclareUnicodeCharacter{0395}{\ensuremath{\Upepsilon}}
+\DeclareUnicodeCharacter{0396}{\ensuremath{\Upzeta}}
+\DeclareUnicodeCharacter{0397}{\ensuremath{\Upeta}}
+\DeclareUnicodeCharacter{0398}{\ensuremath{\Uptheta}}
+\DeclareUnicodeCharacter{0399}{\ensuremath{\Upiota}}
+\DeclareUnicodeCharacter{039A}{\ensuremath{\Upkappa}}
+\DeclareUnicodeCharacter{039B}{\ensuremath{\Uplambda}}
+\DeclareUnicodeCharacter{039C}{\ensuremath{\Upmu}}
+\DeclareUnicodeCharacter{039D}{\ensuremath{\Upnu}}
+\DeclareUnicodeCharacter{039E}{\ensuremath{\Upxi}}
+\DeclareUnicodeCharacter{039F}{\ensuremath{\Upomicron}}
+\DeclareUnicodeCharacter{03A0}{\ensuremath{\Uppi}}
+\DeclareUnicodeCharacter{03A1}{\ensuremath{\Uprho}}
+\DeclareUnicodeCharacter{03A3}{\ensuremath{\Upsigma}}
+\DeclareUnicodeCharacter{03A4}{\ensuremath{\Uptau}}
+\DeclareUnicodeCharacter{03A5}{\ensuremath{\Upupsilon}}
+\DeclareUnicodeCharacter{03A6}{\ensuremath{\Upphi}}
+\DeclareUnicodeCharacter{03A7}{\ensuremath{\Upchi}}
+\DeclareUnicodeCharacter{03A8}{\ensuremath{\Uppsi}}
+\DeclareUnicodeCharacter{03A9}{\ensuremath{\Upomega}}
+
+\else\if@uppercasegreek@italic@
+
+\DeclareUnicodeCharacter{0391}{\ensuremath{\varAlpha}}
+\DeclareUnicodeCharacter{0392}{\ensuremath{\varBeta}}
+\DeclareUnicodeCharacter{0393}{\ensuremath{\varGamma}}
+\DeclareUnicodeCharacter{0394}{\ensuremath{\varDelta}}
+\DeclareUnicodeCharacter{0395}{\ensuremath{\varEpsilon}}
+\DeclareUnicodeCharacter{0396}{\ensuremath{\varZeta}}
+\DeclareUnicodeCharacter{0397}{\ensuremath{\varEta}}
+\DeclareUnicodeCharacter{0398}{\ensuremath{\varTheta}}
+\DeclareUnicodeCharacter{0399}{\ensuremath{\varIota}}
+\DeclareUnicodeCharacter{039A}{\ensuremath{\varKappa}}
+\DeclareUnicodeCharacter{039B}{\ensuremath{\varLambda}}
+\DeclareUnicodeCharacter{039C}{\ensuremath{\varMu}}
+\DeclareUnicodeCharacter{039D}{\ensuremath{\varNu}}
+\DeclareUnicodeCharacter{039E}{\ensuremath{\varXi}}
+\DeclareUnicodeCharacter{039F}{\ensuremath{\varOmicron}}
+\DeclareUnicodeCharacter{03A0}{\ensuremath{\varPi}}
+\DeclareUnicodeCharacter{03A1}{\ensuremath{\varRho}}
+\DeclareUnicodeCharacter{03A3}{\ensuremath{\varSigma}}
+\DeclareUnicodeCharacter{03A4}{\ensuremath{\varTau}}
+\DeclareUnicodeCharacter{03A5}{\ensuremath{\varUpsilon}}
+\DeclareUnicodeCharacter{03A6}{\ensuremath{\varPhi}}
+\DeclareUnicodeCharacter{03A7}{\ensuremath{\varChi}}
+\DeclareUnicodeCharacter{03A8}{\ensuremath{\varPsi}}
+\DeclareUnicodeCharacter{03A9}{\ensuremath{\varOmega}}
+
+\else\if@uppercasegreek@default@
+\DeclareUnicodeCharacter{0391}{\ensuremath{\Alpha}}
+\DeclareUnicodeCharacter{0392}{\ensuremath{\Beta}}
+\DeclareUnicodeCharacter{0393}{\ensuremath{\Gamma}}
+\DeclareUnicodeCharacter{0394}{\ensuremath{\Delta}}
+\DeclareUnicodeCharacter{0395}{\ensuremath{\Epsilon}}
+\DeclareUnicodeCharacter{0396}{\ensuremath{\Zeta}}
+\DeclareUnicodeCharacter{0397}{\ensuremath{\Eta}}
+\DeclareUnicodeCharacter{0398}{\ensuremath{\Theta}}
+\DeclareUnicodeCharacter{0399}{\ensuremath{\Iota}}
+\DeclareUnicodeCharacter{039A}{\ensuremath{\Kappa}}
+\DeclareUnicodeCharacter{039B}{\ensuremath{\Lambda}}
+\DeclareUnicodeCharacter{039C}{\ensuremath{\Mu}}
+\DeclareUnicodeCharacter{039D}{\ensuremath{\Nu}}
+\DeclareUnicodeCharacter{039E}{\ensuremath{\Xi}}
+\DeclareUnicodeCharacter{039F}{\ensuremath{\Omicron}}
+\DeclareUnicodeCharacter{03A0}{\ensuremath{\Pi}}
+\DeclareUnicodeCharacter{03A1}{\ensuremath{\Rho}}
+\DeclareUnicodeCharacter{03A3}{\ensuremath{\Sigma}}
+\DeclareUnicodeCharacter{03A4}{\ensuremath{\Tau}}
+\DeclareUnicodeCharacter{03A5}{\ensuremath{\Upsilon}}
+\DeclareUnicodeCharacter{03A6}{\ensuremath{\Phi}}
+\DeclareUnicodeCharacter{03A7}{\ensuremath{\Chi}}
+\DeclareUnicodeCharacter{03A8}{\ensuremath{\Psi}}
+\DeclareUnicodeCharacter{03A9}{\ensuremath{\Omega}}
+\fi\fi\fi
+
+%% Superior numbers 4-0
+\DeclareUnicodeCharacter{2074}{\textfoursuperior}
+\DeclareUnicodeCharacter{2075}{\textfivesuperior}
+\DeclareUnicodeCharacter{2076}{\textsixsuperior}
+\DeclareUnicodeCharacter{2077}{\textsevensuperior}
+\DeclareUnicodeCharacter{2078}{\texteightsuperior}
+\DeclareUnicodeCharacter{2079}{\textninesuperior}
+\DeclareUnicodeCharacter{2070}{\textzerosuperior}
+%% Inferieor numbers 0-9
+\DeclareUnicodeCharacter{2080}{\textzeroinferior}
+\DeclareUnicodeCharacter{2081}{\textoneinferior}
+\DeclareUnicodeCharacter{2082}{\texttwoinferior}
+\DeclareUnicodeCharacter{2083}{\textthreeinferior}
+\DeclareUnicodeCharacter{2084}{\textfourinferior}
+\DeclareUnicodeCharacter{2085}{\textfiveinferior}
+\DeclareUnicodeCharacter{2086}{\textsixinferior}
+\DeclareUnicodeCharacter{2087}{\textseveninferior}
+\DeclareUnicodeCharacter{2088}{\texteightinferior}
+\DeclareUnicodeCharacter{2089}{\textnineinferior}
+%% Miscelaneous symbols
+%% Redefining various symbols to work in math mode
+\DeclareUnicodeCharacter{00B7}{\ifmmode\cdot\else\textperiodcentered\fi}
+\DeclareUnicodeCharacter{00D7}{\ifmmode\times\else\texttimes\fi}
+\DeclareUnicodeCharacter{00F7}{\ifmmode\div\else\textdiv\fi}
+\DeclareUnicodeCharacter{2190}{\ifmmode\leftarrow\else\textleftarrow\fi}
+\DeclareUnicodeCharacter{2191}{\ifmmode\uparrow\else\textuparrow\fi}
+\DeclareUnicodeCharacter{2192}{\ifmmode\rightarrow\else\textrightarrow\fi}
+\DeclareUnicodeCharacter{2193}{\ifmmode\downarrow\else\textdownarrow\fi}
+\DeclareUnicodeCharacter{2329}{\ifmmode\langle\else\textlangle\fi}
+\DeclareUnicodeCharacter{232A}{\ifmmode\rangle\else\textrangle\fi}
+\DeclareUnicodeCharacter{27E8}{\ifmmode\langle\else\textlangle\fi}
+\DeclareUnicodeCharacter{27E9}{\ifmmode\rangle\else\textrangle\fi}
+\DeclareUnicodeCharacter{2026}{\ifmmode\ldots\else\textellipsis\fi}
+\DeclareUnicodeCharacter{00AC}{\ifmmode\lnot\else\textlnot\fi}
+\DeclareUnicodeCharacter{00B1}{\ifmmode\pm\else\textpm\fi}
+\DeclareUnicodeCharacter{00B0}{\ifmmode\degree\fi}
+\DeclareUnicodeCharacter{2022}{\ifmmode\bullet\else\textbullet\fi}
+\DeclareUnicodeCharacter{2020}{\ifmmode\dagger\else\textdagger\fi}
+\DeclareUnicodeCharacter{2021}{\ifmmode\ddagger\else\textdaggerdbl\fi}
+\DeclareUnicodeCharacter{25E6}{\ifmmode\circ\else\textopenbullet\fi}
+\DeclareUnicodeCharacter{25EF}{\ifmmode\bigcirc\else\textbigcircle\fi}
+\DeclareUnicodeCharacter{2126}{\ohm}
+\DeclareUnicodeCharacter{2103}{\celsius}
+\DeclareUnicodeCharacter{2030}{\perthousand}
+\DeclareUnicodeCharacter{2016}{\ifmmode\Vert\else\textbardbl\fi}
+
+%% Other miscelaneous symbols
+\DeclareUnicodeCharacter{207A}{\ensuremath{^{+}}}
+\DeclareUnicodeCharacter{207B}{\ensuremath{^{-}}}
+\DeclareUnicodeCharacter{2213}{\ensuremath{\mp}}
+\DeclareUnicodeCharacter{2212}{\ifmmode-\else--\fi}
+\DeclareUnicodeCharacter{0127}{\ensuremath{\hbar}}
+
+\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/utf8add/utf8hax.sty b/Master/texmf-dist/tex/latex/utf8add/utf8hax.sty
new file mode 100644
index 00000000000..ab82c7295f7
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/utf8add/utf8hax.sty
@@ -0,0 +1,123 @@
+% Copyright 2020 Palle Jorgensen, hamselv@pallej.dk
+%
+% This file is part of utf8add.
+%
+% utf8add is free software: you can redistribute it and/or modify it
+% under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% (at your option) any later version.
+%
+% utf8add is distributed in the hope that it will be useful, but
+% WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+% General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with utf8add. If not, see <https://www.gnu.org/licenses/>.
+\ProvidesPackage{utf8hax}[2020/05/26 Palle Jorgensen]
+
+%% Package dependencies
+\RequirePackage{xkeyval}
+\RequirePackage[utf8]{inputenc}
+
+%% Options
+\DeclareOptionX{autochar}{\DeclareUnicodeCharacter{#1}{\@automath@}}
+\DeclareOptionX{mathchar}{\DeclareUnicodeCharacter{#1}{\ensuremath}}
+%% Short cuts
+%% Mathchar
+\DeclareOptionX{currmath}{%
+ \DeclareUnicodeCharacter{00A4}{\ensuremath}} %% Generic currency symbol
+\DeclareOptionX{yenmath}{%
+ \DeclareUnicodeCharacter{00A5}{\ensuremath}} %% Generic currency symbol
+\DeclareOptionX{sterlingmath}{%
+ \DeclareUnicodeCharacter{00A3}{\ensuremath}} %% Generic currency symbol
+%% Auto char
+\DeclareOptionX{copyauto}{%
+ \DeclareUnicodeCharacter{00A9}{\@automath@}} %% Copyright symbol
+\DeclareOptionX{regauto}{%
+ \DeclareUnicodeCharacter{00AE}{\@automath@}} %% Registeret symbol
+%% Defining some defaults. The author's favourite
+\DeclareOptionX{default}{%
+ \DeclareUnicodeCharacter{00A4}{\ensuremath} %% Generic currency symbol
+ \DeclareUnicodeCharacter{00A9}{\@automath@} %% Copyright symbol
+}
+\ProcessOptionsX
+
+%% Providing the undefined greek characters
+\AtBeginDocument{%
+ \providecommand*\omicron{\mathit{o}}
+ \providecommand*\Alpha{\mathit{A}}
+ \providecommand*\Beta{\mathit{B}}
+ \providecommand*\Chi{\mathit{X}}
+ \providecommand*\Epsilon{\mathit{E}}
+ \providecommand*\Eta{\mathit{H}}
+ \providecommand*\Iota{\mathit{I}}
+ \providecommand*\Kappa{\mathit{K}}
+ \providecommand*\Mu{\mathit{M}}
+ \providecommand*\Nu{\mathit{N}}
+ \providecommand*\Omicron{\mathit{O}}
+ \providecommand*\Rho{\mathit{P}}
+ \providecommand*\Tau{\mathit{T}}
+ \providecommand*\Zeta{\mathit{Z}}}
+
+\def\newautomath#1#2{\@namedef{@automath@#1}{\ensuremath{#2}}}
+
+%% Math automation
+\protected\def\@automath@#1{\csname @automath@#1\endcsname}
+\def\@automath@a{\ensuremath{\alpha}}
+\def\@automath@b{\ensuremath{\beta}}
+\def\@automath@c{\ensuremath{\chi}}
+\def\@automath@d{\ensuremath{\delta}}
+\def\@automath@e{\@ifstar{\ensuremath{\varepsilon}}{\ensuremath{\epsilon}}}
+\def\@automath@f{\@ifstar{\ensuremath{\varphi}}{\ensuremath{\phi}}}
+\def\@automath@g{\ensuremath{\gamma}}
+\def\@automath@h{\ensuremath{\eta}}
+\def\@automath@i{\ensuremath{\iota}}
+\def\@automath@k{\ensuremath{\kappa}}
+\def\@automath@l{\ensuremath{\lambda}}
+\def\@automath@m{\ensuremath{\mu}}
+\def\@automath@n{\ensuremath{\nu}}
+\def\@automath@o{\ensuremath{\omicron}}
+\def\@automath@w{\ensuremath{\omega}}
+\def\@automath@p{\@ifstar{\ensuremath{\varpi}}{\ensuremath{\pi}}}
+\def\@automath@r{\@ifstar{\ensuremath{\varrho}}{\ensuremath{\rho}}}
+\def\@automath@s{\@ifstar{\ensuremath{\varsigma}}{\ensuremath{\sigma}}}
+\def\@automath@v{\ensuremath{\psi}}
+\def\@automath@t{\ensuremath{\tau}}
+\def\@automath@q{\@ifstar{\ensuremath{\vartheta}}{\ensuremath{\theta}}}
+\def\@automath@u{\ensuremath{\upsilon}}
+\def\@automath@y{\ensuremath{\upsilon}}
+\def\@automath@x{\ensuremath{\xi}}
+\def\@automath@z{\ensuremath{\zeta}}
+
+\def\@automath@A{\ensuremath{\Alpha}}
+\def\@automath@B{\ensuremath{\Beta}}
+\def\@automath@C{\ensuremath{\Chi}}
+\def\@automath@D{\ensuremath{\Delta}}
+\def\@automath@E{\ensuremath{\Epsilon}}
+\def\@automath@F{\ensuremath{\Phi}}
+\def\@automath@G{\ensuremath{\Gamma}}
+\def\@automath@H{\ensuremath{\Eta}}
+\def\@automath@I{\ensuremath{\Iota}}
+\def\@automath@K{\ensuremath{\Kappa}}
+\def\@automath@L{\ensuremath{\Lambda}}
+\def\@automath@M{\ensuremath{\Mu}}
+\def\@automath@N{\ensuremath{\Nu}}
+\def\@automath@O{\ensuremath{\Omicron}}
+\def\@automath@W{\ensuremath{\Omega}}
+\def\@automath@P{\ensuremath{\Pi}}
+\def\@automath@R{\ensuremath{\mathrm{P}}}
+\def\@automath@S{\ensuremath{\Sigma}}
+\def\@automath@V{\ensuremath{\Psi}}
+\def\@automath@T{\ensuremath{\Tau}}
+\def\@automath@Q{\ensuremath{\Theta}}
+\def\@automath@U{\ensuremath{\Upsilon}}
+\def\@automath@Y{\ensuremath{\Upsilon}}
+\def\@automath@X{\ensuremath{\Xi}}
+\def\@automath@Z{\ensuremath{\Zeta}}
+\expandafter\def\csname @automath@=\endcsname{\ensuremath{\approx}}
+\expandafter\def\csname @automath@-\endcsname{\ensuremath{\div}}
+\expandafter\def\csname @automath@+\endcsname{\@ifstar{\ensuremath{\mp}}{\ensuremath{\pm}}}
+\expandafter\def\csname @automath@*\endcsname{\@ifstar{\ensuremath{\times}}{\ensuremath{\cdot}}}
+\expandafter\def\csname @automath@!\endcsname{\textcopyright}
+\endinput \ No newline at end of file