summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Chernoff <mseven@telus.net>2024-07-07 06:29:43 +0000
committerMax Chernoff <mseven@telus.net>2024-07-07 06:29:43 +0000
commita5a06c78cbb19413b55b8f49c2852bce3118801f (patch)
treedfecb85cb44ab34a9606a32838a4c72f554c91bc
parent2376a814a1fd9401b070e25371fbcf74f5d3b638 (diff)
gelasiomath (6jul24)
git-svn-id: svn://tug.org/texlive/trunk@71729 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/fonts/gelasiomath/README11
-rw-r--r--Master/texmf-dist/doc/fonts/gelasiomath/gelasiomath-doc.pdfbin0 -> 123573 bytes
-rw-r--r--Master/texmf-dist/doc/fonts/gelasiomath/gelasiomath-doc.tex168
-rw-r--r--Master/texmf-dist/doc/fonts/gelasiomath/newtx-gel-subs.tex17
-rw-r--r--Master/texmf-dist/fonts/map/dvips/gelasiomath/GelasioMath.map4
-rw-r--r--Master/texmf-dist/fonts/tfm/public/gelasiomath/Gelasio-Bold-tlf-ot1G.tfmbin0 -> 6928 bytes
-rw-r--r--Master/texmf-dist/fonts/tfm/public/gelasiomath/Gelasio-BoldItalic-tlf-ot1G.tfmbin0 -> 6744 bytes
-rw-r--r--Master/texmf-dist/fonts/tfm/public/gelasiomath/Gelasio-Italic-tlf-ot1G.tfmbin0 -> 6716 bytes
-rw-r--r--Master/texmf-dist/fonts/tfm/public/gelasiomath/Gelasio-Regular-tlf-ot1G.tfmbin0 -> 6984 bytes
-rw-r--r--Master/texmf-dist/fonts/tfm/public/gelasiomath/GelasioMathBMI.tfmbin0 -> 1500 bytes
-rw-r--r--Master/texmf-dist/fonts/tfm/public/gelasiomath/GelasioMathBRM.tfmbin0 -> 1144 bytes
-rw-r--r--Master/texmf-dist/fonts/tfm/public/gelasiomath/GelasioMathMI.tfmbin0 -> 1500 bytes
-rw-r--r--Master/texmf-dist/fonts/tfm/public/gelasiomath/GelasioMathRM.tfmbin0 -> 732 bytes
-rw-r--r--Master/texmf-dist/fonts/tfm/public/gelasiomath/zgelbmi.tfmbin0 -> 3280 bytes
-rw-r--r--Master/texmf-dist/fonts/tfm/public/gelasiomath/zgelbmia.tfmbin0 -> 2396 bytes
-rw-r--r--Master/texmf-dist/fonts/tfm/public/gelasiomath/zgelmi.tfmbin0 -> 3228 bytes
-rw-r--r--Master/texmf-dist/fonts/tfm/public/gelasiomath/zgelmia.tfmbin0 -> 2508 bytes
-rw-r--r--Master/texmf-dist/fonts/type1/public/gelasiomath/GelasioMathBMI.pfbbin0 -> 37167 bytes
-rw-r--r--Master/texmf-dist/fonts/type1/public/gelasiomath/GelasioMathBRM.pfbbin0 -> 29839 bytes
-rw-r--r--Master/texmf-dist/fonts/type1/public/gelasiomath/GelasioMathMI.pfbbin0 -> 32286 bytes
-rw-r--r--Master/texmf-dist/fonts/type1/public/gelasiomath/GelasioMathRM.pfbbin0 -> 14922 bytes
-rw-r--r--Master/texmf-dist/fonts/vf/public/gelasiomath/Gelasio-Bold-tlf-ot1G.vfbin0 -> 984 bytes
-rw-r--r--Master/texmf-dist/fonts/vf/public/gelasiomath/Gelasio-BoldItalic-tlf-ot1G.vfbin0 -> 932 bytes
-rw-r--r--Master/texmf-dist/fonts/vf/public/gelasiomath/Gelasio-Italic-tlf-ot1G.vfbin0 -> 988 bytes
-rw-r--r--Master/texmf-dist/fonts/vf/public/gelasiomath/Gelasio-Regular-tlf-ot1G.vfbin0 -> 988 bytes
-rw-r--r--Master/texmf-dist/fonts/vf/public/gelasiomath/zgelbmi.vfbin0 -> 2456 bytes
-rw-r--r--Master/texmf-dist/fonts/vf/public/gelasiomath/zgelbmia.vfbin0 -> 2076 bytes
-rw-r--r--Master/texmf-dist/fonts/vf/public/gelasiomath/zgelmi.vfbin0 -> 2452 bytes
-rw-r--r--Master/texmf-dist/fonts/vf/public/gelasiomath/zgelmia.vfbin0 -> 2320 bytes
-rw-r--r--Master/texmf-dist/tex/latex/gelasiomath/gelasiomath.sty295
-rw-r--r--Master/texmf-dist/tex/latex/gelasiomath/ly1mingelasio.fd91
-rw-r--r--Master/texmf-dist/tex/latex/gelasiomath/omlzgelmi.fd30
-rw-r--r--Master/texmf-dist/tex/latex/gelasiomath/ot1mingelasio.fd78
-rw-r--r--Master/texmf-dist/tex/latex/gelasiomath/t1mingelasio.fd51
-rw-r--r--Master/texmf-dist/tex/latex/gelasiomath/untxmia.fd139
-rwxr-xr-xMaster/tlpkg/bin/tlpkg-ctan-check2
-rwxr-xr-xMaster/tlpkg/libexec/ctan2tds1
-rw-r--r--Master/tlpkg/tlpsrc/collection-fontsextra.tlpsrc1
-rw-r--r--Master/tlpkg/tlpsrc/gelasiomath.tlpsrc1
39 files changed, 888 insertions, 1 deletions
diff --git a/Master/texmf-dist/doc/fonts/gelasiomath/README b/Master/texmf-dist/doc/fonts/gelasiomath/README
new file mode 100644
index 00000000000..d0139acde11
--- /dev/null
+++ b/Master/texmf-dist/doc/fonts/gelasiomath/README
@@ -0,0 +1,11 @@
+This small package provides math support for the Gelasio text fonts, based on the newtxmath symbols with Roman letters taken from Gelasio and Greek letters taken from XCharter magnified by 1.02. Newtx, version 1.752 or higher, must be installed and its map file enabled. The package also provides small caps based on XCharter for Gelasio as well as pdflatex access to some of its small figures---numerators, denominators and inferiors. A modified OT1 (TLF only) is also provided for use as math operators, with Greek upper case taken from XCharter. The font files in this package are in pfb format, licensed under the SIL OFL, version 1.1. All other LaTeX support files are subject to the LaTeX Project Public License. See
+http://www.ctan.org/license/lppl1.3 for the details of that license.
+Copyright (c) 2024 Michael Sharpe
+
+Current version: 1.00 2024-07-05
+
+
+
+
+
+Maintainer: Michael Sharpe, msharpe@ucsd.edu \ No newline at end of file
diff --git a/Master/texmf-dist/doc/fonts/gelasiomath/gelasiomath-doc.pdf b/Master/texmf-dist/doc/fonts/gelasiomath/gelasiomath-doc.pdf
new file mode 100644
index 00000000000..0d0157bcf66
--- /dev/null
+++ b/Master/texmf-dist/doc/fonts/gelasiomath/gelasiomath-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/fonts/gelasiomath/gelasiomath-doc.tex b/Master/texmf-dist/doc/fonts/gelasiomath/gelasiomath-doc.tex
new file mode 100644
index 00000000000..8aabb656d7b
--- /dev/null
+++ b/Master/texmf-dist/doc/fonts/gelasiomath/gelasiomath-doc.tex
@@ -0,0 +1,168 @@
+% !TEX TS-program = lualatexmk
+%!TEX encoding = UTF-8 Unicode
+
+\documentclass[11pt]{article}
+\usepackage{geometry} % See geometry.pdf to learn the layout options. There are lots.
+\geometry{letterpaper} % ... or a4paper or a5paper or ...
+\RequirePackage{etoolbox,trace,bm}
+
+%\geometry{landscape} % Activate for for rotated page geometry
+\usepackage[parfill]{parskip}
+\usepackage{graphicx,fonttable}
+\usepackage{array,booktabs}
+\usepackage[T1]{fontenc} % Active encoding for use in math text
+\usepackage[type1,sfdefault,scale=1]{sourcesanspro}% used by \mathsf
+\usepackage[scaled=.98,varqu,varl]{zi4} % for \mathtt
+\usepackage[vvarbb]{gelasiomath}
+
+\iftutex\setmonofont{inconsolata.otf}\fi
+%\else
+%\RequirePackage{pdftexcmds}
+%\usepackage{zi4}
+%\fi
+%\usepackage[gelasio]{newtx}
+%\usepackage{xchsc}
+\usepackage{booktabs}
+%\setsansfont[Scale=MatchLowercase,Ligatures=TeX]{Gill Sans}
+%\setmonofont[Scale=MatchLowercase]{Andale Mono}
+
+\title{Gelasiomath}
+\author{Michael Sharpe}
+%\date{} % Activate to display a given date or no date
+
+\begin{document}
+\maketitle
+The newest versions of {\tt newtx.sty} and {\tt newtxmath.sty}
+and the new {\tt gelasiomath.sty}
+provide support for the {\tt Gelasio} text fonts and the associated {\tt gelasio} package. Its main features are:
+\begin{itemize}
+\item
+Math support for {\tt gelasio};
+\item small caps (regular, italic, bold and bold italic) for {\tt gelasio} by means of a work-around using {\tt XCharter} small caps enlarged by 2\%;
+\item access to numerator, denominator and inferior figures from {\tt pdflatex}. (The {\tt Gelasio} fonts have these figures but {\tt gelasio.sty} does not offer support for them under {\tt pdflatex}.)
+\item
+Math figures are lining, rather than simply following the text figure style, which is, by default, oldstyle. E.g., \verb|$1X$| gives $1X$, not 1$X$.
+\end{itemize}
+
+The simplest and most capable way to use these support macros is through the small {\tt gelasiomath} package, which works with all LaTeX engines.
+\begin{verbatim}
+\usepackage[<options>]{gelasiomath}
+\end{verbatim}
+The only options handled directly by {\tt gelasiomath} are {\tt scale} and {\tt scosf}. The {\tt scale} option sets appropriate scales for {\tt gelasio}, {\tt xcharter} and {\tt newtxmath}, taking into account that {\tt gelasio} requires a reduction by the factor {\tt.92} to match {\tt newtxmath}. Option {\tt scosf} specifies that figures in amall caps should be transformed to oldstyle, no matter what the figure style for {\tt gelasio} was set to.
+
+All other options added to {\tt gelasiomath} are passed along to {\tt gelasio} and {\tt newtxmath}.
+E.g., to use {\tt gelasio} with lining figures except in small caps, at its natural size with matching math scale, you could write
+\begin{verbatim}
+\usepackage[scale=1.087,lining,scosf]{gelasiomath}
+\end{verbatim}
+
+%The basic method to load {\tt gelasio} with math support is to include in your preamble the lines
+%\begin{verbatim}
+%\usepackage[scale=.92]{gelasio}
+%\usepackage[gelasio]{newtxmath}
+%\end{verbatim}
+%or just
+%\begin{verbatim}
+%\usepackage[gelasio]{newtx}
+%\end{verbatim}
+%Loading using {\tt newtx} is preferred as it offers scaling both text and math without fiddling arithmetic as well as other enhancements described below. For the remainder of this description, I'll assume you are making use of {\tt newtx}.
+
+%To add support for XCharter small caps, add to your preamble the line
+%\begin{verbatim}
+%\usepackage{xchsc}
+%\end{verbatim}
+%No options are available.
+
+%I recommend applying \verb|\textsc| and \verb|\scshape| only to text, not figures, as {\tt XCharter} figures do not match {\tt Gelasio} figures very well. For example:\\
+
+The insertion of {\tt xcharter} small caps is complicated by the fact that xcharter capital letters are not a good match for gelasio capitals, and figures are an even worse mismatch. In {\tt gelasiomath}, LaTeX's font switch \verb|\scshape| is redefined to {\tt xcharter} small caps at the appropriate scale, and this in turn leads to a corresponding change of the macro \verb|\textsc|. The following table illustrates the problems with capitals and figures.
+
+\begin{center}
+ \begin{tabular}{@{} ccc @{}}
+ \toprule
+ Source & Typeset source & Comments \\
+ \midrule
+ Reg. 2345 \verb|{\scshape| SmCap 2345\verb|}|& Reg. 2345 {\scshape SmCap 2345} & figures do not match \\
+ Reg. 2345 \verb|{\scshape| SmCap\verb|}| 2345& Reg. 2345 {\scshape SmCap} 2345 & Caps not good match \\
+ S\verb|{\scshape| mall\verb|}| C\verb|{\scshape| ap\verb|}|& S{\scshape mall} C{\scshape ap}& Better IMO\\
+ \bottomrule
+ \end{tabular}
+\end{center}
+
+The macro \verb|\textsc| is left as is and a new macro \verb|\textSC| is defined so as to exclude capitals and figures from the font change to {\tt xcharter}, making use of an {\tt expl3 regex} method I learned from a posting by Enrico Gregorio. (The regex tries to find all capitals in the argument string---this depends on the use of macros to specify non-ASCII capitals.) I found no way to make an equivalent font switch \verb|\SCshape|. The following lines compare the effects of \verb|\textSC| versus \verb|\textsc| for regular, italic, bold and bold italic.
+
+
+\textSC{Small Caps 2345} v. \textsc{Small Caps 2345}\\
+{\itshape \textSC{Small Caps 2345} v. \textsc{Small Caps 2345}}\\
+{\bfseries \textSC{Small Caps 2345} v. \textsc{Small Caps 2345}}\\
+{\bfseries\itshape \textSC{Small Caps 2345} v. \textsc{Small Caps 2345}}
+
+Users of XeLaTeX/LuaLaTeX will have to contend with irritating LaTeX Font Warnings about \verb|TU/Gelasio(?)/m/sc[it]| being undefined, but the output will be correct.
+
+{\bfseries\textSC{New Text Commands}:}
+\begin{itemize}
+\item
+In unicode tex, font switches \verb|\nufigures|, \verb|\defigures| and \verb|\infigures| are defined for numerators, denominators and inferiors as well as the corresponding macros \verb|\textnum|, \verb|\textde|, and \verb|\textinf|.
+\item (All engines)
+\verb|\textlf|, \verb|\texttlf|, \verb|\textosf|, \verb|\texttosf| give their arguments in lining figures, tabular lining figures, oldstyle figures and tabular oldstyle figures respectively.
+\item For {\tt pdflatex}, macros \verb|\textnum|, \verb|\textde|, and \verb|\textinf| are provided, but not the corresponding font switch commands. (These work by changing the baseline of the superior figures.)
+\item A \verb|\textfrac| macro is provided, intended for regular weight only. E.g., \verb|\textfrac{3}{16}| gives \textfrac{3}{16} and \verb|\textfrac[2]{3}{16}| gives \textfrac[2]{3}{16}.
+\item
+There is a stacked fraction macro, \verb|\textsfrac|. E.g.,
+\verb|\textsfrac[1]{7}{32}| gives \textsfrac[1]{7}{32}. See the documentation for {\tt newtx} for details about the options available. The small denominator figures have configurable size and are made available for general use with the macro \verb|\textsmde|.
+\end{itemize}
+See the documentation for the {\tt newtx} package for detailed information about math typesetting, bearing in mind that {\tt gelasiomath} takes care of loading {\tt gelasio} and {\tt newtxmath}. Here is a sample basic preamble using unicode latex.
+
+\begin{verbatim}
+% !TEX TS-program = lualatex
+\documentclass[11pt,leqno]{article}
+\usepackage[margin=1in]{geometry}
+\usepackage[parfill]{parskip}
+\usepackage{array,booktabs}
+\usepackage[T1]{fontenc} % Active encoding for use in math text
+\usepackage[type1,sfdefault,scale=1]{sourcesanspro}% used by \mathsf
+\usepackage[scaled=.98,varqu,varl]{zi4} % for \mathtt
+% the next line loads fontspec
+\usepackage[amsthm,vvarbb,scosf]{gelasiomath}
+%\setmonofont and \setsansfont could be set here if
+% necessary for use in text passages
+\end{verbatim}
+Here is a well-known nonsense fragment from \emph{The TeXBook.}
+
+With a price of \pounds 148, almost anything can be found \textsc{Floating In \textbf{Fields}.} --- ?`But aren't Kafka's
+Schlo{\ss} and {\AE}sop's {\OE}uvres often \emph{na{\"\i}ve} vis-\`{a}-vis
+the d{\ae}monic ph{\oe}nix's official r\^{o}le in fluffy souffl\'{e}s?
+
+\newcommand\ibinom[2]{\genfrac\lbrace\rbrace{0pt}{}{#1}{#2}}
+% \section*{...}
+The following is borrowed from \emph{The \LaTeX\ Companion Third Edition}.
+
+First some large operators both in text:
+\smash{$ \iiint\limits_{\mathcal{Q}} f(x,y,z)\,dx\,dy\,dz $} and
+ $ \prod_{\gamma\in\Gamma_{\widetilde{C}}}
+ \partial(\widetilde{X}_\gamma) $; and also on display:
+
+\begin{equation} \begin{split} \iiiint\limits_{\mathbf{Q}} f(w,x,y,z)dwdxdydz
+ & \leq \oint_{\bm{\partial Q}} f’ \left( \max \left\lbrace
+ \frac{\lVert w \rVert}{\lvert w^2 + x^2 \rvert} ;
+ \frac{\lVert z \rVert}{\lvert y^2 + z^2 \rvert} ;
+ \frac{\lVert w \oplus z \rVert}{\lVert x \oplus y \rVert}
+ \right\rbrace \right) \\
+ & \precapprox \biguplus_{\mathbb{Q} \Subset \bar{\mathbf{Q}}}
+ \left[ f^{\ast} \left(
+ \frac{\left\lmoustache\mathbb{Q}(t)\right\rmoustache}
+ {\sqrt {1 - t^2}}
+ \right) \right]_{t=\alpha}^{t=\vartheta} - ( \Delta + \nu - v )^3
+ \end{split} \end{equation}
+
+For $x$ in the open interval $ \left] -1, 1 \right[ $ the infinite
+ sum in Equation~(2) is convergent; however, this does
+ not hold throughout the closed interval $ \left[ -1, 1 \right] $.
+
+ \begin{equation}
+ (1 - x)^{-k} = 1 + \sum_{j=1}^{\infty} (-1)^j \ibinom{k}{j} x^j
+ \text{\quad for $k \in \mathbb{N}$; $k \neq 0$.} %\label{eq:binom1}
+ \end{equation}
+
+%\fonttable{Gelasio-Regular-tlf-ot1}
+\end{document} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/fonts/gelasiomath/newtx-gel-subs.tex b/Master/texmf-dist/doc/fonts/gelasiomath/newtx-gel-subs.tex
new file mode 100644
index 00000000000..2e6f5722576
--- /dev/null
+++ b/Master/texmf-dist/doc/fonts/gelasiomath/newtx-gel-subs.tex
@@ -0,0 +1,17 @@
+{f}{-2.5}
+{j}{-2.5}
+{p}{-2.5}
+{y}{-1.5}
+{A}{-2.5}
+{B}{-1}
+{D}{-1}
+{H}{-1}
+{I}{-1}
+{K}{-1}
+{L}{-1}
+{M}{-1}
+{N}{-0.5}
+{P}{-1}
+{X}{-1}
+{\rho}{-2}
+{\beta}{2} \ No newline at end of file
diff --git a/Master/texmf-dist/fonts/map/dvips/gelasiomath/GelasioMath.map b/Master/texmf-dist/fonts/map/dvips/gelasiomath/GelasioMath.map
new file mode 100644
index 00000000000..60938407c4e
--- /dev/null
+++ b/Master/texmf-dist/fonts/map/dvips/gelasiomath/GelasioMath.map
@@ -0,0 +1,4 @@
+GelasioMathMI GelasioMathMI <GelasioMathMI.pfb
+GelasioMathBMI GelasioMathBMI <GelasioMathBMI.pfb
+GelasioMathBRM GelasioMathBRM <GelasioMathBRM.pfb
+GelasioMathRM GelasioMathRM <GelasioMathRM.pfb
diff --git a/Master/texmf-dist/fonts/tfm/public/gelasiomath/Gelasio-Bold-tlf-ot1G.tfm b/Master/texmf-dist/fonts/tfm/public/gelasiomath/Gelasio-Bold-tlf-ot1G.tfm
new file mode 100644
index 00000000000..307dc6c9621
--- /dev/null
+++ b/Master/texmf-dist/fonts/tfm/public/gelasiomath/Gelasio-Bold-tlf-ot1G.tfm
Binary files differ
diff --git a/Master/texmf-dist/fonts/tfm/public/gelasiomath/Gelasio-BoldItalic-tlf-ot1G.tfm b/Master/texmf-dist/fonts/tfm/public/gelasiomath/Gelasio-BoldItalic-tlf-ot1G.tfm
new file mode 100644
index 00000000000..83b15fa3baa
--- /dev/null
+++ b/Master/texmf-dist/fonts/tfm/public/gelasiomath/Gelasio-BoldItalic-tlf-ot1G.tfm
Binary files differ
diff --git a/Master/texmf-dist/fonts/tfm/public/gelasiomath/Gelasio-Italic-tlf-ot1G.tfm b/Master/texmf-dist/fonts/tfm/public/gelasiomath/Gelasio-Italic-tlf-ot1G.tfm
new file mode 100644
index 00000000000..ea08cbf453b
--- /dev/null
+++ b/Master/texmf-dist/fonts/tfm/public/gelasiomath/Gelasio-Italic-tlf-ot1G.tfm
Binary files differ
diff --git a/Master/texmf-dist/fonts/tfm/public/gelasiomath/Gelasio-Regular-tlf-ot1G.tfm b/Master/texmf-dist/fonts/tfm/public/gelasiomath/Gelasio-Regular-tlf-ot1G.tfm
new file mode 100644
index 00000000000..6997ce6e48c
--- /dev/null
+++ b/Master/texmf-dist/fonts/tfm/public/gelasiomath/Gelasio-Regular-tlf-ot1G.tfm
Binary files differ
diff --git a/Master/texmf-dist/fonts/tfm/public/gelasiomath/GelasioMathBMI.tfm b/Master/texmf-dist/fonts/tfm/public/gelasiomath/GelasioMathBMI.tfm
new file mode 100644
index 00000000000..872dfb4e4f5
--- /dev/null
+++ b/Master/texmf-dist/fonts/tfm/public/gelasiomath/GelasioMathBMI.tfm
Binary files differ
diff --git a/Master/texmf-dist/fonts/tfm/public/gelasiomath/GelasioMathBRM.tfm b/Master/texmf-dist/fonts/tfm/public/gelasiomath/GelasioMathBRM.tfm
new file mode 100644
index 00000000000..79aae84ebc2
--- /dev/null
+++ b/Master/texmf-dist/fonts/tfm/public/gelasiomath/GelasioMathBRM.tfm
Binary files differ
diff --git a/Master/texmf-dist/fonts/tfm/public/gelasiomath/GelasioMathMI.tfm b/Master/texmf-dist/fonts/tfm/public/gelasiomath/GelasioMathMI.tfm
new file mode 100644
index 00000000000..266d6dde713
--- /dev/null
+++ b/Master/texmf-dist/fonts/tfm/public/gelasiomath/GelasioMathMI.tfm
Binary files differ
diff --git a/Master/texmf-dist/fonts/tfm/public/gelasiomath/GelasioMathRM.tfm b/Master/texmf-dist/fonts/tfm/public/gelasiomath/GelasioMathRM.tfm
new file mode 100644
index 00000000000..81b485c8642
--- /dev/null
+++ b/Master/texmf-dist/fonts/tfm/public/gelasiomath/GelasioMathRM.tfm
Binary files differ
diff --git a/Master/texmf-dist/fonts/tfm/public/gelasiomath/zgelbmi.tfm b/Master/texmf-dist/fonts/tfm/public/gelasiomath/zgelbmi.tfm
new file mode 100644
index 00000000000..e93d0205ab2
--- /dev/null
+++ b/Master/texmf-dist/fonts/tfm/public/gelasiomath/zgelbmi.tfm
Binary files differ
diff --git a/Master/texmf-dist/fonts/tfm/public/gelasiomath/zgelbmia.tfm b/Master/texmf-dist/fonts/tfm/public/gelasiomath/zgelbmia.tfm
new file mode 100644
index 00000000000..02b99ac9481
--- /dev/null
+++ b/Master/texmf-dist/fonts/tfm/public/gelasiomath/zgelbmia.tfm
Binary files differ
diff --git a/Master/texmf-dist/fonts/tfm/public/gelasiomath/zgelmi.tfm b/Master/texmf-dist/fonts/tfm/public/gelasiomath/zgelmi.tfm
new file mode 100644
index 00000000000..16321e720f7
--- /dev/null
+++ b/Master/texmf-dist/fonts/tfm/public/gelasiomath/zgelmi.tfm
Binary files differ
diff --git a/Master/texmf-dist/fonts/tfm/public/gelasiomath/zgelmia.tfm b/Master/texmf-dist/fonts/tfm/public/gelasiomath/zgelmia.tfm
new file mode 100644
index 00000000000..8d623290d86
--- /dev/null
+++ b/Master/texmf-dist/fonts/tfm/public/gelasiomath/zgelmia.tfm
Binary files differ
diff --git a/Master/texmf-dist/fonts/type1/public/gelasiomath/GelasioMathBMI.pfb b/Master/texmf-dist/fonts/type1/public/gelasiomath/GelasioMathBMI.pfb
new file mode 100644
index 00000000000..20b7f4033fb
--- /dev/null
+++ b/Master/texmf-dist/fonts/type1/public/gelasiomath/GelasioMathBMI.pfb
Binary files differ
diff --git a/Master/texmf-dist/fonts/type1/public/gelasiomath/GelasioMathBRM.pfb b/Master/texmf-dist/fonts/type1/public/gelasiomath/GelasioMathBRM.pfb
new file mode 100644
index 00000000000..8a7b8ae4771
--- /dev/null
+++ b/Master/texmf-dist/fonts/type1/public/gelasiomath/GelasioMathBRM.pfb
Binary files differ
diff --git a/Master/texmf-dist/fonts/type1/public/gelasiomath/GelasioMathMI.pfb b/Master/texmf-dist/fonts/type1/public/gelasiomath/GelasioMathMI.pfb
new file mode 100644
index 00000000000..6ae7403070a
--- /dev/null
+++ b/Master/texmf-dist/fonts/type1/public/gelasiomath/GelasioMathMI.pfb
Binary files differ
diff --git a/Master/texmf-dist/fonts/type1/public/gelasiomath/GelasioMathRM.pfb b/Master/texmf-dist/fonts/type1/public/gelasiomath/GelasioMathRM.pfb
new file mode 100644
index 00000000000..2a2f7e12f19
--- /dev/null
+++ b/Master/texmf-dist/fonts/type1/public/gelasiomath/GelasioMathRM.pfb
Binary files differ
diff --git a/Master/texmf-dist/fonts/vf/public/gelasiomath/Gelasio-Bold-tlf-ot1G.vf b/Master/texmf-dist/fonts/vf/public/gelasiomath/Gelasio-Bold-tlf-ot1G.vf
new file mode 100644
index 00000000000..2a679ce69cb
--- /dev/null
+++ b/Master/texmf-dist/fonts/vf/public/gelasiomath/Gelasio-Bold-tlf-ot1G.vf
Binary files differ
diff --git a/Master/texmf-dist/fonts/vf/public/gelasiomath/Gelasio-BoldItalic-tlf-ot1G.vf b/Master/texmf-dist/fonts/vf/public/gelasiomath/Gelasio-BoldItalic-tlf-ot1G.vf
new file mode 100644
index 00000000000..a146628af7f
--- /dev/null
+++ b/Master/texmf-dist/fonts/vf/public/gelasiomath/Gelasio-BoldItalic-tlf-ot1G.vf
Binary files differ
diff --git a/Master/texmf-dist/fonts/vf/public/gelasiomath/Gelasio-Italic-tlf-ot1G.vf b/Master/texmf-dist/fonts/vf/public/gelasiomath/Gelasio-Italic-tlf-ot1G.vf
new file mode 100644
index 00000000000..8e262c86e2f
--- /dev/null
+++ b/Master/texmf-dist/fonts/vf/public/gelasiomath/Gelasio-Italic-tlf-ot1G.vf
Binary files differ
diff --git a/Master/texmf-dist/fonts/vf/public/gelasiomath/Gelasio-Regular-tlf-ot1G.vf b/Master/texmf-dist/fonts/vf/public/gelasiomath/Gelasio-Regular-tlf-ot1G.vf
new file mode 100644
index 00000000000..40f3bd9f5ff
--- /dev/null
+++ b/Master/texmf-dist/fonts/vf/public/gelasiomath/Gelasio-Regular-tlf-ot1G.vf
Binary files differ
diff --git a/Master/texmf-dist/fonts/vf/public/gelasiomath/zgelbmi.vf b/Master/texmf-dist/fonts/vf/public/gelasiomath/zgelbmi.vf
new file mode 100644
index 00000000000..e67b53ecae7
--- /dev/null
+++ b/Master/texmf-dist/fonts/vf/public/gelasiomath/zgelbmi.vf
Binary files differ
diff --git a/Master/texmf-dist/fonts/vf/public/gelasiomath/zgelbmia.vf b/Master/texmf-dist/fonts/vf/public/gelasiomath/zgelbmia.vf
new file mode 100644
index 00000000000..63fed788eef
--- /dev/null
+++ b/Master/texmf-dist/fonts/vf/public/gelasiomath/zgelbmia.vf
Binary files differ
diff --git a/Master/texmf-dist/fonts/vf/public/gelasiomath/zgelmi.vf b/Master/texmf-dist/fonts/vf/public/gelasiomath/zgelmi.vf
new file mode 100644
index 00000000000..0443f250f8d
--- /dev/null
+++ b/Master/texmf-dist/fonts/vf/public/gelasiomath/zgelmi.vf
Binary files differ
diff --git a/Master/texmf-dist/fonts/vf/public/gelasiomath/zgelmia.vf b/Master/texmf-dist/fonts/vf/public/gelasiomath/zgelmia.vf
new file mode 100644
index 00000000000..d9ca49afa22
--- /dev/null
+++ b/Master/texmf-dist/fonts/vf/public/gelasiomath/zgelmia.vf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/gelasiomath/gelasiomath.sty b/Master/texmf-dist/tex/latex/gelasiomath/gelasiomath.sty
new file mode 100644
index 00000000000..e468d793de3
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/gelasiomath/gelasiomath.sty
@@ -0,0 +1,295 @@
+\NeedsTeXFormat{LaTeX2e}
+
+\def\fileversion{1.0}
+\def\filedate{2024/06/19}
+\ProvidesPackage{gelasiomath}[%
+\filedate\space v\fileversion (Michael Sharpe) Use xch small caps in gelasio text and supply matching math package]
+
+\message{`gelasiomath'v\fileversion,\space\filedate\space Load\space XCharter\space small\space caps\space as\space target\space for\space scshape\space and\space load\space newtx\space with\space appropriate\space options.\space (msharpe)}
+
+\RequirePackage{iftex,etoolbox,xkeyval,ifthen,xparse}
+\def\gelm@scale{1} % default value for scale option
+
+\DeclareOptionX{scale}{\def\gelm@scale{#1}}
+\newif\ifgelm@scosf
+\DeclareOptionX{scosf}{\gelm@scosftrue}
+%\newif\ifgelm@gelscfigs\gelm@gelscfigstrue
+%\DeclareOptionX{nogelfigs}{\gelm@gelscfigsfalse}
+
+\DeclareOptionX*{\PassOptionsToPackage{\CurrentOption}{newtx}}
+
+\ProcessOptionsX \relax
+\@tempdima=\gelm@scale\p@
+\@tempdimb=.92\@tempdima % for gelasio text scale
+\@tempdimc=.938\@tempdima % for xcharter text
+\edef\gel@scale{\strip@pt\@tempdimb}
+\edef\XCharter@scale{\strip@pt\@tempdimc}
+\usepackage[gelasio,textscale=\gel@scale,mathscale=\gelm@scale]{newtx}
+%\AtBeginDocument{%
+% \expandafter\ifx\csname Gelasio@scale\endcsname\relax
+% \edef\Gelasio@scale{1}
+% \edef\XCharter@scale{1.02}
+% \else
+% \@tempdima=\Gelasio@scale\p@
+% \@tempdima=1.02\@tempdima%
+% \edef\XCharter@scale{\strip@pt\@tempdima}
+% \fi
+%} % AtBeginDocument
+\def\gelm@scit{scit}% for testing value of \f@shape
+\def\gelm@sc{sc}% for testing value of \f@shape
+
+\iftutex
+\AtBeginDocument{%
+\def\gelm@tufig{\addfontfeatures{RawFeature = -smcp , \ifgelm@scosf Numbers = OldStyle, \fi}}
+\addfontfeatures{UprightFeatures={SmallCapsFont={XCharter-Roman}, SmallCapsFeatures={%
+\ifgelm@scosf Numbers = OldStyle ,\fi
+ Letters=SmallCaps,
+Scale=\XCharter@scale}},%
+ItalicFeatures={SmallCapsFont={XCharter-Italic}, SmallCapsFeatures={%
+\ifgelm@scosf Numbers = OldStyle ,\fi
+Letters=SmallCaps, Scale=\XCharter@scale}},%
+BoldFeatures={SmallCapsFont={XCharter-Bold}, SmallCapsFeatures={%
+\ifgelm@scosf Numbers = OldStyle ,\fi
+Letters=SmallCaps, Scale=\XCharter@scale}},%
+BoldItalicFeatures={SmallCapsFont={XCharter-BoldItalic}, SmallCapsFeatures={%
+\ifgelm@scosf Numbers = OldStyle ,\fi
+Letters=SmallCaps, Scale=\XCharter@scale}}%
+}}
+\ifgelm@scosf
+ \AtBeginDocument{%
+ \xpretocmd{\scshape}
+ {\addfontfeatures{Numbers=OldStyle}}
+ {}{}%
+ }%
+\fi
+
+\else %not tutex
+ \AtBeginDocument{%
+ \ifgelm@scosf%
+ \def\gelm@fig{OsF}
+ \else % use default settings from gelasio.sty
+ \def\gelm@fig{\gelasio@figurealign\gelasio@figurestyle}
+ \fi
+ \edef\XCharter@@scale{s*[\csname XCharter@scale\endcsname]}%
+ \let\scshape\relax
+ \DeclareRobustCommand\scshape{%
+ \not@math@alphabet\scshape\relax
+ \fontfamily{XCharter-\gelm@fig}\fontshape\scdefault\selectfont}
+ %\DeclareTextCommand{\textsc}{\scshape}
+ }
+\fi
+
+%\newtoks\gel@SC % store for processed string
+%\newtoks\gel@src % store for source string
+%\def\gel@Append#1{% append #1 to token register \gel@SC
+%\toks0={#1}%
+%\edef\gel@tmpa{\noexpand\gel@SC={\the\gel@SC \the\toks0}}%
+%\gel@tmpa}
+%
+%\def\gel@Pop#1(into:)#2{%
+% \edef\gel@act{\noexpand\gel@SplitOff\the#1%
+% (gel@head:)\noexpand#2(gel@tail:)\noexpand#1}%
+% \gel@act}
+%\def\gel@SplitOff#1#2(gel@head:)#3(gel@tail:)#4{\def#3{\noexpand #1}#4={#2}}
+%
+%\def\nxt|#1#2\@nil{%
+%\toks0={#2}\edef\param{\the\toks0}%
+%\ifx\param\@empty%
+% \textsc{\the\gel@SC} % done
+%\else% continue parsing for capital letters
+% \ifthenelse{\isblank
+% \ifcat A#1 % #1 is letter
+% \if#1\uppercase{#1}%
+% \gel@Append{\textulc{#1}}%
+% \else
+% \gel@Append{#1}%
+% \fi
+% \else % not a letter
+% \gel@Append{#1}%
+% \fi
+% \nxt|#2\@nil%
+%\fi}
+%
+%\def\textSC#1{\gel@SC={}\nxt|#1\@nil}
+\def\textSC#1{\textsc{\capsescape{#1}}}
+\iftutex%
+ \def\textULC#1{{\gelasio\gelm@tufig%
+ \ifthenelse{\equal{\f@shape}{\gelm@scit}}{%shape is scit
+ \itshape}{% not so
+ \ifthenelse{\equal{\f@shape}{\gelm@sc}}{% shape is sc
+ \upshape}}%
+ \textulc{#1}}}
+
+\else
+ \def\textULC#1{{\fontfamily{Gelasio-\gelm@fig}%
+ \ifthenelse{\equal{\f@shape}{\gelm@scit}}{%shape is scit
+ \fontshape{it}}{% not so
+ \ifthenelse{\equal{\f@shape}{\gelm@sc}}{% shape is sc
+ \fontshape{n}}{}}%
+ \selectfont #1}}
+\fi
+\ExplSyntaxOn
+\NewDocumentCommand{\capsescape}{ m }
+ {
+ \gel_capsescape:n { #1 }
+ }
+
+\tl_new:N \l__gel_capsescape_input_tl
+\cs_new_protected:Npn \gel_capsescape:n #1
+ {
+ % store the string in a variable
+ \tl_set:Nn \l__gel_capsescape_input_tl {#1}
+ \regex_replace_all:nnN
+ % search for capital letters, figures and more
+ { ([A-Z\d]+|\cC.\{?[A-Z]+\}?) }
+ % replace the match with \textULC{<match>}
+ { \c{textULC}\cB\{\1\cE\} }
+ \l__gel_capsescape_input_tl
+ \tl_use:N \l__gel_capsescape_input_tl
+ }
+\ExplSyntaxOff
+
+
+% galasio.sty does not offer macros for numerators, denominators or inferiors
+\AtBeginDocument{%
+\ifgelasio@otf
+ \DeclareRobustCommand{\lfstyle}{%
+ \not@math@alphabet\lfstyle\relax
+ \addfontfeatures{Numbers={Proportional,Lining}}%
+ }
+
+ \DeclareRobustCommand{\tlfstyle}{%
+ \not@math@alphabet\tlfstyle\relax
+ \addfontfeatures{Numbers={Monospaced,Lining}}%
+ }
+ \DeclareRobustCommand{\osfstyle}{%
+ \not@math@alphabet\osfstyle\relax
+ \addfontfeatures{Numbers={Proportional,OldStyle}}%
+ }
+ \DeclareRobustCommand{\tosfstyle}{%
+ \not@math@alphabet\tosfstyle\relax
+ \addfontfeatures{Numbers={Monospaced,OldStyle}}%
+ }
+ \providecommand\nufigures{%
+ \addfontfeatures{VerticalPosition=Numerator}}
+ \providecommand\defigures{%
+ \addfontfeatures{VerticalPosition=Denominator}}
+ \providecommand\infigures{%
+ \addfontfeatures{VerticalPosition=Inferior}}
+
+ \DeclareTextFontCommand{\textnum}{\nufigures}
+ \DeclareTextFontCommand{\textde}{\defigures}
+ \DeclareTextFontCommand{\textinf}{\infigures}
+ \NewCommandCopy\textnu\textnum
+ \@ifundefined{tx@sfrSC}{}{%
+ \newcommand*{\textsmde}[1]{%
+ \setbox0=\hbox{\scalebox\tx@sfrSC{\textde{#1}}}\box0}}
+
+\else % type1 --we define \text.. by lowering \textsu
+ % missing font switches for type1
+ \DeclareRobustCommand{\lfstyle}{%
+ \not@math@alphabet\lfstyle\relax
+ \fontfamily{Gelasio-LF}\selectfont %
+ }
+ \DeclareRobustCommand{\tlfstyle}{%
+ \not@math@alphabet\tlfstyle\relax
+ \fontfamily{Gelasio-TLF}\selectfont %
+ }
+ \DeclareRobustCommand{\osfstyle}{%
+ \not@math@alphabet\osfstyle\relax
+ \fontfamily{Gelasio-OsF}\selectfont %
+ }
+ \DeclareRobustCommand{\tosfstyle}{%
+ \not@math@alphabet\tosfstyle\relax
+ \fontfamily{Gelasio-TOsF}\selectfont %
+ }
+ \newbox\tx@box
+ \newcommand*{\textde}[1]{{\setbox0=\hbox{\textsu{#1}}\setbox1=\hbox{\raise -.763ex \box0}\dp1=0pt\ht1=.977ex\box1\relax}}
+
+ \providecommand*\textnum[1]{\raisebox{.507ex}{\textde{#1}}}
+ \NewCommandCopy\textnu\textnum
+ \providecommand*\textinf[1]{\raisebox{-.237ex}{\textde{#1}}}
+ \let\textnu\textnum
+% \providecommand*\textde[1]{{\setbox0=\hbox{\textsu{#1}}%
+% \setbox1=\hbox{\lower.763ex\box0}\dp0=0pt\relax\box1\relax}}
+ %\raisebox{-.763ex}{\textsu{#1}}}
+ % the following will be used only by \textsfrac
+ \@ifundefined{tx@sfrSC}{}{%
+ \newcommand*{\textsmde}[1]{%
+ \setbox0=\hbox{\scalebox\tx@sfrSC{\textde{#1}}}\box0}%
+ }
+\fi
+\DeclareTextFontCommand{\textlf}{\lfstyle}
+\DeclareTextFontCommand{\texttlf}{\tlfstyle}
+\DeclareTextFontCommand{\textosf}{\osfstyle}
+\DeclareTextFontCommand{\texttosf}{\tosfstyle}
+} %\AtBeginDocument
+%\ifnum\ntx@id=16\relax
+%\else % create \textsmsmde for other than minion and gelasio
+%% We move the small font to the text baseline and scale it by \tx@sfrSC, for use only in the \textsfrac macro.
+%\ifnum\ntx@id=4\relax
+%\else
+% \ifnum\tx@debase=0
+% \newcommand*{\textsmde}[1]{%
+% \setbox0=\hbox{\scalebox\tx@sfrSC{\textde{#1}}}\box0}
+% \else
+% \newdimen\tx@u \newdimen\tx@v
+% \tx@u=-\tx@debase pt
+% \tx@toex{\strip@pt\tx@u}\tx@y=\tx@x
+% %\showthe\tx@y
+% \tx@v=\strip@pt\tx@y ex
+% \newcommand*{\textsmde}[1]{%
+% \setbox2=\hbox{\textde{#1}}%
+% \setbox1=\hbox{\raise \tx@v \box2}%
+% \setbox0=\hbox{\scalebox{\tx@sfrSC}{\box1}}\box0}
+% \fi %\ifnum\tx@debase=0
+%\fi %\ifnum\ntx@id=4
+%\fi %\ifnum\ntx@id=16
+\iftutex%
+ \def\gel@frslash{\symbol{"2044}}
+\else%
+ \def\gel@frslash{%
+ {\fontencoding{TS1}\selectfont\char"2F}}
+\fi
+
+\newcommand*{\geltextfrac}[3][]{% like \textfrac[1]{7}{8}
+ \mbox{%
+ \ifthenelse{\not\equal{#1}{}}%Test for integer portion [optional #1]
+ {\textlf{#1}\kern.02em}{}%
+ \textnum{#2}% numerator
+ \StrRight{#2}{1}[\@digit@]%
+ % look for 1, 2, 3, 7, 8
+ \ifcase\@digit@% 0
+ \or%\kern.03em% 1
+ \or\kern.04em% 2
+ \or%\kern-.01em% 3
+ \or\kern.02em% 4
+ \or\kern-.01em% 5
+ \or%\kern.01em% 6
+ \or\kern-.08em% 7
+ \or\kern.01em% 8
+ \or\kern-.02em% 9
+ \fi%
+% \kern\ntx@foresolidus{\fontencoding{TS1}\selectfont\char"2F}%
+% \kern\ntx@aftsolidus%
+ \gel@frslash%
+ \StrLeft{#3}{1}[\@digit@]%
+ % look for 1, 4, 7
+ \ifcase\@digit@% 0
+ \or\kern .01em% 1
+ \or\kern .01em% 2
+ \or\kern .01em% 3
+ \or\kern -.01em% 4
+ \or%\kern -.02em% 5
+ \or%\kern-.03em% 6
+ \or\kern .06em% 7
+ \or%\kern .01em% 8
+ \or\kern .01em% 9
+ \fi%
+ \textde{#3}% denominator [#3]
+ }%mbox
+} % \geltextfrac
+\@ifundefined{textfrac}{\NewCommandCopy\textfrac\geltextfrac}%
+{\RenewCommandCopy\textfrac\geltextfrac}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/gelasiomath/ly1mingelasio.fd b/Master/texmf-dist/tex/latex/gelasiomath/ly1mingelasio.fd
new file mode 100644
index 00000000000..5a76ba9518c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/gelasiomath/ly1mingelasio.fd
@@ -0,0 +1,91 @@
+\ProvidesFile{ly1mingelasio.fd}
+ [2024/04/11 (msharpe) Font definitions for LY1/mingelasio.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+\def\@textscalefactor{.92}
+%xgelasio must be reduced by factor .92 to match xheight of newtxmath
+
+
+\@ifundefined{ntxmath@scale}{\let\ntxmath@scaled\@empty}
+{\@tempdima\@textscalefactor\p@
+\@tempdima\ntxmath@scale\@tempdima
+\edef\ntxmath@scaled{s*[\strip@pt\@tempdima]}}% locally, not globally
+
+\DeclareFontFamily{LY1}{mingelasio}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{LY1}{mingelasio}{m}{it}{
+ <-> \ntxmath@scaled Gelasio-Italic-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{regular}{it}{
+ <-> alias * mingelasio/m/it
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{m}{n}{
+ <-> \ntxmath@scaled Gelasio-Regular-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{regular}{n}{
+ <-> alias * mingelasio/m/n
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{m}{sl}{
+ <-> ssub * mingelasio/m/it
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{regular}{sl}{
+ <-> ssub * mingelasio/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{LY1}{mingelasio}{b}{n}{
+ <-> \ntxmath@scaled Gelasio-Bold-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{bold}{n}{
+ <-> alias * mingelasio/b/n
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{b}{it}{
+ <-> \ntxmath@scaled Gelasio-BoldItalic-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{bold}{it}{
+ <-> alias * mingelasio/b/it
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{b}{sl}{
+ <-> ssub * mingelasio/b/it
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{bold}{sl}{
+ <-> ssub * mingelasio/bold/it
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{LY1}{mingelasio}{bx}{n}{
+ <-> ssub * mingelasio/b/n
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{bx}{sl}{
+ <-> ssub * mingelasio/b/sl
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{bx}{it}{
+ <-> ssub * mingelasio/b/it
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/gelasiomath/omlzgelmi.fd b/Master/texmf-dist/tex/latex/gelasiomath/omlzgelmi.fd
new file mode 100644
index 00000000000..a9a6f612f47
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/gelasiomath/omlzgelmi.fd
@@ -0,0 +1,30 @@
+%Filename: omlzgelmi.fd
+%Created by: tex zgel-drv
+%Created using msharpe
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{omlzgelmi.fd}
+ [2024/04/08 Fontinst v1.933 font definitions for OML/zgelmi.]
+
+\expandafter\ifx\csname ntxmath@scaled\endcsname\relax
+ \let\ntxmath@scaled\@empty%
+\fi
+
+
+\DeclareFontFamily{OML}{zgelmi}{\skewchar \font =127}
+
+\DeclareFontShape{OML}{zgelmi}{m}{it}{
+ <-> \ntxmath@scaled zgelmi
+}{}
+
+\DeclareFontShape{OML}{zgelmi}{b}{it}{
+ <-> \ntxmath@scaled zgelbmi
+}{}
+
+\DeclareFontShape{OML}{zgelmi}{m}{sl}{<->ssub * zgelmi/m/it}{}
+\DeclareFontShape{OML}{zgelmi}{bx}{it}{<->ssub * zgelmi/b/it}{}
+\DeclareFontShape{OML}{zgelmi}{b}{sl}{<->ssub * zgelmi/b/it}{}
+\DeclareFontShape{OML}{zgelmi}{bx}{sl}{<->ssub * zgelmi/b/sl}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/gelasiomath/ot1mingelasio.fd b/Master/texmf-dist/tex/latex/gelasiomath/ot1mingelasio.fd
new file mode 100644
index 00000000000..1bfed27c98b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/gelasiomath/ot1mingelasio.fd
@@ -0,0 +1,78 @@
+\ProvidesFile{ot1mingelasio.fd}
+ [2024/04/11 (msharpe) Font definitions for OT1/mingelasio.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\def\@textscalefactor{.92}
+%xgelasio must be reduced by factor .92 to match xheight of newtxmath
+
+\@ifundefined{ntxmath@scale}{\let\ntxmath@scaled\@empty}
+{\@tempdima\@textscalefactor\p@
+\@tempdima\ntxmath@scale\@tempdima
+\edef\ntxmath@scaled{s*[\strip@pt\@tempdima]}}% locally, not globally
+
+\DeclareFontFamily{OT1}{mingelasio}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{OT1}{mingelasio}{m}{n}{
+ <-> \ntxmath@scaled Gelasio-Regular-tlf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{regular}{n}{
+ <-> alias * mingelasio/m/n
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{m}{it}{
+ <-> \ntxmath@scaled Gelasio-Italic-tlf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{regular}{it}{
+ <-> alias * mingelasio/m/it
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{m}{sl}{
+ <-> ssub * mingelasio/m/it
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{regular}{sl}{
+ <-> ssub * mingelasio/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{OT1}{mingelasio}{b}{n}{
+ <-> \ntxmath@scaled Gelasio-Bold-tlf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{bold}{n}{
+ <-> alias * mingelasio/b/n
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{b}{it}{
+ <-> \ntxmath@scaled Gelasio-BoldItalic-tlf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{bold}{it}{
+ <-> alias * mingelasio/b/it
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{b}{sl}{
+ <-> ssub * mingelasio/b/it
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{bold}{sl}{
+ <-> ssub * mingelasio/bold/it
+}{}
+
+
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/gelasiomath/t1mingelasio.fd b/Master/texmf-dist/tex/latex/gelasiomath/t1mingelasio.fd
new file mode 100644
index 00000000000..da0a9da6553
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/gelasiomath/t1mingelasio.fd
@@ -0,0 +1,51 @@
+\ProvidesFile{t1minelasio.fd}
+ [2024/04/14 (msharpe) Font definitions for T1/mingelasio.]
+
+%\def\@textscalefactor{.92}
+%xgelasio must be reduced by factor .92 to match xheight of newtxmath
+
+%\@ifundefined{newtxmathscale}{\def\newtxmathscale{1}}{}
+%\@tempdima\@textscalefactor\p@
+%\@tempdima\newtxmathscale\@tempdima
+%\xdef\newtxtext@scaled{s*[\strip@pt\@tempdima]}%global, not local
+
+\DeclareFontFamily{T1}{mingelasio}{}
+%\show\ntxtext@scaled
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T1}{mingelasio}{b}{it}{
+ <-> \ntxtext@scaled Gelasio-BoldItalic-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{mingelasio}{b}{n}{
+ <-> \ntxtext@scaled Gelasio-Bold-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{mingelasio}{b}{sl}{
+ <-> ssub * mingelasio/b/it
+}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T1}{mingelasio}{m}{n}{
+ <-> \ntxtext@scaled Gelasio-Regular-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{mingelasio}{m}{it}{
+ <-> \ntxtext@scaled Gelasio-Italic-tlf-t1
+}{}
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T1}{mingelasio}{bx}{n}{
+ <-> ssub * mingelasio/b/n
+}{}
+
+\DeclareFontShape{T1}{mingelasio}{bx}{it}{
+ <-> ssub * mingelasio/b/it
+}{}
+\traceoff
+\endinput
diff --git a/Master/texmf-dist/tex/latex/gelasiomath/untxmia.fd b/Master/texmf-dist/tex/latex/gelasiomath/untxmia.fd
new file mode 100644
index 00000000000..212e5b2386e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/gelasiomath/untxmia.fd
@@ -0,0 +1,139 @@
+%Filename: untxmia.fd
+%Created by: tex mia-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{untxmia.fd}
+ [2024/04/09 Fontinst v1.933 font definitions for U/ntxmia.]
+
+\expandafter\ifx\csname ntxmath@scaled\endcsname\relax
+ \let\ntxmath@scaled\@empty%
+\fi
+
+\DeclareFontFamily{U}{ntxmia}{\skewchar \font =127}
+
+\iftx@libertine
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled nxlmia
+ }{}
+
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled nxlbmia
+ }{}
+\else
+ \iftx@minion
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled zmnmia
+ }{}
+
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled zmnbmia
+ }{}
+ \else
+ \iftx@coch
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled zcochmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled zcochbmia
+ }{}
+ \else
+ \iftx@ch
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled zchmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled zchbmia
+ }{}
+ \else
+ \iftx@stxtwo
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled ntxstx2mia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled ntxstx2bmia
+ }{}
+
+ \else
+ \iftx@ebgm
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled ntxebgmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled ntxebgbmia
+ }{}
+ \else
+ \iftx@ut
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled zutmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled zutbmia
+ }{}
+ \else
+ \iftx@nc
+ \iftx@fourier
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled zncfmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled zncfbmia
+ }{}
+ \else
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled zncmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled zncbmia
+ }{}
+ \fi
+ \else
+ \iftx@noto
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled notomia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled notobmia
+ }{}
+ \else
+ \iftx@notosans
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled notosansmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled notosansbmia
+ }{}
+ \else
+ \iftx@gel
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled zgelmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled zgelbmia
+ }{}
+ \else
+
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled ntxmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled ntxbmia
+ }{}
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+\fi
+\DeclareFontShape{U}{ntxmia}{m}{sl}{<->ssub * ntxmia/m/it}{}
+\DeclareFontShape{U}{ntxmia}{bx}{it}{<->ssub * ntxmia/b/it}{}
+\DeclareFontShape{U}{ntxmia}{b}{sl}{<->ssub * ntxmia/b/it}{}
+\DeclareFontShape{U}{ntxmia}{bx}{sl}{<->ssub * ntxmia/b/sl}{}
+
+\endinput
diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check
index c752a6799f9..9be6a47c9e9 100755
--- a/Master/tlpkg/bin/tlpkg-ctan-check
+++ b/Master/tlpkg/bin/tlpkg-ctan-check
@@ -370,7 +370,7 @@ my @TLP_working = qw(
garamond-libre garamond-math garuda-c90
garrigues gastex gates gatherenum gauss
gb4e gbt7714 gcard gchords gcite gckanbun
- gelasio genealogy genealogytree gender gene-logic genealogy-profiles
+ gelasio gelasiomath genealogy genealogytree gender gene-logic genealogy-profiles
genmpage gensymb gentium-tug gentle gentombow geometry
geradwp german germbib germkorr geschichtsfrkl
getfiledate getitems getmap getoptk gettitlestring gfnotation
diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds
index 56c2d0e8f74..6dcfb38cef2 100755
--- a/Master/tlpkg/libexec/ctan2tds
+++ b/Master/tlpkg/libexec/ctan2tds
@@ -616,6 +616,7 @@ chomp (my $ctan_root = `tlpkginfo --ctan-root`);
'garuda-c90', "&MAKEgaruda_c90",
'gatech-thesis',"die 'skipping, obsolete on CTAN'",
'gene', "die 'skipping, complicated, some have sources, sorry'",
+ 'gelasiomath', "&MAKEflatten",
'genmisc', "die 'skipping, split into separate packages'",
'gentium', "die 'skipping, use gentium-tug'",
'gentl-gr', "die 'skipping, nonfree license'",
diff --git a/Master/tlpkg/tlpsrc/collection-fontsextra.tlpsrc b/Master/tlpkg/tlpsrc/collection-fontsextra.tlpsrc
index baa3f123096..da7c05a948f 100644
--- a/Master/tlpkg/tlpsrc/collection-fontsextra.tlpsrc
+++ b/Master/tlpkg/tlpsrc/collection-fontsextra.tlpsrc
@@ -166,6 +166,7 @@ depend frimurer
depend garamond-libre
depend garamond-math
depend gelasio
+depend gelasiomath
depend genealogy
depend gentium-tug
depend gfsartemisia
diff --git a/Master/tlpkg/tlpsrc/gelasiomath.tlpsrc b/Master/tlpkg/tlpsrc/gelasiomath.tlpsrc
new file mode 100644
index 00000000000..433947a0c9a
--- /dev/null
+++ b/Master/tlpkg/tlpsrc/gelasiomath.tlpsrc
@@ -0,0 +1 @@
+execute addMap GelasioMath.map