diff options
author | Norbert Preining <norbert@preining.info> | 2022-11-07 03:04:25 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2022-11-07 03:04:25 +0000 |
commit | 5fcfa99e5deaf9c601ba9e338f07fbefdd5d4487 (patch) | |
tree | 19d4022cbaed433610ef4cc56ce51cea0604eaad /macros | |
parent | 0a7c9b85de9aeaffafa0cf8944fa81ffe9652d09 (diff) |
CTAN sync 202211070304
Diffstat (limited to 'macros')
26 files changed, 1915 insertions, 125 deletions
diff --git a/macros/latex/contrib/abraces/README.md b/macros/latex/contrib/abraces/README.md index e5632dc131..b26a225d8c 100644 --- a/macros/latex/contrib/abraces/README.md +++ b/macros/latex/contrib/abraces/README.md @@ -1,4 +1,4 @@ -`abraces` 2021/03/31 v2.0 +`abraces` 2022/11/06 v2.1 ---------------------------------------- A package that provides a character key-driven interface to diff --git a/macros/latex/contrib/abraces/abraces-doc.pdf b/macros/latex/contrib/abraces/abraces-doc.pdf Binary files differindex 31cd8f8190..c0becaadde 100644 --- a/macros/latex/contrib/abraces/abraces-doc.pdf +++ b/macros/latex/contrib/abraces/abraces-doc.pdf diff --git a/macros/latex/contrib/abraces/abraces-doc.tex b/macros/latex/contrib/abraces/abraces-doc.tex index b0326d6ee8..970cf74eab 100644 --- a/macros/latex/contrib/abraces/abraces-doc.tex +++ b/macros/latex/contrib/abraces/abraces-doc.tex @@ -1,4 +1,4 @@ -% $Id: abraces-doc.tex,v 2.0 2021/03/31 00:00:00 wgrundlingh stable $ +% $Id: abraces-doc.tex,v 2.1 2022/11/06 00:00:00 wgrundlingh stable $ \RequirePackage{xcolor}% http://ctan.org/pkg/xcolor (required to "overload" color package) \documentclass[10pt]{ltxdockit}[2011/03/25] @@ -7,7 +7,7 @@ \usepackage{booktabs,shortvrb,amsmath,xfp} \MakeShortVerb{\|} -\rcsid{$Id: abraces.tex,v 2.0 2021/03/31 00:00:00 wgrundlingh stable $} +\rcsid{$Id: abraces.tex,v 2.1 2022/11/06 00:00:00 wgrundlingh stable $} %\setcounter{secnumdepth}{2} %\setcounter{tocdepth}{4} @@ -310,6 +310,13 @@ Thanks to Frank Mittlebach who stepped in and suggested an improvement in the or \section{Change log} \begin{itemize} + \item v2.1 (2022-11-06) Minor update + + \begin{itemize} + \item + \lstinline|\Repeat| is replaced by something more obscure (\lstinline|\Repeat@br@ces|) to avoid other package conflicts. + \end{itemize} + \item v2.0 (2021-03-31) Major update \begin{itemize} diff --git a/macros/latex/contrib/abraces/abraces.sty b/macros/latex/contrib/abraces/abraces.sty index 68dbc7e8eb..af146826ce 100644 --- a/macros/latex/contrib/abraces/abraces.sty +++ b/macros/latex/contrib/abraces/abraces.sty @@ -16,7 +16,7 @@ % This work consists of the file abraces.sty. \ProvidesPackage{abraces}% http://ctan.org/pkg/abraces - [2021/03/31 v2.0 Arbitrary and asymmetric braces] + [2022/11/06 v2.1 Arbitrary and asymmetric braces] \RequirePackage{xparse} @@ -63,7 +63,7 @@ % Repeat command n times? % http://tex.stackexchange.com/q/16189/5764 \ExplSyntaxOn -\cs_new_eq:NN \Repeat \prg_replicate:nn +\cs_new_eq:NN \Repeat@br@ces \prg_replicate:nn %FMi \cs_new_eq:NN \TrimArgSpaces \tl_trim_spaces:n % only needed when ^{...} should be text %FMi @@ -324,7 +324,7 @@ %FMi %\newcommand{\@firstofone@go}[1]{#1\@genbrace}% \newcommand{\@firstofone@len}[1]{\hb@xt@#1{\@@bfil}\@genbrace}% -\newcommand{\@repeat@num@times}[2]{\Repeat{#1}{\@genbrace#2\@nnil}\@genbrace}% +\newcommand{\@repeat@num@times}[2]{\Repeat@br@ces{#1}{\@genbrace#2\@nnil}\@genbrace}% \newcommand{\@genbrace}[1]{% \ifx\@nnil#1\relax\else diff --git a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf Binary files differindex 73b1ccc4bf..f59266ae1d 100644 --- a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf +++ b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf diff --git a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex index 0f52e74b93..d4070a4559 100644 --- a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex +++ b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex @@ -6,22 +6,10 @@ \documentclass{article} \usepackage[french]{babel} -\usepackage{iftex,ifpdf,ifxetex,ifluatex} -\ifpdftex - \usepackage[utf8]{inputenc} - \usepackage[T1]{fontenc} - \usepackage[upright]{fourier} - \usepackage[scaled=0.875]{helvet} - \renewcommand\ttdefault{lmtt} - \usepackage[scaled=0.875]{cabin} - \usepackage{amsmath,amssymb} -\fi -\ifluatex - \usepackage{mathtools} - \usepackage{lualatex-math} - \usepackage{luatexbase} - \usepackage[math-style=french,bold-style=ISO]{fourier-otf} -\fi +\usepackage{mathtools} +\usepackage{lualatex-math} +\usepackage{luatexbase} +\usepackage[math-style=french,bold-style=ISO]{fourier-otf} \usepackage{ProfLycee} \usepackage{tkz-euclide} \usetikzlibrary{hobby} @@ -74,8 +62,8 @@ \setlength{\parindent}{0pt} \definecolor{LightGray}{gray}{0.9} -\def\PLversion{2.0.0} -\def\PLdate{4 Novembre 2022} +\def\PLversion{2.0.1} +\def\PLdate{6 Novembre 2022} \tcbset{vignettes/.style={% nobeforeafter,box align=base,boxsep=0pt,enhanced,sharp corners=all,rounded corners=southeast,% @@ -125,9 +113,9 @@ %petite vignette màj \newcommand\cmaj[1]{% - \IfStrEq{#1}{\PLversion}% + %\IfStrEq{#1}{\PLversion}% {\tcbox[vignetteMaJ]{#1}\xspace}% - {}% + %{}% } %gestion de la fenêtre v2 directement dans le tikzpicture @@ -340,7 +328,7 @@ Le {package} \ctex{ProfLycee} charge les {packages} : \item \ctex{xparse}, \ctex{xkeyval}, \ctex{xstring}, \ctex{simplekv} ; \item \ctex{listofitems}, \ctex{xintexpr} , \ctex{xintbinhex} et \ctex{xintgcd}; \item \ctex{tabularray}, \ctex{fontawesome5}, \ctex{tcolorbox} ; - \item \ctex{piton} et \ctex{pythontex} + \item \ctex{piton} (uniquement si compilation en \LuaLaTeX{} !) et \ctex{pythontex} \end{itemize} \end{codeinfo} @@ -550,7 +538,7 @@ Elles sont présentées de manière \textit{succincte}, mais elles sont présent %présentation type calcul formel, dans un environnement tikz \CalculFormelParametres[<options>] -\CalculFormelLigne+[<options>]{<commande>}{<résultat>} +\CalculFormelLigne[<options>]{<commande>}{<résultat>} \end{codetex} \begin{codetex}[listing only] @@ -1485,7 +1473,7 @@ def trace_parabole_tableaux(): \subsection{Introduction} \begin{codeinfo} -\cmaj{2.0.0} Le package \ctex{piton} permet d'insérer du code Python avec une coloration syntaxique en utilisant la bibliothèque \textsf{Lua LPEG}. +\cmaj{2.0.0} Le package \ctex{piton} (compatible uniquement avec une compilation en \LuaLaTeX{} !) permet d'insérer du code Python avec une coloration syntaxique en utilisant la bibliothèque \textsf{Lua LPEG}. \smallskip @@ -1494,6 +1482,8 @@ En \textit{partenariat} avec \ctex{tcolorbox}, on peut avoir une présentation d \begin{codeattention} Le package \ctex{piton} nécessite donc obligatoirement l’emploi de \LuaLaTeX{} ! + +\cmaj{2.0.1} Ce package n'est chargé que si la compilation détectée est en \LuaLaTeX{} ! \end{codeattention} \subsection{Présentation de code Python} @@ -5248,7 +5238,9 @@ La grille, créée en \TikZ, est portée par le rectangle de \og coins \fg{} $(0 \part{Historique} -{\small \bverb|2022N.a|~:~~~~Refonte du code source avec modification des commandes} +{\small \bverb|v 2.0.1|~:~~~~Chargement du package \textsf{piton} uniquement si compilation en \LuaLaTeX{} (page \pageref{pythonpiton}) + +{\small \bverb|v 2.0.0|~:~~~~Refonte du code source avec modification des commandes} {\small \bverb| |~:~~~~Refonte de la documentation} diff --git a/macros/latex/contrib/proflycee/doc/ProfLycee-old-doc.pdf b/macros/latex/contrib/proflycee/doc/ProfLycee-old-doc.pdf Binary files differindex d851c1652d..e88f2d146d 100644 --- a/macros/latex/contrib/proflycee/doc/ProfLycee-old-doc.pdf +++ b/macros/latex/contrib/proflycee/doc/ProfLycee-old-doc.pdf diff --git a/macros/latex/contrib/proflycee/doc/ProfLycee-old-doc.tex b/macros/latex/contrib/proflycee/doc/ProfLycee-old-doc.tex index 3ef3b51a6f..cb42767b37 100644 --- a/macros/latex/contrib/proflycee/doc/ProfLycee-old-doc.tex +++ b/macros/latex/contrib/proflycee/doc/ProfLycee-old-doc.tex @@ -6,20 +6,11 @@ \documentclass{article} \usepackage[french]{babel} -\usepackage{iftex,ifpdf,ifxetex,ifluatex} -\ifpdftex - \usepackage[utf8]{inputenc} - \usepackage[T1]{fontenc} - \usepackage[upright]{fourier} - \usepackage[scaled=0.875]{helvet} - \renewcommand\ttdefault{lmtt} - \usepackage[scaled=0.875]{cabin} - \usepackage{amsmath,amssymb} -\fi -\ifluatex - \RequirePackage[math-style=french,bold-style=ISO]{fourier-otf} -\fi -\usepackage[build]{ProfLycee} +\usepackage{mathtools} +\usepackage{lualatex-math} +\usepackage{luatexbase} +\usepackage[math-style=french,bold-style=ISO]{fourier-otf} +\usepackage{ProfLycee-old} \usepackage{tkz-euclide} \usetikzlibrary{hobby} \usepackage[group-minimum-digits=4]{siunitx} @@ -71,8 +62,8 @@ \setlength{\parindent}{0pt} \definecolor{LightGray}{gray}{0.9} -\def\PLversion{1.3.7} -\def\PLdate{2 Novembre 2022} +\def\PLversion{1.3.8} +\def\PLdate{6 Novembre 2022} \tcbset{vignettes/.style={% nobeforeafter,box align=base,boxsep=0pt,enhanced,sharp corners=all,rounded corners=southeast,% @@ -1428,7 +1419,7 @@ def trace_parabole_tableaux(): \subsection{Introduction} \begin{codeinfo} -Le package \ctex{piton} permet d'insérer du code Python avec une coloration syntaxique en utilisant la bibliothèque \textsf{Lua LPEG}. +Le package \ctex{piton} (compatible uniquement avec une compilation en \LuaLaTeX{} !) permet d'insérer du code Python avec une coloration syntaxique en utilisant la bibliothèque \textsf{Lua LPEG}. \smallskip @@ -1437,6 +1428,8 @@ En \textit{partenariat} avec \ctex{tcolorbox}, on peut avoir une présentation d \begin{codeattention} Le package \ctex{piton} nécessite donc obligatoirement l’emploi de \LuaLaTeX{} ! + +Ce package n'est chargé que si la compilation détectée est en \LuaLaTeX{} ! \end{codeattention} \subsection{Présentation de code Python} @@ -5190,6 +5183,8 @@ La grille, créée en \TikZ, est portée par le rectangle de \og coins \fg{} $(0 \part{Historique} +{\small \bverb|v1.3.8|~:~~~~Chargement du package \textsf{piton} uniquement si compilation en \LuaLaTeX{} (page \pageref{pythonpiton}) + {\small \bverb|v1.3.7|~:~~~~Commandes pour du code python via piton, en compilation \LuaLaTeX{} (page \pageref{pythonpiton}) {\small \bverb| |~:~~~~Corrections et modifications mineures de la documentation diff --git a/macros/latex/contrib/proflycee/tex/ProfLycee-old.sty b/macros/latex/contrib/proflycee/tex/ProfLycee-old.sty index 43de82fa82..dc3c35fdd7 100644 --- a/macros/latex/contrib/proflycee/tex/ProfLycee-old.sty +++ b/macros/latex/contrib/proflycee/tex/ProfLycee-old.sty @@ -3,7 +3,8 @@ % or later, see http://www.latex-project.org/lppl.txtf \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{ProfLycee-old}[2022/11/02 v1.3.7 - Aide pour l'utilisation de LaTeX en lycee] +\ProvidesPackage{ProfLycee-old}[2022/11/06 v1.3.8 - Aide pour l'utilisation de LaTeX en lycee] +% 1.3.8 Chargement de Piton uniquement en cas de compilation en lua % 1.3.7 Ajout d'un environnement simplifié pour du code python via piton % 1.3.6 Ajout d'un "générateur" de trinômes (ou mise en forme basique) % 1.3.5 Correction de bugs sur les calculs de probas (loi géométrique) @@ -98,9 +99,8 @@ %tcolorbox \RequirePackage[most]{tcolorbox} %divers -\RequirePackage{ifluatex} +\RequirePackage{iftex} %python -\RequirePackage{piton} \RequirePackage{fancyvrb} \RequirePackage[gobble=auto]{pythontex} \setpythontexlistingenv{pythont} %pour ne pas télescoper lstlistings (?) @@ -586,19 +586,21 @@ Alignement=center,% Lignes=true } - -\NewPitonEnvironment{envcodepiton}{ O{} }% - {% - \useKVdefault[envpiton]% - \setKV[envpiton]{#1}% on paramètres les nouvelles clés et on les simplifie - \ifboolKV[envpiton]{Lignes}%si lignes=true - {\PitonOptions{left-margin=12.75pt,line-numbers}}% - {\PitonOptions{}}% - \begin{tcolorbox}[stylepythontex,leftupper=8pt,colframe=Green,colback=ForestGreen!5,width=\CODPITlargeur,fontlower=\small,\CODPITalign] - }% - {% - \end{tcolorbox}% - } +\ifluatex + \RequirePackage{piton} + \NewPitonEnvironment{envcodepiton}{ O{} }% + {% + \useKVdefault[envpiton]% + \setKV[envpiton]{#1}% on paramètres les nouvelles clés et on les simplifie + \ifboolKV[envpiton]{Lignes}%si lignes=true + {\PitonOptions{left-margin=12.75pt,line-numbers}}% + {\PitonOptions{}}% + \begin{tcolorbox}[stylepythontex,leftupper=8pt,colframe=Green,colback=ForestGreen!5,width=\CODPITlargeur,fontlower=\small,\CODPITalign] + }% + {% + \end{tcolorbox}% + } +\fi %=========PSEUDOCODE=========== OK !! %language pseudocode listings diff --git a/macros/latex/contrib/proflycee/tex/ProfLycee.sty b/macros/latex/contrib/proflycee/tex/ProfLycee.sty index 7b7ba14152..4e32d0963f 100644 --- a/macros/latex/contrib/proflycee/tex/ProfLycee.sty +++ b/macros/latex/contrib/proflycee/tex/ProfLycee.sty @@ -3,7 +3,8 @@ % or later, see http://www.latex-project.org/lppl.txtf \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{ProfLycee}[2022/11/04 2.0.0 Aide pour l'utilisation de LaTeX en lycee] +\ProvidesPackage{ProfLycee}[2022/11/06 2.0.1 Aide pour l'utilisation de LaTeX en lycee] +% 2.0.1 Chargement de piton uniquement si lua... % 2.0.0 Refonte des commandes, des options, et de la documentation !!! % ------------------------------------------------------------------ % 1.3.7 Ajout d'un environnement simplifié pour du code python via piton @@ -100,9 +101,8 @@ %tcolorbox \RequirePackage[most]{tcolorbox} %divers -\RequirePackage{ifluatex} +\RequirePackage{iftex} %python -\RequirePackage{piton} \RequirePackage{fancyvrb} \RequirePackage[gobble=auto]{pythontex} \setpythontexlistingenv{pythont} %pour ne pas télescoper lstlistings (?) @@ -590,19 +590,21 @@ Alignement=center,% Lignes=true } - -\NewPitonEnvironment{CodePiton}{ O{} }% - {% - \useKVdefault[envpiton]% - \setKV[envpiton]{#1}% on paramètres les nouvelles clés et on les simplifie - \ifboolKV[envpiton]{Lignes}%si lignes=true - {\PitonOptions{left-margin=12.75pt,line-numbers}}% - {\PitonOptions{}}% - \begin{tcolorbox}[stylepythontex,leftupper=8pt,colframe=Green,colback=ForestGreen!5,width=\CODPITlargeur,fontlower=\small,\CODPITalign] - }% - {% - \end{tcolorbox}% - } +\ifluatex + \RequirePackage{piton} + \NewPitonEnvironment{CodePiton}{ O{} }% + {% + \useKVdefault[envpiton]% + \setKV[envpiton]{#1}% on paramètres les nouvelles clés et on les simplifie + \ifboolKV[envpiton]{Lignes}%si lignes=true + {\PitonOptions{left-margin=12.75pt,line-numbers}}% + {\PitonOptions{}}% + \begin{tcolorbox}[stylepythontex,leftupper=8pt,colframe=Green,colback=ForestGreen!5,width=\CODPITlargeur,fontlower=\small,\CODPITalign] + }% + {% + \end{tcolorbox}% + } +\fi %=========PSEUDOCODE=========== OK !! %language pseudocode listings diff --git a/macros/luatex/latex/yamlvars/yamlvars.lua b/macros/luatex/latex/yamlvars/yamlvars.lua index a46b47e725..01b326c4b4 100644 --- a/macros/luatex/latex/yamlvars/yamlvars.lua +++ b/macros/luatex/latex/yamlvars/yamlvars.lua @@ -1,5 +1,5 @@ --% Kale Ewasiuk (kalekje@gmail.com) ---% 2022-04-16 +--% 2022-11-06 --% Copyright (C) 2021-2022 Kale Ewasiuk --% --% Permission is hereby granted, free of charge, to any person obtaining a copy diff --git a/macros/luatex/latex/yamlvars/yamlvars.pdf b/macros/luatex/latex/yamlvars/yamlvars.pdf Binary files differindex 58f7899f5f..093dbecd8c 100644 --- a/macros/luatex/latex/yamlvars/yamlvars.pdf +++ b/macros/luatex/latex/yamlvars/yamlvars.pdf diff --git a/macros/luatex/latex/yamlvars/yamlvars.sty b/macros/luatex/latex/yamlvars/yamlvars.sty index 92d5fbef2e..b04e7d306f 100644 --- a/macros/luatex/latex/yamlvars/yamlvars.sty +++ b/macros/luatex/latex/yamlvars/yamlvars.sty @@ -1,5 +1,5 @@ % Kale Ewasiuk (kalekje@gmail.com) -% 2022-04-16 +% 2022-11-06 % Copyright (C) 2021-2022 Kale Ewasiuk % % Permission is hereby granted, free of charge, to any person obtaining a copy @@ -25,7 +25,7 @@ \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{YAMLvars}[2022-04-16] +\ProvidesPackage{yamlvars}[2022-11-06] \IfFileExists{markdown-tinyyaml.lua}{}{\PackageError{YAMLvars}{This package requires installation of the 'markdown' package, please install it and try again}{}} @@ -64,13 +64,13 @@ \newcommand{\parseYAMLvarsFile}[1]{\luadirect{YAMLvars.parseYAMLvarsFile(\luastring{#1})}} -\newenvironment{declareYAMLvars}{\luadirect{pl.tex.startrecording()}}{\luadirect{pl.tex.stoprecording()} - \luadirect{YAMLvars.declareYAMLvarsStr(pl.tex.recordedbuf)} +\newenvironment{declareYAMLvars}{\luadirect{_G[__PENLIGHT__].tex.startrecording()}}{\luadirect{_G[__PENLIGHT__].tex.stoprecording()} + \luadirect{YAMLvars.declareYAMLvarsStr(_G[__PENLIGHT__].tex.recordedbuf)} } -\newenvironment{parseYAMLvars}{\luadirect{pl.tex.startrecording()}}{\luadirect{pl.tex.stoprecording()} +\newenvironment{parseYAMLvars}{\luadirect{_G[__PENLIGHT__].tex.startrecording()}}{\luadirect{_G[__PENLIGHT__].tex.stoprecording()} } -\AfterEndEnvironment{parseYAMLvars}{\luadirect{YAMLvars.parseYAMLvarsStr(pl.tex.recordedbuf)}} +\AfterEndEnvironment{parseYAMLvars}{\luadirect{YAMLvars.parseYAMLvarsStr(_G[__PENLIGHT__].tex.recordedbuf)}} % necessary hack to get rohead and lohead to work.. % .. https://tex.stackexchange.com/questions/637018/setting-koma-heading-within-lua/637021?noredirect=1#comment1587387_637021 @@ -82,10 +82,10 @@ -\newenvironment{parseYAMLpdfdata}{\luadirect{pl.tex.startrecording()}}{ - \luadirect{pl.tex.stoprecording() - YAMLvars.yaml2PDFmetadata(pl.tex.recordedbuf) - pl.tex.writePDFmetadata() +\newenvironment{parseYAMLpdfdata}{\luadirect{_G[__PENLIGHT__].tex.startrecording()}}{ + \luadirect{_G[__PENLIGHT__].tex.stoprecording() + YAMLvars.yaml2PDFmetadata(_G[__PENLIGHT__].tex.recordedbuf) + _G[__PENLIGHT__].tex.writePDFmetadata() } } diff --git a/macros/luatex/latex/yamlvars/yamlvars.tex b/macros/luatex/latex/yamlvars/yamlvars.tex index f6aa0893fb..5290f9ec88 100644 --- a/macros/luatex/latex/yamlvars/yamlvars.tex +++ b/macros/luatex/latex/yamlvars/yamlvars.tex @@ -1,5 +1,5 @@ % Kale Ewasiuk (kalekje@gmail.com) -% 2022-04-16 +% 2022-11-06 % Copyright (C) 2021-2022 Kale Ewasiuk % % Permission is hereby granted, free of charge, to any person obtaining a copy @@ -75,7 +75,7 @@ YAMLvars is a LuaLaTeX-based package to help make definitions or produce LaTeX code using a YAML file. -This package might be useful for you if you want to batch create docummnts +This package might be useful for you if you want to batch create documents by pushing various sets YAML data to a fixed LaTeX template, or just find it easier to read document metadata from a YAML file compared to the standard title, author, etc. commands. @@ -128,7 +128,7 @@ like \section{Declaring variables} A declaration file can either be parsed with the command \texttt{declareYAMLvarsFile} command, or, if you want to do it \LaTeX, you can put the YAML code in the \texttt{declareYAMLvars} environment. -It is a declaring YAML docuemnt is (like all YAML) key-value ditionary: +It is a declaring YAML document is (like all YAML) key-value dictionary: The top level key is the name of the variable to be defined/used. If the value of the top level is a string: it's interpreted as a single transform function to be applied. Otherwise, it must diff --git a/macros/xetex/latex/bidi/README b/macros/xetex/latex/bidi/README index 55813094f1..6f399323ad 100644 --- a/macros/xetex/latex/bidi/README +++ b/macros/xetex/latex/bidi/README @@ -1,6 +1,6 @@ ___________________ The bidi package -v39.5 +v39.6 This package provides a convenient interface for typesetting bidirectional texts in Plain TeX and LaTeX, using XeTeX engine. @@ -25,7 +25,7 @@ The announcements for the new releases of the package will also appear in the Discussions space under the Announcements category. -Current version release date: 2022/09/22 +Current version release date: 2022/11/06 ___________________________________________ Vafa Khalighi diff --git a/macros/xetex/latex/bidi/bidi-doc-intro.ltx b/macros/xetex/latex/bidi/bidi-doc-intro.ltx index f0fed3ee24..cb32bf3435 100644 --- a/macros/xetex/latex/bidi/bidi-doc-intro.ltx +++ b/macros/xetex/latex/bidi/bidi-doc-intro.ltx @@ -20,7 +20,7 @@ If you use \textsf{bidi} package to write any input \TeX\ document, and then run * Copyright (c) 2007--2022 Vafa Khalighi * Copyright (c) 2018--2020 bidi-tex GitHub Organization * -* v39.5, 2022/09/22 +* v39.6 (Release Women, Life, and Liberty), 2022/11/06 * * License: LaTeX Project Public License, version * 1.3c or higher (your choice) diff --git a/macros/xetex/latex/bidi/bidi-doc-title.ltx b/macros/xetex/latex/bidi/bidi-doc-title.ltx index e913cd8377..8e73033544 100644 --- a/macros/xetex/latex/bidi/bidi-doc-title.ltx +++ b/macros/xetex/latex/bidi/bidi-doc-title.ltx @@ -3,7 +3,7 @@ \begin{document} \title{\textcolor{blue!65!black}{\Huge The \textsf{bidi} \textit{Package}}\\ \LARGE Bidirectional typesetting in plain \TeX{} and \LaTeX, using \XeTeX{} engine\\[5pt] -\large User documentation for \textcolor{blue!65!black}{version 39.5}} +\large User documentation for \textcolor{blue!65!black}{version 39.6}} \author{Vafa Khalighi\thanks{Thanks to the bidi-tex GitHub organization consisted of David Carlisle and other members of the {\LaTeX} team to maintain the package in the period 2018--2020.}} \setcounter{page}{0} \thispagestyle{empty} @@ -13,7 +13,7 @@ \textcolor{blue!65!black}{\Huge The \textsf{bidi} \textit{Package}} \Large -User documentation for \textcolor{blue!65!black}{version 39.5}} +User documentation for \textcolor{blue!65!black}{version 39.6}} \vskip 0pt plus 3fill \textit{\large to my Master, \textbf{Ferdowsi The Great}} diff --git a/macros/xetex/latex/bidi/bidi-doc.ltx b/macros/xetex/latex/bidi/bidi-doc.ltx index dcf0e5ba48..4e7de4c0c0 100644 --- a/macros/xetex/latex/bidi/bidi-doc.ltx +++ b/macros/xetex/latex/bidi/bidi-doc.ltx @@ -1,7 +1,7 @@ \documentclass{ltxdoc} \input{bidi-doc-preamble.ltx} \hypersetup{% - pdftitle={User documentation for version 39.5 of the bidi + pdftitle={User documentation for version 39.6 of the bidi package}% } \begin{document} diff --git a/macros/xetex/latex/bidi/bidi-doc.pdf b/macros/xetex/latex/bidi/bidi-doc.pdf Binary files differindex a9dfd1ef56..441290ecf1 100644 --- a/macros/xetex/latex/bidi/bidi-doc.pdf +++ b/macros/xetex/latex/bidi/bidi-doc.pdf diff --git a/macros/xetex/latex/bidi/bidi.dtx b/macros/xetex/latex/bidi/bidi.dtx index 8d457f5281..1eae23846f 100644 --- a/macros/xetex/latex/bidi/bidi.dtx +++ b/macros/xetex/latex/bidi/bidi.dtx @@ -5,7 +5,7 @@ %<*readme> ___________________ The bidi package -v39.5 +v39.6 This package provides a convenient interface for typesetting bidirectional texts in Plain TeX and LaTeX, using XeTeX engine. @@ -30,7 +30,7 @@ The announcements for the new releases of the package will also appear in the Discussions space under the Announcements category. -Current version release date: 2022/09/22 +Current version release date: 2022/11/06 ___________________________________________ Vafa Khalighi @@ -267,7 +267,7 @@ by Vafa Khalighi. \documentclass{ltxdoc} \input{bidi-doc-preamble.ltx} \hypersetup{% - pdftitle={Source documentation for version 39.5 of the bidi + pdftitle={Source documentation for version 39.6 of the bidi package}% } \EnableCrossrefs @@ -286,7 +286,7 @@ by Vafa Khalighi. % \GetFileInfo{\jobname.dtx} % \title{\textcolor{blue!65!black}{\Huge The \textsf{bidi} \textit{Package}}\\ %\LARGE Bidirectional typesetting in plain \TeX{} and \LaTeX, using \XeTeX{} engine\\[5pt] -%\large Source documentation for \textcolor{blue!65!black}{version 39.5}} +%\large Source documentation for \textcolor{blue!65!black}{version 39.6}} % \author{Vafa Khalighi\thanks{Thanks to the bidi-tex GitHub organization consisted of David Carlisle and other members of the {\LaTeX} team to maintain the package in the period 2018--2020.}} %\setcounter{page}{0} %\thispagestyle{empty} @@ -296,7 +296,7 @@ by Vafa Khalighi. %\textcolor{blue!65!black}{\Huge The \textsf{bidi} \textit{Package}} % %\Large -%Source documentation for \textcolor{blue!65!black}{version 39.5}} +%Source documentation for \textcolor{blue!65!black}{version 39.6}} % %\vskip 0pt plus 3fill %\textit{\large to my Master, \textbf{Ferdowsi The Great}} @@ -345,7 +345,7 @@ by Vafa Khalighi. %\iffalse %<*table> %\fi -%% \CheckSum{55446} +%% \CheckSum{55469} %% \CharacterTable %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z @@ -4589,9 +4589,11 @@ by Vafa Khalighi. % \section{File \texttt{bidi.sty}} % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\def\bididate{2022/09/22} -\def\bidi@version{39.5} -\ProvidesPackage{bidi}[\bididate\space v\bidi@version\space +\def\bididate{2022/11/06} +\def\bidi@version{39.6} +\def\bidi@releasename{Women, Life, and Liberty} +\newcommand*{\bidireleasename}{\bidi@releasename} +\ProvidesPackage{bidi}[\bididate\space v\bidi@version\space (Release \bidi@releasename)\space Bidirectional typesetting in plain TeX and LaTeX] \edef\@bidi@info{****************************************************^^J% * ^^J% @@ -4606,7 +4608,7 @@ Bidirectional typesetting in plain TeX and LaTeX] * Copyright (c) 2007--2022 Vafa Khalighi^^J% * Copyright (c) 2018--2020 bidi-tex GitHub organization^^J% * ^^J% -* v\bidi@version, \bididate^^J% +* v\bidi@version\space (Release \bidi@releasename), \bididate^^J% * ^^J% * License: LaTeX Project Public License, version^^J% * 1.3c or higher (your choice)^^J% @@ -4670,14 +4672,14 @@ Bidirectional typesetting in plain TeX and LaTeX] \newif\if@bidi@list@minipage@parbox \newif\if@bidi@list@minipage@parbox@not@nob \newcommand*{\@bidi@pdfcreator}{% - The bidi package, v\bidi@version, \bididate + The bidi package, v\bidi@version\space (Release \bidi@releasename), \bididate } \newcommand*{\@bidi@pdfproducer}{% - The bidi package, v\bidi@version, \bididate + The bidi package, v\bidi@version\space (Release \bidi@releasename), \bididate } \newcommand*{\@bidi@pdfcustomproperties}{% - This is the bidi package, Version \bidi@version, - Released September 22, 2022. + This is the bidi package, Version \bidi@version\space (Release \bidi@releasename), + Released November 6, 2022. } \newcommand*{\bidi@beamer@ragged}{} \@RTLmainfalse @@ -4921,9 +4923,11 @@ Bidirectional typesetting in plain TeX and LaTeX] %\fi % \section{File \texttt{bidi.tex}} % \begin{macrocode} -\def\bididate{2022/09/22} +\def\bididate{2022/11/06} \catcode`@=11 -\def\bidi@version{39.5} +\def\bidi@version{39.6} +\def\bidi@releasename{Women, Life, and Liberty} +\def\bidireleasename{\bidi@releasename} \let \protect \relax \newlinechar`\^^J \edef\@bidi@info{****************************************************^^J% @@ -4939,7 +4943,7 @@ Bidirectional typesetting in plain TeX and LaTeX] * Copyright (c) 2007--2022 Vafa Khalighi^^J% * Copyright (c) 2018--2020 bidi-tex GitHub organization^^J% * ^^J% -* v\bidi@version, \bididate^^J% +* v\bidi@version\space (Release \bidi@releasename), \bididate^^J% * ^^J% * License: LaTeX Project Public License, version^^J% * 1.3c or higher (your choice)^^J% @@ -5018,14 +5022,14 @@ Bidirectional typesetting in plain TeX and LaTeX] \def\@bidi@logo@{\@bidi@logo@hb@xt@\hsize{\hss\LRE{\bf Typeset by the bidi package\quad\@bidi@logo{bidi-logo.pdf}}}} \def\nobidilogo{\let\@bidi@logo@\@empty \let\@bidi@inslogo@\@empty} \def\@bidi@pdfcreator{% - The bidi package, v\bidi@version, \bididate + The bidi package, v\bidi@version\space (Release \bidi@releasename), \bididate } \def\@bidi@pdfproducer{% - The bidi package, v\bidi@version, \bididate + The bidi package, v\bidi@version\space (Release \bidi@releasename), \bididate } \def\@bidi@pdfcustomproperties{% - This is the bidi package, Version \bidi@version, - Released September 22, 2022. + This is the bidi package, Version \bidi@version\space (Release \bidi@releasename), + Released November 6, 2022. } \def\bidi@pdfm@mark{% \special{pdf:% @@ -17272,7 +17276,7 @@ bidi implementation of tufte title] %\fi % \section{File \texttt{lettrine-xetex-bidi.def}} % \begin{macrocode} -\ProvidesFile{lettrine-xetex-bidi.def}[2019/05/01 v0.7 bidi adaptations for lettrine package for XeTeX engine] +\ProvidesFile{lettrine-xetex-bidi.def}[2022/11/06 v0.8 bidi adaptations for lettrine package for XeTeX engine] \def\@lettrine[#1]#2#3{% \def\l@initial{#2}\let\l@refstring\l@initial \setcounter{L@lines}{\value{DefaultLines}}% @@ -17288,7 +17292,6 @@ bidi implementation of tufte title] \ifLettrineImage\L@imagetrue\else\L@imagefalse\fi \ifLettrineOnGrid\L@gridtrue\else\L@gridfalse\fi \ifLettrineRealHeight\L@realhtrue\else\L@realhfalse\fi - \ifLettrineSelfRef\L@selfreftrue\else\L@selfreffalse\fi \setkeys{L}{#1}% \sbox{\L@tbox}{\LettrineTextFont{\LettrineSecondString}}% \ifL@realh @@ -17338,7 +17341,7 @@ bidi implementation of tufte title] \@tempdima=\L@oversize pt\relax \PackageInfo{lettrine.sty}% {Targeted height = \the\L@target@tht\MessageBreak - (no accent, loversize=0),\MessageBreak + (for loversize=0, accent excluded),\MessageBreak Lettrine height = \the\LettrineHeight\space (#2)% \ifdim\@tempdima=\z@\else\space loversize=\L@oversize\fi;% \MessageBreak reported}% @@ -17389,9 +17392,9 @@ bidi implementation of tufte title] \fi \@tempcnta=\tw@ \@whilenum \@tempcnta<\c@L@lines\do{% - \if@RTL + \if@RTL \edef\L@parshape{\L@parshape \z@ \the\L@next}% - \else + \else \edef\L@parshape{\L@parshape \the\L@Nindent \the\L@next}% \fi \addtolength{\L@Nindent}{\L@slope}% @@ -17409,6 +17412,7 @@ bidi implementation of tufte title] \usebox{\L@tbox}% \ifnum\@listdepth>0 \Lreset@listparshape \fi } + % \end{macrocode} % \iffalse %</lettrine-xetex-bidi.def> diff --git a/macros/xetex/latex/bidi/bidi.pdf b/macros/xetex/latex/bidi/bidi.pdf Binary files differindex fb52d598e1..1f0376809e 100644 --- a/macros/xetex/latex/bidi/bidi.pdf +++ b/macros/xetex/latex/bidi/bidi.pdf diff --git a/macros/xetex/plain/unimath-plain-xetex/README.md b/macros/xetex/plain/unimath-plain-xetex/README.md new file mode 100644 index 0000000000..b8b335a7a6 --- /dev/null +++ b/macros/xetex/plain/unimath-plain-xetex/README.md @@ -0,0 +1,13 @@ +# unimath-plain-xetex + +This package provides OpenType math support in (plain) XeTeX. See `unimath-plain-xetex-doc.pdf` for more information. + +If anybody wants to maintain this package, please email `alphaztx at 163 dot com`. + +Happy TeXing! + +## License + +This work may be distributed and/or modified under the conditions of +the [LaTeX Project Public License](http://www.latex-project.org/lppl.txt), +either version 1.3c of this license or (at your option) any later version.
\ No newline at end of file diff --git a/macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.pdf b/macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.pdf Binary files differnew file mode 100644 index 0000000000..b64b05c93d --- /dev/null +++ b/macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.pdf diff --git a/macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.tex b/macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.tex new file mode 100644 index 0000000000..5140d0a2b5 --- /dev/null +++ b/macros/xetex/plain/unimath-plain-xetex/doc/unimath-plain-xetex-doc.tex @@ -0,0 +1,202 @@ +%% The document of unimath-plain-xetex +%% ****************************************************** +%% * This work may be distributed and/or modified under * +%% * the conditions of the LaTeX Project Public License * +%% * http://www.latex-project.org/lppl.txt * +%% * either version 1.3c of this license or any later * +%% * version. * +%% ****************************************************** +\def\mainfontname{erewhon} +\def\sansfontname{Fira Sans Book} +\def\monofontname{Source Code Pro} +\def\mathfontname{Erewhon Math} +\input unimath-plain-xetex + +\def\xetex{X\kern-.125em\lower.5ex\hbox{\char"018E}\kern-.1667em% + T\kern-.1667em\lower.5ex\hbox{E}\kern-.125emX} +\let\XeTeX\xetex +\let\tex\TeX +\def\latex{L\kern-.24em{\setbox0=\hbox{T}\vbox to \ht0{\hbox{\sevenrm A}\vss}}% + \kern-.12em\TeX} +\def\umpx{unimath-plain-\xetex} +\def\biggskip{\vskip24pt plus 8pt minus 4pt} +\def\pkg#1{{\tensf #1}} +%\catcode`\@=11 \@sizeat{40pt}\the\sf@size \catcode`\@=12 +\font\hugesans="\sansfontname" at 35pt +\makefontcmdcompatible{ten} + +\def\ttverbatim{\begingroup + \catcode`\\=12 \catcode`\{=12 \catcode`\}=12 \catcode`\$=12 + \catcode`\&=12 \catcode`\#=12 \catcode`\%=12 \catcode`\~=12 + \catcode`\_=12 \catcode`\^=12 \obeyspaces \obeylines \tt} +\outer\def\begintt{$$\let\par=\endgraf \ttverbatim \parskip=0pt + \catcode`\|=0 \rightskip-2pc \ttfinish} +{\catcode`\|=0 |catcode`|\=12 % | is temporary escape character + |obeylines % end of line is active + |gdef|ttfinish#1^^M#2\endtt{#1|vbox{#2}|endgroup$$}} +\catcode`\"=\active +{\obeylines \gdef"{\ttverbatim \spaceskip.5em \let^^M=\ \let"=\endgroup}} +\def\<#1>{$\langle${\it#1\/}$\rangle$} + +\long\def\scalehbox#1#2#3{% + \leavevmode + \setbox0\hbox{{#3}}% + \setbox1\hbox{% + \special{pdf:btrans}% + \special{x:scale #1 #2}% + \hbox to 0pt{\copy0\hss}% + \special{pdf:etrans}% + }% + \ht1#2\ht0 + \dp1#2\dp0 + \hbox to#1\wd0{\box1\kern#1\wd0\hss}% +} + +\newdimen\paperwd +\newdimen\paperht +\newdimen\hmarginwd +\newdimen\vmarginht +\hsize=12cm +\vsize=16cm +\hmarginwd=3cm +\vmarginht=3cm +\hoffset=\dimexpr\hmarginwd-1in\relax +\voffset=\dimexpr\vmarginht-1in\relax +\paperwd=\dimexpr2\hmarginwd+\hsize\relax +\paperht=\dimexpr2\vmarginht+\vsize\relax +\special{papersize=\the\paperwd,\the\paperht} +\newcount\seccnt +\seccnt=0 +\long\def\section#1{\penalty-1000\bigskip% + \advance\seccnt1\relax\noindent{\twelvebf% + \hbox to 0pt{\hss\twentybf\the\seccnt\kern12pt}#1}% + \par\medskip\penalty1000} +\parindent2pc + +% title +\centerline{\twentyrm The + \scalehbox{0.5}{0.5}{% + \special{pdf:code q 1 Tr}% + {\hugesans\umpx}% + \special{pdf:code Q}} + package} +\biggskip + +\centerline{Zhang Tingxuan} +\medskip + +\centerline{2022/11/06\quad Version 0.0β} +\biggskip + +\centerline{\bf Abstract} +\medskip +{\sf\umpx} package provides OpenType math font support in {\it plain \tex\/} +format. The {\sf\umpx} package needs \xetex. + +\section{How to use this package?} +Please notice again that you're using {\it plain\/} format but not +\latex\ format. If you are using \latex\ format, please use +\pkg{unicode-math} package instead. + +In your document, write +\begintt +\input unimath-plain-xetex +\endtt +Then compile your document with "xetex", you can get OpenType math support +in your document. The package will set the math font ``Latin Modern Math'' +with ``Latin Modern'' text fonts in default. To change the font, you can +define some names before loading the package. For example, +\begintt +\def\mainfontname{TeX Gyre Termes} +\def\sansfontname{TeX Gyre Heros} +\def\monofontname{TeX Gyre Cursors} +\def\mathfontname{TeX Gyre Termes Math} +\input unimath-plain-xetex +\endtt +Your text fonts will be set in the first 3 lines and your math font will +be set in the fourth line. + +Currently, the package supports only font family names to use, if +you want to use the file names, you can revise the code in +"unimath-plain-xetex.tex". + + + +\section{Text font commands} +The package provides text font commands in the format of +$$\hbox{"\"\<pt-size>\<family>\<series>\<shape>}$$ +such as "\tensfbfit", "\twelvebf", etc. The packages provides +font commands in size of 5\,pt, 7\,pt, 9\,pt, 10\,pt, 12\,pt and 20\,pt, +such as "\fiverm", "\sevensf", "\twelvett", etc. + +Take ten point as an example, +$$\vbox{\openup10pt% + \halign{ \hfil#\hfil \cr + {\twelverm Serif} \cr + \vbox{\openup-8pt\halign{#&\quad#&\quad#\cr + & Upright & {\tenit Italic} \cr + Medium & "\tenrm" & "\tenit" \cr + {\tenbf Bold} & "\tenbf" & "\tenbfit" \cr}} \cr + {\twelvesf Sans} \cr + \vbox{\openup-8pt\halign{#&\quad#&\quad#\cr + & {\tensf Upright} & {\tensfit Italic} \cr + {\tensf Medium} & "\tensf" & "\tensfit" \cr + {\tensfbf Bold} & "\tensfbf" & "\tensfbfit" \cr}} \cr + {\twelvett Typewritter} \cr + \vbox{\openup-8pt\halign{#&\quad#&\quad#\cr + & {\tentt Upright} & {\tenttit Italic} \cr + {\tentt Medium} & "\tentt" & "\tenttit" \cr + {\tenttbf Bold} & "\tenttbf" & "\tenttbfit" \cr}} \cr}}$$ +The font commands can be used as those provided in "plain.tex", for example, +"{\tenbfit ABC}" yields {\tenbfit ABC}. + +But if you would't like to remember that many commands, you can write +$$\hbox{\tentt"\makefontcmdcompatible"\{\<pt-size>\}}$$ +after loading the package. For example, if you write +\begintt +\makefontcmdcompatible{ten} +\endtt +the \<family>-\<series>-\<shape> order of "\ten"\<some> commands +can be write randomly: writing "\tenbfsfit" is the same as "\tensfbfit". + +You can also get more text font commands through the "\genfontcmd" command: +$$\hbox{\tentt"\genfontcmd"\{\<pt-size>\}\{\<dimension>\}}$$ +For example, +\begintt +\genfontcmd{fortyfour}{44pt} +\genfontcmd{verytiny}{2bp} +\endtt +will make commands like "\fortyfourrm" and "\verytinysfbfit" available. + + + +\section{Math font commands} +%Traditional plain \tex\ uses "\fam" mechanism to change the font of letters +%and numbers in math mode. But using the "\fam" mechanism to change the face +%of a math symbol in an OpenType math font is almost impossible. For example, +%the roman ``${\rm A}$'' is encoded U+0041, but the italic math ``$A$'' is +%encoded U+1D434.But this problem can be solved through redefining the math +%character. +You can input math formulae just like using traditional plain \tex. But +OpenType math font is loaded. For example, "$a{\bf0}={\bf0}$" yields +$a{\bf0}={\bf0}$. Available math font commands are listed below: +\begintt +\rm, \bf, \it, \bfit,\sf, \sfbf, \sfit, \sfbfit, +\tt, \cal, \calbf, \bb, \bbit, \frak, \frakbf +\endtt +The \<family>-\<series>-\<shape> order of these commands allows being random; +"cal" can be replaced by "scr". + +This package uses "unicode-math-symbols.tex" to generate math symbol commands, +the source file can be found in \pkg{unicode-math} package. To find all of +the math symbol commands, you can execute +\begintt +texdoc unimath-symbols +\endtt +in Terminal. + +You can also input Unicode math characters in your document's source file. +For example, "$∫_a^b y\,dx$" yields $∫_a^b y\,dx$ and "$$∫_a^b y\,dx.$$" yields +$$∫_a^b y\,dx.$$ + +\bye
\ No newline at end of file diff --git a/macros/xetex/plain/unimath-plain-xetex/tex/unimath-plain-alphafams.tex b/macros/xetex/plain/unimath-plain-xetex/tex/unimath-plain-alphafams.tex new file mode 100644 index 0000000000..133c09727b --- /dev/null +++ b/macros/xetex/plain/unimath-plain-xetex/tex/unimath-plain-alphafams.tex @@ -0,0 +1,1151 @@ +%% unimath-plain-alphafams.tex +%% ****************************************************** +%% * This work may be distributed and/or modified under * +%% * the conditions of the LaTeX Project Public License * +%% * http://www.latex-project.org/lppl.txt * +%% * either version 1.3c of this license or any later * +%% * version. * +%% ****************************************************** +\protected\def\rm{\relax% +\ifmmode +% numbers + \Umathcode `\0 = 0 \unimathfam "30 + \Umathcode `\1 = 0 \unimathfam "31 + \Umathcode `\2 = 0 \unimathfam "32 + \Umathcode `\3 = 0 \unimathfam "33 + \Umathcode `\4 = 0 \unimathfam "34 + \Umathcode `\5 = 0 \unimathfam "35 + \Umathcode `\6 = 0 \unimathfam "36 + \Umathcode `\7 = 0 \unimathfam "37 + \Umathcode `\8 = 0 \unimathfam "38 + \Umathcode `\9 = 0 \unimathfam "39 +% latin + \Umathcode `\A = 0 \unimathfam `\A + \Umathcode `\B = 0 \unimathfam `\B + \Umathcode `\C = 0 \unimathfam `\C + \Umathcode `\D = 0 \unimathfam `\D + \Umathcode `\E = 0 \unimathfam `\E + \Umathcode `\F = 0 \unimathfam `\F + \Umathcode `\G = 0 \unimathfam `\G + \Umathcode `\H = 0 \unimathfam `\H + \Umathcode `\I = 0 \unimathfam `\I + \Umathcode `\J = 0 \unimathfam `\J + \Umathcode `\K = 0 \unimathfam `\K + \Umathcode `\L = 0 \unimathfam `\L + \Umathcode `\M = 0 \unimathfam `\M + \Umathcode `\N = 0 \unimathfam `\N + \Umathcode `\O = 0 \unimathfam `\O + \Umathcode `\P = 0 \unimathfam `\P + \Umathcode `\Q = 0 \unimathfam `\Q + \Umathcode `\R = 0 \unimathfam `\R + \Umathcode `\S = 0 \unimathfam `\S + \Umathcode `\T = 0 \unimathfam `\T + \Umathcode `\U = 0 \unimathfam `\U + \Umathcode `\V = 0 \unimathfam `\V + \Umathcode `\W = 0 \unimathfam `\W + \Umathcode `\X = 0 \unimathfam `\X + \Umathcode `\Y = 0 \unimathfam `\Y + \Umathcode `\Z = 0 \unimathfam `\Z + \Umathcode `\a = 0 \unimathfam `\a + \Umathcode `\b = 0 \unimathfam `\b + \Umathcode `\c = 0 \unimathfam `\c + \Umathcode `\d = 0 \unimathfam `\d + \Umathcode `\e = 0 \unimathfam `\e + \Umathcode `\f = 0 \unimathfam `\f + \Umathcode `\g = 0 \unimathfam `\g + \Umathcode `\h = 0 \unimathfam `\h + \Umathcode `\i = 0 \unimathfam `\i + \Umathcode `\j = 0 \unimathfam `\j + \Umathcode `\k = 0 \unimathfam `\k + \Umathcode `\l = 0 \unimathfam `\l + \Umathcode `\m = 0 \unimathfam `\m + \Umathcode `\n = 0 \unimathfam `\n + \Umathcode `\o = 0 \unimathfam `\o + \Umathcode `\p = 0 \unimathfam `\p + \Umathcode `\q = 0 \unimathfam `\q + \Umathcode `\r = 0 \unimathfam `\r + \Umathcode `\s = 0 \unimathfam `\s + \Umathcode `\t = 0 \unimathfam `\t + \Umathcode `\u = 0 \unimathfam `\u + \Umathcode `\v = 0 \unimathfam `\v + \Umathcode `\w = 0 \unimathfam `\w + \Umathcode `\x = 0 \unimathfam `\x + \Umathcode `\y = 0 \unimathfam `\y + \Umathcode `\z = 0 \unimathfam `\z +% greek + \Umathcode `\Α = 0 \unimathfam "00391 + \Umathcode `\Β = 0 \unimathfam "00392 + \Umathcode `\Γ = 0 \unimathfam "00393 + \Umathcode `\Δ = 0 \unimathfam "00394 + \Umathcode `\Ε = 0 \unimathfam "00395 + \Umathcode `\Ζ = 0 \unimathfam "00396 + \Umathcode `\Η = 0 \unimathfam "00397 + \Umathcode `\Θ = 0 \unimathfam "00398 + \Umathcode `\Ι = 0 \unimathfam "00399 + \Umathcode `\Κ = 0 \unimathfam "0039A + \Umathcode `\Λ = 0 \unimathfam "0039B + \Umathcode `\Μ = 0 \unimathfam "0039C + \Umathcode `\Ν = 0 \unimathfam "0039D + \Umathcode `\Ξ = 0 \unimathfam "0039E + \Umathcode `\Ο = 0 \unimathfam "0039F + \Umathcode `\Π = 0 \unimathfam "003A0 + \Umathcode `\Ρ = 0 \unimathfam "003A1 + \Umathcode `\Σ = 0 \unimathfam "003A3 + \Umathcode `\Τ = 0 \unimathfam "003A4 + \Umathcode `\Υ = 0 \unimathfam "003A5 + \Umathcode `\Φ = 0 \unimathfam "003A6 + \Umathcode `\Χ = 0 \unimathfam "003A7 + \Umathcode `\Ψ = 0 \unimathfam "003A8 + \Umathcode `\Ω = 0 \unimathfam "003A9 + \Umathcode `\α = 0 \unimathfam "003B1 + \Umathcode `\β = 0 \unimathfam "003B2 + \Umathcode `\γ = 0 \unimathfam "003B3 + \Umathcode `\δ = 0 \unimathfam "003B4 + \Umathcode `\ε = 0 \unimathfam "003B5 + \Umathcode `\ζ = 0 \unimathfam "003B6 + \Umathcode `\η = 0 \unimathfam "003B7 + \Umathcode `\θ = 0 \unimathfam "003B8 + \Umathcode `\ι = 0 \unimathfam "003B9 + \Umathcode `\κ = 0 \unimathfam "003BA + \Umathcode `\λ = 0 \unimathfam "003BB + \Umathcode `\μ = 0 \unimathfam "003BC + \Umathcode `\ν = 0 \unimathfam "003BD + \Umathcode `\ξ = 0 \unimathfam "003BE + \Umathcode `\ο = 0 \unimathfam "003BF + \Umathcode `\π = 0 \unimathfam "003C0 + \Umathcode `\ρ = 0 \unimathfam "003C1 + \Umathcode `\ς = 0 \unimathfam "003C2 + \Umathcode `\σ = 0 \unimathfam "003C3 + \Umathcode `\τ = 0 \unimathfam "003C4 + \Umathcode `\υ = 0 \unimathfam "003C5 + \Umathcode `\φ = 0 \unimathfam "003D5 + \Umathcode `\χ = 0 \unimathfam "003C7 + \Umathcode `\ψ = 0 \unimathfam "003C8 + \Umathcode `\ω = 0 \unimathfam "003C9 + \Umathcode `\ϑ = 0 \unimathfam "003D1 + \Umathcode `\ϕ = 0 \unimathfam "003C6 + \Umathcode `\ϖ = 0 \unimathfam "003D6 + \Umathcode `\ϰ = 0 \unimathfam "003F0 + \Umathcode `\ϱ = 0 \unimathfam "003F1 + \Umathcode `\ϴ = 0 \unimathfam "003F4 + \Umathcode `\ϵ = 0 \unimathfam "003F5 +\fi +\tenrm} + +\protected\def\bf{\relax% +\ifmmode +% numbers + \Umathcode `\0 = 0 \unimathfam "1D7CE + \Umathcode `\1 = 0 \unimathfam "1D7CF + \Umathcode `\2 = 0 \unimathfam "1D7D0 + \Umathcode `\3 = 0 \unimathfam "1D7D1 + \Umathcode `\4 = 0 \unimathfam "1D7D2 + \Umathcode `\5 = 0 \unimathfam "1D7D3 + \Umathcode `\6 = 0 \unimathfam "1D7D4 + \Umathcode `\7 = 0 \unimathfam "1D7D5 + \Umathcode `\8 = 0 \unimathfam "1D7D6 + \Umathcode `\9 = 0 \unimathfam "1D7D7 +% latin + \Umathcode `\A = 0 \unimathfam "1D400 + \Umathcode `\B = 0 \unimathfam "1D401 + \Umathcode `\C = 0 \unimathfam "1D402 + \Umathcode `\D = 0 \unimathfam "1D403 + \Umathcode `\E = 0 \unimathfam "1D404 + \Umathcode `\F = 0 \unimathfam "1D405 + \Umathcode `\G = 0 \unimathfam "1D406 + \Umathcode `\H = 0 \unimathfam "1D407 + \Umathcode `\I = 0 \unimathfam "1D408 + \Umathcode `\J = 0 \unimathfam "1D409 + \Umathcode `\K = 0 \unimathfam "1D40A + \Umathcode `\L = 0 \unimathfam "1D40B + \Umathcode `\M = 0 \unimathfam "1D40C + \Umathcode `\N = 0 \unimathfam "1D40D + \Umathcode `\O = 0 \unimathfam "1D40E + \Umathcode `\P = 0 \unimathfam "1D40F + \Umathcode `\Q = 0 \unimathfam "1D410 + \Umathcode `\R = 0 \unimathfam "1D411 + \Umathcode `\S = 0 \unimathfam "1D412 + \Umathcode `\T = 0 \unimathfam "1D413 + \Umathcode `\U = 0 \unimathfam "1D414 + \Umathcode `\V = 0 \unimathfam "1D415 + \Umathcode `\W = 0 \unimathfam "1D416 + \Umathcode `\X = 0 \unimathfam "1D417 + \Umathcode `\Y = 0 \unimathfam "1D418 + \Umathcode `\Z = 0 \unimathfam "1D419 + \Umathcode `\a = 0 \unimathfam "1D41A + \Umathcode `\b = 0 \unimathfam "1D41B + \Umathcode `\c = 0 \unimathfam "1D41C + \Umathcode `\d = 0 \unimathfam "1D41D + \Umathcode `\e = 0 \unimathfam "1D41E + \Umathcode `\f = 0 \unimathfam "1D41F + \Umathcode `\g = 0 \unimathfam "1D420 + \Umathcode `\h = 0 \unimathfam "1D421 + \Umathcode `\i = 0 \unimathfam "1D422 + \Umathcode `\j = 0 \unimathfam "1D423 + \Umathcode `\k = 0 \unimathfam "1D424 + \Umathcode `\l = 0 \unimathfam "1D425 + \Umathcode `\m = 0 \unimathfam "1D426 + \Umathcode `\n = 0 \unimathfam "1D427 + \Umathcode `\o = 0 \unimathfam "1D428 + \Umathcode `\p = 0 \unimathfam "1D429 + \Umathcode `\q = 0 \unimathfam "1D42A + \Umathcode `\r = 0 \unimathfam "1D42B + \Umathcode `\s = 0 \unimathfam "1D42C + \Umathcode `\t = 0 \unimathfam "1D42D + \Umathcode `\u = 0 \unimathfam "1D42E + \Umathcode `\v = 0 \unimathfam "1D42F + \Umathcode `\w = 0 \unimathfam "1D430 + \Umathcode `\x = 0 \unimathfam "1D431 + \Umathcode `\y = 0 \unimathfam "1D432 + \Umathcode `\z = 0 \unimathfam "1D433 +% greek + \Umathcode `\Α = 0 \unimathfam "1D6A8 + \Umathcode `\Β = 0 \unimathfam "1D6A9 + \Umathcode `\Γ = 0 \unimathfam "1D6AA + \Umathcode `\Δ = 0 \unimathfam "1D6AB + \Umathcode `\Ε = 0 \unimathfam "1D6AC + \Umathcode `\Ζ = 0 \unimathfam "1D6AD + \Umathcode `\Η = 0 \unimathfam "1D6AE + \Umathcode `\Θ = 0 \unimathfam "1D6AF + \Umathcode `\Ι = 0 \unimathfam "1D6B0 + \Umathcode `\Κ = 0 \unimathfam "1D6B1 + \Umathcode `\Λ = 0 \unimathfam "1D6B2 + \Umathcode `\Μ = 0 \unimathfam "1D6B3 + \Umathcode `\Ν = 0 \unimathfam "1D6B4 + \Umathcode `\Ξ = 0 \unimathfam "1D6B5 + \Umathcode `\Ο = 0 \unimathfam "1D6B6 + \Umathcode `\Π = 0 \unimathfam "1D6B7 + \Umathcode `\Ρ = 0 \unimathfam "1D6B8 + \Umathcode `\ϴ = 0 \unimathfam "1D6B9 + \Umathcode `\Σ = 0 \unimathfam "1D6BA + \Umathcode `\Τ = 0 \unimathfam "1D6BB + \Umathcode `\Υ = 0 \unimathfam "1D6BC + \Umathcode `\Φ = 0 \unimathfam "1D6BD + \Umathcode `\Χ = 0 \unimathfam "1D6BE + \Umathcode `\Ψ = 0 \unimathfam "1D6BF + \Umathcode `\Ω = 0 \unimathfam "1D6C0 + \Umathcode `\α = 0 \unimathfam "1D6C2 + \Umathcode `\β = 0 \unimathfam "1D6C3 + \Umathcode `\γ = 0 \unimathfam "1D6C4 + \Umathcode `\δ = 0 \unimathfam "1D6C5 + \Umathcode `\ε = 0 \unimathfam "1D6C6 + \Umathcode `\ζ = 0 \unimathfam "1D6C7 + \Umathcode `\η = 0 \unimathfam "1D6C8 + \Umathcode `\θ = 0 \unimathfam "1D6C9 + \Umathcode `\ι = 0 \unimathfam "1D6CA + \Umathcode `\κ = 0 \unimathfam "1D6CB + \Umathcode `\λ = 0 \unimathfam "1D6CC + \Umathcode `\μ = 0 \unimathfam "1D6CD + \Umathcode `\ν = 0 \unimathfam "1D6CE + \Umathcode `\ξ = 0 \unimathfam "1D6CF + \Umathcode `\ο = 0 \unimathfam "1D6D0 + \Umathcode `\π = 0 \unimathfam "1D6D1 + \Umathcode `\ρ = 0 \unimathfam "1D6D2 + \Umathcode `\ς = 0 \unimathfam "1D6D3 + \Umathcode `\σ = 0 \unimathfam "1D6D4 + \Umathcode `\τ = 0 \unimathfam "1D6D5 + \Umathcode `\υ = 0 \unimathfam "1D6D6 + \Umathcode `\ϕ = 0 \unimathfam "1D6D7 + \Umathcode `\χ = 0 \unimathfam "1D6D8 + \Umathcode `\ψ = 0 \unimathfam "1D6D9 + \Umathcode `\ω = 0 \unimathfam "1D6DA + \Umathcode `\ϵ = 0 \unimathfam "1D6DC + \Umathcode `\ϑ = 0 \unimathfam "1D6DD + \Umathcode `\ϰ = 0 \unimathfam "1D6DE + \Umathcode `\φ = 0 \unimathfam "1D6DF + \Umathcode `\ϱ = 0 \unimathfam "1D6E0 + \Umathcode `\ϖ = 0 \unimathfam "1D6E1 +\fi +\tenbf} + +\protected\def\bfit{\relax% +\ifmmode +% There's no bfit numbers in UCS, use bf instead. + \Umathcode `\0 = 0 \unimathfam "1D7CE + \Umathcode `\1 = 0 \unimathfam "1D7CF + \Umathcode `\2 = 0 \unimathfam "1D7D0 + \Umathcode `\3 = 0 \unimathfam "1D7D1 + \Umathcode `\4 = 0 \unimathfam "1D7D2 + \Umathcode `\5 = 0 \unimathfam "1D7D3 + \Umathcode `\6 = 0 \unimathfam "1D7D4 + \Umathcode `\7 = 0 \unimathfam "1D7D5 + \Umathcode `\8 = 0 \unimathfam "1D7D6 + \Umathcode `\9 = 0 \unimathfam "1D7D7 +% latin + \Umathcode `\A = 0 \unimathfam "1D468 + \Umathcode `\B = 0 \unimathfam "1D469 + \Umathcode `\C = 0 \unimathfam "1D46A + \Umathcode `\D = 0 \unimathfam "1D46B + \Umathcode `\E = 0 \unimathfam "1D46C + \Umathcode `\F = 0 \unimathfam "1D46D + \Umathcode `\G = 0 \unimathfam "1D46E + \Umathcode `\H = 0 \unimathfam "1D46F + \Umathcode `\I = 0 \unimathfam "1D470 + \Umathcode `\J = 0 \unimathfam "1D471 + \Umathcode `\K = 0 \unimathfam "1D472 + \Umathcode `\L = 0 \unimathfam "1D473 + \Umathcode `\M = 0 \unimathfam "1D474 + \Umathcode `\N = 0 \unimathfam "1D475 + \Umathcode `\O = 0 \unimathfam "1D476 + \Umathcode `\P = 0 \unimathfam "1D477 + \Umathcode `\Q = 0 \unimathfam "1D478 + \Umathcode `\R = 0 \unimathfam "1D479 + \Umathcode `\S = 0 \unimathfam "1D47A + \Umathcode `\T = 0 \unimathfam "1D47B + \Umathcode `\U = 0 \unimathfam "1D47C + \Umathcode `\V = 0 \unimathfam "1D47D + \Umathcode `\W = 0 \unimathfam "1D47E + \Umathcode `\X = 0 \unimathfam "1D47F + \Umathcode `\Y = 0 \unimathfam "1D480 + \Umathcode `\Z = 0 \unimathfam "1D481 + \Umathcode `\a = 0 \unimathfam "1D482 + \Umathcode `\b = 0 \unimathfam "1D483 + \Umathcode `\c = 0 \unimathfam "1D484 + \Umathcode `\d = 0 \unimathfam "1D485 + \Umathcode `\e = 0 \unimathfam "1D486 + \Umathcode `\f = 0 \unimathfam "1D487 + \Umathcode `\g = 0 \unimathfam "1D488 + \Umathcode `\h = 0 \unimathfam "1D489 + \Umathcode `\i = 0 \unimathfam "1D48A + \Umathcode `\j = 0 \unimathfam "1D48B + \Umathcode `\k = 0 \unimathfam "1D48C + \Umathcode `\l = 0 \unimathfam "1D48D + \Umathcode `\m = 0 \unimathfam "1D48E + \Umathcode `\n = 0 \unimathfam "1D48F + \Umathcode `\o = 0 \unimathfam "1D490 + \Umathcode `\p = 0 \unimathfam "1D491 + \Umathcode `\q = 0 \unimathfam "1D492 + \Umathcode `\r = 0 \unimathfam "1D493 + \Umathcode `\s = 0 \unimathfam "1D494 + \Umathcode `\t = 0 \unimathfam "1D495 + \Umathcode `\u = 0 \unimathfam "1D496 + \Umathcode `\v = 0 \unimathfam "1D497 + \Umathcode `\w = 0 \unimathfam "1D498 + \Umathcode `\x = 0 \unimathfam "1D499 + \Umathcode `\y = 0 \unimathfam "1D49A + \Umathcode `\z = 0 \unimathfam "1D49B +% greek + \Umathcode `\Α = 0 \unimathfam "1D71C + \Umathcode `\Β = 0 \unimathfam "1D71D + \Umathcode `\Γ = 0 \unimathfam "1D71E + \Umathcode `\Δ = 0 \unimathfam "1D71F + \Umathcode `\Ε = 0 \unimathfam "1D720 + \Umathcode `\Ζ = 0 \unimathfam "1D721 + \Umathcode `\Η = 0 \unimathfam "1D722 + \Umathcode `\Θ = 0 \unimathfam "1D723 + \Umathcode `\Ι = 0 \unimathfam "1D724 + \Umathcode `\Κ = 0 \unimathfam "1D725 + \Umathcode `\Λ = 0 \unimathfam "1D726 + \Umathcode `\Μ = 0 \unimathfam "1D727 + \Umathcode `\Ν = 0 \unimathfam "1D728 + \Umathcode `\Ξ = 0 \unimathfam "1D729 + \Umathcode `\Ο = 0 \unimathfam "1D72A + \Umathcode `\Π = 0 \unimathfam "1D72B + \Umathcode `\Ρ = 0 \unimathfam "1D72C + \Umathcode `\ϴ = 0 \unimathfam "1D72D + \Umathcode `\Σ = 0 \unimathfam "1D72E + \Umathcode `\Τ = 0 \unimathfam "1D72F + \Umathcode `\Υ = 0 \unimathfam "1D730 + \Umathcode `\Φ = 0 \unimathfam "1D731 + \Umathcode `\Χ = 0 \unimathfam "1D732 + \Umathcode `\Ψ = 0 \unimathfam "1D733 + \Umathcode `\Ω = 0 \unimathfam "1D734 + \Umathcode `\α = 0 \unimathfam "1D736 + \Umathcode `\β = 0 \unimathfam "1D737 + \Umathcode `\γ = 0 \unimathfam "1D738 + \Umathcode `\δ = 0 \unimathfam "1D739 + \Umathcode `\ε = 0 \unimathfam "1D73A + \Umathcode `\ζ = 0 \unimathfam "1D73B + \Umathcode `\η = 0 \unimathfam "1D73C + \Umathcode `\θ = 0 \unimathfam "1D73D + \Umathcode `\ι = 0 \unimathfam "1D73E + \Umathcode `\κ = 0 \unimathfam "1D73F + \Umathcode `\λ = 0 \unimathfam "1D740 + \Umathcode `\μ = 0 \unimathfam "1D741 + \Umathcode `\ν = 0 \unimathfam "1D742 + \Umathcode `\ξ = 0 \unimathfam "1D743 + \Umathcode `\ο = 0 \unimathfam "1D744 + \Umathcode `\π = 0 \unimathfam "1D745 + \Umathcode `\ρ = 0 \unimathfam "1D746 + \Umathcode `\ς = 0 \unimathfam "1D747 + \Umathcode `\σ = 0 \unimathfam "1D748 + \Umathcode `\τ = 0 \unimathfam "1D749 + \Umathcode `\υ = 0 \unimathfam "1D74A + \Umathcode `\ϕ = 0 \unimathfam "1D74B + \Umathcode `\χ = 0 \unimathfam "1D74C + \Umathcode `\ψ = 0 \unimathfam "1D74D + \Umathcode `\ω = 0 \unimathfam "1D74E + \Umathcode `\ϵ = 0 \unimathfam "1D750 + \Umathcode `\ϑ = 0 \unimathfam "1D751 + \Umathcode `\ϰ = 0 \unimathfam "1D752 + \Umathcode `\φ = 0 \unimathfam "1D753 + \Umathcode `\ϱ = 0 \unimathfam "1D754 + \Umathcode `\ϖ = 0 \unimathfam "1D755 +\fi +\tenbfit} +\let\itbf=\bfit + +\protected\def\sf{\relax% +\ifmmode +% numbers + \Umathcode `\0 = 0 \unimathfam "1D7E2 + \Umathcode `\1 = 0 \unimathfam "1D7E3 + \Umathcode `\2 = 0 \unimathfam "1D7E4 + \Umathcode `\3 = 0 \unimathfam "1D7E5 + \Umathcode `\4 = 0 \unimathfam "1D7E6 + \Umathcode `\5 = 0 \unimathfam "1D7E7 + \Umathcode `\6 = 0 \unimathfam "1D7E8 + \Umathcode `\7 = 0 \unimathfam "1D7E9 + \Umathcode `\8 = 0 \unimathfam "1D7EA + \Umathcode `\9 = 0 \unimathfam "1D7EB +% latin + \Umathcode `\A = 0 \unimathfam "1D5A0 + \Umathcode `\B = 0 \unimathfam "1D5A1 + \Umathcode `\C = 0 \unimathfam "1D5A2 + \Umathcode `\D = 0 \unimathfam "1D5A3 + \Umathcode `\E = 0 \unimathfam "1D5A4 + \Umathcode `\F = 0 \unimathfam "1D5A5 + \Umathcode `\G = 0 \unimathfam "1D5A6 + \Umathcode `\H = 0 \unimathfam "1D5A7 + \Umathcode `\I = 0 \unimathfam "1D5A8 + \Umathcode `\J = 0 \unimathfam "1D5A9 + \Umathcode `\K = 0 \unimathfam "1D5AA + \Umathcode `\L = 0 \unimathfam "1D5AB + \Umathcode `\M = 0 \unimathfam "1D5AC + \Umathcode `\N = 0 \unimathfam "1D5AD + \Umathcode `\O = 0 \unimathfam "1D5AE + \Umathcode `\P = 0 \unimathfam "1D5AF + \Umathcode `\Q = 0 \unimathfam "1D5B0 + \Umathcode `\R = 0 \unimathfam "1D5B1 + \Umathcode `\S = 0 \unimathfam "1D5B2 + \Umathcode `\T = 0 \unimathfam "1D5B3 + \Umathcode `\U = 0 \unimathfam "1D5B4 + \Umathcode `\V = 0 \unimathfam "1D5B5 + \Umathcode `\W = 0 \unimathfam "1D5B6 + \Umathcode `\X = 0 \unimathfam "1D5B7 + \Umathcode `\Y = 0 \unimathfam "1D5B8 + \Umathcode `\Z = 0 \unimathfam "1D5B9 + \Umathcode `\a = 0 \unimathfam "1D5BA + \Umathcode `\b = 0 \unimathfam "1D5BB + \Umathcode `\c = 0 \unimathfam "1D5BC + \Umathcode `\d = 0 \unimathfam "1D5BD + \Umathcode `\e = 0 \unimathfam "1D5BE + \Umathcode `\f = 0 \unimathfam "1D5BF + \Umathcode `\g = 0 \unimathfam "1D5C0 + \Umathcode `\h = 0 \unimathfam "1D5C1 + \Umathcode `\i = 0 \unimathfam "1D5C2 + \Umathcode `\j = 0 \unimathfam "1D5C3 + \Umathcode `\k = 0 \unimathfam "1D5C4 + \Umathcode `\l = 0 \unimathfam "1D5C5 + \Umathcode `\m = 0 \unimathfam "1D5C6 + \Umathcode `\n = 0 \unimathfam "1D5C7 + \Umathcode `\o = 0 \unimathfam "1D5C8 + \Umathcode `\p = 0 \unimathfam "1D5C9 + \Umathcode `\q = 0 \unimathfam "1D5CA + \Umathcode `\r = 0 \unimathfam "1D5CB + \Umathcode `\s = 0 \unimathfam "1D5CC + \Umathcode `\t = 0 \unimathfam "1D5CD + \Umathcode `\u = 0 \unimathfam "1D5CE + \Umathcode `\v = 0 \unimathfam "1D5CF + \Umathcode `\w = 0 \unimathfam "1D5D0 + \Umathcode `\x = 0 \unimathfam "1D5D1 + \Umathcode `\y = 0 \unimathfam "1D5D2 + \Umathcode `\z = 0 \unimathfam "1D5D3 +% no greek +\fi +\tensf} + +\protected\def\sfit{\relax% +\ifmmode +% no numbers +% latin + \Umathcode `\A = 0 \unimathfam "1D608 + \Umathcode `\B = 0 \unimathfam "1D609 + \Umathcode `\C = 0 \unimathfam "1D60A + \Umathcode `\D = 0 \unimathfam "1D60B + \Umathcode `\E = 0 \unimathfam "1D60C + \Umathcode `\F = 0 \unimathfam "1D60D + \Umathcode `\G = 0 \unimathfam "1D60E + \Umathcode `\H = 0 \unimathfam "1D60F + \Umathcode `\I = 0 \unimathfam "1D610 + \Umathcode `\J = 0 \unimathfam "1D611 + \Umathcode `\K = 0 \unimathfam "1D612 + \Umathcode `\L = 0 \unimathfam "1D613 + \Umathcode `\M = 0 \unimathfam "1D614 + \Umathcode `\N = 0 \unimathfam "1D615 + \Umathcode `\O = 0 \unimathfam "1D616 + \Umathcode `\P = 0 \unimathfam "1D617 + \Umathcode `\Q = 0 \unimathfam "1D618 + \Umathcode `\R = 0 \unimathfam "1D619 + \Umathcode `\S = 0 \unimathfam "1D61A + \Umathcode `\T = 0 \unimathfam "1D61B + \Umathcode `\U = 0 \unimathfam "1D61C + \Umathcode `\V = 0 \unimathfam "1D61D + \Umathcode `\W = 0 \unimathfam "1D61E + \Umathcode `\X = 0 \unimathfam "1D61F + \Umathcode `\Y = 0 \unimathfam "1D620 + \Umathcode `\Z = 0 \unimathfam "1D621 + \Umathcode `\a = 0 \unimathfam "1D622 + \Umathcode `\b = 0 \unimathfam "1D623 + \Umathcode `\c = 0 \unimathfam "1D624 + \Umathcode `\d = 0 \unimathfam "1D625 + \Umathcode `\e = 0 \unimathfam "1D626 + \Umathcode `\f = 0 \unimathfam "1D627 + \Umathcode `\g = 0 \unimathfam "1D628 + \Umathcode `\h = 0 \unimathfam "1D629 + \Umathcode `\i = 0 \unimathfam "1D62A + \Umathcode `\j = 0 \unimathfam "1D62B + \Umathcode `\k = 0 \unimathfam "1D62C + \Umathcode `\l = 0 \unimathfam "1D62D + \Umathcode `\m = 0 \unimathfam "1D62E + \Umathcode `\n = 0 \unimathfam "1D62F + \Umathcode `\o = 0 \unimathfam "1D630 + \Umathcode `\p = 0 \unimathfam "1D631 + \Umathcode `\q = 0 \unimathfam "1D632 + \Umathcode `\r = 0 \unimathfam "1D633 + \Umathcode `\s = 0 \unimathfam "1D634 + \Umathcode `\t = 0 \unimathfam "1D635 + \Umathcode `\u = 0 \unimathfam "1D636 + \Umathcode `\v = 0 \unimathfam "1D637 + \Umathcode `\w = 0 \unimathfam "1D638 + \Umathcode `\x = 0 \unimathfam "1D639 + \Umathcode `\y = 0 \unimathfam "1D63A + \Umathcode `\z = 0 \unimathfam "1D63B +% no greek +\fi +\tensfit} +\let\itsf=\sfit + +\protected\def\sfbf{\relax% +\ifmmode +% numbers + \Umathcode `\0 = 0 \unimathfam "1D7EC + \Umathcode `\1 = 0 \unimathfam "1D7ED + \Umathcode `\2 = 0 \unimathfam "1D7EE + \Umathcode `\3 = 0 \unimathfam "1D7EF + \Umathcode `\4 = 0 \unimathfam "1D7F0 + \Umathcode `\5 = 0 \unimathfam "1D7F1 + \Umathcode `\6 = 0 \unimathfam "1D7F2 + \Umathcode `\7 = 0 \unimathfam "1D7F3 + \Umathcode `\8 = 0 \unimathfam "1D7F4 + \Umathcode `\9 = 0 \unimathfam "1D7F5 +% latin + \Umathcode `\A = 0 \unimathfam "1D5D4 + \Umathcode `\B = 0 \unimathfam "1D5D5 + \Umathcode `\C = 0 \unimathfam "1D5D6 + \Umathcode `\D = 0 \unimathfam "1D5D7 + \Umathcode `\E = 0 \unimathfam "1D5D8 + \Umathcode `\F = 0 \unimathfam "1D5D9 + \Umathcode `\G = 0 \unimathfam "1D5DA + \Umathcode `\H = 0 \unimathfam "1D5DB + \Umathcode `\I = 0 \unimathfam "1D5DC + \Umathcode `\J = 0 \unimathfam "1D5DD + \Umathcode `\K = 0 \unimathfam "1D5DE + \Umathcode `\L = 0 \unimathfam "1D5DF + \Umathcode `\M = 0 \unimathfam "1D5E0 + \Umathcode `\N = 0 \unimathfam "1D5E1 + \Umathcode `\O = 0 \unimathfam "1D5E2 + \Umathcode `\P = 0 \unimathfam "1D5E3 + \Umathcode `\Q = 0 \unimathfam "1D5E4 + \Umathcode `\R = 0 \unimathfam "1D5E5 + \Umathcode `\S = 0 \unimathfam "1D5E6 + \Umathcode `\T = 0 \unimathfam "1D5E7 + \Umathcode `\U = 0 \unimathfam "1D5E8 + \Umathcode `\V = 0 \unimathfam "1D5E9 + \Umathcode `\W = 0 \unimathfam "1D5EA + \Umathcode `\X = 0 \unimathfam "1D5EB + \Umathcode `\Y = 0 \unimathfam "1D5EC + \Umathcode `\Z = 0 \unimathfam "1D5ED + \Umathcode `\a = 0 \unimathfam "1D5EE + \Umathcode `\b = 0 \unimathfam "1D5EF + \Umathcode `\c = 0 \unimathfam "1D5F0 + \Umathcode `\d = 0 \unimathfam "1D5F1 + \Umathcode `\e = 0 \unimathfam "1D5F2 + \Umathcode `\f = 0 \unimathfam "1D5F3 + \Umathcode `\g = 0 \unimathfam "1D5F4 + \Umathcode `\h = 0 \unimathfam "1D5F5 + \Umathcode `\i = 0 \unimathfam "1D5F6 + \Umathcode `\j = 0 \unimathfam "1D5F7 + \Umathcode `\k = 0 \unimathfam "1D5F8 + \Umathcode `\l = 0 \unimathfam "1D5F9 + \Umathcode `\m = 0 \unimathfam "1D5FA + \Umathcode `\n = 0 \unimathfam "1D5FB + \Umathcode `\o = 0 \unimathfam "1D5FC + \Umathcode `\p = 0 \unimathfam "1D5FD + \Umathcode `\q = 0 \unimathfam "1D5FE + \Umathcode `\r = 0 \unimathfam "1D5FF + \Umathcode `\s = 0 \unimathfam "1D600 + \Umathcode `\t = 0 \unimathfam "1D601 + \Umathcode `\u = 0 \unimathfam "1D602 + \Umathcode `\v = 0 \unimathfam "1D603 + \Umathcode `\w = 0 \unimathfam "1D604 + \Umathcode `\x = 0 \unimathfam "1D605 + \Umathcode `\y = 0 \unimathfam "1D606 + \Umathcode `\z = 0 \unimathfam "1D607 +% greek + \Umathcode `\Α = 0 \unimathfam "1D756 + \Umathcode `\Β = 0 \unimathfam "1D757 + \Umathcode `\Γ = 0 \unimathfam "1D758 + \Umathcode `\Δ = 0 \unimathfam "1D759 + \Umathcode `\Ε = 0 \unimathfam "1D75A + \Umathcode `\Ζ = 0 \unimathfam "1D75B + \Umathcode `\Η = 0 \unimathfam "1D75C + \Umathcode `\Θ = 0 \unimathfam "1D75D + \Umathcode `\Ι = 0 \unimathfam "1D75E + \Umathcode `\Κ = 0 \unimathfam "1D75F + \Umathcode `\Λ = 0 \unimathfam "1D760 + \Umathcode `\Μ = 0 \unimathfam "1D761 + \Umathcode `\Ν = 0 \unimathfam "1D762 + \Umathcode `\Ξ = 0 \unimathfam "1D763 + \Umathcode `\Ο = 0 \unimathfam "1D764 + \Umathcode `\Π = 0 \unimathfam "1D765 + \Umathcode `\Ρ = 0 \unimathfam "1D766 + \Umathcode `\ϴ = 0 \unimathfam "1D767 + \Umathcode `\Σ = 0 \unimathfam "1D768 + \Umathcode `\Τ = 0 \unimathfam "1D769 + \Umathcode `\Υ = 0 \unimathfam "1D76A + \Umathcode `\Φ = 0 \unimathfam "1D76B + \Umathcode `\Χ = 0 \unimathfam "1D76C + \Umathcode `\Ψ = 0 \unimathfam "1D76D + \Umathcode `\Ω = 0 \unimathfam "1D76E + \Umathcode `\α = 0 \unimathfam "1D770 + \Umathcode `\β = 0 \unimathfam "1D771 + \Umathcode `\γ = 0 \unimathfam "1D772 + \Umathcode `\δ = 0 \unimathfam "1D773 + \Umathcode `\ε = 0 \unimathfam "1D774 + \Umathcode `\ζ = 0 \unimathfam "1D775 + \Umathcode `\η = 0 \unimathfam "1D776 + \Umathcode `\θ = 0 \unimathfam "1D777 + \Umathcode `\ι = 0 \unimathfam "1D778 + \Umathcode `\κ = 0 \unimathfam "1D779 + \Umathcode `\λ = 0 \unimathfam "1D77A + \Umathcode `\μ = 0 \unimathfam "1D77B + \Umathcode `\ν = 0 \unimathfam "1D77C + \Umathcode `\ξ = 0 \unimathfam "1D77D + \Umathcode `\ο = 0 \unimathfam "1D77E + \Umathcode `\π = 0 \unimathfam "1D77F + \Umathcode `\ρ = 0 \unimathfam "1D780 + \Umathcode `\ς = 0 \unimathfam "1D781 + \Umathcode `\σ = 0 \unimathfam "1D782 + \Umathcode `\τ = 0 \unimathfam "1D783 + \Umathcode `\υ = 0 \unimathfam "1D784 + \Umathcode `\ϕ = 0 \unimathfam "1D785 + \Umathcode `\χ = 0 \unimathfam "1D786 + \Umathcode `\ψ = 0 \unimathfam "1D787 + \Umathcode `\ω = 0 \unimathfam "1D788 + \Umathcode `\ϵ = 0 \unimathfam "1D78A + \Umathcode `\ϑ = 0 \unimathfam "1D78B + \Umathcode `\ϰ = 0 \unimathfam "1D78C + \Umathcode `\φ = 0 \unimathfam "1D78D + \Umathcode `\ϱ = 0 \unimathfam "1D78E + \Umathcode `\ϖ = 0 \unimathfam "1D78F +\fi +\tensfbf} +\let\bfsf=\sfbf + +\protected\def\sfbfit{\relax% +\ifmmode +% no numbers +% latin + \Umathcode `\A = 0 \unimathfam "1D63C + \Umathcode `\B = 0 \unimathfam "1D63D + \Umathcode `\C = 0 \unimathfam "1D63E + \Umathcode `\D = 0 \unimathfam "1D63F + \Umathcode `\E = 0 \unimathfam "1D640 + \Umathcode `\F = 0 \unimathfam "1D641 + \Umathcode `\G = 0 \unimathfam "1D642 + \Umathcode `\H = 0 \unimathfam "1D643 + \Umathcode `\I = 0 \unimathfam "1D644 + \Umathcode `\J = 0 \unimathfam "1D645 + \Umathcode `\K = 0 \unimathfam "1D646 + \Umathcode `\L = 0 \unimathfam "1D647 + \Umathcode `\M = 0 \unimathfam "1D648 + \Umathcode `\N = 0 \unimathfam "1D649 + \Umathcode `\O = 0 \unimathfam "1D64A + \Umathcode `\P = 0 \unimathfam "1D64B + \Umathcode `\Q = 0 \unimathfam "1D64C + \Umathcode `\R = 0 \unimathfam "1D64D + \Umathcode `\S = 0 \unimathfam "1D64E + \Umathcode `\T = 0 \unimathfam "1D64F + \Umathcode `\U = 0 \unimathfam "1D650 + \Umathcode `\V = 0 \unimathfam "1D651 + \Umathcode `\W = 0 \unimathfam "1D652 + \Umathcode `\X = 0 \unimathfam "1D653 + \Umathcode `\Y = 0 \unimathfam "1D654 + \Umathcode `\Z = 0 \unimathfam "1D655 + \Umathcode `\a = 0 \unimathfam "1D656 + \Umathcode `\b = 0 \unimathfam "1D657 + \Umathcode `\c = 0 \unimathfam "1D658 + \Umathcode `\d = 0 \unimathfam "1D659 + \Umathcode `\e = 0 \unimathfam "1D65A + \Umathcode `\f = 0 \unimathfam "1D65B + \Umathcode `\g = 0 \unimathfam "1D65C + \Umathcode `\h = 0 \unimathfam "1D65D + \Umathcode `\i = 0 \unimathfam "1D65E + \Umathcode `\j = 0 \unimathfam "1D65F + \Umathcode `\k = 0 \unimathfam "1D660 + \Umathcode `\l = 0 \unimathfam "1D661 + \Umathcode `\m = 0 \unimathfam "1D662 + \Umathcode `\n = 0 \unimathfam "1D663 + \Umathcode `\o = 0 \unimathfam "1D664 + \Umathcode `\p = 0 \unimathfam "1D665 + \Umathcode `\q = 0 \unimathfam "1D666 + \Umathcode `\r = 0 \unimathfam "1D667 + \Umathcode `\s = 0 \unimathfam "1D668 + \Umathcode `\t = 0 \unimathfam "1D669 + \Umathcode `\u = 0 \unimathfam "1D66A + \Umathcode `\v = 0 \unimathfam "1D66B + \Umathcode `\w = 0 \unimathfam "1D66C + \Umathcode `\x = 0 \unimathfam "1D66D + \Umathcode `\y = 0 \unimathfam "1D66E + \Umathcode `\z = 0 \unimathfam "1D66F +% greek + \Umathcode `\Α = 0 \unimathfam "1D790 + \Umathcode `\Β = 0 \unimathfam "1D791 + \Umathcode `\Γ = 0 \unimathfam "1D792 + \Umathcode `\Δ = 0 \unimathfam "1D793 + \Umathcode `\Ε = 0 \unimathfam "1D794 + \Umathcode `\Ζ = 0 \unimathfam "1D795 + \Umathcode `\Η = 0 \unimathfam "1D796 + \Umathcode `\Θ = 0 \unimathfam "1D797 + \Umathcode `\Ι = 0 \unimathfam "1D798 + \Umathcode `\Κ = 0 \unimathfam "1D799 + \Umathcode `\Λ = 0 \unimathfam "1D79A + \Umathcode `\Μ = 0 \unimathfam "1D79B + \Umathcode `\Ν = 0 \unimathfam "1D79C + \Umathcode `\Ξ = 0 \unimathfam "1D79D + \Umathcode `\Ο = 0 \unimathfam "1D79E + \Umathcode `\Π = 0 \unimathfam "1D79F + \Umathcode `\Ρ = 0 \unimathfam "1D7A0 + \Umathcode `\ϴ = 0 \unimathfam "1D7A1 + \Umathcode `\Σ = 0 \unimathfam "1D7A2 + \Umathcode `\Τ = 0 \unimathfam "1D7A3 + \Umathcode `\Υ = 0 \unimathfam "1D7A4 + \Umathcode `\Φ = 0 \unimathfam "1D7A5 + \Umathcode `\Χ = 0 \unimathfam "1D7A6 + \Umathcode `\Ψ = 0 \unimathfam "1D7A7 + \Umathcode `\Ω = 0 \unimathfam "1D7A8 + \Umathcode `\α = 0 \unimathfam "1D7AA + \Umathcode `\β = 0 \unimathfam "1D7AB + \Umathcode `\γ = 0 \unimathfam "1D7AC + \Umathcode `\δ = 0 \unimathfam "1D7AD + \Umathcode `\ε = 0 \unimathfam "1D7AE + \Umathcode `\ζ = 0 \unimathfam "1D7AF + \Umathcode `\η = 0 \unimathfam "1D7B0 + \Umathcode `\θ = 0 \unimathfam "1D7B1 + \Umathcode `\ι = 0 \unimathfam "1D7B2 + \Umathcode `\κ = 0 \unimathfam "1D7B3 + \Umathcode `\λ = 0 \unimathfam "1D7B4 + \Umathcode `\μ = 0 \unimathfam "1D7B5 + \Umathcode `\ν = 0 \unimathfam "1D7B6 + \Umathcode `\ξ = 0 \unimathfam "1D7B7 + \Umathcode `\ο = 0 \unimathfam "1D7B8 + \Umathcode `\π = 0 \unimathfam "1D7B9 + \Umathcode `\ρ = 0 \unimathfam "1D7BA + \Umathcode `\ς = 0 \unimathfam "1D7BB + \Umathcode `\σ = 0 \unimathfam "1D7BC + \Umathcode `\τ = 0 \unimathfam "1D7BD + \Umathcode `\υ = 0 \unimathfam "1D7BE + \Umathcode `\ϕ = 0 \unimathfam "1D7BF + \Umathcode `\χ = 0 \unimathfam "1D7C0 + \Umathcode `\ψ = 0 \unimathfam "1D7C1 + \Umathcode `\ω = 0 \unimathfam "1D7C2 + \Umathcode `\ϵ = 0 \unimathfam "1D7C4 + \Umathcode `\ϑ = 0 \unimathfam "1D7C5 + \Umathcode `\ϰ = 0 \unimathfam "1D7C6 + \Umathcode `\φ = 0 \unimathfam "1D7C7 + \Umathcode `\ϱ = 0 \unimathfam "1D7C8 + \Umathcode `\ϖ = 0 \unimathfam "1D7C9 +\fi +\tensfbfit} +\let\sfitbf=\sfbfit +\let\bfsfit=\sfbfit +\let\bfitsf=\sfbfit +\let\itsfbf=\sfbfit +\let\itbfsf=\sfbfit + +\protected\def\tt{\relax% +\ifmmode +% numbers + \Umathcode `\0 = 0 \unimathfam "1D7F6 + \Umathcode `\1 = 0 \unimathfam "1D7F7 + \Umathcode `\2 = 0 \unimathfam "1D7F8 + \Umathcode `\3 = 0 \unimathfam "1D7F9 + \Umathcode `\4 = 0 \unimathfam "1D7FA + \Umathcode `\5 = 0 \unimathfam "1D7FB + \Umathcode `\6 = 0 \unimathfam "1D7FC + \Umathcode `\7 = 0 \unimathfam "1D7FD + \Umathcode `\8 = 0 \unimathfam "1D7FE + \Umathcode `\9 = 0 \unimathfam "1D7FF +% latin + \Umathcode `\A = 0 \unimathfam "1D670 + \Umathcode `\B = 0 \unimathfam "1D671 + \Umathcode `\C = 0 \unimathfam "1D672 + \Umathcode `\D = 0 \unimathfam "1D673 + \Umathcode `\E = 0 \unimathfam "1D674 + \Umathcode `\F = 0 \unimathfam "1D675 + \Umathcode `\G = 0 \unimathfam "1D676 + \Umathcode `\H = 0 \unimathfam "1D677 + \Umathcode `\I = 0 \unimathfam "1D678 + \Umathcode `\J = 0 \unimathfam "1D679 + \Umathcode `\K = 0 \unimathfam "1D67A + \Umathcode `\L = 0 \unimathfam "1D67B + \Umathcode `\M = 0 \unimathfam "1D67C + \Umathcode `\N = 0 \unimathfam "1D67D + \Umathcode `\O = 0 \unimathfam "1D67E + \Umathcode `\P = 0 \unimathfam "1D67F + \Umathcode `\Q = 0 \unimathfam "1D680 + \Umathcode `\R = 0 \unimathfam "1D681 + \Umathcode `\S = 0 \unimathfam "1D682 + \Umathcode `\T = 0 \unimathfam "1D683 + \Umathcode `\U = 0 \unimathfam "1D684 + \Umathcode `\V = 0 \unimathfam "1D685 + \Umathcode `\W = 0 \unimathfam "1D686 + \Umathcode `\X = 0 \unimathfam "1D687 + \Umathcode `\Y = 0 \unimathfam "1D688 + \Umathcode `\Z = 0 \unimathfam "1D689 + \Umathcode `\a = 0 \unimathfam "1D68A + \Umathcode `\b = 0 \unimathfam "1D68B + \Umathcode `\c = 0 \unimathfam "1D68C + \Umathcode `\d = 0 \unimathfam "1D68D + \Umathcode `\e = 0 \unimathfam "1D68E + \Umathcode `\f = 0 \unimathfam "1D68F + \Umathcode `\g = 0 \unimathfam "1D690 + \Umathcode `\h = 0 \unimathfam "1D691 + \Umathcode `\i = 0 \unimathfam "1D692 + \Umathcode `\j = 0 \unimathfam "1D693 + \Umathcode `\k = 0 \unimathfam "1D694 + \Umathcode `\l = 0 \unimathfam "1D695 + \Umathcode `\m = 0 \unimathfam "1D696 + \Umathcode `\n = 0 \unimathfam "1D697 + \Umathcode `\o = 0 \unimathfam "1D698 + \Umathcode `\p = 0 \unimathfam "1D699 + \Umathcode `\q = 0 \unimathfam "1D69A + \Umathcode `\r = 0 \unimathfam "1D69B + \Umathcode `\s = 0 \unimathfam "1D69C + \Umathcode `\t = 0 \unimathfam "1D69D + \Umathcode `\u = 0 \unimathfam "1D69E + \Umathcode `\v = 0 \unimathfam "1D69F + \Umathcode `\w = 0 \unimathfam "1D6A0 + \Umathcode `\x = 0 \unimathfam "1D6A1 + \Umathcode `\y = 0 \unimathfam "1D6A2 + \Umathcode `\z = 0 \unimathfam "1D6A3 +\fi +% no greek +\tentt} + +\def\cal{% +% no numbers +% latin + \Umathcode `\A = 0 \unimathfam "1D49C + \Umathcode `\B = 0 \unimathfam "0212C + \Umathcode `\C = 0 \unimathfam "1D49E + \Umathcode `\D = 0 \unimathfam "1D49F + \Umathcode `\E = 0 \unimathfam "02130 + \Umathcode `\F = 0 \unimathfam "02131 + \Umathcode `\G = 0 \unimathfam "1D4A2 + \Umathcode `\H = 0 \unimathfam "0210B + \Umathcode `\I = 0 \unimathfam "02110 + \Umathcode `\J = 0 \unimathfam "1D4A5 + \Umathcode `\K = 0 \unimathfam "1D4A6 + \Umathcode `\L = 0 \unimathfam "02112 + \Umathcode `\M = 0 \unimathfam "02133 + \Umathcode `\N = 0 \unimathfam "1D4A9 + \Umathcode `\O = 0 \unimathfam "1D4AA + \Umathcode `\P = 0 \unimathfam "1D4AB + \Umathcode `\Q = 0 \unimathfam "1D4AC + \Umathcode `\R = 0 \unimathfam "0211B + \Umathcode `\S = 0 \unimathfam "1D4AE + \Umathcode `\T = 0 \unimathfam "1D4AF + \Umathcode `\U = 0 \unimathfam "1D4B0 + \Umathcode `\V = 0 \unimathfam "1D4B1 + \Umathcode `\W = 0 \unimathfam "1D4B2 + \Umathcode `\X = 0 \unimathfam "1D4B3 + \Umathcode `\Y = 0 \unimathfam "1D4B4 + \Umathcode `\Z = 0 \unimathfam "1D4B5 + \Umathcode `\a = 0 \unimathfam "1D4B6 + \Umathcode `\b = 0 \unimathfam "1D4B7 + \Umathcode `\c = 0 \unimathfam "1D4B8 + \Umathcode `\d = 0 \unimathfam "1D4B9 + \Umathcode `\e = 0 \unimathfam "0212F + \Umathcode `\f = 0 \unimathfam "1D4BB + \Umathcode `\g = 0 \unimathfam "0210A + \Umathcode `\h = 0 \unimathfam "1D4BD + \Umathcode `\i = 0 \unimathfam "1D4BE + \Umathcode `\j = 0 \unimathfam "1D4BF + \Umathcode `\k = 0 \unimathfam "1D4C0 + \Umathcode `\l = 0 \unimathfam "1D4C1 + \Umathcode `\m = 0 \unimathfam "1D4C2 + \Umathcode `\n = 0 \unimathfam "1D4C3 + \Umathcode `\o = 0 \unimathfam "02134 + \Umathcode `\p = 0 \unimathfam "1D4C5 + \Umathcode `\q = 0 \unimathfam "1D4C6 + \Umathcode `\r = 0 \unimathfam "1D4C7 + \Umathcode `\s = 0 \unimathfam "1D4C8 + \Umathcode `\t = 0 \unimathfam "1D4C9 + \Umathcode `\u = 0 \unimathfam "1D4CA + \Umathcode `\v = 0 \unimathfam "1D4CB + \Umathcode `\w = 0 \unimathfam "1D4CC + \Umathcode `\x = 0 \unimathfam "1D4CD + \Umathcode `\y = 0 \unimathfam "1D4CE + \Umathcode `\z = 0 \unimathfam "1D4CF +% no greek +} +\let\scr=\cal + +\def\calbf{% +% no numbers +% latin + \Umathcode `\A = 0 \unimathfam "1D4D0 + \Umathcode `\B = 0 \unimathfam "1D4D1 + \Umathcode `\C = 0 \unimathfam "1D4D2 + \Umathcode `\D = 0 \unimathfam "1D4D3 + \Umathcode `\E = 0 \unimathfam "1D4D4 + \Umathcode `\F = 0 \unimathfam "1D4D5 + \Umathcode `\G = 0 \unimathfam "1D4D6 + \Umathcode `\H = 0 \unimathfam "1D4D7 + \Umathcode `\I = 0 \unimathfam "1D4D8 + \Umathcode `\J = 0 \unimathfam "1D4D9 + \Umathcode `\K = 0 \unimathfam "1D4DA + \Umathcode `\L = 0 \unimathfam "1D4DB + \Umathcode `\M = 0 \unimathfam "1D4DC + \Umathcode `\N = 0 \unimathfam "1D4DD + \Umathcode `\O = 0 \unimathfam "1D4DE + \Umathcode `\P = 0 \unimathfam "1D4DF + \Umathcode `\Q = 0 \unimathfam "1D4E0 + \Umathcode `\R = 0 \unimathfam "1D4E1 + \Umathcode `\S = 0 \unimathfam "1D4E2 + \Umathcode `\T = 0 \unimathfam "1D4E3 + \Umathcode `\U = 0 \unimathfam "1D4E4 + \Umathcode `\V = 0 \unimathfam "1D4E5 + \Umathcode `\W = 0 \unimathfam "1D4E6 + \Umathcode `\X = 0 \unimathfam "1D4E7 + \Umathcode `\Y = 0 \unimathfam "1D4E8 + \Umathcode `\Z = 0 \unimathfam "1D4E9 + \Umathcode `\a = 0 \unimathfam "1D4EA + \Umathcode `\b = 0 \unimathfam "1D4EB + \Umathcode `\c = 0 \unimathfam "1D4EC + \Umathcode `\d = 0 \unimathfam "1D4ED + \Umathcode `\e = 0 \unimathfam "1D4EE + \Umathcode `\f = 0 \unimathfam "1D4EF + \Umathcode `\g = 0 \unimathfam "1D4F0 + \Umathcode `\h = 0 \unimathfam "1D4F1 + \Umathcode `\i = 0 \unimathfam "1D4F2 + \Umathcode `\j = 0 \unimathfam "1D4F3 + \Umathcode `\k = 0 \unimathfam "1D4F4 + \Umathcode `\l = 0 \unimathfam "1D4F5 + \Umathcode `\m = 0 \unimathfam "1D4F6 + \Umathcode `\n = 0 \unimathfam "1D4F7 + \Umathcode `\o = 0 \unimathfam "1D4F8 + \Umathcode `\p = 0 \unimathfam "1D4F9 + \Umathcode `\q = 0 \unimathfam "1D4FA + \Umathcode `\r = 0 \unimathfam "1D4FB + \Umathcode `\s = 0 \unimathfam "1D4FC + \Umathcode `\t = 0 \unimathfam "1D4FD + \Umathcode `\u = 0 \unimathfam "1D4FE + \Umathcode `\v = 0 \unimathfam "1D4FF + \Umathcode `\w = 0 \unimathfam "1D500 + \Umathcode `\x = 0 \unimathfam "1D501 + \Umathcode `\y = 0 \unimathfam "1D502 + \Umathcode `\z = 0 \unimathfam "1D503 +% no greek +} +\let\bfcal=\calbf +\let\scrbf=\calbf +\let\bfscr=\calbf + +\def\bb{% +% numbers + \Umathcode `\0 = 0 \unimathfam "1D7D8 + \Umathcode `\1 = 0 \unimathfam "1D7D9 + \Umathcode `\2 = 0 \unimathfam "1D7DA + \Umathcode `\3 = 0 \unimathfam "1D7DB + \Umathcode `\4 = 0 \unimathfam "1D7DC + \Umathcode `\5 = 0 \unimathfam "1D7DD + \Umathcode `\6 = 0 \unimathfam "1D7DE + \Umathcode `\7 = 0 \unimathfam "1D7DF + \Umathcode `\8 = 0 \unimathfam "1D7E0 + \Umathcode `\9 = 0 \unimathfam "1D7E1 +% latin + \Umathcode `\A = 0 \unimathfam "1D538 + \Umathcode `\B = 0 \unimathfam "1D539 + \Umathcode `\C = 0 \unimathfam "02102 + \Umathcode `\D = 0 \unimathfam "1D53B + \Umathcode `\E = 0 \unimathfam "1D53C + \Umathcode `\F = 0 \unimathfam "1D53D + \Umathcode `\G = 0 \unimathfam "1D53E + \Umathcode `\H = 0 \unimathfam "0210D + \Umathcode `\I = 0 \unimathfam "1D540 + \Umathcode `\J = 0 \unimathfam "1D541 + \Umathcode `\K = 0 \unimathfam "1D542 + \Umathcode `\L = 0 \unimathfam "1D543 + \Umathcode `\M = 0 \unimathfam "1D544 + \Umathcode `\N = 0 \unimathfam "02115 + \Umathcode `\O = 0 \unimathfam "1D546 + \Umathcode `\P = 0 \unimathfam "02119 + \Umathcode `\Q = 0 \unimathfam "0211A + \Umathcode `\R = 0 \unimathfam "0211D + \Umathcode `\S = 0 \unimathfam "1D54A + \Umathcode `\T = 0 \unimathfam "1D54B + \Umathcode `\U = 0 \unimathfam "1D54C + \Umathcode `\V = 0 \unimathfam "1D54D + \Umathcode `\W = 0 \unimathfam "1D54E + \Umathcode `\X = 0 \unimathfam "1D54F + \Umathcode `\Y = 0 \unimathfam "1D550 + \Umathcode `\Z = 0 \unimathfam "02124 + \Umathcode `\a = 0 \unimathfam "1D552 + \Umathcode `\b = 0 \unimathfam "1D553 + \Umathcode `\c = 0 \unimathfam "1D554 + \Umathcode `\d = 0 \unimathfam "1D555 + \Umathcode `\e = 0 \unimathfam "1D556 + \Umathcode `\f = 0 \unimathfam "1D557 + \Umathcode `\g = 0 \unimathfam "1D558 + \Umathcode `\h = 0 \unimathfam "1D559 + \Umathcode `\i = 0 \unimathfam "1D55A + \Umathcode `\j = 0 \unimathfam "1D55B + \Umathcode `\k = 0 \unimathfam "1D55C + \Umathcode `\l = 0 \unimathfam "1D55D + \Umathcode `\m = 0 \unimathfam "1D55E + \Umathcode `\n = 0 \unimathfam "1D55F + \Umathcode `\o = 0 \unimathfam "1D560 + \Umathcode `\p = 0 \unimathfam "1D561 + \Umathcode `\q = 0 \unimathfam "1D562 + \Umathcode `\r = 0 \unimathfam "1D563 + \Umathcode `\s = 0 \unimathfam "1D564 + \Umathcode `\t = 0 \unimathfam "1D565 + \Umathcode `\u = 0 \unimathfam "1D566 + \Umathcode `\v = 0 \unimathfam "1D567 + \Umathcode `\w = 0 \unimathfam "1D568 + \Umathcode `\x = 0 \unimathfam "1D569 + \Umathcode `\y = 0 \unimathfam "1D56A + \Umathcode `\z = 0 \unimathfam "1D56B +% no greek +} + +\def\bbit{% + \Umathcode `\D = 0 \unimathfam "02145 + \Umathcode `\d = 0 \unimathfam "02146 + \Umathcode `\e = 0 \unimathfam "02147 + \Umathcode `\i = 0 \unimathfam "02148 + \Umathcode `\j = 0 \unimathfam "02149 +} +\let\itbb=\bbit + +\def\frak{% +% no numbers +% latin + \Umathcode `\A = 0 \unimathfam "1D504 + \Umathcode `\B = 0 \unimathfam "1D505 + \Umathcode `\C = 0 \unimathfam "0212D + \Umathcode `\D = 0 \unimathfam "1D507 + \Umathcode `\E = 0 \unimathfam "1D508 + \Umathcode `\F = 0 \unimathfam "1D509 + \Umathcode `\G = 0 \unimathfam "1D50A + \Umathcode `\H = 0 \unimathfam "0210C + \Umathcode `\I = 0 \unimathfam "02111 + \Umathcode `\J = 0 \unimathfam "1D50D + \Umathcode `\K = 0 \unimathfam "1D50E + \Umathcode `\L = 0 \unimathfam "1D50F + \Umathcode `\M = 0 \unimathfam "1D510 + \Umathcode `\N = 0 \unimathfam "1D511 + \Umathcode `\O = 0 \unimathfam "1D512 + \Umathcode `\P = 0 \unimathfam "1D513 + \Umathcode `\Q = 0 \unimathfam "1D514 + \Umathcode `\R = 0 \unimathfam "0211C + \Umathcode `\S = 0 \unimathfam "1D516 + \Umathcode `\T = 0 \unimathfam "1D517 + \Umathcode `\U = 0 \unimathfam "1D518 + \Umathcode `\V = 0 \unimathfam "1D519 + \Umathcode `\W = 0 \unimathfam "1D51A + \Umathcode `\X = 0 \unimathfam "1D51B + \Umathcode `\Y = 0 \unimathfam "1D51C + \Umathcode `\Z = 0 \unimathfam "02128 + \Umathcode `\a = 0 \unimathfam "1D51E + \Umathcode `\b = 0 \unimathfam "1D51F + \Umathcode `\c = 0 \unimathfam "1D520 + \Umathcode `\d = 0 \unimathfam "1D521 + \Umathcode `\e = 0 \unimathfam "1D522 + \Umathcode `\f = 0 \unimathfam "1D523 + \Umathcode `\g = 0 \unimathfam "1D524 + \Umathcode `\h = 0 \unimathfam "1D525 + \Umathcode `\i = 0 \unimathfam "1D526 + \Umathcode `\j = 0 \unimathfam "1D527 + \Umathcode `\k = 0 \unimathfam "1D528 + \Umathcode `\l = 0 \unimathfam "1D529 + \Umathcode `\m = 0 \unimathfam "1D52A + \Umathcode `\n = 0 \unimathfam "1D52B + \Umathcode `\o = 0 \unimathfam "1D52C + \Umathcode `\p = 0 \unimathfam "1D52D + \Umathcode `\q = 0 \unimathfam "1D52E + \Umathcode `\r = 0 \unimathfam "1D52F + \Umathcode `\s = 0 \unimathfam "1D530 + \Umathcode `\t = 0 \unimathfam "1D531 + \Umathcode `\u = 0 \unimathfam "1D532 + \Umathcode `\v = 0 \unimathfam "1D533 + \Umathcode `\w = 0 \unimathfam "1D534 + \Umathcode `\x = 0 \unimathfam "1D535 + \Umathcode `\y = 0 \unimathfam "1D536 + \Umathcode `\z = 0 \unimathfam "1D537 +% no greek +} + +\def\frakbf{% +% no numbers, +% latin + \Umathcode `\A = 0 \unimathfam "1D56C + \Umathcode `\B = 0 \unimathfam "1D56D + \Umathcode `\C = 0 \unimathfam "1D56E + \Umathcode `\D = 0 \unimathfam "1D56F + \Umathcode `\E = 0 \unimathfam "1D570 + \Umathcode `\F = 0 \unimathfam "1D571 + \Umathcode `\G = 0 \unimathfam "1D572 + \Umathcode `\H = 0 \unimathfam "1D573 + \Umathcode `\I = 0 \unimathfam "1D574 + \Umathcode `\J = 0 \unimathfam "1D575 + \Umathcode `\K = 0 \unimathfam "1D576 + \Umathcode `\L = 0 \unimathfam "1D577 + \Umathcode `\M = 0 \unimathfam "1D578 + \Umathcode `\N = 0 \unimathfam "1D579 + \Umathcode `\O = 0 \unimathfam "1D57A + \Umathcode `\P = 0 \unimathfam "1D57B + \Umathcode `\Q = 0 \unimathfam "1D57C + \Umathcode `\R = 0 \unimathfam "1D57D + \Umathcode `\S = 0 \unimathfam "1D57E + \Umathcode `\T = 0 \unimathfam "1D57F + \Umathcode `\U = 0 \unimathfam "1D580 + \Umathcode `\V = 0 \unimathfam "1D581 + \Umathcode `\W = 0 \unimathfam "1D582 + \Umathcode `\X = 0 \unimathfam "1D583 + \Umathcode `\Y = 0 \unimathfam "1D584 + \Umathcode `\Z = 0 \unimathfam "1D585 + \Umathcode `\a = 0 \unimathfam "1D586 + \Umathcode `\b = 0 \unimathfam "1D587 + \Umathcode `\c = 0 \unimathfam "1D588 + \Umathcode `\d = 0 \unimathfam "1D589 + \Umathcode `\e = 0 \unimathfam "1D58A + \Umathcode `\f = 0 \unimathfam "1D58B + \Umathcode `\g = 0 \unimathfam "1D58C + \Umathcode `\h = 0 \unimathfam "1D58D + \Umathcode `\i = 0 \unimathfam "1D58E + \Umathcode `\j = 0 \unimathfam "1D58F + \Umathcode `\k = 0 \unimathfam "1D590 + \Umathcode `\l = 0 \unimathfam "1D591 + \Umathcode `\m = 0 \unimathfam "1D592 + \Umathcode `\n = 0 \unimathfam "1D593 + \Umathcode `\o = 0 \unimathfam "1D594 + \Umathcode `\p = 0 \unimathfam "1D595 + \Umathcode `\q = 0 \unimathfam "1D596 + \Umathcode `\r = 0 \unimathfam "1D597 + \Umathcode `\s = 0 \unimathfam "1D598 + \Umathcode `\t = 0 \unimathfam "1D599 + \Umathcode `\u = 0 \unimathfam "1D59A + \Umathcode `\v = 0 \unimathfam "1D59B + \Umathcode `\w = 0 \unimathfam "1D59C + \Umathcode `\x = 0 \unimathfam "1D59D + \Umathcode `\y = 0 \unimathfam "1D59E + \Umathcode `\z = 0 \unimathfam "1D59F +% no greek +} +\let\bffrak=\frakbf + +\endinput
\ No newline at end of file diff --git a/macros/xetex/plain/unimath-plain-xetex/tex/unimath-plain-xetex.tex b/macros/xetex/plain/unimath-plain-xetex/tex/unimath-plain-xetex.tex new file mode 100644 index 0000000000..37118739d8 --- /dev/null +++ b/macros/xetex/plain/unimath-plain-xetex/tex/unimath-plain-xetex.tex @@ -0,0 +1,422 @@ +%% unimath-plain-xetex.tex +%% ****************************************************** +%% * This work may be distributed and/or modified under * +%% * the conditions of the LaTeX Project Public License * +%% * http://www.latex-project.org/lppl.txt * +%% * either version 1.3c of this license or any later * +%% * version. * +%% ****************************************************** +\catcode`\@=11 + +\newdimen\@tempdima +\newdimen\@tempdimb +\newdimen\@tempdimc +\newdimen\@tempdimd + +% text font +%\gdef\mainfontname{Latin Modern Roman} +\ifdefined\mainfontname\else + \gdef\mainfontname{Latin Modern Roman} +\fi +\ifdefined\sansfontname\else + \gdef\sansfontname{Latin Modern Sans} +\fi +\ifdefined\monofontname\else + \gdef\monofontname{Latin Modern Mono} +\fi +\ifdefined\mathfontname\else + \gdef\mathfontname{Latin Modern Math} +\fi +\ifcsname XeTeXversion\endcsname + \ifdefined\textfontopt\else + \def\textfontopt{mapping=tex-text} + \fi +\else + \errmessage{umath-plain-xetex Error: Needs XeTeX!} +\fi + +\font\tenrm = "\mainfontname/R:\textfontopt" at 10pt +\font\tenit = "\mainfontname/I:\textfontopt" at 10pt +\font\tenbf = "\mainfontname/B:\textfontopt" at 10pt +\font\tenbfit = "\mainfontname/BI:\textfontopt" at 10pt +% scaling sf and tt +\newdimen\sf@size +\newdimen\tt@size + +\font\tensf@test = "\sansfontname/R:\textfontopt" at 10pt +\font\tentt@test = "\monofontname/R:\textfontopt" at 10pt +\@tempdima\fontdimen5\tenrm +\@tempdimb\fontdimen5\tensf@test +\gdef\sf@innerratio{\numexpr\dimexpr256\@tempdima/\@tempdimb\relax} +\@tempdimc\fontdimen5\tentt@test +\gdef\tt@innerratio{\numexpr\dimexpr256\@tempdima/\@tempdimc\relax} +\let\tensf@test\relax \let\tentt@test\relax + +\def\@sizeat#1{\@tempdimd#1\relax% + \sf@size=\dimexpr\sf@innerratio\@tempdimd/256\relax + \tt@size=\dimexpr\tt@innerratio\@tempdimd/256\relax +} +\@sizeat{10pt} +\font\tensf = "\sansfontname/R:\textfontopt" at \sf@size +\font\tensfit = "\sansfontname/I:\textfontopt" at \sf@size +\font\tensfbf = "\sansfontname/B:\textfontopt" at \sf@size +\font\tensfbfit = "\sansfontname/BI:\textfontopt" at \sf@size +\font\tentt = "\monofontname/R" at \tt@size +\font\tenttit = "\monofontname/I" at \tt@size +\font\tenttbf = "\monofontname/B" at \tt@size +\font\tenttbfit = "\monofontname/BI" at \tt@size +% other sizes +\def\genfontcmd#1#2{\@sizeat{#2}% + \expandafter\font\csname #1rm\endcsname = "\mainfontname/R:\textfontopt" at #2 + \expandafter\font\csname #1it\endcsname = "\mainfontname/I:\textfontopt" at #2 + \expandafter\font\csname #1bf\endcsname = "\mainfontname/B:\textfontopt" at #2 + \expandafter\font\csname #1bfit\endcsname = "\mainfontname/BI:\textfontopt" at #2 + \expandafter\font\csname #1sf\endcsname = "\sansfontname/R:\textfontopt" at \sf@size + \expandafter\font\csname #1sfit\endcsname = "\sansfontname/I:\textfontopt" at \sf@size + \expandafter\font\csname #1sfbf\endcsname = "\sansfontname/B:\textfontopt" at \sf@size + \expandafter\font\csname #1sfbfit\endcsname = "\sansfontname/BI:\textfontopt" at \sf@size + \expandafter\font\csname #1tt\endcsname = "\monofontname/R" at \tt@size + \expandafter\font\csname #1ttit\endcsname = "\monofontname/I" at \tt@size + \expandafter\font\csname #1ttbf\endcsname = "\monofontname/B" at \tt@size + \expandafter\font\csname #1ttbfit\endcsname = "\monofontname/BI" at \tt@size +} +\genfontcmd{five}{5pt} +\genfontcmd{seven}{7pt} +\genfontcmd{nine}{9pt} +\genfontcmd{twelve}{11.95pt} +\genfontcmd{twenty}{20pt} +\def\makefontcmdcompatible#1{% + \expandafter\let\csname #1itbf\expandafter\endcsname\csname #1bfit\endcsname + \expandafter\let\csname #1itsf\expandafter\endcsname\csname #1sfit\endcsname + \expandafter\let\csname #1bfsf\expandafter\endcsname\csname #1sfbf\endcsname + \expandafter\let\csname #1sfitbf\expandafter\endcsname\csname #1sfbfit\endcsname + \expandafter\let\csname #1bfsfit\expandafter\endcsname\csname #1sfbfit\endcsname + \expandafter\let\csname #1bfitsf\expandafter\endcsname\csname #1sfbfit\endcsname + \expandafter\let\csname #1itsfbf\expandafter\endcsname\csname #1sfbfit\endcsname + \expandafter\let\csname #1itbfsf\expandafter\endcsname\csname #1sfbfit\endcsname + \expandafter\let\csname #1ittt\expandafter\endcsname\csname #1ttit\endcsname + \expandafter\let\csname #1bftt\expandafter\endcsname\csname #1ttbf\endcsname + \expandafter\let\csname #1ttitbf\expandafter\endcsname\csname #1ttbfit\endcsname + \expandafter\let\csname #1bfttit\expandafter\endcsname\csname #1ttbfit\endcsname + \expandafter\let\csname #1bfittt\expandafter\endcsname\csname #1ttbfit\endcsname + \expandafter\let\csname #1itttbf\expandafter\endcsname\csname #1ttbfit\endcsname + \expandafter\let\csname #1itbftt\expandafter\endcsname\csname #1ttbfit\endcsname +} + +% math font +% +% In plain format, \fam0 is "rm"; \fam1 is "normal"; \fam2 is "cal"; +% \fam3 is "op"; \fam4 is "it"; \fam5 is "sl"; +% \fam6 is "bf"; \fam7 is "tt". +% Families defined through \newfam: +% \itfam (4), \slfam (5), \bffam (6), \ttfam (7). +\newfam\unimathfam % \unimathfam = 8 +\newfam\textfam % \textfam = 9, for text in math mode ("math text") + +\font \tenmath = "\mathfontname:script=math" at 10pt +\font \sevenmath = "\mathfontname:script=math,+ssty=0" at 7pt +\font \fivemath = "\mathfontname:script=math,+ssty=1" at 5pt +\textfont \unimathfam = \tenmath +\scriptfont \unimathfam = \sevenmath +\scriptscriptfont \unimathfam = \fivemath + +% load unicode-math-table +\let\mathalpha\mathord +\def\mathfence{F} +\def\mathaccentwide{Awo} +\def\mathaccentoverlay{Awo} +\def\mathover{O} +\def\mathunder{U} +\def\mathbotaccent{bA} +\def\mathbotaccentwide{bAw} + +\begingroup% + \catcode`\^^@=13 + \protected\gdef\@activedef#1#2{\begingroup% #1: char code; #2: definition + \lccode`\^^@=#1 + \lowercase{\endgroup\gdef^^@{#2}}}% +\endgroup% + +\def\UnicodeMathSymbol#1#2#3#4{% #1: char slot; #2: cmd; #3: \mathord, etc. + \ifx#3\mathord + \Umathchardef #2 = 0 \unimathfam #1 + \Umathcode #1 = 0 \unimathfam #1 + %\else\ifx#3\mathalpha + % \Umathchardef #2 = 0 \unimathfam #1 + % \Umathcode #1 = 0 \unimathfam #1 % a \fi in the end + \else\ifx#3\mathop + \Umathchardef #2 = 1 \unimathfam #1 + \Umathcode #1 = 1 \unimathfam #1 + % deal with the integral specially + \ifnum#1>"222A\ifnum#1<"2A1D + \ifnum#1<"2234 + \gdef#2{\Umathchar 1 \unimathfam #1\nolimits}% + \global\mathcode#1="8000 % make #1 active + \@activedef{#1}{#2}% + \else\ifnum#1>"2A0A + \gdef#2{\Umathchar 1 \unimathfam #1\nolimits}% + \global\mathcode#1="8000 + \@activedef{#1}{#2}% + \fi\fi\fi\fi + \else\ifx#3\mathbin + \Umathchardef #2 = 2 \unimathfam #1 + \Umathcode #1 = 2 \unimathfam #1 + \else\ifx#3\mathrel + \Umathchardef #2 = 3 \unimathfam #1 + \Umathcode #1 = 3 \unimathfam #1 + \else\ifx#3\mathopen + \Umathcode #1 = 4 \unimathfam #1 + \Udelcode #1 = \unimathfam #1 + \gdef#2{\Udelimiter 4 \unimathfam #1 } + \ifx#2\sqrt + \gdef#2{\Uradical \unimathfam #1 } + \fi\ifx#2\cuberoot + \gdef#2{\Uradical \unimathfam #1 } + \fi\ifx#2\fourthroot + \gdef#2{\Uradical \unimathfam #1 } + \fi\ifx#2\longdivision + \gdef#2{\Uradical \unimathfam #1 } + \fi + \else\ifx#3\mathclose + \Umathcode #1 = 5 \unimathfam #1 + \Udelcode #1 = \unimathfam #1 + \gdef#2{\Udelimiter 5 \unimathfam #1 } + \else\ifx#3\mathpunct + \Umathchardef #2 = 6 \unimathfam #1 + \Umathcode #1 = 6 \unimathfam #1 + \else\ifx#3\mathfence % + \Umathchardef #2 = 0 \unimathfam #1 + \Umathcode #1 = 0 \unimathfam #1 + \Udelcode #1 = \unimathfam #1 + \gdef#2{\Udelimiter 0 \unimathfam #1 } + \else\ifx#3\mathaccent + \gdef#2{\Umathaccent fixed 0 \unimathfam #1 } + \else\ifx#3\mathaccentwide% or overlay + \gdef#2{\Umathaccent 0 \unimathfam #1 } + \else\ifx#3\mathbotaccentwide + \gdef#2{\Umathaccent bottom 0 \unimathfam #1 } + \else\ifx#3\mathover + \gdef#2##1{\mathop{\Umathaccent 0 \unimathfam #1 {##1}}\limits} + \else\ifx#3\mathunder + \gdef#2##1{\mathop{\Umathaccent bottom 0 \unimathfam #1 {##1}}\limits} + \else\ifx#3\mathbotaccent% This type's frequency is the lowest. + \gdef#2{\Umathaccent bottom fixed 0 \unimathfam #1 } + \else% undefined math type + \message{There's an undefined math type. Math character command ignored.}% + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi +} +\input unicode-math-table + +%\Umathcode `\! = 5 \unimathfam `\! +\Umathcode `\* = 2 \unimathfam `\* +%\Umathcode `\+ = 2 \unimathfam `\+ +%\Umathcode `\, = 6 \unimathfam `\, +\Umathcode `\- = 2 \unimathfam "2212 +%\Umathcode `\. = 0 \unimathfam `\. +\Umathcode `\: = 3 \unimathfam `\: +\Umathcode `\; = 6 \unimathfam `\; +\Umathcode `\< = 3 \unimathfam `\< +\Umathcode `\= = 3 \unimathfam `\= +\Umathcode `\> = 3 \unimathfam `\> +%\Umathcode `\? = 5 \unimathfam `\? +\Umathcode `\_ = 0 \unimathfam `\_ +%\Umathcode `\| = 0 \unimathfam `\| +%\Umathcode `\/ = 0 \unimathfam `\/ +%\Umathcode `\\ = 0 \unimathfam `\\ +%\Umathcode `\( = 4 \unimathfam `\( +%\Umathcode `\) = 5 \unimathfam `\) +%\Umathcode `\[ = 4 \unimathfam `\[ +%\Umathcode `\] = 5 \unimathfam `\] +%\Umathcode `\{ = 4 \unimathfam `\{ +%\Umathcode `\} = 5 \unimathfam `\} +\Umathchardef \colon = 7 \unimathfam `\: + +\Umathcode `\0 = 0 \unimathfam "30 +\Umathcode `\1 = 0 \unimathfam "31 +\Umathcode `\2 = 0 \unimathfam "32 +\Umathcode `\3 = 0 \unimathfam "33 +\Umathcode `\4 = 0 \unimathfam "34 +\Umathcode `\5 = 0 \unimathfam "35 +\Umathcode `\6 = 0 \unimathfam "36 +\Umathcode `\7 = 0 \unimathfam "37 +\Umathcode `\8 = 0 \unimathfam "38 +\Umathcode `\9 = 0 \unimathfam "39 +\Umathcode `\A = 0 \unimathfam "1D434 +\Umathcode `\B = 0 \unimathfam "1D435 +\Umathcode `\C = 0 \unimathfam "1D436 +\Umathcode `\D = 0 \unimathfam "1D437 +\Umathcode `\E = 0 \unimathfam "1D438 +\Umathcode `\F = 0 \unimathfam "1D439 +\Umathcode `\G = 0 \unimathfam "1D43A +\Umathcode `\H = 0 \unimathfam "1D43B +\Umathcode `\I = 0 \unimathfam "1D43C +\Umathcode `\J = 0 \unimathfam "1D43D +\Umathcode `\K = 0 \unimathfam "1D43E +\Umathcode `\L = 0 \unimathfam "1D43F +\Umathcode `\M = 0 \unimathfam "1D440 +\Umathcode `\N = 0 \unimathfam "1D441 +\Umathcode `\O = 0 \unimathfam "1D442 +\Umathcode `\P = 0 \unimathfam "1D443 +\Umathcode `\Q = 0 \unimathfam "1D444 +\Umathcode `\R = 0 \unimathfam "1D445 +\Umathcode `\S = 0 \unimathfam "1D446 +\Umathcode `\T = 0 \unimathfam "1D447 +\Umathcode `\U = 0 \unimathfam "1D448 +\Umathcode `\V = 0 \unimathfam "1D449 +\Umathcode `\W = 0 \unimathfam "1D44A +\Umathcode `\X = 0 \unimathfam "1D44B +\Umathcode `\Y = 0 \unimathfam "1D44C +\Umathcode `\Z = 0 \unimathfam "1D44D +\Umathcode `\a = 0 \unimathfam "1D44E +\Umathcode `\b = 0 \unimathfam "1D44F +\Umathcode `\c = 0 \unimathfam "1D450 +\Umathcode `\d = 0 \unimathfam "1D451 +\Umathcode `\e = 0 \unimathfam "1D452 +\Umathcode `\f = 0 \unimathfam "1D453 +\Umathcode `\g = 0 \unimathfam "1D454 +\Umathcode `\h = 0 \unimathfam "0210E % Planck constant +\Umathcode `\i = 0 \unimathfam "1D456 +\Umathcode `\j = 0 \unimathfam "1D457 +\Umathcode `\k = 0 \unimathfam "1D458 +\Umathcode `\l = 0 \unimathfam "1D459 +\Umathcode `\m = 0 \unimathfam "1D45A +\Umathcode `\n = 0 \unimathfam "1D45B +\Umathcode `\o = 0 \unimathfam "1D45C +\Umathcode `\p = 0 \unimathfam "1D45D +\Umathcode `\q = 0 \unimathfam "1D45E +\Umathcode `\r = 0 \unimathfam "1D45F +\Umathcode `\s = 0 \unimathfam "1D460 +\Umathcode `\t = 0 \unimathfam "1D461 +\Umathcode `\u = 0 \unimathfam "1D462 +\Umathcode `\v = 0 \unimathfam "1D463 +\Umathcode `\w = 0 \unimathfam "1D464 +\Umathcode `\x = 0 \unimathfam "1D465 +\Umathcode `\y = 0 \unimathfam "1D466 +\Umathcode `\z = 0 \unimathfam "1D467 +\Umathcode `\Α = 0 \unimathfam "1D6E2 +\Umathcode `\Β = 0 \unimathfam "1D6E3 +\Umathcode `\Γ = 0 \unimathfam "1D6E4 +\Umathcode `\Δ = 0 \unimathfam "1D6E5 +\Umathcode `\Ε = 0 \unimathfam "1D6E6 +\Umathcode `\Ζ = 0 \unimathfam "1D6E7 +\Umathcode `\Η = 0 \unimathfam "1D6E8 +\Umathcode `\Θ = 0 \unimathfam "1D6E9 +\Umathcode `\Ι = 0 \unimathfam "1D6EA +\Umathcode `\Κ = 0 \unimathfam "1D6EB +\Umathcode `\Λ = 0 \unimathfam "1D6EC +\Umathcode `\Μ = 0 \unimathfam "1D6ED +\Umathcode `\Ν = 0 \unimathfam "1D6EE +\Umathcode `\Ξ = 0 \unimathfam "1D6EF +\Umathcode `\Ο = 0 \unimathfam "1D6F0 +\Umathcode `\Π = 0 \unimathfam "1D6F1 +\Umathcode `\Ρ = 0 \unimathfam "1D6F2 +\Umathcode `\Σ = 0 \unimathfam "1D6F4 +\Umathcode `\Τ = 0 \unimathfam "1D6F5 +\Umathcode `\Υ = 0 \unimathfam "1D6F6 +\Umathcode `\Φ = 0 \unimathfam "1D6F7 +\Umathcode `\Χ = 0 \unimathfam "1D6F8 +\Umathcode `\Ψ = 0 \unimathfam "1D6F9 +\Umathcode `\Ω = 0 \unimathfam "1D6FA +\Umathcode `\α = 0 \unimathfam "1D6FC +\Umathcode `\β = 0 \unimathfam "1D6FD +\Umathcode `\γ = 0 \unimathfam "1D6FE +\Umathcode `\δ = 0 \unimathfam "1D6FF +\Umathcode `\ε = 0 \unimathfam "1D700 +\Umathcode `\ζ = 0 \unimathfam "1D701 +\Umathcode `\η = 0 \unimathfam "1D702 +\Umathcode `\θ = 0 \unimathfam "1D703 +\Umathcode `\ι = 0 \unimathfam "1D704 +\Umathcode `\κ = 0 \unimathfam "1D705 +\Umathcode `\λ = 0 \unimathfam "1D706 +\Umathcode `\μ = 0 \unimathfam "1D707 +\Umathcode `\ν = 0 \unimathfam "1D708 +\Umathcode `\ξ = 0 \unimathfam "1D709 +\Umathcode `\ο = 0 \unimathfam "1D70A +\Umathcode `\π = 0 \unimathfam "1D70B +\Umathcode `\ρ = 0 \unimathfam "1D70C +\Umathcode `\ς = 0 \unimathfam "1D70D +\Umathcode `\σ = 0 \unimathfam "1D70E +\Umathcode `\τ = 0 \unimathfam "1D70F +\Umathcode `\υ = 0 \unimathfam "1D710 +\Umathcode `\φ = 0 \unimathfam "1D719 +\Umathcode `\χ = 0 \unimathfam "1D712 +\Umathcode `\ψ = 0 \unimathfam "1D713 +\Umathcode `\ω = 0 \unimathfam "1D714 +\Umathcode `\ϑ = 0 \unimathfam "1D717 +\Umathcode `\ϕ = 0 \unimathfam "1D711 +\Umathcode `\ϖ = 0 \unimathfam "1D71B +\Umathcode `\ϰ = 0 \unimathfam "1D718 +\Umathcode `\ϱ = 0 \unimathfam "1D71A +\Umathcode `\ϴ = 0 \unimathfam "1D6F3 +\Umathcode `\ϵ = 0 \unimathfam "1D716 + +\Umathcode `\Ϝ = 0 \unimathfam "003DC +\Umathcode `\ϝ = 0 \unimathfam "003DD +\Umathcode `\϶ = 0 \unimathfam "003F6 + +\input unimath-plain-alphafams + +% Greek letter command +\let\Alpha=Α \let\Beta=Β \let\Gamma=Γ \let\Delta=Δ +\let\Epsilon=Ε \let\Zeta=Ζ \let\Eta=Η \let\Theta=Θ +\let\Iota=Ι \let\Kappa=Κ \let\Lambda=Λ \let\Mu=Μ +\let\Nu=Ν \let\Xi=Ξ \let\Omicron=Ο \let\Pi=Π +\let\Rho=Ρ \let\Sigma=Σ \let\Tau=Τ \let\Upsilon=Υ +\let\Phi=Φ \let\Chi=Χ \let\Psi=Ψ \let\Omega=Ω +\let\alpha=α \let\beta=β \let\gamma=γ \let\delta=δ +\let\varepsilon=ε \let\zeta=ζ \let\eta=η \let\theta=θ +\let\iota=ι \let\kappa=κ \let\lambda=λ \let\mu=μ +\let\nu=ν \let\xi=ξ \let\omicron=ο \let\pi=π +\let\rho=ρ \let\varsigma=ς \let\sigma=σ \let\tau=τ +\let\upsilon=υ \let\phi=φ \let\chi=χ \let\psi=ψ +\let\omega=ω \let\vartheta=ϑ \let\varphi=ϕ \let\varpi=ϖ +\let\varkappa=ϰ \let\varrho=ϱ \let\varTheta=ϴ \let\epsilon=ϵ + +% math commands +\protected\def\{{\ifmmode\lbrace\else\char`\{\fi} % plain.tex: \let\{=\lbrace +\protected\def\}{\ifmmode\rbrace\else\char`\}\fi} % plain.tex: \let\}=\rbrace +\let\neq=\ne +\let\le=\leq +\let\ge=\geq +\let\owns=\ni +\let\gets=\leftarrow +\let\to=\rightarrow +\let\hbar=\hslash +\def\cdots{\mathinner{\cdotp\mkern-1mu\cdotp\mkern-1mu\cdotp}} +\Umathchardef \ldotp = 2 \unimathfam "2E +\def\ldots{\mathinner{\ldotp\mkern-1mu\ldotp\mkern-1mu\ldotp}} + +% math and text kerns +\protected\def\leavevmode@ifvmode{\ifvmode\expandafter\indent\fi} +\protected\def\,{\ifmmode\mskip\thinmuskip\else + \leavevmode@ifvmode\kern.16667em\fi\relax} +\protected\def\>{\ifmmode\mskip\medmuskip\else + \leavevmode@ifvmode\kern.2222em\fi\relax} +\protected\def\;{\ifmmode\mskip\thickmuskip\else + \leavevmode@ifvmode\kern.2777em\fi\relax} +\protected\def\!{\ifmmode\mskip-\thinmuskip\else + \leavevmode@ifvmode\kern-.16667em\fi\relax} +\def\*{\discretionary{\thinspace\hbox{$\times$}}{}{}} + +% text commands +\chardef\ss="00DF +\chardef\ae="00E6 +\chardef\oe="0153 +\chardef\o="00F8 +\chardef\AE="00C6 +\chardef\OE="0152 +\chardef\O="00D8 +\chardef\i="0131 \chardef\j="237 % dotless letters +\chardef\aa="00E5 +\chardef\l="0142 +\chardef\L="0141 +\chardef\AA="00C5 +\protected\def\dag{\ifmmode\mathord{\dagger}\else\char"2020\fi} +\protected\def\ddag{\ifmmode\mathord{\ddagger}\else\char"2021\fi} +\chardef\S="00A7 +\chardef\P"00B6 +\chardef\copyright="00A9 + +\catcode`\@=12 +\tenrm +\endinput
\ No newline at end of file |