summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/mathastext
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2013-01-21 23:54:45 +0000
committerKarl Berry <karl@freefriends.org>2013-01-21 23:54:45 +0000
commitc4a416969f2ece5b95c2c2e31d8c661f46d66145 (patch)
tree9b985bf4d4855a2a3e952a978c0c392286457483 /Master/texmf-dist/source/latex/mathastext
parentc26285593c8219973e14f6f459c273763ad28121 (diff)
mathastext 1.2f (21jan13)
git-svn-id: svn://tug.org/texlive/trunk@28898 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/mathastext')
-rw-r--r--Master/texmf-dist/source/latex/mathastext/mathastext.dtx529
-rw-r--r--Master/texmf-dist/source/latex/mathastext/mathastext.ins6
2 files changed, 432 insertions, 103 deletions
diff --git a/Master/texmf-dist/source/latex/mathastext/mathastext.dtx b/Master/texmf-dist/source/latex/mathastext/mathastext.dtx
index 270011b0f00..661a105b78b 100644
--- a/Master/texmf-dist/source/latex/mathastext/mathastext.dtx
+++ b/Master/texmf-dist/source/latex/mathastext/mathastext.dtx
@@ -4,13 +4,13 @@
%% Copyright (C) 2011, 2012 by Jean-Francois Burnol
%%
%<*ins>
-\def\pkgname{mathastext}
-\def\pkgdate{2013/01/10}
-\def\pkgversion{v1.2e}
+\def\pkgname{mathastext} % these macros of course are not included
+\def\pkgdate{2013/01/21} % into the package file! (else I would have
+\def\pkgversion{v1.2f} % given them other names)
\def\pkgdescription{Use the text font in math mode (jfB)}
%</ins>
%<*none>
-\def\lasttimestamp{Time-stamp: <10-01-2013 16:35:39 CET burnol>}
+\def\lasttimestamp{Time-stamp: <21-01-2013 11:32:59 CET jfb>}
%
% The copyright statement applies to `mathastext.dtx' and to its derived files.
%
@@ -299,8 +299,8 @@ Some among the fonts tested have no bold variant or no italic variant.
%</linux>
%<*none>
\fi
-\catcode`\~0\catcode`\\12
-~iffalse
+\catcode`\~0\catcode`\\12 % this is to fool TeX's recognition of conditionals
+~iffalse % indeed some are used in this next fragment
%</none>
%<*alphabets>
%-------------------------------------------------------------------------------
@@ -549,6 +549,8 @@ $\mathtt{ff}$ (no ligature in teletype) and $\mathsf{ff}$.
\usepackage[T1]{fontenc}
\usepackage{lmodern}
+% in order to cancel the stripping done by ltxdoc
+% of comment characters inside verbatim blocks.
\makeatletter\let\check@percent\relax\makeatother
\usepackage{color}
@@ -572,7 +574,6 @@ bookmarks=true,%
%hidelinks,%
breaklinks=true,%
linkcolor={red},%
-% citecolor={red},%
urlcolor={joli},
pdfauthor={Jean-Fran\c cois Burnol},%
pdftitle={The mathastext package},%
@@ -659,9 +660,17 @@ LGRgreek]{mathastext}
\end{small}
\etoctoclines
-%\etocnakedtocdisplaystyle
+\renewcommand\etocaftertitlehook{%
+ \setlength{\columnseprule}{.4pt}%
+ \renewcommand{\columnseprulecolor}{\color{DarkMagenta}}}
+\renewcommand\etocbelowtocskip{1ex}
+\etocruledstyle{\color{DarkMagenta}\normalfont\large\bfseries\contentsname}
+
\tableofcontents
+{\color{DarkMagenta}\hrule}%
+%\vskip 5ex plus 2ex minus 1ex
+\clearpage
\section{Installation instructions and recent changes}
\subsection{Installation}
@@ -691,7 +700,11 @@ fonts.
\subsection{Recent changes}
-The current version is |1.2e|. Additions were made: in this user manual
+The current version is |1.2f|: {\small addition of the ``change
+ log'' to this user manual, and some minor code improvements not
+ changing neither features nor user interface.\par}
+\smallskip
+Version |1.2e| made additions: in this user manual
to the section \ref{sec:compat} describing the compatibility issues, and
to the test files illustrating various package features. Important
changes to the source code were done to fix compatibility problems with
@@ -699,10 +712,12 @@ active characters dating back to the |1.2| version. Also, an oversight
in the implementation of the italic correction features from |1.2b| was
corrected.
+\smallskip
Version |1.2d| introduced the |asterisk| option (strangely the command
\cs{MTlowerast} was not the one described in the manual; this has been
corrected) and solved a problem of compatibility with |amsmath|.
+\smallskip
The main new features in versions |1.2| and |1.2b| were the
\hyperref[sec:mathxx]{extended scope of the math alphabets} and,
respectively, \hyperref[sec:ic]{added italic corrections in math mode}.
@@ -713,10 +728,10 @@ version. These issues are commented upon in the
\hyperref[sec:compat]{compatibility section}, in the test file
\texttt{testmathastextalphabets.tex} and in the commented source code.
+\smallskip
Earlier, version |1.15| introduced the concept of the
-\hyperref[sec:subdued]{\emph{subdued} math versions.}
+\hyperref[sec:subdued]{{subdued} math versions.}
-\clearpage
\section{What \mst does}
@@ -1541,14 +1556,15 @@ $\mathit{f_i^i}$\par $\mathrm{f_i^i}$
\let\mst@stdforall\oldforall
\makeatother
-\csb{MTforallskip}, \csb{MTexistsskip}, and \csb{MTprimeskip} are three commands
-with each a mandatory argument like for example |3mu plus 1mu minus 1mu| or just
-|2.5mu|. They are especially useful when using an upright font in math
-mode.\footnote{The |mu| is a unit length used in math mode (`math unit',
- 1/18th
- of the `quad' value of the symbol font in the current style). Its value is
- relative to the current math style. Its use is mandatory in the
- commands described here.}
+\csb{MTforallskip}, \csb{MTexistsskip}, and \csb{MTprimeskip} are three
+commands with each a mandatory argument like for example
+|3mu plus 1mu minus 1mu| or just |2.5mu|. They are especially useful
+when using an
+upright font in math mode. {The |mu| is a unit length used in
+ math mode (`math unit', 1/18th of the `quad' value of the symbol font
+ in the current style). Its value is relative to the current math
+ style. Its use is \textcolor{DarkMagenta}{mandatory} in the commands
+ described here.}
\begin{itemize}
\item compare $\forall B$ with\MTforallskip{2mu} $\forall B$, typeset after
|\MTforallskip{2mu}|,
@@ -1559,7 +1575,7 @@ mode.\footnote{The |mu| is a unit length used in math mode (`math unit',
\end{itemize}
These three commands may be used throughout the document, or also in the
-preamble, in that case the declared math versions will record the then current
+preamble, in which case the declared math versions will record the then current
values of the skips. \mst applies the following (small) default skips:
|0.6667mu| for the skip after $\forall$, |1mu| for the skip after $\exists$, and
|0.5mu| for the skip before the prime. The examples above become
@@ -1574,12 +1590,24 @@ document decides then to declare in the preamble a math version with an upright
font it is thus recommended to use the commands in the preamble before the
\cs{Mathastext}\oarg{version\_name} (or \cs{MTDeclareVersion}) command defining
the version. They will be remembered when this math version is entered in the
-document. Or, the commands may be used directly in the document.
+document. The commands may also be used directly in the document body.
+
+Also, when the §subdued§ option has been used, the normal and bold math
+versions have by default zero length skips. Note though that there is no
+|\MTversion{normal}| done implicitely by the package when the document
+body starts\footnote{when \cs{MTversion} is used, \mst resets all font
+ defaults, so for example a \cs{renewcommand\string\sfdefault} at the
+ end of the preamble would be overruled if \cs{MTversion\{normal\}} was
+ done automatically. Perhaps this behavior of \cs{MTversion} will
+ change in a future version of the package.} (\emph{i.e.} at the level
+of |\begin{document}|), even when the §subdued§ option is in force. As a
+ result the last use in the preamble of the |\MT...skip| commands
+ decides the skips which will be initially used; this is cancelled if
+ |\begin{document}| is followed with |\MTversion{normal}|, in which
+ case the skips used are the ones in force at the latest
+ \cs{Mathastext} (without optional argument) preamble use, or just
+ zero skips under the |subdued| regime.
-Also, when the §subdued§ option has been used, the normal and bold math versions
-have by default zero length skips (no preamble setting will change that).
-Nevertheless it is possible to use also then the commands in the body of the
-document.
\endgroup
@@ -2285,7 +2313,10 @@ Greek letters in the versions which will be declared next.
\item §\MTprimeskip§\marg{math glue}: the default is to add a |0.5mu| skip
before the derivative glyph, except for the §italic§ option, and except in
the normal and bold math versions with option §subdued§. The same
- observations apply.
+ observations apply.\footnote{if \cs{begin\{document\}} is not followed
+ with \cs{MTversion\{normal\}}, the latest values set in the preamble by
+ these commands are used at the beginning of the document,
+ even under option \texttt{subdued}.}
\item §\MTlowerast§\marg{dimen}: a \cs{raisebox} command is
used to lower the text asterisk to produce a reasonable math
@@ -2588,12 +2619,286 @@ Numerous examples will be found there:\\
\catcode`\§=12
+\section{Change log}
+
+\begingroup
+
+\def\MacroFont{\footnotesize\normalfont}
+
+\makeatletter
+\def\@verbatim{%
+\parindent \z@ \parfillskip \@flushglue \parskip \tw@\p@
+\let \do \do@noligs \verbatim@nolig@list
+\let \do \@makeother \dospecials
+\catcode`\ =10 }
+
+\def\endverbatim{}
+\let\@vobeyspaces\relax
+
+\begingroup \catcode `|=0 \catcode `[= 1 \catcode`]=2
+\catcode `\{=12 \catcode `\}=12 \catcode`\\=12
+|long|gdef|@xverbatim#1\end{verbatim}[#1|end[verbatim]]
+|endgroup
+
+\catcode`*=\active
+\def*{\nobreak\leavevmode\kern.5em\smash{\raisebox{-.3\height}{\char42}}\kern1em}
+
+\makeatother
+
+\begin{multicols}{2}
+\begin{verbatim}
+1.2f [2013/01/21]
+
+ * minor code improvements. Change log added to the user manual.
+
+1.2e [2013/01/10]
+
+This version should be the last one in the 1.2 series as it
+seems to correct most of the main problems which were
+introduced with the massive use of mathematically active
+characters in versions 1.2 and 1.2b.
+
+ * It is indeed a thorny point when one wants to modify only
+in math mode how an active character acts, without breaking
+things. The package now does that /only/ if the activation
+appears to originate in the Babel system, as it is then
+possible to modify appropriately the Babel macros
+\user@active<char> and \normal@char<char>. The relevant issues
+are discussed in section 2.10 of the user manual, in the test
+file testmathastextalphabets.tex, and in the source code
+comments to the macro \mst@mathactivate. The inherent
+incompatibility of Babel with packages having made
+mathematically active the characters itself makes document
+active is circumvented by this interference of mathastext. A
+generally applicable Babel patch could be derived from the
+method used by mathastext.
+
+ * The technique of mathematical activation is maintained
+only for the characters which are not catcode active (at the
+entrance in math mode, as mathastext does all its activation
+job at everymath and everydisplay).
+
+ * Sadly, the feature of added italic corrections introduced
+in version 1.2b did not behave as described in the user
+manual, due to forgotten group braces. Fixed.
+
+ * The command \MTlowerast from the user manual of v1.2d was
+not the one implemented in the source code. Fixed.
+
+ * The test files automatically extracted from a latex run
+on the dtx file have been revised and extended.
+
+ * The code is better documented.
+
+
+1.2d [2013/01/02]
+
+ * an incompatibility with amsmath (its macro
+\resetMathstrut@), exists since version 1.2 of the package.
+This is fixed here.
+
+ * various improvements in dealing with the asterisk and in
+the mechanism of letting non-letter symbols obey the math
+alphabet commands.
+
+ * documentation extended and improved.
+
+
+1.2c [2012/12/31]
+
+ * mathastext now inserts automatically after all (latin)
+letters in math mode their italic corrections, if the font
+used is upright (sic). This improves the spacings for the
+positioning of subscripts. The feature is de-activated inside
+the math alphabets commands (apart from \mathnormal), so as to
+not prohibit the formation of ligatures,
+
+ * the documentation has been extended to explain in detail
+the issues which are relevant to the new feature of added
+italic corrections,
+
+ * version 1.2 had some bad bugs when confronted to active
+characters. This is corrected and additionally
+\MTnonlettersdonotobeymathxx is made the default, as the user
+input is too much constrained in its absence.
+
+ * a less fatal, but still annoying, typo had made the dot
+in 1.2 of type \mathpunct rather than \mathord
+
+ * the inner namespace has been rationalized a bit.
+
+
+1.2 [2012/12/20]
+
+ * a new command sets up the amount of space to be
+automatically inserted before the derivative glyph (useful
+when using an upright font).
+
+ * the scope of the math alphabets has been extended to
+apply to the non-alphabetical characters, and also to operator
+names.
+
+ * the format of the dtx file has changed. The package file
+is self-extracting from the dtx, and four additional test
+files are also produced during `latex mathastext.dtx'.
+
+
+1.15f and 1.15g [2012/10/25]
+
+ * \$, \#, \&, and \% had been re-defined by mathastext
+since its inception in a rather strange (but working) way,
+which could cause surprises to other packages. Fixed.
+
+ * the subdued mechanism for the math alphabets is
+implemented in a simpler and more efficient manner than in
+1.15e.
+
+ * the `defaultxx' options act a bit differently, and are
+more useful in case of a `too many math alphabets' situation.
+
+ * various improvements in the documentation.
+
+ * general clean up and better commenting of the source
+code.
+
+
+1.15e [2012/10/22]
+
+ * new user commands to specify skip or glue to be inserted
+after the math symbols \exists and \forall
+
+ * complete (user transparent) rewrite of the code
+implementing the subdued option; and its action has been
+extended to apply also to the \mathbf, \mathit, \mathsf,
+\mathtt alphabets and not only to \mathrm and \mathnormal as
+in the previous versions.
+
+ * improvements in the documentation.
+
+
+1.15d [2012/10/13]
+
+ * the Unicode situation is now correctly treated,
+throughout the code (this had been left in a half-done way
+from version 1.14 of April 2011).
+
+ - this includes an issue related to amsmath and its
+DeclareMathOperator macro which has been fixed,
+
+ - and the code related to \relbar and \Relbar (and
+\models) has been revised.
+
+
+1.15c [2012/10/05]
+
+ * it is now possible to use distinct fonts in LGR encoding
+for the Greek letters according to the current math version.
+
+ * improvements to the documentation.
+
+
+1.15b
+
+ * corrected a `feature' of 1.15 which was backward-
+incompatible
+
+ * improvements to the pdf documentation
+
+
+1.15 [2012/09/26]
+
+ * the subdued option allows the mathastextification to act
+only locally.
+
+ * some measures taken to deal with amsmath related issues
+when using xetex or luatex.
+
+
+1.14c
+
+ * a bug is fixed: the \Mathastext macro reinitializes the
+fonts in the normal and bold math versions, but it also
+erroneously redeclared the math alphabet changing commands
+which could have been set up in previously defined math
+versions (via earlier calls to \Mathastext[version_name]).
+
+
+1.14b [2011/04/03]
+
+ * there was a bug with \$, \#, \&, \% in math mode which
+showed up when ten or more math families had been declared.
+This bug affected also the minus sign under the same
+circumstances, when Unicode engines were used. Fixed.
+
+ * the options LGRgreek and selfGreek act now a bit
+differently, and new options LGRgreeks and selfGreeks have
+been defined.
+
+ * I also cleaned up a bit the code, for a more structured
+namespace.
+
+
+1.14
+
+ * mathastext now modifies also the math alphabets \mathit,
+\mathsf and \mathtt, thus making it a quite generic complete
+manner to adapt the math configuration to fonts provided with
+no math support.
+
+
+1.13b
+
+ * when the Symbol font is used for \prod and \sum this will
+be only for inline math; display math will use the default
+glyphs
+
+
+1.13 [2011/03/11]
+
+ * the LGRgreek option is added.
+
+ * internal changes for better readability of the code.
+
+
+1.12
+
+ * various bugs have been corrected.
+
+ * the endash and alldelims options are active by default.
+
+ * the package is more Unicode aware.
+
+ * the \Mathastext command has been improved to facilitate
+the mechanism of math versions also when using XeTeX or LuaTeX
+(with package fontspec.)
+
+ * the en-dash and dotless i and j now work with all
+encodings, Unicode inclusive.
+
+
+1.11 [2011/02/06] optional argument to \Mathastext macro.
+
+
+1.1 [2011/02/01] options italic and frenchmath.
+
+
+1.0 [2011/01/25] Initial version.
+\end{verbatim}
+
+\end{multicols}
+
+\endgroup
+
+
+
+
\makeatletter
\StopEventually{\check@checksum\end{document}}
\makeatother
\newgeometry{hmarginratio=3:2}
\small
+
\section{Implementation}
\makeatletter
@@ -2730,12 +3035,14 @@ Numerous examples will be found there:\\
\DeclareOption{noexclam}{\mst@noexclamtrue}
\newif\ifmst@asterisk
\DeclareOption{noasterisk}{\PackageWarningNoLine{mathastext}
- {option `noasterisk' is deprecated.^^J\space\space\space
+ {option `noasterisk\string' is deprecated.^^J\space\space\space
Check the documentation}}
\DeclareOption{asterisk}{\mst@asterisktrue
\AtBeginDocument{
- \everymath\expandafter{\the\everymath \mst@doasterisk}
- \everydisplay\expandafter{\the\everydisplay \mst@doasterisk}}}
+ \everymath\expandafter{\the\everymath \mst@doasterisk
+ \let\mst@doasterisk\relax}
+ \everydisplay\expandafter{\the\everydisplay \mst@doasterisk
+ \let\mst@doasterisk\relax}}}
\newif\ifmst@nospecials
\DeclareOption{nospecials}{\mst@nospecialstrue}
\DeclareOption{basic}{\ExecuteOptions{noparenthesis,nopunctuation,%
@@ -2824,7 +3131,7 @@ defaultbf,defaultit,defaultsf,defaulttt}\mst@nonormalboldtrue}
% \begin{macrocode}
\newif\ifmst@subdued
\DeclareOption{subdued}{\mst@subduedtrue}
-\DeclareOption*{\PackageWarningNoLine{mathastext}{Unknown option `\CurrentOption'}}
+\DeclareOption*{\PackageWarningNoLine{mathastext}{Unknown option `\CurrentOption\string'}}
% \end{macrocode}
% \end{macro}
% \begin{macrocode}
@@ -2899,10 +3206,9 @@ defaultbf,defaultit,defaultsf,defaulttt}\mst@nonormalboldtrue}
\def\mst@active@math@prime{\sp\bgroup\mskip\mst@prime@muskip\prim@s}
{\catcode`\'=12
\gdef\mst@modifyprime{\mst@mathactivate'{}\mst@active@math@prime}}
-\expandafter\let\csname mst@ifdone\string'\endcsname\iffalse
\AtBeginDocument{
-\everymath\expandafter{\the\everymath \mst@modifyprime}
-\everydisplay\expandafter{\the\everydisplay \mst@modifyprime}
+\everymath\expandafter{\the\everymath \mst@modifyprime \MTnormalprime}
+\everydisplay\expandafter{\the\everydisplay \mst@modifyprime \MTnormalprime}
}
\newcommand*\MTnormalprime{\let\mst@modifyprime\relax}
% \end{macrocode}
@@ -2923,11 +3229,11 @@ defaultbf,defaultit,defaultsf,defaulttt}\mst@nonormalboldtrue}
% versions to store values.
% \begin{macrocode}
\newcommand*\MTexistsskip[1]{\edef\mst@exists@skip{#1}%
- \expandafter\mst@exists@muskip\mst@exists@skip\relax}
+ \mst@exists@muskip\mst@exists@skip\relax}
\newcommand*\MTforallskip[1]{\edef\mst@forall@skip{#1}%
- \expandafter\mst@forall@muskip\mst@forall@skip\relax}
+ \mst@forall@muskip\mst@forall@skip\relax}
\newcommand*\MTprimeskip[1]{\edef\mst@prime@skip{#1}%
- \expandafter\mst@prime@muskip\mst@prime@skip\relax}
+ \mst@prime@muskip\mst@prime@skip\relax}
\let\Mathastextexistsskip\MTexistsskip
\let\Mathastextforallskip\MTforallskip
\let\Mathastextprimeskip\MTprimeskip
@@ -3096,6 +3402,24 @@ defaultbf,defaultit,defaultsf,defaulttt}\mst@nonormalboldtrue}
% paranoia are the latin letters (that would be crazy!) and
% also |*|, |"| and the left quote |`|.
%
+% |1.2f| [2013/01/21] with earlier versions (*) it was important not
+% to do twice the business of \cs{mst@mathactivate} (think
+% |$\hbox{$?$}$|), so I used (this was a bit wasteful) some sort of
+% boolean macro for each character. But now that there are the
+% |\mst@the..| prefixes, let's just use them! (don't know why I did
+% not think of that earlier; perhaps I had in mind some more general
+% character per character customization initially, which I just dropped.)
+%
+% (*) it is still important to not do twice the thing when the
+% character is active, in which case the |babel| macros are patched.
+%
+% As an aside, |$\hbox{\catcode`?=\active $?$}$| for an |?| which was
+% unactive at the first |$| will just make \mst overwrite the
+% definition (assumed here to have been done earlier) of an active
+% |?|, but the result is that the inner |?| can not be used in
+% |\label| or |\ref|. So testing for active characters should be done
+% always... many things should be done always... I leave as is.
+%
% \begin{macro}{\mst@do@az}
% \begin{macro}{\mst@do@AZ}
% \begin{macro}{\mst@addtodo@az}
@@ -3166,12 +3490,16 @@ defaultbf,defaultit,defaultsf,defaulttt}\mst@nonormalboldtrue}
\ifx\mst@itcorr\@empty\else\def\mst@itcorr{\/}\fi
\ifx\mst@ITcorr\@empty\else\def\mst@ITcorr{\/}\fi}
\AtBeginDocument{
-\everymath\expandafter{\the\everymath \mst@the\mst@do@nonletters
- \mst@theeasy\mst@do@easynonletters
- \mst@thef\mst@do@az \mst@theF\mst@do@AZ}
-\everydisplay\expandafter{\the\everydisplay \mst@the\mst@do@nonletters
- \mst@theeasy\mst@do@easynonletters
- \mst@thef\mst@do@az \mst@theF\mst@do@AZ}
+\everymath\expandafter{\the\everymath
+ \mst@the\mst@do@nonletters \let\mst@the\@gobble
+ \mst@theeasy\mst@do@easynonletters \let\mst@theeasy\@gobble
+ \mst@thef\mst@do@az \let\mst@thef\@gobble
+ \mst@theF\mst@do@AZ \let\mst@theF\@gobble}
+\everydisplay\expandafter{\the\everydisplay
+ \mst@the\mst@do@nonletters \let\mst@the\@gobble
+ \mst@theeasy\mst@do@easynonletters \let\mst@theeasy\@gobble
+ \mst@thef\mst@do@az \let\mst@thef\@gobble
+ \mst@theF\mst@do@AZ \let\mst@theF\@gobble}
}
% \end{macrocode}
% \end{macro}\end{macro}\end{macro}\end{macro}\end{macro}\end{macro}\end{macro}
@@ -3223,8 +3551,6 @@ defaultbf,defaultit,defaultsf,defaulttt}\mst@nonormalboldtrue}
\lccode`~=`##1
\lccode`##1=`##1
\lowercase{\endgroup
- \csname mst@ifdone##1\endcsname
- \else
\ifnum\catcode`##1=\active
\mst@do@activecase ##1{##2}##3
% careful as ##2 is empty in the asterisk and
@@ -3233,14 +3559,11 @@ defaultbf,defaultit,defaultsf,defaulttt}\mst@nonormalboldtrue}
\mathcode`##1="8000
% I use " many times later, \string" everywhere would be a pain
\ifcat##1a\def~{{##2##3}}\else\def~{##2##3}\fi
- \fi
- \fi}%
- \expandafter\let\csname mst@ifdone##1\endcsname=\iftrue}}
+ \fi}}}
\x
\def\mst@addtodo@nonletters#1#2#3{%
% #1 will be of cat 11 or 12.
% #2 is empty for asterisk and right quote
- \expandafter\let\csname mst@ifdone#1\endcsname\iffalse
\mst@do@nonletters\expandafter{\the\mst@do@nonletters
\mst@mathactivate#1{#2}#3}%
}
@@ -3248,11 +3571,9 @@ defaultbf,defaultit,defaultsf,defaulttt}\mst@nonormalboldtrue}
\mst@do@easynonletters\expandafter{\the\mst@do@easynonletters\mathcode`#1=#2}%
}
\def\mst@addtodo@az#1#2#3{%
- \expandafter\let\csname mst@ifdone#1\endcsname\iffalse
\mst@do@az\expandafter{\the\mst@do@az\mst@mathactivate#1#2#3}
}
\def\mst@addtodo@AZ#1#2#3{%
- \expandafter\let\csname mst@ifdone#1\endcsname\iffalse
\mst@do@AZ\expandafter{\the\mst@do@AZ\mst@mathactivate#1#2#3}%
}
% \end{macrocode}
@@ -3643,9 +3964,9 @@ defaultbf,defaultit,defaultsf,defaulttt}\mst@nonormalboldtrue}
\ifmst@fouriervec
\DeclareFontEncoding{FML}{}{}
\DeclareFontSubstitution{FML}{futm}{m}{it}
- \DeclareSymbolFont{mtfourierpourvec}{FML}{futm}{m}{it}
- \SetSymbolFont{mtfourierpourvec}{bold}{FML}{futm}{b}{it}
- \DeclareMathAccent{\fouriervec}{\mathord}{mtfourierpourvec}{"7E}
+ \DeclareSymbolFont{mathastextfourier}{FML}{futm}{m}{it}
+ \SetSymbolFont{mathastextfourier}{bold}{FML}{futm}{b}{it}
+ \DeclareMathAccent{\fouriervec}{\mathord}{mathastextfourier}{"7E}
\fi
% \end{macrocode}
% \end{macro}
@@ -3733,17 +4054,17 @@ defaultbf,defaultit,defaultsf,defaulttt}\mst@nonormalboldtrue}
% latest one counts. Sets up the math fonts in the normal and bold
% versions, as does \cs{Mathastext}.
% \begin{macrocode}
-\newcommand*\MTWillUse[5][\@empty]{
+\newcommand*\MTWillUse[5][\empty]{
\MTencoding{#2}
\MTfamily{#3}
\MTseries{#4}
\MTshape{#5}
\ifmst@italic\MTlettershape{\itdefault}\fi % was missing in v 1.14 and prior
- \ifx\@empty#1
+ \ifx\empty#1
\else
%% we check if optional argument was [], this does not detect [ ]
\def\mst@tmp{#1}
- \ifx\@empty\mst@tmp\else\MTlettershape{#1}\fi
+ \ifx\empty\mst@tmp\else\MTlettershape{#1}\fi
\fi
\Mathastext}
\@onlypreamble\MTWillUse
@@ -3767,8 +4088,8 @@ defaultbf,defaultit,defaultsf,defaulttt}\mst@nonormalboldtrue}
%
% Versions |1.15x| brought some adaptations related to the subdued option.
% \begin{macrocode}
-\newcommand*\Mathastext[1][\@empty]{
-\ifx\@empty#1 % no optional argument
+\newcommand*\Mathastext[1][\empty]{
+\ifx\empty#1 % no optional argument
\mst@update@greeksh
\edef\mst@encoding@normal{\mst@enc}
\edef\mst@family@normal{\mst@fam}
@@ -3817,9 +4138,9 @@ defaultbf,defaultit,defaultsf,defaulttt}\mst@nonormalboldtrue}
\else % not subdued
\ifmst@italic
\ifmst@frenchmath
- \expandafter\mst@exists@muskip\mst@exists@skip\relax
- \expandafter\mst@forall@muskip\mst@forall@skip\relax
- \expandafter\mst@prime@muskip\mst@prime@skip\relax
+ \mst@exists@muskip\mst@exists@skip\relax
+ \mst@forall@muskip\mst@forall@skip\relax
+ \mst@prime@muskip\mst@prime@skip\relax
\else
\def\mst@exists@skip@normal{0mu}
\def\mst@forall@skip@normal{0mu}
@@ -3829,9 +4150,9 @@ defaultbf,defaultit,defaultsf,defaulttt}\mst@nonormalboldtrue}
\def\mst@prime@skip@bold{0mu}
\fi
\else
- \expandafter\mst@exists@muskip\mst@exists@skip\relax
- \expandafter\mst@forall@muskip\mst@forall@skip\relax
- \expandafter\mst@prime@muskip\mst@prime@skip\relax
+ \mst@exists@muskip\mst@exists@skip\relax
+ \mst@forall@muskip\mst@forall@skip\relax
+ \mst@prime@muskip\mst@prime@skip\relax
\fi
\fi
%% v1.15f
@@ -3963,7 +4284,7 @@ and \protect\log-like names will be^^J%
\fi
\else % optional argument, then we rather do DeclareVersion
\edef\mst@tmp{#1}
- \ifx\mst@tmp\@empty
+ \ifx\mst@tmp\empty
\Mathastext % no infinite loop!
\else
\MTDeclareVersion[\mst@ltsh]{#1}
@@ -3993,7 +4314,7 @@ and \protect\log-like names will be^^J%
% redefine the `normal' and `bold' versions and issue a warning in
% that case!
% \begin{macrocode}
-\newcommand*\MTDeclareVersion[6][\@empty]{
+\newcommand*\MTDeclareVersion[6][\empty]{
\edef\mst@version{#2}
\DeclareMathVersion{\mst@version}
\expandafter\edef\csname mst@encoding@\mst@version\endcsname{#3}
@@ -4012,14 +4333,14 @@ and \protect\log-like names will be^^J%
\expandafter\edef\csname mst@prime@skip@\mst@version\endcsname
{\mst@prime@skip}
\mst@optionalparamfalse
- \ifx\@empty#1
+ \ifx\empty#1
\else % we check nevertheless for [] situation, will not work with [ ]
\def\mst@tmp{#1}
- \ifx\mst@tmp\@empty\else\mst@optionalparamtrue\fi
+ \ifx\mst@tmp\empty\else\mst@optionalparamtrue\fi
\fi
\ifmst@optionalparam
\SetSymbolFont{mtletterfont}{#2}{#3}{#4}{#5}{#1}
- \typeout{** Latin letters in math version `#2' will use the font
+ \typeout{** Latin letters in math version `#2\string' will use the font
#3/#4/#5/#1^^J%
** Other characters (digits, ...) and \protect\log-like
names will be in #6 shape.}
@@ -4027,14 +4348,14 @@ and \protect\log-like names will be^^J%
\else
\ifmst@italic
\SetSymbolFont{mtletterfont}{#2}{#3}{#4}{#5}{\mst@ltsh}
- \typeout{** Latin letters in math version `#2' will use the font
+ \typeout{** Latin letters in math version `#2\string' will use the font
#3/#4/#5/\mst@ltsh^^J%
** Other characters (digits, ...) and \protect\log-like names
will be in #6 shape.}
\expandafter\edef\csname mst@ltshape@\mst@version\endcsname{\mst@ltsh}
\else
\SetSymbolFont{mtletterfont}{#2}{#3}{#4}{#5}{#6}
- \typeout{** Latin letters in math version `#2' will use the fonts
+ \typeout{** Latin letters in math version `#2\string' will use the fonts
#3/#4/#5(\mst@bold)/#6}
\expandafter\edef\csname mst@ltshape@\mst@version\endcsname{#6}
\fi
@@ -4101,7 +4422,6 @@ and \protect\log-like names will be^^J%
\typeout{** Capital Greek letters (\mst@greek@lsh@loc/\mst@greek@ush@loc)
will use OT1 font \mst@greekfont}
\fi\fi\fi\fi
-%\mst@font@info@on
}
\@onlypreamble\MTDeclareVersion
% \end{macrocode}
@@ -4131,13 +4451,13 @@ and \protect\log-like names will be^^J%
% settings for the math version (\#2) but from those of the optional argument
% (\#1), if present...
% \begin{macrocode}
-\newcommand*\MTVersion[2][\@empty]{%
+\newcommand*\MTVersion[2][\empty]{%
\mathversion{#2}%
- \ifx\@empty#1% no optional argument
+ \ifx\empty#1% no optional argument
\def\mst@tmp{#2}%
\else% we check nevertheless for [] situation, will not work with [ ]
\def\mst@tmpa{#1}%
- \ifx\mst@tmpa\@empty\def\mst@tmp{#2}%
+ \ifx\mst@tmpa\empty\def\mst@tmp{#2}%
\else\def\mst@tmp{#1}%
\fi%
\fi%
@@ -4355,16 +4675,18 @@ and \protect\log-like names will be^^J%
\expandafter\mst@addtodo@nonletters\string?\mathclose\mst@varfam@question
\fi
% \end{macrocode}
-% \begin{macro}{\MTast}
+% \begin{macro}{\MTlowerast}
+% \begin{macro}{\mst@doasterisk}
+% \begin{macro}{\mst@@doasterisk}
% |1.12d| The \cs{ast} or |*| is defined in |fontmath.ltx| as a binary
-% operator from the |symbols| font. Usually the asterisk from the text font is
-% in a raised position. Previous versions of \mst did nothing with \cs{ast}
-% but strangely defined |*| to be the one from the text font, with type
-% \cs{mathalpha}. The package now leaves by default both |*| and |\ast|
-% untouched, and if passed option |asterisk| replaces both of them with a
-% lowered text asterisk (or the one from the Symbol font), and of type
-% \cs{mathbin}. A trick is used to have optionally |*| and \cs{ast} also obey
-% the math alphabets.
+% operator from the |symbols| font. Usually the asterisk from the text
+% font is in a raised position. Previous versions of \mst did nothing
+% with \cs{ast} but strangely defined |*| to be the one from the text
+% font, with type \cs{mathalpha}. The package now leaves by default
+% both |*| and |\ast| untouched, and if passed option |asterisk|
+% replaces both of them with a lowered text asterisk (or the one from
+% the Symbol font), and of type \cs{mathbin}. A trick is used to
+% optionally get both |*| and \cs{ast} obey the math alphabets.
%
% The user macro \cs{MTlowerast} sets the amount
% of lowering to be applied to the text asterisk.
@@ -4375,9 +4697,7 @@ and \protect\log-like names will be^^J%
% nota bene: it is assumed that |*| is of type |other| when \mst
% is loaded... it should neither be active, nor of type |letter|!
% \begin{macrocode}
- \def\mst@@doasterisk{\let\ast\mst@ast
- \expandafter\let\csname mst@ifdone*\endcsname\iffalse
- \mst@mathactivate*{}\mst@ast} % for the order cf. \mst@do@activecase
+\def\mst@@doasterisk{\let\ast\mst@ast\mst@mathactivate*{}\mst@ast}
\ifmst@asterisk\typeout{** asterisk: \string\ast\space and *}
\ifmst@symbolmisc
\def\mst@bin@ast{%
@@ -4417,7 +4737,7 @@ and \protect\log-like names will be^^J%
\expandafter\def\csname mst@ast \endcsname{\mst@varfam@ast}}
\fi
% \end{macrocode}
-% \end{macro}
+% \end{macro}\end{macro}\end{macro}
% (2011) I renounced to try to do things with all the various dots, they are
% defined in many different ways, and there is the amsmath also. Dealing with
% this issue would mean a lot a time for a minuscule result. Better to leave the
@@ -4441,9 +4761,10 @@ and \protect\log-like names will be^^J%
{} % \colon defined in amsmath.sty in terms of : with some enlarged explicit
% spacing. No need to intervene.
{% no amsmath, use standard punctuation spacing
- % \let\colon\undefined
+\let\colon\undefined
% the reason is if some package has redefined \colon which then
- % could not be used in \cs{DeclareMathSymbol} anymore.
+ % can not be used in \cs{DeclareMathSymbol} anymore (we
+ % shamelessly overwrite...)
\DeclareMathSymbol{\colon}{\mathpunct}{\mst@font@tbu}{"3A}
\mst@do@nonletters\expandafter{\the\mst@do@nonletters
\def\colon{\mathpunct{\mst@varfam@colon}}}}
@@ -4503,12 +4824,16 @@ and \protect\log-like names will be^^J%
% \begin{macrocode}
\def\do@the@endashstuff{\edef\mst@tmp@enc{\encodingdefault}
\ifx\mst@tmp@enc\mst@eui % xetex+fontspec
-\AtBeginDocument{\XeTeXmathcode`\-="2 \symmtoperatorfont "2013\relax}
-\AtBeginDocument{\XeTeXmathchardef\mst@varfam@minus="7 \symmtoperatorfont "2013\relax}
+ \AtBeginDocument{%
+ \XeTeXmathcode`\-="2 \symmtoperatorfont "2013\relax
+ \XeTeXmathchardef\mst@varfam@minus="7 \symmtoperatorfont "2013\relax
+ }
\else
\ifx\mst@tmp@enc\mst@euii % luatex+fontspec
-\AtBeginDocument{\luatexUmathcode`\-="2 \symmtoperatorfont "2013\relax}
-\AtBeginDocument{\luatexUmathchardef\mst@varfam@minus="7 \symmtoperatorfont "2013\relax}
+ \AtBeginDocument{%
+ \luatexUmathcode`\-="2 \symmtoperatorfont "2013\relax
+ \luatexUmathchardef\mst@varfam@minus="7 \symmtoperatorfont "2013\relax
+ }
\else
\ifx\mst@tmp@enc\mst@ti % T1
\DeclareMathSymbol{-}{\mathbin}{mtoperatorfont}{21}
@@ -4530,12 +4855,16 @@ and \protect\log-like names will be^^J%
\fi\fi\fi\fi\fi}
\def\do@the@emdashstuff{\edef\mst@tmp@enc{\encodingdefault}
\ifx\mst@tmp@enc\mst@eui % xetex+fontspec
-\AtBeginDocument{\XeTeXmathcode`\-="2 \symmtoperatorfont "2014\relax}
-\AtBeginDocument{\XeTeXmathchardef\mst@varfam@minus="7 \symmtoperatorfont "2014\relax}
+ \AtBeginDocument{%
+ \XeTeXmathcode`\-="2 \symmtoperatorfont "2014\relax
+ \XeTeXmathchardef\mst@varfam@minus="7 \symmtoperatorfont "2014\relax
+ }
\else
\ifx\mst@tmp@enc\mst@euii % luatex+fontspec
-\AtBeginDocument{\luatexUmathcode`\-="2 \symmtoperatorfont "2014\relax}
-\AtBeginDocument{\luatexUmathchardef\mst@varfam@minus="7 \symmtoperatorfont "2014\relax}
+ \AtBeginDocument{%
+ \luatexUmathcode`\-="2 \symmtoperatorfont "2014\relax
+ \luatexUmathchardef\mst@varfam@minus="7 \symmtoperatorfont "2014\relax
+ }
\else
\ifx\mst@tmp@enc\mst@ti % T1
\DeclareMathSymbol{-}{\mathbin}{mtoperatorfont}{22}
@@ -5537,7 +5866,7 @@ and \protect\log-like names will be^^J%
\DeclareMathSizes{\@xxxpt}{\@xxxpt}{\@xxvpt}{\@xxpt}
\DeclareMathSizes{\@xxxvipt}{\@xxxvipt}{\@xxxpt}{\@xxvpt}
\typeout{** mathastext has declared larger sizes for subscripts.^^J%
-** To keep LaTeX defaults, use option `defaultmathsizes'.}
+** To keep LaTeX defaults, use option `defaultmathsizes\string'.}
\fi
% \end{macrocode}
% \end{macro}
@@ -5561,7 +5890,7 @@ and \protect\log-like names will be^^J%
Grave accent \` Left brace \{ Vertical bar \|
Right brace \} Tilde \~}
-\CheckSum{5065}
+\CheckSum{5053}
\Finale
%%
diff --git a/Master/texmf-dist/source/latex/mathastext/mathastext.ins b/Master/texmf-dist/source/latex/mathastext/mathastext.ins
index f061e88c83e..aaae59e18bd 100644
--- a/Master/texmf-dist/source/latex/mathastext/mathastext.ins
+++ b/Master/texmf-dist/source/latex/mathastext/mathastext.ins
@@ -2,9 +2,9 @@
%% Package `mathastext' by Jean-Francois Burnol
%% Copyright (C) 2011, 2012 by Jean-Francois Burnol
%%
-\def\pkgname{mathastext}
-\def\pkgdate{2013/01/10}
-\def\pkgversion{v1.2e}
+\def\pkgname{mathastext} % these macros of course are not included
+\def\pkgdate{2013/01/21} % into the package file! (else I would have
+\def\pkgversion{v1.2f} % given them other names)
\def\pkgdescription{Use the text font in math mode (jfB)}
%% This file `mathastext.ins' is provided for compatibility with TeX
%% distributions expecting to find it for installation of `mathastext.sty'.