Comprehensive TeX Archive Network

Direc­tory tex-archive/macros/latex/contrib/mathastext

Copyright (C) 2011-2015 Jean-Francois Burnol.

        +                 mathastext                +
        +                                           +
        +      `Use the text font in math mode'     +
        +             v1.3d  2014/05/23             +
        +             jfbu (at) free.fr             +

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

The latest version of this license is in
and version 1.3 or later is part of all distributions of
LaTeX version 2003/12/01 or later.

The Author of this Work is 
   Jean-Francois Burnol <jfbu at free dot fr>


Optimal typographical results for documents containing
mathematical symbols can only be hoped for with math fonts
specifically designed to match a given text typeface.
Although the list of freely available math fonts (alongside
the Computer Modern and AMS extension fonts) is slowly
expanding (fourier, kpfonts, mathdesign, pxfonts, txfonts,
and others...) it remains limited, and the situation is even
worse with Unicode fonts (XeTeX/LuaTeX). So if you can't
find a math font which fits well with your favorite text
font, and wish to still be able to typeset mathematical
documents, perhaps not of the highest typographical quality,
but at least not subjected to obvious visual incompatibi-
-lities between your text font and the math fonts,
try out mathastext: it will simply use the text font also
for the math!


  `mathastext' is a LaTeX package


  The document will use in math mode the text font
  as configured at package loading time, for these


  The command \MTsetmathskips allows to set up extra
  spacings around each given letter.

  Use multiple \Mathastext[name]'s to define in the
  preamble various math versions using each a given
  text font, to be later activated in the document  
  body via the command \MTversion{name}.

  With the subdued option, mathastext will be active
  only inside such math versions distinct from the
  normal and bold.

  Main options: italic, defaultmathsizes, subdued,
                asterisk, LGRgreek.

Use the `italic' option to get the Latin letters in math
mode be in italics. Digits and log-like operator names
(pre-defined as well as user-defined) will be in the same
shape as the text font (usually this means upright).

For documents needing Greek letters the following is
    + no option: Greek letters defined by other packages,
    + eulergreek: use the Euler font for the Greek letters,
    + symbolgreek: use the Postscript Symbol font for the
      Greek letters.
    + LGRgreek: use the document text font in LGR encoding
      Further options specify the shape of the lowercase
      and uppercase Greek glyphs; starting with v1.15c it is
      possible to use multiple distinct LGR fonts in the
      same document.

Commands are provided to scale the Euler and Symbol fonts by
an arbitrary factor to let them fit better with the document
text font.

Read the PDF documentation for more.

Examples available there:


The fastest way is: unzip -d <destfolder> mathastext.tds.zip, where 
<destfolder> could be ~/texmf or, on mac os x, ~/Library/texmf.

Else, download mathastext.dtx, possibly also mathastext.ins, and follow
these instructions:
* with mathastext.ins: run tex on mathastext.ins to generate the package 
style file mathastext.sty as well as mathastext.tex and some test files.

* without mathastext.ins: run tex on mathastext.dtx to generate the package
style file mathastext.sty as well as mathastext.tex and some test files.
(and also mathastext.ins)
  Move the style file mathastext.sty to a location where TeX can find it.
  In a TDS compliant hierarchy this will be

*documentation*: run latex thrice on mathastext.tex then dvipdfmx. Or, run
pdflatex thrice on mathastext.dtx. In the former case the documentation is
with source code included, in the latter without. The file mathastext.tex
can be customized to change the font size or set other options therein.

   (One cannot use lualatex/xelatex to compile the documentation.)

*test files*: mathastexttestmathversions.tex


[2015/02/26]: mention is made in the documentation of the improved
compatibility of mathastext with the latest (3.34) beamer release.

1.3d [2014/05/23]

   * new commands \MTstandardgreek and \MTcustomgreek. 

   * The Greek letters, in case of use of one of the package related options,
are left to their defaults in the normal and bold math versions if the
subdued option was also used (this was so far the case only with options

   * \newmcodes@ of amsmath is left untouched if package lualatex-math
is detected.

1.3c [2013/12/14]
   * added a starred variant to \MTversion which tells mathastext to
only do the math set-up and not modify the text fonts.

   * added second optional version name argument to \Mathastext and to
\MTDeclareVersion, to transfer settings for things not otherwise changed
by mathastext from a math version to the one declared. This is mainly
for symbols and large symbols to be the bold ones when the user sets up
the series of a mathastextified font to be bold in a mathastext-declared

   * renamed \defaultprod to \MToriginalprod, \defaultsum to
\MToriginalsum, (this is in case of option symbolmisc).

   * changes to the dtx organization; options for generating the
documentation can be customized in generated mathastext.tex file.

   * 1.2d code for \#, \$, \%, and \& modified erroneously the earlier
correct 1.2c code and created a bug showing up with more than 16 math
families (a possibility only with lualatex or xelatex).

1.3a [2013/09/04]

   * the somewhat silly \string's are removed from the \MTsetmathskips
command of release 1.3, thus allowing its first argument to be a macro,
or any expandable code, giving a letter.

   * the amsmath \resetMathstrut@, which is incompatible with a
mathematically active parenthesis ( is now modified only if necessary
(i.e. only when \MTnonlettersobeymathxx is issued) and is restored to
its original value if not needed anymore (i.e. after
\MTnonlettersdonotobeymathxx, as for example when switching to the
normal version under option subdued).

   * improved documentation.

1.3  [2013/09/02]

   * commands \MTsetmathskips and \MTunsetmathskips added.

   * commands \MTmathactiveletters and \MTmathstandardletters to govern
the math activation of letters independently of its use for insertion of
the italic corrections (\MTicinmath and \MTnoicinmath correspondingly

   * the new \luatexUmathcodenum as available since TL2013 allows
identical treatment by mathastext of = and - under both LuaTeX and

   * \newmcodes@ of amsmath is left untouched in case of option basic.

   * a sentence containing | which was written to the log during the
loading caused a problem if | was active (typically if
\MakeShortVerb{\|} was added to the preamble prior to the loading of

   * some preemptive measures taken regarding things such as \mid,
\lbrace, and \rbrace, as some packages define these things in manners
which made the re-definitions done by mathastext issue errors.

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

   * 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

   *  various improvements in dealing with the asterisk and in the
      mechanism of letting non-letter symbols obey the math alphabet

   *  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

   *  version 1.2 had some bad bugs when confronted to active
      characters. This is corrected and additionally \MTnonletters-
      -donotobeymathxx 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

   *  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

   *  improvements to the documentation.


   *  corrected a `feature' of 1.15 which was backward-

   *  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.


   *  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

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.


   *  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.


   *  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.


   *  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.


Name Size Date Notes
README 15402 2015-02-26 23:04
math­as­text.dtx 300193 2015-02-26 23:33
math­as­text.ins 2152 2015-02-26 23:34
math­as­text.pdf 383766 2015-02-26 23:34
math­as­texttestal­pha­bets.pdf 41580 2014-05-23 18:54

Down­load the con­tents of this pack­age in one zip archive (494.6k).

math­as­text – Use the text font in maths mode

The pack­age uses a text font (usu­ally the doc­u­ment’s text font) for the let­ters of the Latin al­pha­bet needed when type­set­ting math­e­mat­ics. (Op­tion­ally, other char­ac­ters in the font may also be used). This fa­cil­ity makes pos­si­ble (for a doc­u­ment with sim­ple math­e­mat­ics) a far wider choice of text font, with lit­tle worry that no spe­cially de­signed ac­com­pa­ny­ing maths fonts are avail­able. The pack­age also of­fers a sim­ple mech­a­nism for us­ing many dif­fer­ent choices of (text hence, now, maths) font in the same doc­u­ment. Of course, us­ing one font for two pur­poses helps pro­duce smaller PDF files.

The pack­age, run­ning un­der LuaTeX, re­quires the TeX live 2013 dis­tri­bu­tion (or later).

Pack­age De­tailsmath­as­text
Home pagehttp://jf.burnol.free.fr/math­as­text.html
Ver­sion1.3d 2015-02-26
Li­censeThe LaTeX Project Public Li­cense 1.3
Main­tainerJean-François Burnol
TDS archivemathastext.tds.zip
Con­tained inTeXlive as math­as­text
MikTeX as math­as­text
Topics fonts for use in math­e­mat­ics
font se­lec­tion schemes
fonts them­selves
Guest Book Sitemap Contact