texlive[63890] Master: eulerpx (14jul22)

commits+karl at tug.org commits+karl at tug.org
Thu Jul 14 22:16:39 CEST 2022


Revision: 63890
          http://tug.org/svn/texlive?view=revision&revision=63890
Author:   karl
Date:     2022-07-14 22:16:39 +0200 (Thu, 14 Jul 2022)
Log Message:
-----------
eulerpx (14jul22)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/fonts/eulerpx/README
    trunk/Master/texmf-dist/tex/latex/eulerpx/eulerpx.sty
    trunk/Master/tlpkg/libexec/ctan2tds

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/fonts/eulerpx/eulerpxdoc.pdf
    trunk/Master/texmf-dist/doc/fonts/eulerpx/eulerpxdoc.tex
    trunk/Master/texmf-dist/doc/fonts/eulerpx/sample.tex

Modified: trunk/Master/texmf-dist/doc/fonts/eulerpx/README
===================================================================
--- trunk/Master/texmf-dist/doc/fonts/eulerpx/README	2022-07-14 13:24:59 UTC (rev 63889)
+++ trunk/Master/texmf-dist/doc/fonts/eulerpx/README	2022-07-14 20:16:39 UTC (rev 63890)
@@ -4,89 +4,15 @@
 =                                                                              =
 ================================================================================
 =                                                                              =
-=     Version 0.3.1                               Luuk Tijssen                 =
-=     2021-07-12                         <ltijssen2502 at gmail dot com>       =
+=     Version 1.0                                 Luuk Tijssen                 =
+=     2022-07-14                         <ltijssen2502 at gmail dot com>       =
 =                                                                              =
 ================================================================================
 
-The original author of this package is Jabir Ali Ouassou (up to, and including,
-v0.2.1). Newer versions of the package are updated by its new maintainer, Luuk
-Tijssen. I thank Ali for his continued support in the development of this
-package.
-
-This package provides the `eulerpx' font, which started as a hybrid of multiple 
-other font packages, notably eulervm and newpxmath. Its purpose is to use the 
-eulervm symbols for greek and latin letters, but the newpxmath font for braces
-and brackets, and the text font for digits and operators.
-
-This package was put together with the intent to use it with the Palatino and
-Optima fonts (newpxtext and classico), but may work with other combinations too;
-for instance, using it with the Kepler and Biolinum fonts (kpfonts and biolinum).
-It is not recommended  to use this package with the Computer Modern text font,
-this looks ugly.
-
-To use the package, add this to your preamble:
-
-   \usepackage{eulerpx}
-
-As of v0.3, bold math characters are accessed through the \boldsymbol macro
-provided by the `amsmath' package. For more professional/serious applications,
-it is recommended to load the `bm' package for this purpose instead.
-
-Before v0.3, bold math characters were accessed through the \mathbf macro. This
-macro now yields the bold text (operator) font.
-
-This package basically loads the newpxmath package, after which it replaces the
-characters which are available in the fonts provided by eulervm. Therefore, many
-of the (anti-)features provided by newpxmath are carried over to this package as
-well. It is recommended to also read the documentation to the newpxmath package,
-which describes all of these features. This README only covers the features
-added by the eulerpx package. 
-
-As of v0.3, you can load the newpxmath package with any options before the
-eulerpx package in your preamble
-
-  \usepackage[varbb]{newpxmath}
-  \usepackage{eulerpx}
-
-such as in the above example with the option `varbb'. This will cause newpxmath
-to load a different alphabet into the \mathbb macro. (Which, in the opinion of
-the authors, is prettier than the default.)
-
-Before v0.3, newpxmath was loaded with the options `upint' and `varbb' by
-default. When loading the newpxmath package before the eulerpx package without
-using these options would result in an options-clash LaTeX error. Upright
-integrals are still set by default, but without using this option, so that the 
-user is free to load newpxmath with whatever options they desire.
-
-As of v0.2, the font for digits and operators is automatically changed to serif
-or sans-serif when the bindings \rmfamily or \sffamily (respectively) are
-encountered. However, it was found that the implementation of this feature lead
-to inconsistency in the output. For this reason, since v0.3, the feature now has
-to be explicitly enabled by using the option `sansmath', i.e.,
-
-  \usepackage[sansmath]{eulerpx}
-
-in order to enable its functionality. Beware that enabling this option might
-lead to unexpected behavior in the output.
-
-If the option `utf8' is provided, the package will also declare the Greek 
-unicode range; i.e., if the package is included with
-
-  \usepackage[utf8]{inputenc}
-  \usepackage[utf8]{eulerpx}
-
-then you may write your equations in the form $α + β$ instead of $\alpha +
-\beta$. Note that the unicode coverage only includes the lower- and upper case
-Greek alphabets, no special roman/math characters are included. For this
-purpose you will need to load another package.
-
-
-
 License
 -------
-Copyright 2016-2017 J. A. Ouassou
-Copyright 2021 L. Tijssen
+Copyright 2016, 2017 Jabir Ali Ouassou
+Copyright 2021, 2022 Luuk Tijssen
 
 This work may be distributed and/or modified under the conditions of the LaTeX 
 Project Public License, either version 1.3 of this license or (at your option) 
@@ -97,14 +23,21 @@
 
 This work has the LPPL maintenance status `maintained'.
 
-The Current Maintainer of this work is L. Tijssen.
+The Current Maintainer of this work is Luuk Tijssen.
 
 This work consists of the file eulerpx.sty.
 
-
-
 History
 -------
+2022-07-14:
+    v1.0: First major release!
+          - Now with pdf documentation;
+          - Increased coverage of Euler symbols;
+          - Deprecated `sansmath' and `unicode' options;
+          - Added a key-value option scale to enable scaling the font;
+          - It is now possible to use eulerpx with math fonts other than
+            newpxmath with option `nonpxmath';
+          - Other miscellaneous and under-the-hood improvements.
 2021-07-12:
   v0.3.1: Fixed a bug introduced in v0.3.0 causing the \mathnormal alphabet to
           output glyphs in newpxmath instead of Euler Roman.
@@ -127,8 +60,6 @@
 2016-10-01:
   v0.1:   Initial eulerpx package created.
 
-
-
 Credits
 -------
 This package is based on the following existing packages:
@@ -141,8 +72,3 @@
    not use e.g. Euler digits and brackets. As of v0.3, support for encodings
    other than T1 has returned. It is now possible to use any encoding supported
    by newpxmath.
- - The \mathversion implementation is inspired by the `sansmath' package. I
-   have modified this such that the macro does not alter the font used for
-   mathematical symbols, only the fonts used for operators and numerals. This
-   is useful for people that want to consistently use the Euler symbols in
-   *all* environments, and only typeset operators and digits in sans/serif.

Added: trunk/Master/texmf-dist/doc/fonts/eulerpx/eulerpxdoc.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/fonts/eulerpx/eulerpxdoc.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/fonts/eulerpx/eulerpxdoc.pdf	2022-07-14 13:24:59 UTC (rev 63889)
+++ trunk/Master/texmf-dist/doc/fonts/eulerpx/eulerpxdoc.pdf	2022-07-14 20:16:39 UTC (rev 63890)

Property changes on: trunk/Master/texmf-dist/doc/fonts/eulerpx/eulerpxdoc.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/fonts/eulerpx/eulerpxdoc.tex
===================================================================
--- trunk/Master/texmf-dist/doc/fonts/eulerpx/eulerpxdoc.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/fonts/eulerpx/eulerpxdoc.tex	2022-07-14 20:16:39 UTC (rev 63890)
@@ -0,0 +1,154 @@
+
+\documentclass[11pt,a4paper,english]{article}
+
+\usepackage{babel}
+\usepackage[margin=25mm]{geometry}
+\usepackage{graphicx}
+\usepackage{amsmath}
+
+\usepackage[helvratio=0.9]{newpxtext}
+\usepackage[upint]{newpxmath}
+\usepackage[nonpxmath]{../tex/eulerpx}
+\def\hmmax{0}
+\def\bmmax{0}
+\usepackage{bm}
+\usepackage{microtype}
+
+\usepackage[hidelinks,breaklinks=true]{hyperref}
+\usepackage{bookmark}
+\usepackage{biblatex}
+
+\usepackage{fonttable}
+
+\newcommand*\pkg[1]{{\sf #1}}
+\newcommand*\cs[1]{{\tt\textbackslash #1}}
+\newcommand*\printdef[2]{{\tt\cs{def}\cs{#1}\{#2\}}}
+
+%\urlstyle{tt}
+
+\frenchspacing
+
+\title{The \pkg{eulerpx} font package}
+\author{%
+  Luuk T\ij ssen\thanks{%
+    The intial versions of this package were written by Jabir Ali Ouassou.
+  }\\
+  \nolinkurl{ltijssen2502 at gmail.com}%
+}
+
+\begin{document}
+
+\maketitle
+
+\section*{Getting started}
+You can start using \pkg{eulerpx} in your document right away by adding
+\begin{verbatim}
+  \usepackage{newpxtext}
+  \usepackage{eulerpx}
+\end{verbatim}
+to your document preamble.
+Euler Fraktur can be accessed through the \cs{mathfrak}-macro, likewise Euler Script through \cs{mathscr}.
+The bold math font (Euler) can be accessed through \cs{boldsymbol}, and the bold text font through \cs{mathbf}.
+Alternative versions of various math symbols and alphabets from \pkg{newpx} are provided by \cs{varmathfrak}, \cs{varmathscr}, \cs{varsum} and \cs{varaleph}.
+
+%In case you get the error
+%\begin{verbatim}
+%  $! LaTeX Error: Too many math alphabets used in version normal.
+%\end{verbatim}
+%with this package, try using
+%\begin{verbatim}
+%  \let\mathfrak=\varmathfrak
+%  \let\mathscr=\varmathscr
+%\end{verbatim}
+%and do \emph{not} use the \pkg{amssymb} package with \pkg{eulerpx}!
+
+\section{Introduction}
+\AmS{} Euler (from here on simply referred to as `Euler') is a typeface created by Hermann Zapf (1918-2015) in 1983.
+Unfortunately, Zapf wasn't able to complete the font during his lifetime, meaning that many frequently-used math symbols are missing from it.
+In order to make Euler usable, these symbols have to be substituted from other fonts.
+Other \LaTeX{} implementations of Euler, such as the \pkg{euler} and \pkg{eulervm} packages, use the default Computer Modern typeface for these substitutions.
+
+The big issue with using Computer Modern for substituting math symbols in Euler, is that these two fonts generally don't go well together.
+The \pkg{eulerpx} package tries to alleviate this issue by allowing the user to choose different math fonts for its substitutions.
+The obvious and default choice for this font is the Palatino typeface, another typeface created by Zapf.
+This font is conveniently provided by the package \pkg{newpx}, and hence the name `eulerpx.'
+
+%\subsection{Further reading}
+%Test
+
+\section{Options}
+In initial versions of this package, \pkg{newpx} was the only font option.
+But, since version 1{.}0, you can load your own math font \emph{before} \pkg{eulerpx}, if you use the \verb|nonpxmath|-option.
+We additionally provide the key-value option \verb|scale| (for instance, \verb|scale=0.9|, for a fractional scale of 0{.}9).
+This allows you to scale the Euler symbols to match the size of the symbols from the other font.
+
+Not all font combinations are guaranteed to look good, so exercise some caution in your font choice.
+Additionally, you should try to stick to math fonts that include upright integrals (for instance, through an \verb|upint|-option), and slanted versions of the inequality symbols, which are selected automatically by \pkg{eulerpx}, if available.
+If you prefer the non-slanted inequality symbols, this behaviour can be inhibited using the \verb|noslant|-option.
+
+\subsection{Example}
+For instance, in order to use the Times typeface (package \pkg{newtx}) with Euler, you can add
+\begin{verbatim}
+  \usepackage{newtxtext}
+  \usepackage[upint]{newtxmath}
+  \usepackage[nonpxmath,scale=0.95]{eulerpx}
+\end{verbatim}
+to your document preamble.
+The scale factor of 0{.}95 was derived empirically by trying to match the height of the text and math `x;' \verb|x$x$|.
+
+\section{Deprecated options}
+Some of the options that were previously offered by this package are now deprecated.
+These options were not correctly implemented and could cause visual artifacts.
+If you would still like to use some of these options, alternatives that mimic their original behaviour are provided below.
+
+\subsection{The {\tt sansmath}-option}
+If you want to use the sans-serif text font for operators (as opposed to the default serif text font), you can add the following to your document preamble:
+\begin{verbatim}
+  \usepackage{newpxtext}
+  \let\oldrmdefault=\rmdefault
+  \let\rmdefault=\sfdefault
+  \usepackage{eulerpx}
+  \let\rmdefault=\oldrmdefault
+\end{verbatim}
+
+\subsection{The {\tt unicode}-option}
+If you want to write mathematics in Unicode in {\tt pdflatex}, you can add this to your document preamble:\footnote{Credit: David Carlisle on Stack Exchange, \url{https://tex.stackexchange.com/a/601583}.}
+\begin{verbatim}
+  \usepackage{newpxtext}
+  \usepackage{eulerpx}
+  \let\rmdefault=\oldrmdefault
+  \def\z"{}
+  \def\UnicodeMathSymbol#1#2#3#4{%
+    \ifnum#1>"A0
+      \DeclareUnicodeCharacter{\z#1}{#2}%
+    \fi
+  }
+  \input unicode-math-table
+\end{verbatim}
+Though, in that case, you may also want to switch to Xe\LaTeX, in which case you can use the \pkg{unicode-math} package.
+
+\pagebreak
+\appendix
+\section{Font sample}\label{sec:sample}
+The following excerpt is taken from Michael Sharpe's \pkg{stickstoo} package documentation (page 4), who in turn sourced it from the \TeX Book and Karl Berry's torture test.
+
+\input sample.tex 
+
+\newpage
+\section{Font tables}\label{sec:tables}
+\subsection{euf}
+\fonttable{eufm10}
+
+\newpage
+\subsection{zeur}
+\fonttable{zeurm10}
+
+\newpage
+\subsection{zeus}
+\fonttable{zeusm10}
+
+\newpage
+\subsection{zeuex}
+\fonttable{zeuex10}
+
+\end{document}


Property changes on: trunk/Master/texmf-dist/doc/fonts/eulerpx/eulerpxdoc.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/fonts/eulerpx/sample.tex
===================================================================
--- trunk/Master/texmf-dist/doc/fonts/eulerpx/sample.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/fonts/eulerpx/sample.tex	2022-07-14 20:16:39 UTC (rev 63890)
@@ -0,0 +1,176 @@
+
+\newcommand*\mat[1]{\bm{#1}}
+%\newcommand*\mat[1]{\textsf{#1}}
+
+%The following snippets mostly originated with the \TeX Book and were adapted for \LaTeX{} from Karl~Berry's torture test for plain \TeX{} math fonts.
+
+$x + y - z$, \quad $x + y * z$, \quad $z * y / z$, \quad
+$(x+y)(x-y) = x^2 - y^2$,
+
+$x \times y \cdot z = [x\, y\, z]$, \quad $x\circ y \bullet z$, \quad
+$x\cup y \cap z$, \quad $x\sqcup y \sqcap z$, \quad
+
+$x \vee y \wedge z$, \quad $x\pm y\mp z$, \quad
+$x=y/z$, \quad $x \coloneq y$, \quad $x\le y \ne z$, \quad $x \sim y \simeq z$
+$x \equiv y \nequiv z$, \quad $x\subset y \subseteq z$
+
+$\sin2\theta=2\sin\theta\cos\theta$, \quad
+$\hbox{O}(n\log n\log n)$, \quad
+$\Pr(X>x)=\exp(-x/\mu)$,
+
+$\bigl(x\in A(n)\bigm|x\in B(n)\bigr)$, \quad
+$\bigcup_n X_n\bigm\|\bigcap_n Y_n$
+
+% page 178
+
+In text matrices $\binom{1\,1}{0\,1}$ and $\bigl(\genfrac{}{}{0pt}{}{a}{1}\genfrac{}{}{0pt}{}{b}{m}\genfrac{}{}{0pt}{}{c}{n}\bigr)$
+
+% page 142
+
+\[a_0+\frac1{\displaystyle a_1 +
+{\strut \frac1{\displaystyle a_2 +
+{\strut \frac1{\displaystyle a_3 +
+{\strut \frac1{\displaystyle a_4}}}}}}}\]
+
+% page 143
+
+\[\binom{p}{2}x^2y^{p-2} - \frac1{1 - x}\frac{1}{1 - x^2}
+=
+\frac{a+1}{b}\bigg/\frac{c+1}{d}.\]
+
+%% page 145
+
+\[\sqrt{1+\sqrt{1+\sqrt{1+\sqrt{1+\sqrt{1+x}}}}}\]
+
+%% page 147
+
+\[\left(\frac{\partial^2}{\partial x^2} + \frac{\partial^2}{\partial y^2}\right)
+\bigl|\varphi(x+iy)\bigr|^2=0\]
+
+%% page 149
+
+% \[\pi(n)=\sum_{m=2}^n\left\lfloor\biggl(\sum_{k=1}^{m-1}\bigl
+% \lfloor(m/k)\big/\lceil m/k\rceil\bigr\rfloor\biggr)^{-1}\right\rfloor.\]
+
+\[\pi(n)=\sum_{m=2}^n\left\lfloor\Biggl(\sum_{k=1}^{m-1}\bigl
+\lfloor(m/k)\big/\lceil m/k\rceil\bigr\rfloor\Biggr)^{-1}\right\rfloor.\]
+
+% page 168
+
+\[\int_0^\infty \frac{t - i b}{t^2 + b^2}e^{iat}\,dt=e^{ab}E_1(ab), \quad
+a,b > 0.\]
+
+% page 176
+
+\[\mat{A} \coloneq \begin{pmatrix}x-\lambda&1&0\\
+0&x-\lambda&1\\
+0&0&x-\lambda\end{pmatrix}.\]
+
+\[\left\lgroup\begin{matrix}a&b&c\\ d&e&f\\\end{matrix}\right\rgroup
+\left\lgroup\begin{matrix}u&x\cr v&y\cr w&z\end{matrix}\right\rgroup\]
+
+% page 177
+
+\[\mat{A} = \begin{pmatrix}a_{11}&a_{12}&\ldots&a_{1n}\\
+a_{21}&a_{22}&\ldots&a_{2n}\\
+\vdots&\vdots&\ddots&\vdots\\
+a_{m1}&a_{m2}&\ldots&a_{mn}\end{pmatrix}\]
+
+\[\mat{M}=\bordermatrix{&C&I&C'\cr
+C&1&0&0\cr I&b&1-b&0\cr C'&0&a&1-a}\]
+
+%% page 186
+
+\[\sum_{n=0}^\infty a_nz^n\qquad\hbox{converges if}\qquad
+|z|<\Bigl(\limsup_{n\to\infty}\root n\of{|a_n|}\,\Bigr)^{-1}.\]
+
+\[\frac{f(x+\Delta x)-f(x)}{\Delta x}\to f'(x)
+\qquad \hbox{as $\Delta x\to0$.}\]
+
+\[\|u_i\|=1,\qquad u_i\cdot u_j=0\quad\hbox{if $i\ne j$.}\]
+
+%% page 191
+
+\[\it\hbox{The confluent image of}\quad
+\begin{Bmatrix}\hbox{an arc}\hfill\\\hbox{a circle}\hfill\\
+\hbox{a fan}\hfill\\\end{Bmatrix}
+\quad\hbox{is}\quad
+\begin{Bmatrix}\hbox{an arc}\hfill\\
+\hbox{an arc or a circle}\hfill\\
+\hbox{a fan or an arc}\hfill\end{Bmatrix}.\]
+
+%% page 191
+
+\begin{align*}
+T(n)\le T(2^{\lceil\lg n\rceil})
+&\le c(3^{\lceil\lg n\rceil}-2^{\lceil\lg n\rceil})\\
+&<3c\cdot3^{\lg n}\\
+&=3c\,n^{\lg3}.
+\end{align*}
+
+%\begin{align*}
+%\left\{%
+%\begin{gathered}\alpha&=f(z)\\ \beta&=f(z^2)\\ \gamma&=f(z^3)
+%\end{gathered}
+%\right\}
+%\qquad
+%\left\{%
+%\begin{gathered}
+%x&=\alpha^2-\beta\\ y&=2\gamma
+%\end{gathered}
+%\right\}%
+%\end{align*}
+
+%\[\left\{
+%\begin{align}
+%\alpha&=f(z)\cr \beta&=f(z^2)\cr \gamma&=f(z^3)\\
+%%\end{align}
+%\right\}
+%\qquad
+%\left\{
+%%\begin{align}
+%x&=\alpha^2-\beta\cr y&=2\gamma\\
+%\end{align}
+%\right\}.\]
+%%% page 192
+
+\begin{align*}
+\begin{aligned}
+(x+y)(x-y)&=x^2-xy+yx-y^2\\
+&=x^2-y^2\\
+(x+y)^2&=x^2+2xy+y^2.
+\end{aligned}
+\end{align*}
+
+%% page 192
+
+\begin{align*}
+\begin{aligned}
+\biggl(\int_{-\infty}^\infty e^{-x^2}\,dx\biggr)^2
+&=\int_{-\infty}^\infty\int_{-\infty}^\infty e^{-(x^2+y^2)}\,dx\,dy\\
+&=\int_0^{2\pi}\int_0^\infty e^{-r^2}\,dr\,d\theta\\
+&=\int_0^{2\pi}\biggl(e^{-\frac{r^2}{2}}
+\biggl|_{r=0}^{r=\infty}\,\biggr)\,d\theta\\
+&=\pi.
+\end{aligned}
+\end{align*}
+
+%% page 197
+
+\[\prod_{k\ge0}\frac{1}{(1-q^kz)}=
+\sum_{n\ge0}z^n\bigg/\!\!\prod_{1\le k\le n}(1-q^k).\]
+
+\[\sum_{\substack{\scriptstyle 0< i\le m\\\scriptstyle0<j\le n}}p(i,j) \,\ne
+%
+% \[\sum_{i=1}^p \sum_{j=1}^q \sum_{k=1}^r a_{ij} b_{jk} c_{ki}\]
+%
+\sum_{i=1}^p \sum_{j=1}^q \sum_{k=1}^r a_{ij} b_{jk} c_{ki} \,\ne
+%
+\sum_{\substack{\scriptstyle 1\le i\le p \\ \scriptstyle 1\le j\le q\\
+\scriptstyle 1\le k\le r}} a_{ij} b_{jk} c_{ki}\]
+
+\[\max_{1\le n\le m}\log_2P_n \quad \hbox{and} \quad
+\lim_{x\to0}\frac{\sin x}{x}=1\]
+
+\[p_1(n)=\lim_{m\to\infty}\sum_{\nu=0}^\infty\bigl(1-\cos^{2m}(\nu!^n\pi/n)\bigr)\]
+


Property changes on: trunk/Master/texmf-dist/doc/fonts/eulerpx/sample.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/eulerpx/eulerpx.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/eulerpx/eulerpx.sty	2022-07-14 13:24:59 UTC (rev 63889)
+++ trunk/Master/texmf-dist/tex/latex/eulerpx/eulerpx.sty	2022-07-14 20:16:39 UTC (rev 63890)
@@ -1,34 +1,124 @@
-%% eulerpx.sty
-%% Copyright 2016-2017 J. A. Ouassou
-%% Copyright 2021 L. Tijssen
-%%
-%% This work may be distributed and/or modified under the conditions of the LaTeX 
-%% Project Public License, either version 1.3 of this license or (at your option) 
-%% any later version. The latest version of this license is in
-%%   http://www.latex-project.org/lppl.txt
-%% and version 1.3 or later is part of all distributions of LaTeX
-%% version 2005/12/01 or later.
-%%
-%% This work has the LPPL maintenance status `maintained'.
-%% 
-%% The Current Maintainer of this work is L. Tijssen.
-%%
-%% This work consists of the file eulerpx.sty.
-%%
+% eulerpx.sty
+%
+% Copyright (C) 2016, 2017 Jabir Ali Ouassou
+% Copyright (C) 2021, 2022 Luuk Tijssen
+%
+% This work may be distributed and/or modified under the conditions of the LaTeX 
+% Project Public License, either version 1.3 of this license or (at your option) 
+% any later version. The latest version of this license is in
+%   http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This work has the LPPL maintenance status `maintained'.
+% 
+% The Current Maintainer of this work is Luuk Tijssen.
+%
+% This work consists of the file eulerpx.sty.
 
-% Package metadata
-\def\fileversion{v0.3.1}
-\def\filedate{2021/07/12}
+\def\fileversion{v1.0}
+\def\filedate{2022/07/14}
 \NeedsTeXFormat{LaTeX2e}
 \ProvidesPackage{eulerpx}[\filedate\space\fileversion]
-\typeout{Package: `eulerpx' \fileversion\space<\filedate>}
+\typeout{Package: `eulerpx' \fileversion\space <\filedate>}
 
-% Inherit custom integral definitions from `amsmath'
 \RequirePackage{amsmath}
+\RequirePackage{xkeyval}
 
-% Inherit math symbols from the `newpxmath' package
-\RequirePackage{newpxmath}
+%% Macro definitions
 
+% Apply font-wide scaling factor
+\def\epx at scale#1{%
+  \xdef\zeu at Scale{#1}%
+  \xdef\zeu@@Scale{s*[#1]}%
+}
+
+% Use text symbols in math
+\def\epx at mathsymbol#1{%
+  \mathchoice
+    {\mbox{{\normalsize#1}}}
+    {\mbox{{\normalsize#1}}}
+    {\mbox{{\scriptsize#1}}}
+    {\mbox{{\tiny#1}}}%
+}
+\def\epx at mathop#1{%
+  \mathchoice
+    {\vcenter{\hbox{{\normalsize#1}}}}
+    {\vcenter{\hbox{{\normalsize#1}}}}
+    {\vcenter{\hbox{{\scriptsize#1}}}}
+    {\vcenter{\hbox{{\tiny#1}}}}%
+}
+
+% \let#1=#2, only if #2 exists
+\def\epx at let#1#2{%
+  \ifdefined#2
+    \let#1=#2
+  \else
+    \PackageWarning{eulerpx}{%
+      Missing character `\protect#2',\MessageBreak
+      substituting `\protect#1'%
+    }
+  \fi
+}
+
+%% Package options
+
+\newif\ifepx at npxmath
+\newif\ifepx at slant
+\DeclareOptionX{scale}{\epx at scale{#1}}
+\DeclareOptionX{scaled}{\epx at scale{#1}}
+\DeclareOptionX{nonpxmath}{\epx at npxmathfalse}
+\DeclareOptionX{noslant}{\epx at slantfalse}
+
+\epx at scale{1.0}
+\epx at npxmathtrue
+\epx at slanttrue
+\ProcessOptionsX
+
+%% Font setup
+
+\ifepx at npxmath
+  %\@ifpackageloaded{newpxmath}{%
+  %    \PackageWarning{eulerpx}{%
+  %      Package `newpxmath' already loaded\MessageBreak
+  %      package options may differ%
+  %  }}{%
+      \RequirePackage[upint,scaled=\zeu at Scale]{newpxmath}%
+  %  }%
+\fi
+
+\ifepx at slant
+  \epx at let{\geq}{\geqslant}
+  \let\ge=\geq
+  \epx at let{\leq}{\leqslant}
+  \let\le=\leq
+  \epx at let{\ngeq}{\ngeqslant}
+  \epx at let{\nleq}{\nleqslant}
+\fi
+
+% eulervm.sty, ca. lines 133--146/
+% newpxmath.sty, ca. lines 197--209
+% Miscellaneous text font symbols
+\DeclareMathSymbol{,}{\mathpunct}{operators}{44}
+\DeclareMathSymbol{.}{\mathord}{operators}{46}
+\DeclareMathSymbol{\ldotp}{\mathpunct}{operators}{46}
+%\def\mathsection{\epx at mathsymbol{\textsection}} % doesn't respect \boldmath
+
+% Declare text font as operator font
+\DeclareSymbolFont{operators}{OT1}{\rmdefault}{m}{n}
+\SetSymbolFont{operators}{bold}{OT1}{\rmdefault}{b}{n}
+\def\operator at font{\mathgroup\symoperators}
+
+% Declare text font as math alphabets
+\DeclareSymbolFontAlphabet{\mathrm}{operators}
+\DeclareMathAlphabet{\mathsf}{\encodingdefault}{\sfdefault}{m}{n}
+\DeclareMathAlphabet{\mathit}{OT1}{\rmdefault}{m}{it}
+\DeclareMathAlphabet{\mathtt}{\encodingdefault}{\ttdefault}{m}{n}
+\SetMathAlphabet{\mathsf}{bold}{\encodingdefault}{\sfdefault}{b}{n}
+\SetMathAlphabet{\mathit}{bold}{OT1}{\rmdefault}{b}{it}
+\SetMathAlphabet{\mathtt}{bold}{\encodingdefault}{\ttdefault}{b}{n}
+\DeclareMathAlphabet{\mathbf}{OT1}{\rmdefault}{b}{n}
+
 % Declare Euler Roman as symbol font
 \DeclareSymbolFont{EulerRoman}{U}{zeur}{m}{n}
 \SetSymbolFont{EulerRoman}{bold}{U}{zeur}{b}{n}
@@ -36,14 +126,32 @@
 
 % Declare Euler math alphabets
 % Euler Script
+\let\varmathscr=\mathscr
 \let\mathscr=\undefined
 \DeclareMathAlphabet\mathscr{U}{zeus}{m}{n}
 \SetMathAlphabet\mathscr{bold}{U}{zeus}{b}{n}
 
+% eulervm.sty, ca. lines 217--227
 % Euler Fraktur
+\DeclareFontFamily{U}{euf}{}%
+\DeclareFontShape{U}{euf}{m}{n}{%
+  <-6>\zeu@@Scale eufm5%
+  <6-9>\zeu@@Scale eufm7%
+  <9->\zeu@@Scale eufm10%
+}{}%
+\DeclareFontShape{U}{euf}{b}{n}{%
+  <-6>\zeu@@Scale eufb5%
+  <6-9>\zeu@@Scale eufb7%
+  <9->\zeu@@Scale eufb10%
+}{}%
+
+\let\varmathfrak=\mathfrak
+\let\mathfrak=\undefined
 \DeclareMathAlphabet\mathfrak{U}{euf}{m}{n}
 \SetMathAlphabet\mathfrak{bold}{U}{euf}{b}{n}
 
+%% Symbol declarations
+
 % Upper-case Greek letters
 \DeclareMathSymbol{\Gamma}{\mathalpha}{EulerRoman}{0}
 \DeclareMathSymbol{\Delta}{\mathalpha}{EulerRoman}{1}
@@ -88,7 +196,7 @@
 \let\varrho=\rho
 \DeclareMathSymbol{\varphi}{\mathord}{EulerRoman}{39}
 
-%% Arabic (lining) numerals
+% Arabic (lining) numerals
 %\DeclareMathSymbol{0}{\mathalpha}{EulerRoman}{48}
 %\DeclareMathSymbol{1}{\mathalpha}{EulerRoman}{49}
 %\DeclareMathSymbol{2}{\mathalpha}{EulerRoman}{50}
@@ -101,6 +209,7 @@
 %\DeclareMathSymbol{9}{\mathalpha}{EulerRoman}{57}
 %
 %\DeclareMathSymbol{.}{\mathord}{EulerRoman}{58}
+%\DeclareMathSymbol{\ldotp}{\mathpunct}{EulerRoman}{58}
 %\DeclareMathSymbol{,}{\mathpunct}{EulerRoman}{59}
 
 \DeclareMathSymbol{\partial}{\mathord}{EulerRoman}{64}
@@ -167,111 +276,25 @@
 \DeclareMathSymbol{\jmath}{\mathord}{EulerRoman}{124}
 \DeclareMathSymbol{\wp}{\mathord}{EulerRoman}{125}
 
-\DeclareMathSymbol{\hslash}{\mathord}{EulerRoman}{128}
-\let\hbar=\hslash
+% Miscellaneous Euler symbols
+%\DeclareMathSymbol{\hslash}{\mathord}{EulerRoman}{128}
+%\let\hbar=\hslash
+% don't respect \boldmath
+\def\Re{\epx at mathsymbol{\usefont{U}{zeus}{m}{n}\char60}}
+\def\Im{\epx at mathsymbol{\usefont{U}{zeus}{m}{n}\char61}}
+\let\varaleph=\aleph
+\def\aleph{\epx at mathsymbol{\usefont{U}{zeus}{m}{n}\char64}}
+\def\mathsection{\epx at mathsymbol{\usefont{U}{zeus}{m}{n}\char120}}
 
-% Renew the definition of #1 to #3, only if #3 exists,
-% and store the old definition of #1 in #2
-\def\epx at renewifdefined#1#2#3{%
-  \ifdefined#3%
-    \let#2=#1%
-    \let#1=#3%
-  \fi%
+\def\epx at smallsum{\epx at mathop{\usefont{U}{zeuex}{m}{n}\char80}}
+\def\epx at sum{\epx at mathop{\usefont{U}{zeuex}{m}{n}\char88}}
+\let\varsum=\sum
+\let\sum=\undefined
+\DeclareMathOperator*{\sum}{%
+  \mathchoice{\epx at sum}{\epx at smallsum}{\epx at smallsum}{\epx at smallsum}%
 }
 
-% Change geq, leq and their shorthands/negations to slanted versions
-\epx at renewifdefined{\geq}{\geqnormal}{\geqslant}
-\let\ge=\geq
-\epx at renewifdefined{\leq}{\leqnormal}{\leqslant}
-\let\le=\leq
-\epx at renewifdefined{\ngeq}{\ngeqnormal}{\ngeqslant}
-\epx at renewifdefined{\nleq}{\nleqnormal}{\nleqslant}
+%\let\varsmallsum=\smallsum
+%\def\smallsum{\epx at mathop{\usefont{U}{zeur}{m}{n}\char6}}
 
-% Upright integrals
-\epx at renewifdefined{\smallint}{\smallintsl}{\smallintup}
-\epx at renewifdefined{\smalliint}{\smalliintsl}{\smalliintup}
-\epx at renewifdefined{\smalliiint}{\smalliiintsl}{\smalliiintup}
-\epx at renewifdefined{\smalloint}{\smallointsl}{\smallointup}
-\epx at renewifdefined{\smalloiint}{\smalloiintsl}{\smalloiintup}
-\epx at renewifdefined{\smalloiiint}{\smalloiiintsl}{\smalloiiintup}
-\epx at renewifdefined{\smallvarointclockwise}{\smallvarointclockwisesl}{\smallvarointclockwiseup}
-\epx at renewifdefined{\smallointctrclockwise}{\smallointctrclockwisesl}{\smallointctrclockwiseup}
-\epx at renewifdefined{\smallsumint}{\smallsumintsl}{\smallsumintup}
-\epx at renewifdefined{\smalliiiint}{\smalliiiintsl}{\smalliiiintup}
-\epx at renewifdefined{\smallfint}{\smallfintsl}{\smallfintup}
-\epx at renewifdefined{\smallsqint}{\smallsqintsl}{\smallsqintup}
-
-\epx at renewifdefined{\intop}{\intslop}{\intupop}
-\epx at renewifdefined{\iintop}{\iintslop}{\iintupop}
-\epx at renewifdefined{\iiintop}{\iiintslop}{\iiintupop}
-\epx at renewifdefined{\ointop}{\ointslop}{\ointupop}
-\epx at renewifdefined{\oiintop}{\oiintslop}{\oiintupop}
-\epx at renewifdefined{\oiiintop}{\oiiintslop}{\oiiintupop}
-\epx at renewifdefined{\varointclockwiseop}{\varointclockwiseslop}{\varointclockwiseupop}
-\epx at renewifdefined{\ointctrclockwiseop}{\ointctrclockwiseslop}{\ointctrclockwiseupop}
-\epx at renewifdefined{\sumintop}{\sumintslop}{\sumintupop}
-\epx at renewifdefined{\iiiintop}{\iiiintslop}{\iiiintupop}
-\epx at renewifdefined{\fintop}{\fintslop}{\fintupop}
-\epx at renewifdefined{\sqintop}{\sqintslop}{\sqintupop}
-
-% Sans-serif maths
-\DeclareOption{sansmath}{
-  % Declare the math serif font
-  \DeclareMathVersion{normal}
-  \SetSymbolFont{operators}{normal}{T1}{\rmdefault}{m}{n} 
-  \SetMathAlphabet{\mathrm}{normal}{T1}{\rmdefault}{m}{n}
-  
-  % Declare the math sans font
-  \DeclareMathVersion{sans}
-  \SetSymbolFont{operators}{sans}{T1}{\sfdefault}{m}{n} 
-  \SetMathAlphabet{\mathrm}{sans}{T1}{\sfdefault}{m}{n}
-  
-  % Make the package toggle between sans/serif math automatically
-  \let\oldrmfamily=\rmfamily
-  \let\oldsffamily=\sffamily
-  \renewcommand{\rmfamily}{\oldrmfamily\mathversion{normal}}
-  \renewcommand{\sffamily}{\oldsffamily\mathversion{sans}}
-}
-
-% Unicode input
-\DeclareOption{utf8}{
-  \DeclareUnicodeCharacter{0393}{\Gamma}
-  \DeclareUnicodeCharacter{0394}{\Delta}
-  \DeclareUnicodeCharacter{0398}{\Theta}
-  \DeclareUnicodeCharacter{039B}{\Lambda}
-  \DeclareUnicodeCharacter{039E}{\Xi}
-  \DeclareUnicodeCharacter{03A0}{\Pi}
-  \DeclareUnicodeCharacter{03A3}{\Sigma}
-  \DeclareUnicodeCharacter{03A5}{\Upsilon}
-  \DeclareUnicodeCharacter{03A6}{\Phi}
-  \DeclareUnicodeCharacter{03A8}{\Psi}
-  \DeclareUnicodeCharacter{03A9}{\Omega}
-  \DeclareUnicodeCharacter{03B1}{\alpha}
-  \DeclareUnicodeCharacter{03B2}{\beta}
-  \DeclareUnicodeCharacter{03B3}{\gamma}
-  \DeclareUnicodeCharacter{03B4}{\delta}
-  \DeclareUnicodeCharacter{03B5}{\epsilon}
-  \DeclareUnicodeCharacter{03B6}{\zeta}
-  \DeclareUnicodeCharacter{03B7}{\eta}
-  \DeclareUnicodeCharacter{03B8}{\theta}
-  \DeclareUnicodeCharacter{03B9}{\iota}
-  \DeclareUnicodeCharacter{03BA}{\kappa}
-  \DeclareUnicodeCharacter{03BB}{\lambda}
-  \DeclareUnicodeCharacter{03BC}{\mu}
-  \DeclareUnicodeCharacter{03BD}{\nu}
-  \DeclareUnicodeCharacter{03BE}{\xi}
-  \DeclareUnicodeCharacter{03C0}{\pi}
-  \DeclareUnicodeCharacter{03C1}{\rho}
-  \DeclareUnicodeCharacter{03C2}{\sigma}
-  \DeclareUnicodeCharacter{03C3}{\sigma}
-  \DeclareUnicodeCharacter{03C4}{\tau}
-  \DeclareUnicodeCharacter{03C5}{\upsilon}
-  \DeclareUnicodeCharacter{03C6}{\varphi}
-  \DeclareUnicodeCharacter{03C7}{\chi}
-  \DeclareUnicodeCharacter{03C8}{\psi}
-  \DeclareUnicodeCharacter{03C9}{\omega}
-}
-
-\ProcessOptions\relax
-
 \endinput

Modified: trunk/Master/tlpkg/libexec/ctan2tds
===================================================================
--- trunk/Master/tlpkg/libexec/ctan2tds	2022-07-14 13:24:59 UTC (rev 63889)
+++ trunk/Master/tlpkg/libexec/ctan2tds	2022-07-14 20:16:39 UTC (rev 63890)
@@ -502,6 +502,7 @@
  'ethiop',      "&MAKEflatten",
  'euclide',     "&MAKEpst",
  'eukleides',   "die 'skipping, requires compilation'",
+ 'eulerpx',	"&MAKEflatten",
  'eulervm',     "&MAKEcopy",
  'euproposal',  "die 'skipping, replaced by proposal'",
  'eurofont',    "die 'skipping, support for nonfree fonts or obsolete'",



More information about the tex-live-commits mailing list.