diff options
author | Karl Berry <karl@freefriends.org> | 2011-02-05 00:20:35 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2011-02-05 00:20:35 +0000 |
commit | 1a813fddccf1088251a3bf66876370618b724a8a (patch) | |
tree | 3caaac2202bc3a7c791b38f1c119d065ebea48d6 /Master/texmf-dist | |
parent | 4289e4647ab448dbce672649f32f107dda45c4aa (diff) |
isomath 0.5 (2feb11)
git-svn-id: svn://tug.org/texlive/trunk@21296 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r-- | Master/texmf-dist/doc/latex/isomath/README.html | 322 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/isomath/README.txt | 26 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/isomath/isomath-test.pdf | bin | 141853 -> 351869 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/isomath/isomath-test.tex | 190 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/isomath/isomath.html | 2478 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/isomath/isomath.pdf | bin | 154436 -> 512685 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/isomath/isomath.sty.html | 670 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/isomath/isomath.sty.txt | 212 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/isomath/isomath.txt | 1110 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/isomath/isomath.sty | 212 |
10 files changed, 4162 insertions, 1058 deletions
diff --git a/Master/texmf-dist/doc/latex/isomath/README.html b/Master/texmf-dist/doc/latex/isomath/README.html index 1fc2b4360b2..35e0cf95488 100644 --- a/Master/texmf-dist/doc/latex/isomath/README.html +++ b/Master/texmf-dist/doc/latex/isomath/README.html @@ -1,17 +1,17 @@ <?xml version="1.0" encoding="utf-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="generator" content="Docutils 0.8: http://docutils.sourceforge.net/" /> <title>isomath README</title> -<meta name="date" content="2010-08-23" /> -<meta name="copyright" content="© 2008, 2010 Günter Milde <milde@users.berlios.de>" /> +<meta name="date" content="2011-02-01" /> +<meta name="copyright" content="© 2008, 2011 Günter Milde <milde@users.berlios.de>" /> <style type="text/css"> /* :Author: David Goodger (goodger@python.org) -:Id: $Id: html4css1.css 6387 2010-08-13 12:23:41Z milde $ +:Id: $Id: html4css1.css 6511 2011-01-03 14:49:11Z milde $ :Copyright: This stylesheet has been placed in the public domain. Default cascading style sheet for the HTML output of Docutils. @@ -191,7 +191,7 @@ img.align-center, .figure.align-center, object.align-center { /* reset inner alignment in figures */ div.align-right { - text-align: left } + text-align: inherit } /* div.align-center * { */ /* text-align: left } */ @@ -337,13 +337,15 @@ body { line-height:1.3; /* http://ilovetypography.com/2008/02/28/a-guide-to-web-typography/ recommends "line-spacing that’s at least 140% of your text size" */ + counter-reset: table; + /* counter-reset: figure; */ } /* avoid long lines --> better reading */ /* OTOH: lines should not be too short because of missing hyphenation, */ div.document { - max-width: 45em; - margin: 0 auto; + max-width: 45em; + margin: auto; } /* separate items except for compact lists */ @@ -377,8 +379,7 @@ div.sidebar { /* Special definition lists */ /* ======================== */ -/* start definition term on the same line as the label */ - +/* bold definition term on the same line as the label */ dl.field-list > dt, dl.option-list > dt, dl.docinfo > dt, dl.footnote > dt, dl.citation > dt, dl.description > dt { clear: left; @@ -386,31 +387,27 @@ dl.footnote > dt, dl.citation > dt, dl.description > dt { margin: 0; padding: 0; padding-right: 0.5em; -/* background: yellow; */ -} - -/* Definition list with the layout of a LaTeX `description` list */ -/* (bold label, continue on same line) */ -dl.description > dt { font-weight: bold; } +/* except for these */ +dl.option-list > dt, dl.footnote > dt { + font-weight: normal; +} + + /* Field Lists */ /* ----------- */ -/* field names: bold, followed by a colon */ -dl.field-list > dt, dl.docinfo > dt { - font-weight: bold; -} +/* field names followed by a colon */ dl.field-list > dt:after, dl.docinfo > dt:after { content: ":"; } /* Offset for field content (corresponds to the --field-name-limit option) */ dl.field-list > dd { - margin-left: 8.5em; + margin-left: 9em; /* ca. 14 chars in the test examples */ padding-left: 0.5em; -/* background: yellow; */ } /* start field-body on a new line after long field names */ @@ -421,8 +418,8 @@ dl.field-list > dd p { } dl.field-list > dd > p:first-child, -dl.field-list > dd > ol:first-child, -dl.field-list > dd > ul:first-child, +/* dl.field-list > dd > ol:first-child, */ +/* dl.field-list > dd > ul:first-child, */ dl.field-list > dd > dl:first-child { display: inline-block; } @@ -453,16 +450,12 @@ dl.field-list.fix-labelwidth > dd:after { /* docinfo */ -dl.docinfo { - margin: 2em 2em; /* setting from html4css1.css */ - padding-left: 0; -} - dl.docinfo > dd { margin-left: 8em; /* margin-bottom: 0.5em; */ } + /* option list */ dl.option-list { @@ -495,8 +488,15 @@ dl.footnote { /* border-color: black; */ } +/* paragraph on same line as backrefs */ +dd > em { +/* background: green; */ + float: left; + margin-right: 1ex +} + -/* +/* Ordered List (Enumeration) -------------------------- @@ -513,7 +513,13 @@ ol { /* Set the negative indent of the list label as feature of the list item */ ol > li { text-indent: -40px; /* Mozillas default indent */ - margin-bottom: 1em; +} +/* reset for child elements */ +ol > li > * { + text-indent: 0px; + text-indent: 0; + margin-top: 0; + /* background: lightgreen; */ } /* Label */ @@ -531,16 +537,6 @@ ol > li:before { /* background: yellow; */ } -/* objects nested in an ol */ -ol > li > p, -ol > li > ol, -ol > li > ul, -ol > li > dl { - text-indent: 0; - margin-top: 0; - /* background: lightgreen; */ -} - /* The list item's first line starts next to the label, without indent */ ol > li > p:first-child, ol > li > ol:first-child, @@ -574,96 +570,124 @@ ol.nested > li:before, ol.nested ol > li:before { /* smaller font for super- and subscripts */ /* sub, sup {font-size: 70%;} */ /* Mozilla default is `smaller` */ -/* unordered lists */ -/* --------------- */ - -/* drop bullets from Table of Contents */ -/* div.topic.contents ul { */ -/* list-style: none; */ -/* } */ /* Tables */ -/* ------ */ +/* ====== */ -/* borders for "normal" tables */ -table.table { +/* margins and borders for "normal" tables */ +table { + margin-top: 0.5em ; + margin-bottom: 0.5em; border-style: outset; border-width: thin; + /* border-collapse: collapse; */ +} +blockquote > table { + margin-top: 0em ; + margin-bottom: 0em; } -table.table td, table.table th { +td, th { border-style: inset; border-width: thin; + /* text-align: left; */ + padding: 0 1ex; +} + +td > p:first-child, th > p:first-child { + margin-top: 0; +} +td > p, th > p { + margin-bottom: 0; } /* no borders for "borderless" tables */ -table.table.borderless, table.table.borderless * { +table.borderless, table.borderless * { border-style: none; } -/* numbered tables and figures*/ -body { - counter-reset: table; -/* counter-reset: figure; */ +/* "booktabs" style (no vertical lines) */ +table.booktabs { + border: 0; + border-top: 2px solid; + border-bottom: 2px solid; + border-collapse: collapse; } -table.numbered > caption:before { - counter-increment: table; - content: "Table " counter(table) ": "; - font-weight: bold; +table.booktabs * { + border: 0; } - +table.booktabs th { + border-bottom: thin solid; +} + table > caption { text-align: left; - padding: 2em 0 1em 0; +/* padding: 2em 0 1em 0; */ } +/* numbered tables*/ +table.numbered > caption:before { + counter-increment: table; /* defined/re-set in body */ + content: "Table " counter(table) ": "; + font-weight: bold; +} -/* whitespace and line-wrapping in inline literals - ----------------------------------------------- +/* literal text + ------------ */ +/* whitespace and wrapping in inline literals */ /* possible values: normal, nowrap, pre, pre-wrap, pre-line */ -tt.docutils.literal { +tt.literal { white-space: pre-wrap; } +/* /* compensate for initial line-break (which is literal with XHTML 1.1) */ */ +/* pre.literal-block, pre.doctest-block { */ +/* margin-top: 0em ; */ +/* } */ + +/* Table of Contents */ + +/* don't indent like a topic */ +div.topic.contents { + margin: 0; +} +/* div.topic.contents ul { */ +/* list-style: none; */ +/* } */ + +div.topic.contents a { + text-decoration: none; /* no underline for links */ +} + +/* section numbers */ + +span.sectnum { + padding-right: 1ex; +} + +/* admonitions */ + +/* no padding for top and bottom */ +div.admonition, div.attention, div.caution, div.danger, div.error, +div.hint, div.important, div.note, div.tip, div.warning { + padding: 0px 1em } + </style> <style type="text/css"> -/* -:Author: Guenter Milde +/* Stylesheet for isomath documentation :Copyright: 2008 G. Milde This stylesheet is released under the GPL v. 2 - -Stylesheet for the Math Fonts Overview "Matheschriften" */ -/* deutsche Tabellenbeschriftung */ -/* table.numbered > caption:before { */ -/* content: "Tabelle " counter(table) ": "; */ -/* } */ - -/* booktabs Style */ -table.booktabs, table.booktabs td, table.booktabs th { - border: 0 } -table.booktabs { - border-top: 2px solid; - border-bottom: 2px solid; -} -table.booktabs th { - border-bottom: 1px solid; -} - -dl.docutils dt { - font-weight: bold; -} +dl.docutils dt { font-weight: bold; } /* docinfo */ -dl.docinfo > dt { - display: none; -} +dl.docinfo > dt { display: none; } dl.docinfo > dd { margin-left: 0; padding: 0 5%; @@ -673,7 +697,6 @@ dl.docinfo > dt.author + dd { text-align: center; padding-bottom: 1em; } - dt.date { display: none; } @@ -692,17 +715,37 @@ a.reference.internal { color: darkblue; } -/* +/- Listen mit field-list */ -dl.field-list > dt { - font-family: monospace; +a.reference.external { + text-decoration: underline; +} + +/* a.reference.external:after { */ +/* content: "⎘"; */ +/* font-size: x-small; */ +/* vertical-align: super; */ +/* } */ + +dl.footnote > dd { + margin-left: 1.2em; } -dl.field-list > dt:after { - content: ""; /* drop trailing ':' */ +dl.footnote > dt { + font-size: small; + vertical-align: super; } -/* Offset for field content (corresponds to the --field-name-limit option) */ -dl.field-list > dd { - margin-left: 1em; - padding-left: 0.5em; + +a.footnote-reference > sup { + font-size: small; + vertical-align: super; + } + +td, th { + padding-bottom: 0.1ex; + padding-top: 0.1ex; +} + +/* no borders for "borderless" tables */ +table.booktabs.borderless, table.booktabs.borderless * { + border-style: none; } </style> @@ -713,89 +756,88 @@ dl.field-list > dd { <dl class="docinfo simple"> <dt class="date">Date</dt> -<dd>2010-08-23</dd> +<dd class="date">2011-02-01</dd> <dt class="copyright">Copyright</dt> -<dd>© 2008, 2010 Günter Milde <<a class="reference external" href="mailto:milde@users.berlios.de">milde@users.berlios.de</a>></dd> +<dd class="copyright">© 2008, 2011 Günter Milde <<a class="reference external" href="mailto:milde@users.berlios.de">milde@users.berlios.de</a>></dd> <dt>Licence</dt> -<dd>This work may be distributed and/or modified under the +<dd><p>This work may be distributed and/or modified under the conditions of the <a class="reference external" href="http://www.latex-project.org/lppl.txt">LaTeX Project Public License</a>, either -version 1.3 of this license or (at your option) any later version.</dd> +version 1.3 of this license or (at your option) any later version.</p> +</dd> </dl> <div class="abstract topic"> <p class="topic-title first">Abstract</p> -<p>The isomath package enables formatting Greek and Latin +<p>The <cite>isomath</cite> package enables formatting Greek and Latin letters as symbols for vectors, matrices, and tensors in the typefaces recommended for scientific papers -by the International Standard ISO 31.</p> +by the International Standard ISO 80000-2.</p> </div> <div class="section" id="files"> <h1>Files</h1> <table class="booktabs numbered align-left"> <colgroup> -<col width="38%" /> -<col width="62%" /> +<col width="32%" /> +<col width="68%" /> </colgroup> <tbody valign="top"> -<tr><td>README.txt</td> -<td>Requirements, Installation, Usage</td> +<tr><td><p>README.txt</p></td> +<td><p>Requirements, Installation, Usage</p></td> </tr> -<tr><td>README.html</td> -<td>browser friendly README</td> +<tr><td><p>README.html</p></td> +<td><p>browser friendly README</p></td> </tr> -<tr><td>isomath.sty</td> -<td>literate source (LaTeX package)</td> +<tr><td><p>isomath.sty</p></td> +<td><p>literate source (the actual LaTeX package)</p></td> </tr> -<tr><td>isomath.sty.txt</td> -<td>literate source (text version)</td> +<tr><td><p>isomath.sty.txt</p></td> +<td><p>literate source (text version)</p></td> </tr> -<tr><td>isomath.sty.html</td> -<td>literate source (HTML)</td> +<tr><td><p>isomath.sty.html</p></td> +<td><p>literate source (HTML)</p></td> </tr> -<tr><td>isomath-doc.txt</td> -<td>user documentation (source)</td> +<tr><td><p>isomath.txt</p></td> +<td><p>user documentation (source)</p></td> </tr> -<tr><td>isomath-doc.html</td> -<td>user documentation (HTML)</td> +<tr><td><p>isomath.html</p></td> +<td><p>user documentation (HTML)</p></td> </tr> -<tr><td>isomath-doc.pdf</td> -<td>user documentation (PDF)</td> +<tr><td><p>isomath.pdf</p></td> +<td><p>user documentation (PDF)</p></td> </tr> -<tr><td>isomath-test.tex</td> -<td>Test example (source)</td> +<tr><td><p>isomath-test.tex</p></td> +<td><p>Test example (source)</p></td> </tr> -<tr><td>isomath-test.pdf</td> -<td>Test example (PDF output)</td> +<tr><td><p>isomath-test.pdf</p></td> +<td><p>Test example (PDF output)</p></td> </tr> </tbody> </table> <p>The bidirectional text <-> code converter <a class="reference external" href="http://pylit.berlios.de">PyLit</a> can convert between -<tt class="docutils literal">isomath.sty</tt> and <tt class="docutils literal">isomath.sty.txt</tt>.</p> +<tt class="literal">isomath.sty</tt> and <tt class="literal">isomath.sty.txt</tt>.</p> <p>The Python <a class="reference external" href="http://docutils.sourceforge.net/rst.html">Docutils</a> and pdflatex were used to generate the HTML and PDF documentation from the <a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> sources.</p> </div> <div class="section" id="requirements"> <h1>Requirements</h1> -<p>This package builds on and extends <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/fixmath.html">fixmath</a> by Walter Schmidt. -It requires <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/kvoptions.html">kvoptions</a>.</p> -<p>The <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/cmbright.html">cmbright</a> package is recommended for <em>sans-serif italic</em> and <em>sans-serif +<p>This package builds on and extends <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/fixmath.html">fixmath</a> by Walter Schmidt. +It also requires <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/kvoptions.html">kvoptions</a>.</p> +<p>The <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/cmbright.html">cmbright</a> package is recommended for <em>sans-serif italic</em> and <em>sans-serif bold italic</em> fonts matching with Computer Modern and derivatives.</p> <p>All required packages are part of TeXLive and MikTeX.</p> </div> <div class="section" id="installation"> <h1>Installation</h1> <ul> -<li><p class="first">Unpack isomath.zip (preferabely in a <a class="reference external" href="http://www.tex.ac.uk/cgi-bin/texfaq2html?label=tds">TDS</a> documentation folder).</p> -</li> -<li><p class="first">Make sure LaTeX can find isomath.sty:</p> -<p>Copy/Move/Link it to a suitable place in the <a class="reference external" href="http://www.tex.ac.uk/cgi-bin/texfaq2html?label=tds">TDS</a> and run <tt class="docutils literal">texhash</tt> +<li><p>Unpack isomath.zip (preferably in a <a class="reference external" href="http://www.tex.ac.uk/cgi-bin/texfaq2html?label=tds">TDS</a> documentation folder).</p></li> +<li><p>Make sure LaTeX can find isomath.sty:</p> +<p>Copy/Move/Link it to a suitable place in the <a class="reference external" href="http://www.tex.ac.uk/cgi-bin/texfaq2html?label=tds">TDS</a> and run <tt class="literal">texhash</tt> or place it in the current working directory (e.g. for testing).</p> </li> </ul> </div> <div class="section" id="usage"> <h1>Usage</h1> -<pre class="literal-block"> -\usepackage{isomath} +<pre class="literal-block">\usepackage{isomath} </pre> <p>Option description, more examples and usage hints are in the user documentation.</p> diff --git a/Master/texmf-dist/doc/latex/isomath/README.txt b/Master/texmf-dist/doc/latex/isomath/README.txt index fd1231b6d9d..613161aac1d 100644 --- a/Master/texmf-dist/doc/latex/isomath/README.txt +++ b/Master/texmf-dist/doc/latex/isomath/README.txt @@ -1,17 +1,17 @@ isomath README ~~~~~~~~~~~~~~ -:Date: 2010-08-23 -:Copyright: © 2008, 2010 Günter Milde <milde@users.berlios.de> +:Date: 2011-02-01 +:Copyright: © 2008, 2011 Günter Milde <milde@users.berlios.de> :Licence: 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. -:Abstract: The isomath package enables formatting Greek and Latin +:Abstract: The `isomath` package enables formatting Greek and Latin letters as symbols for vectors, matrices, and tensors in the typefaces recommended for scientific papers - by the International Standard ISO 31. + by the International Standard ISO 80000-2. Files ===== @@ -24,9 +24,9 @@ isomath.sty literate source (the actual LaTeX package) isomath.sty.txt literate source (text version) isomath.sty.html literate source (HTML) -isomathtxt user documentation (source) -isomathhtml user documentation (HTML) -isomathpdf user documentation (PDF) +isomath.txt user documentation (source) +isomath.html user documentation (HTML) +isomath.pdf user documentation (PDF) isomath-test.tex Test example (source) isomath-test.pdf Test example (PDF output) @@ -53,7 +53,7 @@ All required packages are part of TeXLive and MikTeX. Installation ============ -* Unpack isomath.zip (preferabely in a TDS_ documentation folder). +* Unpack isomath.zip (preferably in a TDS_ documentation folder). * Make sure LaTeX can find isomath.sty: @@ -75,12 +75,12 @@ documentation. ========== .. _LaTeX Project Public License: http://www.latex-project.org/lppl.txt -.. _pylit: http://pylit.berlios.de +.. _PyLit: http://pylit.berlios.de .. _reStructuredText: http://docutils.sourceforge.net/rst.html -.. _docutils: http://docutils.sourceforge.net/rst.html +.. _Docutils: http://docutils.sourceforge.net/rst.html -.. _cmbright: http://dante.ctan.org/CTAN/help/Catalogue/entries/cmbright.html -.. _fixmath: http://dante.ctan.org/CTAN/help/Catalogue/entries/fixmath.html -.. _kvoptions: http://dante.ctan.org/CTAN/help/Catalogue/entries/kvoptions.html +.. _cmbright: http://mirror.ctan.org/help/Catalogue/entries/cmbright.html +.. _fixmath: http://mirror.ctan.org/help/Catalogue/entries/fixmath.html +.. _kvoptions: http://mirror.ctan.org/help/Catalogue/entries/kvoptions.html .. _TDS: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=tds diff --git a/Master/texmf-dist/doc/latex/isomath/isomath-test.pdf b/Master/texmf-dist/doc/latex/isomath/isomath-test.pdf Binary files differindex 014321c05d9..07bc2bcc2c0 100644 --- a/Master/texmf-dist/doc/latex/isomath/isomath-test.pdf +++ b/Master/texmf-dist/doc/latex/isomath/isomath-test.pdf diff --git a/Master/texmf-dist/doc/latex/isomath/isomath-test.tex b/Master/texmf-dist/doc/latex/isomath/isomath-test.tex index fd9c4267333..b640a4ff66b 100644 --- a/Master/texmf-dist/doc/latex/isomath/isomath-test.tex +++ b/Master/texmf-dist/doc/latex/isomath/isomath-test.tex @@ -1,4 +1,4 @@ -% isomath-test.tex: test and template for isomath.sty +%isomath-test.tex: test and template for isomath.sty % =================================================== % % Copyright © 2008 Günter Milde @@ -9,9 +9,9 @@ % :: \documentclass[a4paper]{article} -\usepackage[LGR,T1]{fontenc} -% \usepackage[T1]{fontenc} +\usepackage[T1]{fontenc} % \usepackage[utf8]{inputenc} +\usepackage{amsmath} \pagestyle{empty} @@ -29,35 +29,37 @@ \newcommand*{\fontpackageoptions}{% % default% with gfsneohellenic % charter% with mathdesign -garamond% with mathdesign +% garamond% with mathdesign % utopia% with mathdesign } \newcommand*{\fontpackage}{% -% ae% \sfdefault is cmss -% anttor% \sfdefault is cmss (use iwona) -% arev% normal and sans identic (also in math) -% beton% bitmap fonts -% concmath% -% cmbright% keeps \mathrm and \mathbf as CM (roman) -% fourier% incompatible (uses private font encoding) -% gfsneohellenic% (use option [default]) no bold -% hfoldsty% bitmap fonts -% iwona% sets cmss as sans font (use iwona) -% kpfonts% no sans serif italic, needs reuseMathAlphabets -% kerkis% no bold math, no sans serif (use iwona or arev?) -% lmodern% \sfdefault is cmss -% lucidabr% commercial, subset (no math) free as bitmap -% lxfonts% normal and sans identic, -mathdesign% \sfdefault is cmss, provides roman and roman-bold in OML -% mathptmx% in mathnormal, Greek is larger than Latin! -% mbtimes% \sfdefault is cmss -% mathpazo% \sfdefault is cmss -% pxfonts% needs reuseMathAlphabets, no sans-serif -% tgpagella,qpxmath% \sfdefault is cmss -% tgtermes,qtxmath% \sfdefault is cmss -% txfonts% no sans-serif -% zefonts% +% ae,% \sfdefault is cmss +% anttor,% \sfdefault is cmss (use iwona) +% arev,% normal and sans identic (also in math) +% beton,% bitmap fonts +% concmath,% +% cmbright,% +% fourier,% incompatible (uses private font encoding) +% gfsneohellenic,% (use option [default]) no bold +% hfoldsty,% bitmap fonts +% iwona,% sets cmss as sans font (use iwona) +% kpfonts,% no sans serif italic +% kerkis,% no bold math, +% lmodern,% \sfdefault is cmss +% lucidabr,% commercial, subset (no math) free as bitmap +% lxfonts,% normal and sans identic, +% mathdesign,% \sfdefault is cmss, provides roman and roman-bold in OML +% mathptmx,% in mathnormal, Greek is larger than Latin! +% mbtimes,% \sfdefault is cmss +% mathpazo,% \sfdefault is cmss +% pxfonts,% needs reuseMathAlphabets, no sans-serif +tgcursor,% avoid bitmap tt +tgheros,% avoid bitmap sf +% tgpagella,% \sfdefault is cmss +tgtermes,% \sfdefault is cmss +% txfonts,% no sans-serif +% zefonts% } % Isomath options @@ -67,11 +69,12 @@ mathdesign% \sfdefault is cmss, provides roman and roman-bold in OML \newcommand*{\isomathoptions}{% % reuseMathAlphabets,% -OMLmathrm,% -OMLmathbf,% +% OMLmathrm,% +% OMLmathbf,% % OMLmathsf,% +OMLmathsfit,% % OMLmathtt,% -% OMLmathsans,% +% OMLmathsans,% backwards compatibility option alias % rmdefault=qtxmia,% TeX Gyre Termes math with alternative glyphs % sfdefault=cmbr,% default % sfdefault=iwona,% Iwona sans (Greek glyphs too close to roman) @@ -85,7 +88,6 @@ OMLmathbf,% % :: \usepackage[\fontpackageoptions]{\fontpackage} - \usepackage[\isomathoptions]{isomath} @@ -96,10 +98,16 @@ OMLmathbf,% \renewcommand*{\vec}{\vectorsym} -% Fall-back definition for \mathsans:: -\providecommand*{\mathsans}[1]% -{\textsf{mathsans not defined, use \texttt{OMLmathsans} option}} +% Fall-back definition for \mathsfit:: + +\providecommand*{\mathsfit}[1]% +{\textsf{mathsfit not defined, use \texttt{OMLmathsfit} option}} + +% use Arev as "heavy" sans serif font:: + +\DeclareFontShape{OML}{fav}{bx}{it}{<-> s * [0.875] zavmbi7m}{} +\SetMathAlphabet{\mathsfbfit}{bold}{OML}{fav}{bx}{it} % Test sheet @@ -113,22 +121,17 @@ OMLmathbf,% % Print font package, isomath options, and resulting font families:: Fontpackage: [\fontpackageoptions]\{\fontpackage\}\\ -Isomath called with options: [\isomathoptions]\\ +Isomath: [\isomathoptions]\{isomath\}\\ Default font families: \makeatletter -\begin{tabular}[t]{rlrl} - serif & \texttt{\rmdefault} & - sans-serif & \texttt{\sfdefault}\\ - isomath-serif & \texttt{\isomath@rmdefault} & - isomath-sf & \texttt{\isomath@sfdefault}\\ +\begin{tabular}[t]{lrlrl} + Text & serif & \textsf{\rmdefault} & + sans-serif & \textsf{\sfdefault}\\ + Math & serif & \textsf{\isomath@rmdefault} & + sans-serif & \textsf{\isomath@sfdefault}\\ \end{tabular} \makeatother -\subsection*{Math alphabets} - -If there are other symbols in place of Greek letters in a math -alphabet, it uses T1 or OT1 font encoding instead of OML. - % A teststring with Latin and Greek letters:: \newcommand{\teststring}{% @@ -143,8 +146,15 @@ A,B,C, v,w, % is there a true italic form of a and g? a,g, +% digits +0,1,9 } +\subsection*{Math alphabets} + +If there are other symbols in place of Greek letters in a math +alphabet, it uses T1 or OT1 font encoding instead of OML. + \begin{eqnarray*} \mbox{mathnormal} & & \teststring \\ \mbox{mathit} & & \mathit{\teststring}\\ @@ -155,28 +165,29 @@ a,g, \end{eqnarray*} New alphabets bold-italic, sans-serif-italic, and sans-serif-bold-italic. \begin{eqnarray*} -\mbox{mathbold} & & \mathbold{\teststring}\\ -\mbox{mathsans} & & \mathsans{\teststring}\\ -\mbox{mathboldsans} & & \mathboldsans{\teststring} +\mbox{mathbfit} & & \mathbfit{\teststring}\\ +\mbox{mathsfit} & & \mathsfit{\teststring}\\ +\mbox{mathsfbfit} & & \mathsfbfit{\teststring} \end{eqnarray*} % Do the math alphabets match? $ \mathnormal {a x \alpha \omega} -\mathbold {a x \alpha \omega} -\mathboldsans{a x \alpha \omega} +\mathbfit {a x \alpha \omega} +\mathsfbfit{a x \alpha \omega} \quad -\mathboldsans{T C \Theta \Gamma} -\mathbold {T C \Theta \Gamma} +\mathsfbfit{T C \Theta \Gamma} +\mathbfit {T C \Theta \Gamma} \mathnormal {T C \Theta \Gamma} $ \subsection*{Vector symbols} -Symbols for vectors are boldface italic: -$\vec{\lambda}=\vec{e}_{1}\cdot\vec{a}$. - +Alphabetic symbols for vectors are boldface italic, +$\vec{\lambda}=\vec{e}_{1}\cdot\vec{a}$, +while numeric ones (e.g. the zero vector) are bold upright, +$\vec{a} + \vec{0} = \vec{a}$. \subsection*{Matrix symbols} @@ -203,4 +214,71 @@ The permittivity tensor describes the coupling of electric field and displacement: \[ \vec{D}=\epsilon_{0}\tensorsym{\epsilon}_{\mathrm{r}}\vec{E}\] + +\subsection*{Bold math version} + +The ``bold'' math version is selected with the commands +\verb+\boldmath+ or \verb+\mathversion{bold}+ +\boldmath + + +\begin{eqnarray*} +\mbox{mathnormal} & & \teststring \\ +\mbox{mathit} & & \mathit{\teststring}\\ +\mbox{mathrm} & & \mathrm{\teststring}\\ +\mbox{mathbf} & & \mathbf{\teststring}\\ +\mbox{mathsf} & & \mathsf{\teststring}\\ +\mbox{mathtt} & & \mathtt{\teststring} +\end{eqnarray*} + New alphabets bold-italic, sans-serif-italic, and sans-serif-bold-italic. +\begin{eqnarray*} +\mbox{mathbfit} & & \mathbfit{\teststring}\\ +\mbox{mathsfit} & & \mathsfit{\teststring}\\ +\mbox{mathsfbfit} & & \mathsfbfit{\teststring} +\end{eqnarray*} +% +Do the math alphabets match? + +$ +\mathnormal {a x \alpha \omega} +\mathbfit {a x \alpha \omega} +\mathsfbfit{a x \alpha \omega} +\quad +\mathsfbfit{T C \Theta \Gamma} +\mathbfit {T C \Theta \Gamma} +\mathnormal {T C \Theta \Gamma} +$ + +\subsection*{Vector symbols} + +Alphabetic symbols for vectors are boldface italic, +$\vec{\lambda}=\vec{e}_{1}\cdot\vec{a}$, +while numeric ones (e.g. the zero vector) are bold upright, +$\vec{a} + \vec{0} = \vec{a}$. + + +\subsection*{Matrix symbols} + +Symbols for matrices are boldface italic, too:% +\footnote{However, matrix symbols are usually capital letters whereas vectors +are small ones. Exceptions are physical Quantities like the force +vector $\vec{F}$ or the electrical field $\vec{E}$.% +} +$\matrixsym{\Lambda}=\matrixsym{E}\cdot\matrixsym{A}.$ + + +\subsection*{Tensor symbols} + +Symbols for tensors are sans-serif bold italic, + +\[ + \tensorsym{\alpha} = \tensorsym{e}\cdot\tensorsym{a} + \quad \Longleftrightarrow \quad + \alpha_{ijl} = e_{ijk}\cdot a_{kl}. +\] + +The permittivity tensor describes the coupling of electric field and +displacement: \[ +\vec{D}=\epsilon_{0}\tensorsym{\epsilon}_{\mathrm{r}}\vec{E}\] + \end{document} diff --git a/Master/texmf-dist/doc/latex/isomath/isomath.html b/Master/texmf-dist/doc/latex/isomath/isomath.html new file mode 100644 index 00000000000..3ed67206bc3 --- /dev/null +++ b/Master/texmf-dist/doc/latex/isomath/isomath.html @@ -0,0 +1,2478 @@ +<?xml version="1.0" encoding="utf-8" ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> +<meta name="generator" content="Docutils 0.8: http://docutils.sourceforge.net/" /> +<title>isomath: Math for scientists</title> +<meta name="author" content="Günter Milde" /> +<meta name="date" content="2011-01-14" /> +<meta name="copyright" content="© 2008, 2011 Günter Milde" /> +<style type="text/css"> + +/* +:Author: David Goodger (goodger@python.org) +:Id: $Id: html4css1.css 6511 2011-01-03 14:49:11Z milde $ +:Copyright: This stylesheet has been placed in the public domain. + +Default cascading style sheet for the HTML output of Docutils. + +See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to +customize this style sheet. +*/ + +/* used to remove borders from tables and images */ +.borderless, table.borderless td, table.borderless th { + border: 0 } + +table.borderless td, table.borderless th { + /* Override padding for "table.docutils td" with "! important". + The right padding separates the table cells. */ + padding: 0 0.5em 0 0 ! important } + +.first { + /* Override more specific margin styles with "! important". */ + margin-top: 0 ! important } + +.last, .with-subtitle { + margin-bottom: 0 ! important } + +.hidden { + display: none } + +a.toc-backref { + text-decoration: none ; + color: black } + +blockquote.epigraph { + margin: 2em 5em ; } + +dl.docutils dd { + margin-bottom: 0.5em } + +object[type="image/svg+xml"], object[type="application/x-shockwave-flash"] { + overflow: hidden; +} + +/* Uncomment (and remove this text!) to get bold-faced definition list terms +dl.docutils dt { + font-weight: bold } +*/ + +div.abstract { + margin: 2em 5em } + +div.abstract p.topic-title { + font-weight: bold ; + text-align: center } + +div.admonition, div.attention, div.caution, div.danger, div.error, +div.hint, div.important, div.note, div.tip, div.warning { + margin: 2em ; + border: medium outset ; + padding: 1em } + +div.admonition p.admonition-title, div.hint p.admonition-title, +div.important p.admonition-title, div.note p.admonition-title, +div.tip p.admonition-title { + font-weight: bold ; + font-family: sans-serif } + +div.attention p.admonition-title, div.caution p.admonition-title, +div.danger p.admonition-title, div.error p.admonition-title, +div.warning p.admonition-title { + color: red ; + font-weight: bold ; + font-family: sans-serif } + +/* Uncomment (and remove this text!) to get reduced vertical space in + compound paragraphs. +div.compound .compound-first, div.compound .compound-middle { + margin-bottom: 0.5em } + +div.compound .compound-last, div.compound .compound-middle { + margin-top: 0.5em } +*/ + +div.dedication { + margin: 2em 5em ; + text-align: center ; + font-style: italic } + +div.dedication p.topic-title { + font-weight: bold ; + font-style: normal } + +div.figure { + margin-left: 2em ; + margin-right: 2em } + +div.footer, div.header { + clear: both; + font-size: smaller } + +div.line-block { + display: block ; + margin-top: 1em ; + margin-bottom: 1em } + +div.line-block div.line-block { + margin-top: 0 ; + margin-bottom: 0 ; + margin-left: 1.5em } + +div.sidebar { + margin: 0 0 0.5em 1em ; + border: medium outset ; + padding: 1em ; + background-color: #ffffee ; + width: 40% ; + float: right ; + clear: right } + +div.sidebar p.rubric { + font-family: sans-serif ; + font-size: medium } + +div.system-messages { + margin: 5em } + +div.system-messages h1 { + color: red } + +div.system-message { + border: medium outset ; + padding: 1em } + +div.system-message p.system-message-title { + color: red ; + font-weight: bold } + +div.topic { + margin: 2em } + +h1.section-subtitle, h2.section-subtitle, h3.section-subtitle, +h4.section-subtitle, h5.section-subtitle, h6.section-subtitle { + margin-top: 0.4em } + +h1.title { + text-align: center } + +h2.subtitle { + text-align: center } + +hr.docutils { + width: 75% } + +img.align-left, .figure.align-left, object.align-left { + clear: left ; + float: left ; + margin-right: 1em } + +img.align-right, .figure.align-right, object.align-right { + clear: right ; + float: right ; + margin-left: 1em } + +img.align-center, .figure.align-center, object.align-center { + display: block; + margin-left: auto; + margin-right: auto; +} + +.align-left { + text-align: left } + +.align-center { + clear: both ; + text-align: center } + +.align-right { + text-align: right } + +/* reset inner alignment in figures */ +div.align-right { + text-align: inherit } + +/* div.align-center * { */ +/* text-align: left } */ + +ol.simple, ul.simple { + margin-bottom: 1em } + +ol.arabic { + list-style: decimal } + +ol.loweralpha { + list-style: lower-alpha } + +ol.upperalpha { + list-style: upper-alpha } + +ol.lowerroman { + list-style: lower-roman } + +ol.upperroman { + list-style: upper-roman } + +p.attribution { + text-align: right ; + margin-left: 50% } + +p.caption { + font-style: italic } + +p.credits { + font-style: italic ; + font-size: smaller } + +p.label { + white-space: nowrap } + +p.rubric { + font-weight: bold ; + font-size: larger ; + color: maroon ; + text-align: center } + +p.sidebar-title { + font-family: sans-serif ; + font-weight: bold ; + font-size: larger } + +p.sidebar-subtitle { + font-family: sans-serif ; + font-weight: bold } + +p.topic-title { + font-weight: bold } + +pre.address { + margin-bottom: 0 ; + margin-top: 0 ; + font: inherit } + +pre.literal-block, pre.doctest-block { + margin-left: 2em ; + margin-right: 2em } + +span.classifier { + font-family: sans-serif ; + font-style: oblique } + +span.classifier-delimiter { + font-family: sans-serif ; + font-weight: bold } + +span.interpreted { + font-family: sans-serif } + +span.option { + white-space: nowrap } + +span.pre { + white-space: pre } + +span.problematic { + color: red } + +span.section-subtitle { + /* font-size relative to parent (h1..h6 element) */ + font-size: 80% } + +table.citation { + border-left: solid 1px gray; + margin-left: 1px } + +table.docinfo { + margin: 2em 4em } + +table.docutils { + margin-top: 0.5em ; + margin-bottom: 0.5em } + +table.footnote { + border-left: solid 1px black; + margin-left: 1px } + +table.docutils td, table.docutils th, +table.docinfo td, table.docinfo th { + padding-left: 0.5em ; + padding-right: 0.5em ; + vertical-align: top } + +table.docutils th.field-name, table.docinfo th.docinfo-name { + font-weight: bold ; + text-align: left ; + white-space: nowrap ; + padding-left: 0 } + +h1 tt.docutils, h2 tt.docutils, h3 tt.docutils, +h4 tt.docutils, h5 tt.docutils, h6 tt.docutils { + font-size: 100% } + +ul.auto-toc { + list-style-type: none } + +</style> +<style type="text/css"> + +/* html4css2.css: Cascading style sheet for Docutils' html4strict writer. */ +/* */ +/* :Author: Günter Milde */ +/* :Copyright: © 2009 Günter Milde. */ +/* Released without warranties or conditions of any kind */ +/* under the terms of the Apache License, Version 2.0 */ +/* http://www.apache.org/licenses/LICENSE-2.0 */ +/* */ +/* This stylesheet supplements the Docutils standard style 'html4css1.css'. */ +/* It uses CSS 2.1 elements (supported by up-to-date versions of popular */ +/* browsers). */ + +/* General rules */ +/* ============= */ + +body { + padding: 0 5%; + margin: 8px 0; + line-height:1.3; + /* http://ilovetypography.com/2008/02/28/a-guide-to-web-typography/ + recommends "line-spacing that’s at least 140% of your text size" */ + counter-reset: table; + /* counter-reset: figure; */ +} + +/* avoid long lines --> better reading */ +/* OTOH: lines should not be too short because of missing hyphenation, */ +div.document { + max-width: 45em; + margin: auto; +} + +/* separate items except for compact lists */ +dl > dd { + margin-bottom: 1em; +} +.compact li, .compact p, .compact ul, .compact ol +dl.simple > dd, .simple li, .simple p, .simple ul, .simple ol { + margin-top: 0; + margin-bottom: 0; +/* background: magenta; */ +} +dl.simple, dl.compact, dl.simple > dd, dl.compact > dd { + margin-top: 0; + margin-bottom: 0; +/* background: lightgreen; */ +} + +/* space around paragraphs */ +dl > dd p:first-child { + margin: 0; +} + +/* Sidebar */ +/* ------- */ + +div.sidebar { + margin-right: -5%; +} + +/* Special definition lists */ +/* ======================== */ + +/* bold definition term on the same line as the label */ +dl.field-list > dt, dl.option-list > dt, dl.docinfo > dt, +dl.footnote > dt, dl.citation > dt, dl.description > dt { + clear: left; + float: left; + margin: 0; + padding: 0; + padding-right: 0.5em; + font-weight: bold; +} +/* except for these */ +dl.option-list > dt, dl.footnote > dt { + font-weight: normal; +} + + + +/* Field Lists */ +/* ----------- */ + +/* field names followed by a colon */ +dl.field-list > dt:after, dl.docinfo > dt:after { + content: ":"; +} + +/* Offset for field content (corresponds to the --field-name-limit option) */ +dl.field-list > dd { + margin-left: 9em; /* ca. 14 chars in the test examples */ + padding-left: 0.5em; +} + +/* start field-body on a new line after long field names */ +dl.field-list > dd p { + width: 100%; +/* display: inline-block; */ +/* background: yellow; */ +} + +dl.field-list > dd > p:first-child, +/* dl.field-list > dd > ol:first-child, */ +/* dl.field-list > dd > ul:first-child, */ +dl.field-list > dd > dl:first-child { + display: inline-block; +} + +/* field-list variants:: */ + +/* example for custom field-name width */ +dl.field-list.narrow > dd { + margin-left: 5em; +} + +/* start field-body on same line after long field names */ +dl.field-list.run-in > dd p { + display: block; +} + +/* wrap or truncate long field names */ +dl.field-list.fix-labelwidth > dt { + width: 8em; /* set to dl.field-list > dd margin-left - padding-left */ + overflow: hidden; +} +dl.field-list.fix-labelwidth > dd:after { + /* a "stopper" to prevent next dd floating up too far */ + content: ''; + display: block; + clear: left; +} + +/* docinfo */ + +dl.docinfo > dd { + margin-left: 8em; +/* margin-bottom: 0.5em; */ +} + + +/* option list */ + +dl.option-list { + margin-left: 1em; + padding-left: 0; +} + +dl.option-list > dd { + margin-left: 8em; + /* margin-bottom: 0.5em; */ +} + +/* start description on a new line after long options */ +dl.option-list > dd p { + width: 100%; + display: inline-block; +} + +/* footnotes */ + +a.footnote-reference, a.fn-backref { + text-decoration: inherit; /* do not underline footnote links */ +} + +dl.footnote { + /* line on the left */ + padding-left: 1ex; + border-left: solid; + border-left-width: thin; + /* border-color: black; */ +} + +/* paragraph on same line as backrefs */ +dd > em { +/* background: green; */ + float: left; + margin-right: 1ex +} + + +/* +Ordered List (Enumeration) +-------------------------- + +Use counters to replace the deprecated start attribute. Make sure the +resulting list resembles the list-style 'outside' with a hanging indent. +*/ + +/* New ordered list: reset counter, suppress the default label */ +ol { + counter-reset: item; + list-style-type: none ! important; +} + +/* Set the negative indent of the list label as feature of the list item */ +ol > li { + text-indent: -40px; /* Mozillas default indent */ +} +/* reset for child elements */ +ol > li > * { + text-indent: 0px; + text-indent: 0; + margin-top: 0; + /* background: lightgreen; */ +} + +/* Label */ +ol > li:before { + /* increment and typeset counter(s), */ + counter-increment: item; + content: counter(item) "."; + /* display next to the content (aligned top-right), */ + display: inline-block; + text-align: right; + vertical-align: top; + /* sum must match ol>li {text-indent:} (40px is Mozillas default) */ + width: 35px; + padding-right: 5px; +/* background: yellow; */ +} + +/* The list item's first line starts next to the label, without indent */ +ol > li > p:first-child, +ol > li > ol:first-child, +ol > li > ul:first-child, +ol > li > dl:first-child { + display: inline-block; + /* background: lightblue; */ +} + +/* default separator variants */ +ol.loweralpha > li:before { + content: counter(item, lower-alpha) ")"; +} +ol.upperalpha > li:before { + content: counter(item, upper-alpha) "."; +} +ol.lowerroman > li:before { + content: "(" counter(item, lower-roman) ")"; +} +ol.upperroman > li:before { + content: counter(item, upper-roman) ")"; +} +/* nested counters (1, 1.1, 1.1.1, etc) */ +/* nested enumerated lists "inherit" the class attribute, other lists not */ +ol.nested > li:before, ol.nested ol > li:before { + content: counters(item, ".") " "; +} + +/* TODO: prefix, suffix? */ + +/* smaller font for super- and subscripts */ +/* sub, sup {font-size: 70%;} */ /* Mozilla default is `smaller` */ + + +/* Tables */ +/* ====== */ + +/* margins and borders for "normal" tables */ +table { + margin-top: 0.5em ; + margin-bottom: 0.5em; + border-style: outset; + border-width: thin; + /* border-collapse: collapse; */ +} +blockquote > table { + margin-top: 0em ; + margin-bottom: 0em; +} + +td, th { + border-style: inset; + border-width: thin; + /* text-align: left; */ + padding: 0 1ex; +} + +td > p:first-child, th > p:first-child { + margin-top: 0; +} +td > p, th > p { + margin-bottom: 0; +} + +/* no borders for "borderless" tables */ +table.borderless, table.borderless * { + border-style: none; +} + +/* "booktabs" style (no vertical lines) */ +table.booktabs { + border: 0; + border-top: 2px solid; + border-bottom: 2px solid; + border-collapse: collapse; +} + +table.booktabs * { + border: 0; +} +table.booktabs th { + border-bottom: thin solid; +} + +table > caption { + text-align: left; +/* padding: 2em 0 1em 0; */ +} + +/* numbered tables*/ +table.numbered > caption:before { + counter-increment: table; /* defined/re-set in body */ + content: "Table " counter(table) ": "; + font-weight: bold; +} + + +/* literal text + ------------ +*/ +/* whitespace and wrapping in inline literals */ +/* possible values: normal, nowrap, pre, pre-wrap, pre-line */ +tt.literal { + white-space: pre-wrap; +} + +/* /* compensate for initial line-break (which is literal with XHTML 1.1) */ */ +/* pre.literal-block, pre.doctest-block { */ +/* margin-top: 0em ; */ +/* } */ + +/* Table of Contents */ + +/* don't indent like a topic */ +div.topic.contents { + margin: 0; +} +/* div.topic.contents ul { */ +/* list-style: none; */ +/* } */ + +div.topic.contents a { + text-decoration: none; /* no underline for links */ +} + +/* section numbers */ + +span.sectnum { + padding-right: 1ex; +} + +/* admonitions */ + +/* no padding for top and bottom */ +div.admonition, div.attention, div.caution, div.danger, div.error, +div.hint, div.important, div.note, div.tip, div.warning { + padding: 0px 1em } + +</style> +<style type="text/css"> + +/* Stylesheet for isomath documentation +:Copyright: 2008 G. Milde + This stylesheet is released under the GPL v. 2 +*/ + +dl.docutils dt { font-weight: bold; } + +/* docinfo */ + +dl.docinfo > dt { display: none; } +dl.docinfo > dd { + margin-left: 0; + padding: 0 5%; +} +dl.docinfo > dt.author + dd { + font-size: larger; + text-align: center; + padding-bottom: 1em; +} +dt.date { + display: none; +} +dt.date + dd { + font-weight: bold; + text-align: center; + padding-bottom: 1em; +} + +div.abstract { + padding: 0 5%; +} + +a.reference.internal { + text-decoration: none; + color: darkblue; +} + +a.reference.external { + text-decoration: underline; +} + +/* a.reference.external:after { */ +/* content: "⎘"; */ +/* font-size: x-small; */ +/* vertical-align: super; */ +/* } */ + +dl.footnote > dd { + margin-left: 1.2em; +} +dl.footnote > dt { + font-size: small; + vertical-align: super; +} + +a.footnote-reference > sup { + font-size: small; + vertical-align: super; + } + +td, th { + padding-bottom: 0.1ex; + padding-top: 0.1ex; +} + +/* no borders for "borderless" tables */ +table.booktabs.borderless, table.booktabs.borderless * { + border-style: none; +} + +</style> +</head> +<body> +<div class="document" id="isomath-math-for-scientists"> +<h1 class="title">isomath: Math for scientists</h1> + +<dl class="docinfo simple"> +<dt class="author">Author</dt> +<dd class="author">Günter Milde</dd> +<dt class="date">Date</dt> +<dd class="date">2011-01-14</dd> +<dt class="copyright">Copyright</dt> +<dd class="copyright">© 2008, 2011 Günter Milde</dd> +<dt>Licence</dt> +<dd><p>This work may be distributed and/or modified under the +conditions of the <a class="reference external" href="http://www.latex-project.org/lppl.txt">LaTeX Project Public License</a>, either +version 1.3 of this license or (at your option) any later version.</p> +</dd> +</dl> +<div class="abstract topic"> +<p class="topic-title first">Abstract</p> +<p>The <cite>isomath</cite> package sets up an “ISO math style” allowing the +use of Greek and Latin letters as symbols for scalars, +vectors, matrices, and tensors in the typefaces recommended +for scientific papers by the International Standard +ISO 80000-2.</p> +</div> +<!-- -*- rst-mode -*- --> +<div class="contents topic" id="contents"> +<p class="topic-title first">Contents</p> +<ul class="auto-toc simple"> +<li><p><a class="reference internal" href="#features" id="id30"><span class="sectnum">1</span> Features</a></p> +<ul class="auto-toc"> +<li><p><a class="reference internal" href="#iso-math-style" id="id31"><span class="sectnum">1.1</span> ISO math style</a></p></li> +<li><p><a class="reference internal" href="#new-math-alphabets" id="id32"><span class="sectnum">1.2</span> New math alphabets</a></p></li> +<li><p><a class="reference internal" href="#semantic-markup" id="id33"><span class="sectnum">1.3</span> Semantic markup</a></p></li> +</ul> +</li> +<li><p><a class="reference internal" href="#usage" id="id34"><span class="sectnum">2</span> Usage</a></p> +<ul class="auto-toc"> +<li><p><a class="reference internal" href="#options" id="id35"><span class="sectnum">2.1</span> Options</a></p> +<ul class="auto-toc"> +<li><p><a class="reference internal" href="#rmdefault" id="id36"><span class="sectnum">2.1.1</span> rmdefault</a></p></li> +<li><p><a class="reference internal" href="#sfdefault" id="id37"><span class="sectnum">2.1.2</span> sfdefault</a></p></li> +<li><p><a class="reference internal" href="#scaled" id="id38"><span class="sectnum">2.1.3</span> scaled</a></p></li> +<li><p><a class="reference internal" href="#reusemathalphabets" id="id39"><span class="sectnum">2.1.4</span> reuseMathAlphabets</a></p></li> +<li><p><a class="reference internal" href="#omlmathrm-omlmathbf-omlmathsf-omlmathsfit-omlmathtt" id="id40"><span class="sectnum">2.1.5</span> OMLmathrm, OMLmathbf, OMLmathsf, OMLmathsfit, OMLmathtt</a></p></li> +</ul> +</li> +<li><p><a class="reference internal" href="#examples" id="id41"><span class="sectnum">2.2</span> Examples</a></p> +<ul class="auto-toc"> +<li><p><a class="reference internal" href="#how-to-get-upright-small-greek-letters" id="id42"><span class="sectnum">2.2.1</span> How to get upright small Greek letters</a></p></li> +</ul> +</li> +</ul> +</li> +<li><p><a class="reference internal" href="#related-packages" id="id43"><span class="sectnum">3</span> Related packages</a></p> +<ul class="auto-toc"> +<li><p><a class="reference internal" href="#requirements" id="id44"><span class="sectnum">3.1</span> Requirements</a></p></li> +<li><p><a class="reference internal" href="#recommendations" id="id45"><span class="sectnum">3.2</span> Recommendations</a></p></li> +<li><p><a class="reference internal" href="#alternatives" id="id46"><span class="sectnum">3.3</span> Alternatives</a></p></li> +<li><p><a class="reference internal" href="#conflicts" id="id47"><span class="sectnum">3.4</span> Conflicts</a></p></li> +</ul> +</li> +<li><p><a class="reference internal" href="#background" id="id48"><span class="sectnum">4</span> Background</a></p> +<ul class="auto-toc"> +<li><p><a class="reference internal" href="#math-font-selection" id="id49"><span class="sectnum">4.1</span> Math font selection</a></p> +<ul class="auto-toc"> +<li><p><a class="reference internal" href="#math-alphabets" id="id50"><span class="sectnum">4.1.1</span> Math alphabets</a></p></li> +<li><p><a class="reference internal" href="#math-versions" id="id51"><span class="sectnum">4.1.2</span> Math versions</a></p></li> +<li><p><a class="reference internal" href="#math-styles" id="id52"><span class="sectnum">4.1.3</span> Math styles</a></p></li> +</ul> +</li> +<li><p><a class="reference internal" href="#math-letter-fonts" id="id53"><span class="sectnum">4.2</span> Math letter fonts</a></p> +<ul class="auto-toc"> +<li><p><a class="reference internal" href="#oml-font-encoding" id="id54"><span class="sectnum">4.2.1</span> OML font encoding</a></p></li> +<li><p><a class="reference internal" href="#oml-support" id="id55"><span class="sectnum">4.2.2</span> OML Support</a></p></li> +</ul> +</li> +<li><p><a class="reference internal" href="#unicode-mathematical-typesetting" id="id56"><span class="sectnum">4.3</span> Unicode mathematical typesetting</a></p> +<ul class="auto-toc"> +<li><p><a class="reference internal" href="#unicode-math-alphabets" id="id57"><span class="sectnum">4.3.1</span> Unicode math alphabets</a></p> +<ul class="auto-toc"> +<li><p><a class="reference internal" href="#naming-scheme" id="id58"><span class="sectnum">4.3.1.1</span> Naming scheme</a></p></li> +</ul> +</li> +<li><p><a class="reference internal" href="#the-unicode-math-package" id="id59"><span class="sectnum">4.3.2</span> The unicode-math package</a></p></li> +</ul> +</li> +<li><p><a class="reference internal" href="#conclusions-and-outlook" id="id60"><span class="sectnum">4.4</span> Conclusions and outlook</a></p></li> +</ul> +</li> +<li><p><a class="reference internal" href="#references" id="id61"><span class="sectnum">5</span> References</a></p></li> +</ul> +</div> +<div class="section" id="features"> +<h1><a class="toc-backref" href="#id30"><span class="sectnum">1</span> Features</a></h1> +<!-- How do you write the stress tensor ``$\sigma$`` in a +`sans-serif bold italic` typeface, as recommended by [typefaces]_? --> +<p>Leading international scientific organisations recommend math layout +rules in line with the International Standard <a class="citation-reference" href="#iso-80000-2" id="id1">[ISO-80000-2]</a> in their +style guides, e. g., <a class="citation-reference" href="#typefaces" id="id2">[typefaces]</a>, <a class="citation-reference" href="#checklist" id="id3">[checklist]</a>, <a class="citation-reference" href="#si" id="id4">[SI]</a>, <a class="citation-reference" href="#fonts-for-symbols" id="id5">[fonts_for_symbols]</a>, +<a class="citation-reference" href="#red-book" id="id6">[Red-Book]</a>, <a class="citation-reference" href="#green-book" id="id7">[Green-Book]</a>:</p> +<ul class="simple"> +<li><p>The overall rule is that symbols representing physical quantities +(or variables) are italic, but symbols representing units, or +labels, are roman.</p></li> +<li><p>Symbols for vectors are boldface italic, symbols for tensors are +sans-serif bold italic, and symbols for matrices are boldface +italic.</p></li> +<li><p>The above rules apply equally to letter symbols from both the Greek +and the Latin alphabet.</p></li> +</ul> +<p>The traditional TeX <a class="reference internal" href="#math-style">math style</a> deviates from this rules in some +points:</p> +<ul class="simple"> +<li><p>capital Greek letters default to upright shape,</p></li> +<li><p>small Greek letters are excluded from font changes with the <a class="reference internal" href="#math-alphabets">math +alphabets</a>.</p></li> +<li><p>The <tt class="literal">\vec</tt> command produces an arrow accent.</p></li> +</ul> +<p>The <cite>isomath</cite> package implements an <a class="reference internal" href="#iso-math-style">ISO math style</a> and provides +<a class="reference internal" href="#new-math-alphabets">new math alphabets</a> with bold italic and sans-serif bold italic +typeshape that can be used for vector and tensor symbols.</p> +<div class="section" id="iso-math-style"> +<span id="equal-treatment-of-latin-and-greek"></span><h2><a class="toc-backref" href="#id31"><span class="sectnum">1.1</span> ISO math style</a></h2> +<p>The required package <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/fixmath.html">fixmath</a> changes the default math layout to the +“ISO” <a class="reference internal" href="#math-style">math style</a>:</p> +<ul class="simple"> +<li><p>Uppercase Greek letters are typeset italic by default.</p></li> +<li><p>Both, Greek and Latin letters change shape if a different +<a class="reference internal" href="#math-alphabet">math alphabet</a> is used.</p></li> +</ul> +<p>However, fixmath works only for the Computer Modern font family. +With <cite>isomath</cite>,</p> +<ul class="simple"> +<li><p>the used math fonts are configurable (using the <a class="reference internal" href="#rmdefault">rmdefault</a> and +<a class="reference internal" href="#sfdefault">sfdefault</a> options), and</p></li> +<li><p>upright Greek letters can be made available through the common +<tt class="literal">\math*</tt> alphabets via the <a class="reference internal" href="#omlmath">OMLmath*</a> options if the +corresponding fonts support the <a class="reference internal" href="#oml-font-encoding">OML font encoding</a>.</p></li> +</ul> +<div class="caution"> +<p class="admonition-title">Caution!</p> +<p>Using Greek letters in standard <a class="reference internal" href="#math-alphabets">math alphabets</a>, e. g., +<tt class="literal"><span class="pre">\mathrm{\pi}</span></tt>, can lead to garbage, as the standard math +alphabets are usually taken from text fonts that have ligatures and +non-alpha symbols in place of the small Greek letters. +Do not use small Greek letters in the standard math alphabet commands +<tt class="literal">mathit</tt>, <tt class="literal">mathrm</tt>, <tt class="literal">mathbf</tt>, <tt class="literal">mathsf</tt>, and <tt class="literal">mathtt</tt> +unless you use the <a class="reference internal" href="#omlmath">OMLmath*</a> options.</p> +<p>Some packages provide alternative macros or options for upright +Greek letters (cf. <a class="reference internal" href="#table-6">Table 6</a>).</p> +</div> +</div> +<div class="section" id="new-math-alphabets"> +<h2><a class="toc-backref" href="#id32"><span class="sectnum">1.2</span> New math alphabets</a></h2> +<p><cite>Isomath</cite> defines three new <a class="reference internal" href="#math-alphabets">math alphabets</a>:</p> +<blockquote> +<table class="borderless booktabs numbered align-left"> +<colgroup> +<col width="21%" /> +<col width="31%" /> +<col width="47%" /> +</colgroup> +<tbody valign="top"> +<tr><td><p><tt class="literal">\mathbfit</tt></p></td> +<td><p>boldface italic</p></td> +<td><p>vector and matrix symbols</p></td> +</tr> +<tr><td><p><tt class="literal">\mathsfit</tt></p></td> +<td><p>sans-serif italic</p></td> +<td><p>optional (see OMLmath*_ options)</p></td> +</tr> +<tr><td><p><tt class="literal">\mathsfbfit</tt></p></td> +<td><p>sans-serif bold italic</p></td> +<td><p>tensor symbols</p></td> +</tr> +</tbody> +</table> +</blockquote> +<p>The <a class="reference internal" href="#rmdefault">rmdefault</a> and <a class="reference internal" href="#sfdefault">sfdefault</a> <a class="reference internal" href="#options">options</a> set the font family used for +these alphabets.</p> +<div class="caution"> +<p class="admonition-title">Caution!</p> +<p>Using the new math alphabets for numbers can result in <span class="target" id="upright-old-style-numbers">upright +old-style numbers</span> instead of italic ones, because some italic math +fonts (e. g., cmr, cmbr) have old-style numbers in place of italic +digits.</p> +</div> +<p>For compatibility with earlier versions and <a class="reference internal" href="#related-packages">related packages</a>, the +new math alphabets are also available under the aliases +<tt class="literal">\mathbold</tt>, <tt class="literal">\mathsans</tt>, and <tt class="literal">\mathboldsans</tt>.</p> +</div> +<div class="section" id="semantic-markup"> +<h2><a class="toc-backref" href="#id33"><span class="sectnum">1.3</span> Semantic markup</a></h2> +<p>The following commands set the argument in an ISO-conforming math alphabet:</p> +<blockquote> +<table class="borderless booktabs numbered align-left"> +<colgroup> +<col width="39%" /> +<col width="61%" /> +</colgroup> +<tbody valign="top"> +<tr><td><p><tt class="literal">\vectorsym, \matrixsym</tt></p></td> +<td><p>bold italic for Greek and Latin letters, +bold upright for numbers</p></td> +</tr> +<tr><td><p><tt class="literal">\tensorsym</tt></p></td> +<td><p>sans-serif bold italic</p></td> +</tr> +</tbody> +</table> +</blockquote> +</div> +</div> +<div class="section" id="usage"> +<h1><a class="toc-backref" href="#id34"><span class="sectnum">2</span> Usage</a></h1> +<p>Make sure that LaTeX can find <tt class="literal">isomath.sty</tt> and load it with +<tt class="literal">\usepackage</tt> (see also <a class="reference internal" href="#options">Options</a> and <a class="reference internal" href="#examples">Examples</a>).</p> +<div class="section" id="options"> +<h2><a class="toc-backref" href="#id35"><span class="sectnum">2.1</span> Options</a></h2> +<div class="section" id="rmdefault"> +<h3><a class="toc-backref" href="#id36"><span class="sectnum">2.1.1</span> rmdefault</a></h3> +<p>Family for serif math fonts (<tt class="literal">\mathrm</tt>, <tt class="literal">\mathbf</tt>, <tt class="literal">\mathit</tt>, +<tt class="literal">\mathbfit</tt>). The default is to use the corresponding text font +family (the value of <tt class="literal">\rmdefault</tt>). The font must be available in +<a class="reference internal" href="#oml-font-encoding">OML font encoding</a> (cf. <a class="reference internal" href="#table-3">Table 3</a>).</p> +</div> +<div class="section" id="sfdefault"> +<h3><a class="toc-backref" href="#id37"><span class="sectnum">2.1.2</span> sfdefault</a></h3> +<p>Family for sans-serif math fonts. The default is <tt class="literal">cmbr</tt> because many +sans-serif fonts define the Computer Roman font <cite>cmm</cite> as OML substitution +(see <a class="reference internal" href="#table-4">Table 4</a>).</p> +<p>There are only few sans serif fonts in <a class="reference internal" href="#oml-font-encoding">OML font encoding</a>:</p> +<table class="borderless booktabs numbered align-left"> +<colgroup> +<col width="14%" /> +<col width="15%" /> +<col width="71%" /> +</colgroup> +<thead valign="bottom"> +<tr><th class="head"><p>Name</p></th> +<th class="head"><p>Package</p></th> +<th class="head"><p>Comment</p></th> +</tr> +</thead> +<tbody valign="top"> +<tr><td><p><tt class="literal">cmbr</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/cmbright.html">cmbright</a></p></td> +<td><p><cite>Computer Modern Bright</cite>, bitmap, slightly lighter +than cmss (Type 1 fonts with <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/hfbright.html">hfbright</a>)</p></td> +</tr> +<tr><td><p><tt class="literal">fav</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/arev.html">arev</a></p></td> +<td><p><cite>Arev</cite> (<cite>Vera Sans</cite>) with math extension, +large x-height</p></td> +</tr> +<tr><td><p><tt class="literal">iwona</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/iwona.html">iwona</a></p></td> +<td><p>Humanistic Sans Serif, +some shapes very similar to roman</p></td> +</tr> +<tr><td><p><tt class="literal">hvm</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/hvmath.html">hvmath</a></p></td> +<td><p><cite>Helvetica Math</cite>, commercial, free bitmap version</p></td> +</tr> +<tr><td><p><tt class="literal">llcmss</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/lxfonts.html">lxfonts</a></p></td> +<td><p><cite>LX Fonts</cite>, very wide, eccentric, large x-height, +new in 2008</p></td> +</tr> +</tbody> +</table> +</div> +<div class="section" id="scaled"> +<h3><a class="toc-backref" href="#id38"><span class="sectnum">2.1.3</span> scaled</a></h3> +<p>To improve the chances of configuring a matching sans serif math font, +the fonts, <tt class="literal">fav</tt>, <tt class="literal">llcmss</tt>, and <tt class="literal">iwona</tt> can be scaled with the +<tt class="literal">scaled</tt> option (cf. <a class="reference internal" href="#examples">Examples</a>).</p> +</div> +<div class="section" id="reusemathalphabets"> +<h3><a class="toc-backref" href="#id39"><span class="sectnum">2.1.4</span> reuseMathAlphabets</a></h3> +<p>The definition of new math alphabets can lead to a “<a class="reference internal" href="#too-many-math-alphabets-used-in-version-normal">too many math +alphabets used in version normal</a>” error. As a workaround, this +option tells <cite>isomath</cite> to re-use the existing <tt class="literal">\mathbf</tt> and +<tt class="literal">\mathsf</tt> alphabets for italic bold and sans-serif bold.<a class="footnote-reference" href="#id9" id="id8"><sup>1</sup></a></p> +<dl class="footnote"><dt class="label"><a class="fn-backref" href="#id8">1</a></dt> +<dd id="id9"> +<p class="first last">To access the upright shapes, the corresponding <tt class="literal">\textbf</tt> and +<tt class="literal">\textsf</tt> commands might be used. However, this toggles the +math-mode off and might use a different font, so watch for +side-effects.</p> +</dd> +</dl> +</div> +<div class="section" id="omlmathrm-omlmathbf-omlmathsf-omlmathsfit-omlmathtt"> +<span id="omlmath"></span><h3><a class="toc-backref" href="#id40"><span class="sectnum">2.1.5</span> OMLmathrm, OMLmathbf, OMLmathsf, OMLmathsfit, OMLmathtt</a></h3> +<p>With Greek letters defined as <tt class="literal">\mathalpha</tt>, the letter fonts are +expected to be in <a class="reference internal" href="#oml-font-encoding">OML font encoding</a>. The predefined +<a class="reference internal" href="#math-alphabets">math alphabets</a>, however, use OT1 encoded text fonts. These fonts +have ligatures and accents in place of the small Greek letters. +The <tt class="literal">\mathsfit</tt> alphabet is not required for ISO conforming math.</p> +<p>The <tt class="literal">OMLmath*</tt> options bind the corresponding <tt class="literal">\math*</tt> command to an +OML-encoded font. +This enables use of small Greek letters in <a class="reference internal" href="#math-alphabet">math alphabet</a> commands, +e. g., <tt class="literal"><span class="pre">\mathrm{\pi}</span></tt> <em>if an OML encoded font is available</em>. +<a class="reference internal" href="#table-3">Table 3</a> lists font families supporting the OML encoding.</p> +<div class="caution"> +<p class="admonition-title">Caution!</p> +<p>If no matching OML encoded font is found, LaTeX's substitute +mechanism kicks in and selects a font with different font attributes +(for all letters, not only Greek). Currently, only the <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mathdesign.html">mathdesign</a> +package provides upright fonts in OML encoding. Many font packages +define an <em>italic</em> font as OML substitute for roman fonts.</p> +<p>With some packages, these options can result in a “<a class="reference internal" href="#too-many-math-alphabets-used-in-version-normal">too many math +alphabets used in version normal</a>” error.</p> +</div> +</div> +</div> +<div class="section" id="examples"> +<h2><a class="toc-backref" href="#id41"><span class="sectnum">2.2</span> Examples</a></h2> +<ul> +<li><p>Redefine the standard <tt class="literal">\vec</tt> command to set its argument in an +ISO-conforming math alphabet.:</p> +<pre class="literal-block">\usepackage{isomath} +\renewcommand{\vec}{\vectorsym} +</pre> +</li> +<li><p>Use scaled <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/arev.html">arev</a> fonts for the sans serif alphabets +(adapt the scaling factor to your needs):</p> +<pre class="literal-block">\usepackage[sfdefault=fav,scaled=0.875]{isomath} +</pre> +</li> +<li><p>Define the <tt class="literal">\mathsfit</tt> sans-serif italic math alphabet:</p> +<pre class="literal-block">\usepackage[OMLmathsfit]{isomath} +</pre> +</li> +<li><p>The <tt class="literal">\mathbfit</tt> and <tt class="literal">\mathsfbfit</tt> alphabets do not have a different +weight in the <tt class="literal">bold</tt> <a class="reference internal" href="#math-version">math version</a> because the number of LaTeX math +fonts providing <cite>extrabold</cite> or <cite>ultrabold</cite> series is negligible.</p> +<p>As a workaround, use the heavier <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/arev.html">arev</a> font, scaled to 0,875, in the +bold version of <tt class="literal">\mathsfbfit</tt>:</p> +<pre class="literal-block">\usepackage{isomath} +\DeclareFontShape{OML}{fav}{bx}{it}{<-> s * [0.875] zavmbi7m}{} +\SetMathAlphabet{\mathsfbfit}{bold}{OML}{fav}{bx}{it} +</pre> +</li> +</ul> +<p>See also the <tt class="literal"><span class="pre">isomath-test.tex</span></tt> test document.</p> +<div class="section" id="how-to-get-upright-small-greek-letters"> +<h3><a class="toc-backref" href="#id42"><span class="sectnum">2.2.1</span> How to get upright small Greek letters</a></h3> +<p>Of the following methods, only the first requires <cite>isomath</cite>:</p> +<ol class="loweralpha"> +<li><p>Use <cite>isomath</cite> and the <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mathdesign.html">mathdesign</a> package:</p> +<pre class="literal-block">\usepackage[utopia]{mathdesign} +\usepackage[OMLmathrm,OMLmathbf]{isomath} +</pre> +<p>Now, e. g., <tt class="literal"><span class="pre">\mathrm{\pi}</span></tt> and <tt class="literal"><span class="pre">\mathbf{\pi}</span></tt> work as +expected.</p> +</li> +<li><p>To get upright small Greek letters without affecting other fonts, +set the math alphabet manually to one of the three <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mathdesign.html">mathdesign</a> +fonts, e. g.:</p> +<pre class="literal-block">\SetMathAlphabet{\mathbf}{normal}{OML}{mdput}{b}{n} +</pre> +<p>(check if the letter shapes match with the rest of the document).</p> +</li> +<li><p>Use a package that provides macros for upright Greek letters +in math:</p> +<blockquote> +<table class="borderless booktabs numbered align-left"> +<colgroup> +<col width="26%" /> +<col width="74%" /> +</colgroup> +<tbody valign="top"> +<tr><td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/fourier.html">fourier</a></p></td> +<td><p><tt class="literal">\otheralpha ... \otherOmega</tt></p></td> +</tr> +<tr><td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/kpfonts.html">kpfonts</a></p></td> +<td><p><tt class="literal">\alphaup ... \Omegaup</tt></p></td> +</tr> +<tr><td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mathdesign.html">mathdesign</a></p></td> +<td><p><tt class="literal">\alphaup ... \Omegaup</tt></p></td> +</tr> +<tr><td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/upgreek.html">upgreek</a></p></td> +<td><p><tt class="literal">\upalpha ... \upOmega</tt></p></td> +</tr> +</tbody> +</table> +</blockquote> +</li> +<li><p>Use an upright text character (requires a matching LGR-encoded +Greek text font). The following lines redefine <tt class="literal">\pi</tt> to set +the mathematical constant pi upright:</p> +<pre class="literal-block">\usepackage[LGR,T1]{fontenc} +\usepackage[greek,british]{babel} +\usepackage{amsmath} +\let\mathpi\pi +\renewcommand{\pi}{\text{\textrm{\greektext p }}} +</pre> +</li> +</ol> +</div> +</div> +</div> +<div class="section" id="related-packages"> +<h1><a class="toc-backref" href="#id43"><span class="sectnum">3</span> Related packages</a></h1> +<div class="section" id="requirements"> +<h2><a class="toc-backref" href="#id44"><span class="sectnum">3.1</span> Requirements</a></h2> +<dl class="docutils"> +<dt><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/fixmath.html">fixmath</a></dt> +<dd><p>by Walter Schmidt defines Greek letters as alphabetic symbols.</p> +</dd> +<dt><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/kvoptions.html">kvoptions</a></dt> +<dd><p>by Heiko Oberdiek facilitates the setup of package options +and provides a key=value interface (based on <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/keyval.html">keyval</a>).</p> +</dd> +</dl> +</div> +<div class="section" id="recommendations"> +<h2><a class="toc-backref" href="#id45"><span class="sectnum">3.2</span> Recommendations</a></h2> +<dl class="docutils"> +<dt><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/cmbright.html">cmbright</a></dt> +<dd><p>by Walter Schmidt provides sans serif and sans-serif bold fonts +for the <tt class="literal">\mathsfit</tt> and <tt class="literal">\mathsfbfit</tt> alphabets that match +with Computer Modern and derivatives. Free Type 1 versions of the +fonts are provided by <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/hfbright.html">hfbright</a>.</p> +</dd> +<dt><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/arev.html">arev</a></dt> +<dd><p>by Stephen Hartke provides the not-so-light <cite>Arev</cite> sans serif font +with letters that are clearly distinguishable from the roman or +italic counterparts (important if used to distinguish vectors and +tensors).</p> +<p><cite>Arev</cite> has a large x-height. For many fonts, either small or capital +letters will not match in size.</p> +</dd> +</dl> +</div> +<div class="section" id="alternatives"> +<h2><a class="toc-backref" href="#id46"><span class="sectnum">3.3</span> Alternatives</a></h2> +<p>See <a class="reference internal" href="#table-2">Table 2</a> for other packages that implement the “ISO” <a class="reference internal" href="#math-style">math +style</a> and <a class="reference internal" href="#table-6">Table 6</a> for packages that provide bold italic +math fonts.</p> +<dl class="docutils"> +<dt><a class="reference internal" href="#in-line-math-versions">“In-line math versions”</a></dt> +<dd><p>can be used as ISO-conforming replacement for <tt class="literal">\vec</tt>:</p> +<ul class="simple"> +<li><p><tt class="literal">\boldsymbol</tt> from <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/amsbsy.html">amsbsy</a> (part of <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/amsmath.html">amsmath</a>, the +near-indispensable adjunct to serious mathematical typesetting in +LaTeX),</p></li> +<li><p><tt class="literal">\bm</tt> from the <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/bm.html">bm</a> package. Combining <cite>bm</cite> and <cite>isomath</cite> may +lead to the <a class="reference internal" href="#too-many-math-alphabets-used-in-version-normal">too many math alphabets used in version normal</a> error.</p></li> +</ul> +</dd> +<dt><tt class="literal">\text</tt></dt> +<dd><p>from <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/amsmath.html">amsmath</a> can be used to get, e. g., upright or sans-serif +bold italic Greek symbols from a text font into a formula (see +<a class="reference internal" href="#how-to-get-upright-small-greek-letters">How to get upright small Greek letters</a>).</p> +</dd> +<dt><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/unicode-math.html">unicode-math</a></dt> +<dd><p>for XeTeX and LuaTeX allows mathematical typesetting using OpenType +math fonts. It supports the “ISO” <a class="reference internal" href="#math-style">math style</a> and all mathematical +characters in the Unicode standard.</p> +<p>unicode-math cannot be used together with <cite>isomath</cite>. It can, however, +replace all of isomath's functionality. See the discussion of <a class="reference internal" href="#the-unicode-math-package">the +unicode-math package</a> below.</p> +</dd> +</dl> +</div> +<div class="section" id="conflicts"> +<h2><a class="toc-backref" href="#id47"><span class="sectnum">3.4</span> Conflicts</a></h2> +<dl class="docutils"> +<dt>“<span class="target" id="too-many-math-alphabets-used-in-version-normal">too many math alphabets used in version normal</span>”</dt> +<dd><p>This error occurs if the combination of packages tries to load more +than 16 fonts into the <tt class="literal">normal</tt> <a class="reference internal" href="#math-version">math version</a>.</p> +<p><cite>Isomath</cite> can reduce the number of math alphabet definitions with the +<a class="reference internal" href="#reusemathalphabets">reuseMathAlphabets</a> option (see there for side-effects).</p> +<p>Examples for problematic combinations:</p> +<ul class="simple"> +<li><p>The <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/kpfonts.html">kpfonts</a>, <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/pxfonts.html">pxfonts</a>, and <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/txfonts.html">txfonts</a> packages define many +additional math alphabets.</p></li> +<li><p>The <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/bm.html">bm</a> package normally allocates several symbol fonts for bold +and heavy fonts. Their number can be customized by defining +<tt class="literal">\bmmax</tt> and <tt class="literal">\hmmax</tt> before loading the package.</p></li> +</ul> +</dd> +<dt><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/fourier.html">fourier</a></dt> +<dd><p>provides upright and italic Greek letters, but uses non-standard +math font encodings. It cannot be used with <cite>isomath</cite>.</p> +<p>However, it is possible to use the non-alphanumeric symbols from +<a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/fourier.html">fourier</a> together with math alphabets from another package, e.g +<a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mathdesign.html">mathdesign</a>:</p> +<pre class="literal-block">\usepackage{fourier} +\usepackage[OMLmathbf,rmdefault=mdput, + sfdefault=arev,scaled=0.85]{isomath} +</pre> +</dd> +</dl> +</div> +</div> +<div class="section" id="background"> +<h1><a class="toc-backref" href="#id48"><span class="sectnum">4</span> Background</a></h1> +<p>This section discusses LaTeX <a class="reference internal" href="#math-font-selection">math font selection</a>, suitable +<a class="reference internal" href="#math-letter-fonts">math letter fonts</a> for the ISO math style, and the relation of LaTeX and +<a class="reference internal" href="#unicode-mathematical-typesetting">Unicode mathematical typesetting</a>.</p> +<div class="section" id="math-font-selection"> +<h2><a class="toc-backref" href="#id49"><span class="sectnum">4.1</span> Math font selection</a></h2> +<p>There are three complementary methods to set font attributes in LaTeX +math mode: <cite>LaTeX 2e font selection</cite> <a class="citation-reference" href="#fntguide" id="id10">[fntguide]</a> describes <a class="reference internal" href="#math-alphabets">math +alphabets</a> and <a class="reference internal" href="#math-versions">math versions</a>, several extension packages +provide alternative <a class="reference internal" href="#math-styles">math styles</a> (cf. <a class="reference internal" href="#table-2">Table 2</a>).</p> +<div class="section" id="math-alphabets"> +<span id="math-alphabet"></span><h3><a class="toc-backref" href="#id50"><span class="sectnum">4.1.1</span> Math alphabets</a></h3> +<p>Math alphabets are a counterpart to the <a class="reference internal" href="#mathematical-alphanumeric-symbols">mathematical alphanumeric +symbols</a> block in Unicode. Both are “to be used for mathematical +variables where style variations are important semantically”. +The font guide <a class="citation-reference" href="#fntguide" id="id11">[fntguide]</a> defines in +section 3:</p> +<blockquote> +<p>Some math fonts are selected explicitly by one-argument commands +such as <tt class="literal">\mathsf{max}</tt> or <tt class="literal">\mathbf{vec}</tt>; such fonts are called +<em>math alphabets</em>.</p> +<p>Math fonts [...] have the same five attributes as text fonts: +encoding, family, series, shape and size. However, there are no +commands that allow the attributes to be individually changed. +Instead, the conversion from math fonts to these five attributes is +controlled by the <a class="reference internal" href="#math-version">math version</a>.</p> +<p>The <span class="target" id="predefined-math-alphabets">predefined math alphabets</span> are:</p> +<blockquote> +<table class="borderless booktabs numbered align-left"> +<colgroup> +<col width="43%" /> +<col width="58%" /> +</colgroup> +<tbody valign="top"> +<tr><td><p><tt class="literal">\mathnormal</tt></p></td> +<td><p>default<a class="footnote-reference" href="#mathnormal" id="id12"><sup>2</sup></a></p></td> +</tr> +<tr><td><p><tt class="literal">\mathrm</tt></p></td> +<td><p>roman<a class="footnote-reference" href="#roman" id="id13"><sup>3</sup></a></p></td> +</tr> +<tr><td><p><tt class="literal">\mathbf</tt></p></td> +<td><p>bold roman</p></td> +</tr> +<tr><td><p><tt class="literal">\mathsf</tt></p></td> +<td><p>sans serif</p></td> +</tr> +<tr><td><p><tt class="literal">\mathit</tt></p></td> +<td><p>text italic</p></td> +</tr> +<tr><td><p><tt class="literal">\mathtt</tt></p></td> +<td><p>typewriter</p></td> +</tr> +<tr><td><p><tt class="literal">\mathcal</tt></p></td> +<td><p>calligraphic</p></td> +</tr> +</tbody> +</table> +</blockquote> +</blockquote> +<dl class="footnote"><dt class="label"><a class="fn-backref" href="#id12">2</a></dt> +<dd id="mathnormal"> +<p class="first last"><tt class="literal">\mathnormal</tt> is used by default for alphanumeric +characters in math mode. It sets the letter shape according to +character class and <a class="reference internal" href="#math-style">math style</a>. (<a class="reference internal" href="#table-1">Table 1</a> shows the default +letter shapes for common math styles).</p> +</dd> +<dt class="label"><a class="fn-backref" href="#id13">3</a></dt> +<dd id="roman"> +<p class="first last">The specifier “roman” is ambiguous: roman shape +stands for <em>upright</em>, while roman type stands for <em>serif</em> (as +opposed to sans serif).</p> +</dd> +</dl> +<p>Many packages define additional math alphabets (cf. <a class="reference internal" href="#table-6">Table 6</a>).</p> +<p>In contrast to the similar named text commands, math alphabets are +<em>not</em> orthogonal, e. g., the code <tt class="literal"><span class="pre">$\mathit{\mathbf{a}}$</span></tt> sets the +letter <tt class="literal">a</tt> in <strong>upright</strong> bold type.</p> +</div> +<div class="section" id="math-versions"> +<span id="math-version"></span><h3><a class="toc-backref" href="#id51"><span class="sectnum">4.1.2</span> Math versions</a></h3> +<p>The number of mathematical symbols exceeds the maximal number of +characters in a TeX font file by an order of magnitude.<a class="footnote-reference" href="#max" id="id14"><sup>4</sup></a> +Grouping math fonts with common characteristics in math versions +simplifies the setting of font attributes for mathematical expressions.</p> +<p><em>Math versions</em> set up “math symbol fonts” for non-alphanumeric +symbols and bind the <a class="reference internal" href="#math-alphabet">math alphabet</a> commands to fonts using default +values for non-specified font attributes. TeX limits the number of +(symbol + alphanumeric) fonts per math version to 16.</p> +<p>The predefined math versions are <tt class="literal">normal</tt> and <tt class="literal">bold</tt> with the +defaults:</p> +<blockquote> +<table class="borderless booktabs numbered align-left"> +<colgroup> +<col width="31%" /> +<col width="38%" /> +<col width="31%" /> +</colgroup> +<tbody valign="top"> +<tr><td><!-- --> +</td> +<td><p><tt class="literal">normal</tt></p></td> +<td><p><tt class="literal">bold</tt></p></td> +</tr> +<tr><td><p><em>type</em></p></td> +<td><p>serif</p></td> +<td><p>serif</p></td> +</tr> +<tr><td><p><em>weight</em></p></td> +<td><p>medium</p></td> +<td><p>bold</p></td> +</tr> +<tr><td><p><em>shape</em></p></td> +<td><p>upright</p></td> +<td><p>upright</p></td> +</tr> +</tbody> +</table> +</blockquote> +<p>Packages can define additional math versions, e. g., the <a class="reference external" href="http://phong.informatik.uni-leipzig.de/~kuska/wri_texmf_4.2.zip">wrisym</a> package +defines a <tt class="literal">mono</tt> math version. A <tt class="literal">sans</tt> math version example is +available from a <a class="reference external" href="http://newsgroups.derkeiler.com/Archive/Comp/comp.text.tex/2007-09/msg00181.html">comp.text.tex post</a></p> +<p>Math versions are intended for mathematical content in a special +context, e. g., a bold section heading. +Setting a math version resembles the individual selection of text +font attributes (bold, sans-serif, monospaced).</p> +<p>Math versions can only be changed outside of math mode. The commands +<tt class="literal">\boldsymbol</tt> (<a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/amsmath.html">amsmath</a>) and <tt class="literal">\bm</tt> (<a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/bm.html">bm</a>) behave like <span class="target" id="in-line-math-versions">“in-line +math versions”</span>: they typeset their argument using the fonts of the +<tt class="literal">bold</tt> math version but can be used inside math mode.</p> +<p>Example: four ways to set the letter <tt class="literal">a</tt> in a bold +sans-serif font:</p> +<pre class="literal-block">% Text Math: +\textbf{\textsf{a}} $\bm{\mathsf{a}}$ +\bfseries \textsf{a} \mathversion{bold} $\mathsf{a}$ +</pre> +<dl class="footnote"><dt class="label"><a class="fn-backref" href="#id14">4</a></dt> +<dd id="max"> +<p class="first last">Unicode provides about 2500 math characters. Font files used +by 8-bit TeX engines can hold up to 256 characters. The standard +math fonts adhere to the original limit of 128 characters.</p> +</dd> +</dl> +</div> +<div class="section" id="math-styles"> +<span id="math-style"></span><h3><a class="toc-backref" href="#id52"><span class="sectnum">4.1.3</span> Math styles</a></h3> +<p>A <em>math style</em> is a document-level feature that determines the default +letter shape in math mode (i. e. the shape attribute of letters in the +<tt class="literal">\mathnormal</tt> <a class="reference internal" href="#math-alphabet">math alphabet</a>).</p> +<table class="booktabs numbered align-left" id="table-1"> +<caption>Default letter shapes for common math styles</caption> +<colgroup> +<col width="30%" /> +<col width="18%" /> +<col width="18%" /> +<col width="18%" /> +<col width="18%" /> +</colgroup> +<thead valign="bottom"> +<tr><th class="head"><p>math style</p></th> +<th class="head"><p>latin</p></th> +<th class="head"><p>Latin</p></th> +<th class="head"><p>greek</p></th> +<th class="head"><p>Greek</p></th> +</tr> +</thead> +<tbody valign="top"> +<tr><td><p>TeX</p></td> +<td><p>it</p></td> +<td><p>it</p></td> +<td><p>it</p></td> +<td><p>up</p></td> +</tr> +<tr><td><p>ISO</p></td> +<td><p>it</p></td> +<td><p>it</p></td> +<td><p>it</p></td> +<td><p>it</p></td> +</tr> +<tr><td><p>French</p></td> +<td><p>it</p></td> +<td><p>up</p></td> +<td><p>up</p></td> +<td><p>up</p></td> +</tr> +<tr><td><p>upright</p></td> +<td><p>up</p></td> +<td><p>up</p></td> +<td><p>up</p></td> +<td><p>up</p></td> +</tr> +</tbody> +</table> +<p>LaTeX defaults to the “TeX” math style (without naming it such). +Alternative math styles are introduced by extension packages +(<a class="reference internal" href="#table-2">Table 2</a>).</p> +<table class="booktabs numbered align-left" id="table-2"> +<caption>Packages providing math styles</caption> +<colgroup> +<col width="18%" /> +<col width="20%" /> +<col width="62%" /> +</colgroup> +<thead valign="bottom"> +<tr><th class="head"><p>math style</p></th> +<th class="head"><p>Package</p></th> +<th class="head"><p>Option(s)</p></th> +</tr> +</thead> +<tbody valign="top"> +<tr><td><p>ISO</p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/fixmath.html">fixmath</a></p></td> +<td> </td> +</tr> +<tr><td><!-- --> +</td> +<td><p>isomath</p></td> +<td> </td> +</tr> +<tr><td><!-- --> +</td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/kpfonts.html">kpfonts</a></p></td> +<td><p>slantedGreeks</p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><a class="reference external" href="http://pctex.com/files/managed/b/bf/lucimatxAbbrev.pdf">lucimatx</a></p></td> +<td><p>math-style=iso</p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mathdesign.html">mathdesign</a></p></td> +<td><p>greekuppercase=italicized</p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mathpazo.html">mathpazo</a></p></td> +<td><p>slantedGreek</p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mathptmx.html">mathptmx</a></p></td> +<td><p>slantedGreek</p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/unicode-math.html">unicode-math</a></p></td> +<td><p>math-style=ISO</p></td> +</tr> +<tr><td><p>French</p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/fourier.html">fourier</a></p></td> +<td><p>upright</p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/kpfonts.html">kpfonts</a></p></td> +<td><p>frenchstyle (or upright)</p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><a class="reference external" href="http://pctex.com/files/managed/b/bf/lucimatxAbbrev.pdf">lucimatx</a></p></td> +<td><p>math-style=french</p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mathdesign.html">mathdesign</a></p></td> +<td><p>uppercase=upright, greeklowercase=upright</p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/unicode-math.html">unicode-math</a></p></td> +<td><p>math-style=french</p></td> +</tr> +<tr><td><p>upright</p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/eulervm.html">eulervm</a></p></td> +<td> </td> +</tr> +<tr><td><!-- --> +</td> +<td><p><a class="reference external" href="http://pctex.com/files/managed/b/bf/lucimatxAbbrev.pdf">lucimatx</a></p></td> +<td><p>math-style=upright</p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/unicode-math.html">unicode-math</a></p></td> +<td><p>math-style=upright</p></td> +</tr> +</tbody> +</table> +</div> +</div> +<div class="section" id="math-letter-fonts"> +<h2><a class="toc-backref" href="#id53"><span class="sectnum">4.2</span> Math letter fonts</a></h2> +<p>The equal treatment of Latin and Greek letters in the <a class="reference internal" href="#iso-math-style">ISO math +style</a> is simplest achieved with a font that contains all required +letters in one file.</p> +<p>There is only one established LaTeX font encoding that contains Latin and +Greek letters, the <a class="reference internal" href="#oml-font-encoding">OML font encoding</a>. The standard Greek font +encoding <cite>T7</cite> is just a “reserved name” and the de-facto standard +Greek text font encoding <cite>LGR</cite> has no Latin letters. Unfortunately, +<a class="reference internal" href="#oml-support">OML support</a> is limited to a few (mostly italic) fonts.</p> +<div class="section" id="oml-font-encoding"> +<h3><a class="toc-backref" href="#id54"><span class="sectnum">4.2.1</span> OML font encoding</a></h3> +<p>The <cite>LaTeX font encodings</cite> guide <a class="citation-reference" href="#encguide" id="id15">[encguide]</a> names the OML encoding +<cite>TeX math italic</cite> and defines:</p> +<blockquote> +<p>The <span class="target" id="oml">OML</span> encoding contains italic Latin and Greek letters for use in +mathematical formulas (typically used for variables) together with some +symbols.</p> +</blockquote> +<p>The reference to <em>italic</em> shape is odd:</p> +<ul class="simple"> +<li><p>No other font encoding is specific to the font shape.</p></li> +<li><p>The different font selection and the semantic of font features in +math do not interfere with the font <em>encoding</em>: Both, +<tt class="literal">\DeclareSymbolFont</tt> and <tt class="literal">\DeclareMathAlphabet</tt> require a +shape argument. Thus it is possible to set up OML encoded math +alphabets in roman {n} as well as italic {it} shape without +conflicts.</p></li> +</ul> +<p>This seems to be more a remnant of pre-NFSS times than a necessary +restriction – there is only one OML encoded font in Knuth's Computer +Modern fonts: <cite>Computer Modern Math Italic</cite> (cmmi).</p> +<p>Proposals:</p> +<ul> +<li><p>Drop the <em>italic</em> from the definition. Optionally add an explanation:</p> +<blockquote> +<p>The OML encoding contains Latin and Greek letters for use in +mathematical formulas (typically used for variables) together with +some symbols. It first appeared in the <cite>Computer Modern Math +Italic</cite> (cmmi) font.</p> +</blockquote> +</li> +<li><p>The name <cite>TeX math italic</cite> can be interpreted as “the encoding +<strong>of</strong> <cite>Computer Modern Math Italic</cite>” rather than “an encoding +<strong>for</strong> math italic” fonts.</p> +<p>A less confusing name would be <cite>TeX math letters</cite> or <cite>Original/Old +Math Letters</cite>. The latter would also explain the acronym OML.</p> +</li> +</ul> +</div> +<div class="section" id="oml-support"> +<h3><a class="toc-backref" href="#id55"><span class="sectnum">4.2.2</span> OML Support</a></h3> +<p>Unfortunately, support for the OML encoding is missing for many font +families even if the text font defines Greek letters. +Supported font families can be found searching for <tt class="literal"><span class="pre">oml*.fd</span></tt> files +and grepping for <tt class="literal"><span class="pre">DeclareFont.*OML</span></tt> in <tt class="literal">*.sty</tt> files.</p> +<p><a class="reference internal" href="#table-3">Table 3</a> lists the findings for a selection of TeXLive 2009 + some +additionally installed font packages.</p> +<ul class="simple"> +<li><p>If there is an alias (substitution) from the text font to a +math-variant, only the text font is listed.</p></li> +<li><p>Many text fonts define substitutions also for upright shape, +however mapping to an italic variant of the OML encoded font. These +are not listed as supporting <tt class="literal">m/n</tt> or <tt class="literal">bx/n</tt> here.</p></li> +</ul> +<table class="booktabs numbered align-left" id="table-3"> +<caption>Font families supporting the OML encoding</caption> +<colgroup> +<col width="19%" /> +<col width="40%" /> +<col width="10%" /> +<col width="12%" /> +<col width="9%" /> +<col width="10%" /> +</colgroup> +<thead valign="bottom"> +<tr><th class="head"><p>Name</p></th> +<th class="head"><p>Family</p></th> +<th class="head"><p>m/it</p></th> +<th class="head"><p>bx/it</p></th> +<th class="head"><p>m/n</p></th> +<th class="head"><p>bx/n</p></th> +</tr> +</thead> +<tbody valign="top"> +<tr><td><p>aer</p></td> +<td><p>AE (Almost European)</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>antt</p></td> +<td><p>Antykwa Torunska</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>cmr</p></td> +<td><p>Computer Modern Roman</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>ccr</p></td> +<td><p>Concrete</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>cmbr</p></td> +<td><p>Computer Modern Bright</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>hlh</p></td> +<td><p>Lucida</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>hfor</p></td> +<td><p>CM with old-style digits</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>iwona</p></td> +<td><p>Iwona (sans serif)</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>jkp</p></td> +<td><p>Kepler Serif</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>jkpl</p></td> +<td><p>Kepler Serif</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>jkpvos</p></td> +<td><p>Kepler Serif</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>jkplvos</p></td> +<td><p>Kepler Serif</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>llcmm</p></td> +<td><p>LX Fonts (sans serif)</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>lmr</p></td> +<td><p>Latin Modern Roman</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>mak</p></td> +<td><p>Kerkis</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>kurier</p></td> +<td><p>Kurier</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>mdbch</p></td> +<td><p>Math Design Charter</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +</tr> +<tr><td><p>mdput</p></td> +<td><p>Math Design Utopia</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +</tr> +<tr><td><p>mdugm</p></td> +<td><p>Math Design Garamond</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +</tr> +<tr><td><p>neohellenic</p></td> +<td><p>GFS Neohellenic</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>plcm</p></td> +<td><p>CM (PLaTeX)</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>ptmom</p></td> +<td><p>Times (Omega or MB-Times)</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>ptmomu</p></td> +<td><p>Times (Omega or MB-Times)</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>ptmcm</p></td> +<td><p>Times (psfont)</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>pxr</p></td> +<td><p>Palatino (pxfonts)</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>qpl</p></td> +<td><p>Palatino/Pagella (qpxmath)</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>qtm</p></td> +<td><p>Times/Termes (qtxmath)</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>txr</p></td> +<td><p>Times (txfonts)</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>udidot</p></td> +<td><p>Didot (gfsdidot)</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>ywclm</p></td> +<td><p>(greektex)</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>zavm</p></td> +<td><p>Arev (Vera Sans-Serif)</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>zesfcm</p></td> +<td><p>(efont)</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>zplm</p></td> +<td><p>Palatino (mathpazo)</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>zpple</p></td> +<td><p>Palatino</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>ztmcm</p></td> +<td><p>Times (mathptmv)</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +<td> </td> +</tr> +<tr><td><p>zer</p></td> +<td><p>Computer Modern (zefonts)</p></td> +<td><p>✓</p></td> +<td><p>✓</p></td> +<td> </td> +<td> </td> +</tr> +</tbody> +</table> +<p><a class="reference internal" href="#table-4">Table 4</a> lists some fonts that define <tt class="literal">cmm</tt> as OML substitution. +With <cite>isomath</cite>, a better matching substitution can be set using the +<a class="reference internal" href="#rmdefault">rmdefault</a> or <a class="reference internal" href="#sfdefault">sfdefault</a> options.</p> +<table class="booktabs numbered align-left" id="table-4"> +<caption>Non-CM fonts with <tt class="literal">cmm</tt> as OML substitution</caption> +<colgroup> +<col width="30%" /> +<col width="70%" /> +</colgroup> +<thead valign="bottom"> +<tr><th class="head"><p>Family</p></th> +<th class="head"><p>Name</p></th> +</tr> +</thead> +<tbody valign="top"> +<tr><td><p>bch</p></td> +<td><p>Charter (psnfss)</p></td> +</tr> +<tr><td><p>pag</p></td> +<td><p>Avant Garde (psnfss)</p></td> +</tr> +<tr><td><p>pbk</p></td> +<td><p>Bookman (psnfss)</p></td> +</tr> +<tr><td><p>pcr</p></td> +<td><p>Courier (psnfss)</p></td> +</tr> +<tr><td><p>phv</p></td> +<td><p>Helvetica (psnfss)</p></td> +</tr> +<tr><td><p>pnc</p></td> +<td><p>New Century Schoolbook (psnfss)</p></td> +</tr> +<tr><td><p>ppl</p></td> +<td><p>Palatino (psnfss)</p></td> +</tr> +<tr><td><p>ptm</p></td> +<td><p>Times Roman (psnfss)</p></td> +</tr> +<tr><td><p>put</p></td> +<td><p>Utopia (psnfss)</p></td> +</tr> +<tr><td><p>pzc</p></td> +<td><p>Zapf Chancery (psnfss)</p></td> +</tr> +<tr><td><p>uag</p></td> +<td><p>Avant Garde (avantgar)</p></td> +</tr> +<tr><td><p>ubk</p></td> +<td><p>Bookman (bookman)</p></td> +</tr> +<tr><td><p>ucr</p></td> +<td><p>Courier (courier)</p></td> +</tr> +<tr><td><p>ucrs</p></td> +<td><p>Courier</p></td> +</tr> +<tr><td><p>unc</p></td> +<td><p>New Courier (nctrsbk)</p></td> +</tr> +<tr><td><p>uni</p></td> +<td><p>Universal (universa)</p></td> +</tr> +<tr><td><p>uhv</p></td> +<td><p>Helvetica (helvetic)</p></td> +</tr> +<tr><td><p>upl</p></td> +<td><p>Palatino (palatino)</p></td> +</tr> +<tr><td><p>utm</p></td> +<td><p>Times (times)</p></td> +</tr> +<tr><td><p>uzc</p></td> +<td><p>Zapf Chancery (zapfchan)</p></td> +</tr> +</tbody> +</table> +</div> +</div> +<div class="section" id="unicode-mathematical-typesetting"> +<h2><a class="toc-backref" href="#id56"><span class="sectnum">4.3</span> Unicode mathematical typesetting</a></h2> +<p>The technical report <a class="citation-reference" href="#tr25" id="id16">[tr25]</a> presents an in-depth discussion of the +mathematics character repertoire of the Unicode Standard as well as +mathematical notation in general.</p> +<p>This section compares <a class="reference internal" href="#math-font-selection">math font selection</a> in LaTeX and Unicode. +It suggests a set of 14 math alphabets that covers all Unicode +<a class="reference internal" href="#mathematical-alphanumeric-symbols">mathematical alphanumeric symbols</a> and discusses compatibility +issues between math typesetting with traditional (8-bit) TeX engines +versus <a class="reference internal" href="#the-unicode-math-package">the unicode-math package</a> for Unicode-enabled TeX engines +(XeTeX, LuaTeX).</p> +<div class="section" id="unicode-math-alphabets"> +<span id="mathematical-alphanumeric-symbols"></span><h3><a class="toc-backref" href="#id57"><span class="sectnum">4.3.1</span> Unicode math alphabets</a></h3> +<p>Chapter 2 <cite>Mathematical Character Repertoire</cite> of <a class="citation-reference" href="#tr25" id="id17">[tr25]</a> lists 14 +<cite>Mathematical Alphabets</cite> in Table 2.1. These mathematical alphabets are a +superset of the predefined <a class="reference internal" href="#math-alphabets">math alphabets</a> in the LaTeX core.</p> +<p>Unicode assignes code points to most letters of the mathematical +alphabets in the <a class="reference external" href="http://www.unicode.org/charts/PDF/U1D400.pdf">mathematical alphanumeric symbols Unicode block</a>. +The plain (upright, serifed) letters have been unified with the +existing characters in the Basic Latin and Greek blocks.</p> +<p><a class="reference internal" href="#table-5">Table 5</a> maps the 14 Unicode mathematical alphabets to LaTeX commands +according to the <a class="reference internal" href="#naming-scheme">naming scheme</a> below. <a class="reference internal" href="#table-6">Table 6</a> lists the status of +LaTeX support for the mathematical alphanumeric symbols. Full support is +provided by <a class="reference internal" href="#the-unicode-math-package">the unicode-math package</a>.</p> +<table class="booktabs numbered align-left" id="table-5"> +<caption>Mapping Unicode <a class="reference internal" href="#mathematical-alphanumeric-symbols">mathematical alphanumeric symbols</a> to LaTeX +math alphabets.</caption> +<colgroup> +<col width="16%" /> +<col width="13%" /> +<col width="20%" /> +<col width="28%" /> +<col width="23%" /> +</colgroup> +<thead valign="bottom"> +<tr><th class="head"><p>serifs</p></th> +<th class="head"><p>weight</p></th> +<th class="head"><p>shape</p></th> +<th class="head"><p>symbols</p></th> +<th class="head"><p>math alphabet</p></th> +</tr> +</thead> +<tbody valign="top"> +<tr><td><p><em>serif</em></p></td> +<td><p><em>medium</em></p></td> +<td><p><em>upright</em></p></td> +<td><p>Latin/Greek/digits<a class="footnote-reference" href="#up" id="id18"><sup>5</sup></a></p></td> +<td><p><tt class="literal">\mathrm</tt></p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p>bold</p></td> +<td> </td> +<td><p>Latin/Greek/digits</p></td> +<td><p><tt class="literal">\mathbf</tt></p></td> +</tr> +<tr><td><!-- --> +</td> +<td> </td> +<td><p>italic</p></td> +<td><p>Latin/Greek</p></td> +<td><p><tt class="literal">\mathit</tt></p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p>bold</p></td> +<td><p>italic</p></td> +<td><p>Latin/Greek</p></td> +<td><p><tt class="literal">\mathbfit</tt></p></td> +</tr> +<tr><td><!-- --> +</td> +<td> </td> +<td><p>script</p></td> +<td><p>Latin</p></td> +<td><p><tt class="literal">\mathcal</tt></p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p>bold</p></td> +<td><p>script</p></td> +<td><p>Latin</p></td> +<td><p><tt class="literal">\mathbfcal</tt></p></td> +</tr> +<tr><td><!-- --> +</td> +<td> </td> +<td><p>fraktur</p></td> +<td><p>Latin</p></td> +<td><p><tt class="literal">\mathfrak</tt></p></td> +</tr> +<tr><td><!-- --> +</td> +<td> </td> +<td><p>double-struck</p></td> +<td><p>Latin/digits</p></td> +<td><p><tt class="literal">\mathbb</tt></p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p>bold</p></td> +<td><p>fraktur</p></td> +<td><p>Latin</p></td> +<td><p><tt class="literal">\mathbffrak</tt></p></td> +</tr> +<tr><td><p>sans serif</p></td> +<td> </td> +<td> </td> +<td><p>Latin/digits</p></td> +<td><p><tt class="literal">\mathsf</tt></p></td> +</tr> +<tr><td><p>sans serif</p></td> +<td><p>bold</p></td> +<td> </td> +<td><p>Latin/Greek/digits</p></td> +<td><p><tt class="literal">\mathsfbf</tt></p></td> +</tr> +<tr><td><p>sans serif</p></td> +<td> </td> +<td><p>italic</p></td> +<td><p>Latin</p></td> +<td><p><tt class="literal">\mathsfit</tt></p></td> +</tr> +<tr><td><p>sans serif</p></td> +<td><p>bold</p></td> +<td><p>italic</p></td> +<td><p>Latin/Greek</p></td> +<td><p><tt class="literal">\mathsfbfit</tt></p></td> +</tr> +<tr><td><!-- --> +</td> +<td> </td> +<td><p>monospace</p></td> +<td><p>Latin/digits</p></td> +<td><p><tt class="literal">\mathtt</tt></p></td> +</tr> +</tbody> +</table> +<dl class="footnote"><dt class="label">5</dt> +<dd id="up"> +<em>(<a class="fn-backref" href="#id18">1</a>, <a class="fn-backref" href="#id19">2</a>)</em> <p class="last">plain standard characters outside the +<cite>mathematical alphanumeric symbols</cite> Unicode block.</p> +</dd> +</dl> +<div class="section" id="naming-scheme"> +<h4><a class="toc-backref" href="#id58"><span class="sectnum">4.3.1.1</span> Naming scheme</a></h4> +<p>The naming scheme is an extension of the predefined <a class="reference internal" href="#math-alphabet">math alphabet</a> +commands with the short-cuts</p> +<blockquote> +<table class="borderless booktabs numbered align-left"> +<colgroup> +<col width="14%" /> +<col width="86%" /> +</colgroup> +<tbody valign="top"> +<tr><td><p>bf</p></td> +<td><p>bold,</p></td> +</tr> +<tr><td><p>it</p></td> +<td><p>italic,</p></td> +</tr> +<tr><td><p>cal</p></td> +<td><p>script (calligraphic),</p></td> +</tr> +<tr><td><p>frak</p></td> +<td><p>fraktur,</p></td> +</tr> +<tr><td><p>bb</p></td> +<td><p>double-struck (blackboard bold),</p></td> +</tr> +<tr><td><p>sf</p></td> +<td><p>sans serif</p></td> +</tr> +</tbody> +</table> +</blockquote> +<p>combined to commands in the form <tt class="literal"><span class="pre">\math<type><weight><shape></span></tt>.</p> +<p>The <<em>type</em>>, <<em>weight</em>>, and <<em>shape</em>> specifiers are optional +(defaults depend on the <a class="reference internal" href="#math-version">math version</a>). Their order matches the +names of Unicode <a class="reference internal" href="#mathematical-alphanumeric-symbols">Mathematical Alphanumeric Symbols</a>.</p> +<p>Examples:</p> +<pre class="literal-block">\mathbf{d} % MATHEMATICAL BOLD SMALL D +\mathsfbfit{d} % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL D. +</pre> +<table class="booktabs numbered align-left" id="table-6"> +<caption>LaTeX support for <a class="reference internal" href="#mathematical-alphanumeric-symbols">mathematical alphanumeric symbols</a>.</caption> +<colgroup> +<col width="18%" /> +<col width="38%" /> +<col width="43%" /> +</colgroup> +<thead valign="bottom"> +<tr><th class="head"><p>style</p></th> +<th class="head"><p>math alphabet</p></th> +<th class="head"><p>package, comment</p></th> +</tr> +</thead> +<tbody valign="top"> +<tr><td><p>plain<a class="footnote-reference" href="#up" id="id19"><sup>5</sup></a></p></td> +<td><p><tt class="literal">\mathrm</tt></p></td> +<td><p>predefined<a class="footnote-reference" href="#no-g" id="id20"><sup>6</sup></a></p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><tt class="literal">\mathup</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/unicode-math.html">unicode-math</a></p></td> +</tr> +<tr><td><p>bf</p></td> +<td><p><tt class="literal">\mathbf</tt></p></td> +<td><p>predefined<a class="footnote-reference" href="#no-g" id="id21"><sup>6</sup></a></p></td> +</tr> +<tr><td><p>it</p></td> +<td><p><tt class="literal">\mathit</tt></p></td> +<td><p>predefined<a class="footnote-reference" href="#no-g" id="id22"><sup>6</sup></a></p></td> +</tr> +<tr><td><p>bf it</p></td> +<td><p><tt class="literal">\mathbfit</tt></p></td> +<td><p>isomath<a class="footnote-reference" href="#digits" id="id23"><sup>7</sup></a></p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><tt class="literal">\mathbold</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/fixmath.html">fixmath</a>, <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mathpazo.html">mathpazo</a>, +<a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mathptmx.html">mathptmx</a>, <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/tmmath.html">tmmath</a><a class="footnote-reference" href="#digits" id="id24"><sup>7</sup></a></p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><tt class="literal">\boldsymbol</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/amsmath.html">amsmath</a></p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><tt class="literal">\bm</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/bm.html">bm</a></p></td> +</tr> +<tr><td><p>cal</p></td> +<td><p><tt class="literal">\mathcal</tt></p></td> +<td><p>predefined<a class="footnote-reference" href="#script" id="id25"><sup>8</sup></a></p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><tt class="literal">\mathscr</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mathrsfs.html">mathrsfs</a>, <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/euscript.html">euscript</a>, +<a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mathdesign.html">mathdesign</a></p></td> +</tr> +<tr><td><p>bf cal</p></td> +<td><p><tt class="literal">\mathbfscr</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/unicode-math.html">unicode-math</a></p></td> +</tr> +<tr><td><p>frak</p></td> +<td><p><tt class="literal">\mathfrak</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/amssymb.html">amssymb</a>, <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/amsfonts.html">amsfonts</a>, <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/eufrak.html">eufrak</a></p></td> +</tr> +<tr><td><p>bf frak</p></td> +<td><p><tt class="literal">\mathbffrak</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/unicode-math.html">unicode-math</a></p></td> +</tr> +<tr><td><p>bb</p></td> +<td><p><tt class="literal">\mathbb</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/amssymb.html">amssymb</a>, <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/bbold.html">bbold</a>, +<a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mathbbol.html">mathbbol</a>, <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mbboard.html">mbboard</a>, +<a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mathpazo.html">mathpazo</a></p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><tt class="literal">\mathbbm</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/bbm.html">bbm</a></p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><tt class="literal">\mathds</tt></p></td> +<td><p>dsfont (<a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/doublestoke.html">doublestoke</a>)</p></td> +</tr> +<tr><td><p>sf</p></td> +<td><p><tt class="literal">\mathsf</tt></p></td> +<td><p>predefined<a class="footnote-reference" href="#no-g" id="id26"><sup>6</sup></a></p></td> +</tr> +<tr><td><p>sf bf</p></td> +<td><p><tt class="literal">\mathbfsfup</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/unicode-math.html">unicode-math</a></p></td> +</tr> +<tr><td><p>sf it</p></td> +<td><p><tt class="literal">\mathsfit</tt></p></td> +<td><p>isomath<a class="footnote-reference" href="#digits" id="id27"><sup>7</sup></a></p></td> +</tr> +<tr><td><p>sf bf it</p></td> +<td><p><tt class="literal">\mathsfbfit</tt></p></td> +<td><p>isomath<a class="footnote-reference" href="#digits" id="id28"><sup>7</sup></a></p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><tt class="literal">\mathbold</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/cmbright.html">cmbright</a>, <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/hvmath.html">hvmath</a></p></td> +</tr> +<tr><td><!-- --> +</td> +<td><p><tt class="literal">\mathbfsfit</tt></p></td> +<td><p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/unicode-math.html">unicode-math</a></p></td> +</tr> +<tr><td><p>tt</p></td> +<td><p><tt class="literal">\mathtt</tt></p></td> +<td><p>predefined<a class="footnote-reference" href="#no-g" id="id29"><sup>6</sup></a></p></td> +</tr> +</tbody> +</table> +<dl class="footnote"><dt class="label">6</dt> +<dd id="no-g"> +<em>(<a class="fn-backref" href="#id20">1</a>, <a class="fn-backref" href="#id21">2</a>, <a class="fn-backref" href="#id22">3</a>, <a class="fn-backref" href="#id26">4</a>, <a class="fn-backref" href="#id29">5</a>)</em> <p class="last">no small Greek, full Greek with <a class="reference internal" href="#omlmath">OMLmath*</a> options.</p> +</dd> +<dt class="label">7</dt> +<dd id="digits"> +<em>(<a class="fn-backref" href="#id23">1</a>, <a class="fn-backref" href="#id24">2</a>, <a class="fn-backref" href="#id27">3</a>, <a class="fn-backref" href="#id28">4</a>)</em> <p class="last">Some italic math fonts (e. g., cmr, cmbr) have old-style +numbers in place of italic digits.</p> +</dd> +<dt class="label"><a class="fn-backref" href="#id25">8</a></dt> +<dd id="script"> +<p class="first last">no small Latin, formal script with <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/calrsfs.html">calrsfs</a>, <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/eucal.html">eucal</a>, <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/fourier.html">fourier</a></p> +</dd> +</dl> +</div> +</div> +<div class="section" id="the-unicode-math-package"> +<h3><a class="toc-backref" href="#id59"><span class="sectnum">4.3.2</span> The unicode-math package</a></h3> +<p>Users of UTF-8 enabled TeX engines (XeTeX, LuaTeX) can typeset +mathematics with the experimental <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/unicode-math.html">unicode-math</a> package by Will +Robertson. It provides a LaTeX interface to OpenType fonts with math +support, e. g., <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/asana-math.html">Asana Math</a>, Cambria Math, <a class="reference external" href="https://github.com/khaledhosny/euler-otf">New Euler</a> or <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/xits.html">XITS</a>, with +commands to access the complete mathematics character repertoire of the +Unicode Standard</p> +<p>LaTeX <a class="reference internal" href="#math-font-selection">math font selection</a> methods with unicode-math:</p> +<dl class="docutils"> +<dt><a class="reference internal" href="#math-alphabets">math alphabets</a></dt> +<dd><p>map to a range of the <a class="reference internal" href="#mathematical-alphanumeric-symbols">mathematical alphanumeric symbols</a> block in the +current font (or a substitution defined with the <tt class="literal">range</tt> math font +option).</p> +<p>Some command names differ from the <a class="reference internal" href="#predefined-math-alphabets">predefined math alphabets</a> or the +above <a class="reference internal" href="#naming-scheme">naming scheme</a>:</p> +<table class="booktabs numbered align-left"> +<colgroup> +<col width="50%" /> +<col width="50%" /> +</colgroup> +<thead valign="bottom"> +<tr><th class="head"><p>LaTeX</p></th> +<th class="head"><p>unicode-math</p></th> +</tr> +</thead> +<tbody valign="top"> +<tr><td><p><tt class="literal">\mathbf</tt></p></td> +<td><p><tt class="literal">\mathbfup</tt></p></td> +</tr> +<tr><td><p><tt class="literal">\mathsf</tt></p></td> +<td><p><tt class="literal">\mathsfup</tt></p></td> +</tr> +<tr><td><p><tt class="literal">\mathsfbf</tt></p></td> +<td><p><tt class="literal">\mathbfsfup</tt></p></td> +</tr> +<tr><td><p><tt class="literal">\mathsfbfit</tt></p></td> +<td><p><tt class="literal">\mathbfsfit</tt></p></td> +</tr> +</tbody> +</table> +<p>With unicode-math, <tt class="literal">\mathbf</tt>, <tt class="literal">\mathsf</tt>, and <tt class="literal">\mathsfbf</tt> +behave similar to <a class="reference internal" href="#in-line-math-versions">“in-line math versions”</a>: they consider the +<a class="reference internal" href="#math-style">math style</a> for upright vs. italic shape. Compatibility can be +achieved via the options <tt class="literal"><span class="pre">bold-style=upright</span></tt> and +<tt class="literal"><span class="pre">sans-style=upright</span></tt>.</p> +<p><tt class="literal">\mathbfsfit</tt> reverses the order of the <tt class="literal">sf</tt> and <tt class="literal">bf</tt> selectors, +so that, e. g., the Unicode character <cite>MATHEMATICAL SANS-SERIF BOLD +ITALIC CAPITAL A</cite> is selected by the non-mnemonic <tt class="literal">\mathbfsfit{A}</tt>.</p> +</dd> +<dt><a class="reference internal" href="#math-versions">math versions</a></dt> +<dd><p>are not directly supported but easy to emulate.</p> +<p>As Unicode fonts can hold all math symbols in a single font file, a +single <tt class="literal"><span class="pre">\setmathfont[<font</span> <span class="pre">features>]{<font</span> name>}</tt> can replace +the <tt class="literal"><span class="pre">\mathversion{<mathversion>}</span></tt> command if a complete OpenType +math font in the desired version is available.</p> +<p>However, complete OpenType math fonts are rare. Therefore +unicode-math supports using multiple fonts with the <tt class="literal">range</tt> +option. This way one can emulate, e. g., the <tt class="literal">bold</tt> math version +via:</p> +<pre class="literal-block">\renewcommand{\boldmath}{% + \setmathfont{XITS Bold}% + \setmathfont[range={"1D400-"1F020}]{XITS Math}% + \setmathfont[range=\mathup->\mathbfup]{XITS Math}% + \setmathfont[range=\mathsfit->\mathbfsfit]{XITS Math}% + % ... +} +</pre> +<p>It would be nice if unicode-math could provide a <tt class="literal">\newmathversion</tt> +command similar to the <tt class="literal">\newfontfamily</tt> in <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/fontspec.html">fontspec</a> for such setups.</p> +<p>For alphanumerical characters, the <tt class="literal">\mathbf</tt>, <tt class="literal">\mathsf</tt>, and +<tt class="literal">\mathsfbf</tt> behave like <a class="reference internal" href="#in-line-math-versions">“in-line math versions”</a>.</p> +</dd> +<dt><a class="reference internal" href="#math-styles">math styles</a></dt> +<dd><p>are supported with the <tt class="literal"><span class="pre">math-style</span></tt> package option that accepts the +values <tt class="literal">TeX</tt>, <tt class="literal">ISO</tt>, <tt class="literal">french</tt>, <tt class="literal">upright</tt>, and <tt class="literal">literal</tt>.</p> +</dd> +</dl> +</div> +</div> +<div class="section" id="conclusions-and-outlook"> +<h2><a class="toc-backref" href="#id60"><span class="sectnum">4.4</span> Conclusions and outlook</a></h2> +<p>It is hoped, that in the future more fonts families will support the +OML encoding in normal and bold weight as well as upright and italic +shape. This would be a major step towards a LaTeX equivalent of the +<a class="reference internal" href="#mathematical-alphanumeric-symbols">mathematical alphanumeric symbols</a> Unicode block.</p> +<p>This should be (relatively) easy to achieve via virtual fonts when the +glyphs for the Greek letters already exist. Examples are Latin Modern, +Kerkis, GFS Neohellenic, LX Fonts and KP-Serif.</p> +<p>Alternatively, the T7 encoding could be used for math alphabets (if it +ever happens to materialise).</p> +<p>Upright small Greek letters in <tt class="literal">\mathrm</tt> would enable the +specification of the constant pi, Myons, Pions, alpha-particles, +photons, and neutrinos with <a class="reference internal" href="#math-alphabets">math alphabets</a>. (With <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mathdesign.html">mathdesign</a> +fonts, this is already possible today.)</p> +<p>With the development of the <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/unicode-math.html">unicode-math</a> package, an interesting +alternative for ISO-conforming math typesetting became available to +users of Unicode-enabled TeX engines (XeTeX or LuaTeX).</p> +</div> +</div> +<div class="section" id="references"> +<h1><a class="toc-backref" href="#id61"><span class="sectnum">5</span> References</a></h1> +<dl class="citation"><dt class="label"><a class="fn-backref" href="#id1">[ISO-80000-2]</a></dt> +<dd id="iso-80000-2"> +<p class="first last"><cite>Quantities and units – Part 2: Mathematical signs +and symbols to be used in the natural sciences and technology</cite>: +<a class="reference external" href="http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=31887">http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=31887</a>.</p> +</dd> +</dl> +<dl class="citation"><dt class="label">[ISO-31]</dt> +<dd id="iso-31"> +<p class="first last"><cite>Quantities and units</cite>, Superseded by [ISO-80000].</p> +</dd> +</dl> +<dl class="citation"><dt class="label"><a class="fn-backref" href="#id2">[typefaces]</a></dt> +<dd id="typefaces"> +<p class="first last">National Institute of Standards and Technology (<a class="reference external" href="http://physics.nist.gov/">NIST</a>), +<cite>Typefaces for Symbols in Scientific Manuscripts</cite>: +<a class="reference external" href="http://physics.nist.gov/cuu/pdf/typefaces.pdf">http://physics.nist.gov/cuu/pdf/typefaces.pdf</a>.</p> +</dd> +</dl> +<dl class="citation"><dt class="label"><a class="fn-backref" href="#id3">[checklist]</a></dt> +<dd id="checklist"> +<p class="first last">National Institute of Standards and Technology (<a class="reference external" href="http://physics.nist.gov/">NIST</a>), +<cite>SI Unit rules and style conventions</cite> +Check List for Reviewing Manuscripts: +<a class="reference external" href="http://physics.nist.gov/cuu/Units/checklist.html">http://physics.nist.gov/cuu/Units/checklist.html</a>.</p> +</dd> +</dl> +<dl class="citation"><dt class="label"><a class="fn-backref" href="#id5">[fonts_for_symbols]</a></dt> +<dd id="fonts-for-symbols"> +<p class="first last">International Union of Pure and Applied +Chemistry (<a class="reference external" href="http://iupac.org/">IUPAC</a>), <cite>On the use of italic and roman fonts for symbols +in scientific text</cite>, (Revised December 1999): +<a class="reference external" href="http://old.iupac.org/standing/idcns/fonts_for_symbols.html">http://old.iupac.org/standing/idcns/fonts_for_symbols.html</a>.</p> +</dd> +</dl> +<dl class="citation"><dt class="label"><a class="fn-backref" href="#id4">[SI]</a></dt> +<dd id="si"> +<p class="first last">Bureau international des poids et mesures (<a class="reference external" href="http://www.bipm.org/">BIPM</a>), +<cite>The International System of Units (SI)</cite>: +<a class="reference external" href="http://www.bipm.org/en/si/si_brochure/">http://www.bipm.org/en/si/si_brochure/</a>.</p> +</dd> +</dl> +<dl class="citation"><dt class="label"><a class="fn-backref" href="#id7">[Green-Book]</a></dt> +<dd id="green-book"> +<p class="first last">International Union of Pure and Applied Chemistry (<a class="reference external" href="http://iupac.org/">IUPAC</a>), +<cite>Quantities, Units and Symbols in Physical Chemistry</cite>, +3rd edition, RSC Publishing, Cambridge 2007: +[ISBN 0 85404 433 7; ISBN-13 978 0 85404 433 7].</p> +</dd> +</dl> +<dl class="citation"><dt class="label"><a class="fn-backref" href="#id6">[Red-Book]</a></dt> +<dd id="red-book"> +<p class="first last">International Union of Pure and Applied Physics (<a class="reference external" href="http://www.iupap.org/">IUPAP</a>), +<cite>Symbols, Units, Nomenclature and Fundamental Constants in Physics</cite>: +<a class="reference external" href="http://metrology.wordpress.com/measurement-process-index/iupap-red-book/index-iupap-red-book/">http://metrology.wordpress.com/measurement-process-index/iupap-red-book/index-iupap-red-book/</a>.</p> +</dd> +</dl> +<dl class="citation"><dt class="label"><a class="fn-backref" href="#id15">[encguide]</a></dt> +<dd id="encguide"> +<p class="first last">Frank Mittelbach, Robin Fairbairns, Werner Lemberg, +LaTeX3 Project Team, <cite>LaTeX font encodings</cite>: +<a class="reference external" href="http://mirror.ctan.org/macros/latex/doc/encguide.pdf">http://mirror.ctan.org/macros/latex/doc/encguide.pdf</a>.</p> +</dd> +</dl> +<dl class="citation"><dt class="label">[fntguide]</dt> +<dd id="fntguide"> +<em>(<a class="fn-backref" href="#id10">1</a>, <a class="fn-backref" href="#id11">2</a>)</em> <p class="last">LaTeX3 Project Team, <cite>LaTeX 2e font selection</cite>: +<a class="reference external" href="http://mirror.ctan.org/macros/latex/doc/fntguide.pdf">http://mirror.ctan.org/macros/latex/doc/fntguide.pdf</a>.</p> +</dd> +</dl> +<dl class="citation"><dt class="label">[tr25]</dt> +<dd id="tr25"> +<em>(<a class="fn-backref" href="#id16">1</a>, <a class="fn-backref" href="#id17">2</a>)</em> <p class="last">Barbara Beeton, Asmus Freytag, Murray Sargent III, +<cite>Unicode Support for Mathematics</cite>, Unicode Technical Report #25: +<a class="reference external" href="http://www.unicode.org/reports/tr25/">http://www.unicode.org/reports/tr25/</a>.</p> +</dd> +</dl> +<dl class="citation"><dt class="label">[beeton:2000]</dt> +<dd id="beeton-2000"> +<p class="first last">Barbara Beeton: +<cite>Unicode and math, a combination whose time has come – Finally!</cite>, +TUGBoat, 21#3, 2000: +<a class="reference external" href="http://www.tug.org/TUGboat/Articles/tb21-3/tb68beet.pdf">http://www.tug.org/TUGboat/Articles/tb21-3/tb68beet.pdf</a>.</p> +</dd> +</dl> +<!-- see also +[koma-mail] Custom font substitution: http://www.komascript.de/node/823. --> +<!-- Links +===== --> +</div> +</div> +</body> +</html> diff --git a/Master/texmf-dist/doc/latex/isomath/isomath.pdf b/Master/texmf-dist/doc/latex/isomath/isomath.pdf Binary files differindex 161ef30edb6..b91d0a8ef3a 100644 --- a/Master/texmf-dist/doc/latex/isomath/isomath.pdf +++ b/Master/texmf-dist/doc/latex/isomath/isomath.pdf diff --git a/Master/texmf-dist/doc/latex/isomath/isomath.sty.html b/Master/texmf-dist/doc/latex/isomath/isomath.sty.html index 8a9e5af86af..8d459c5d09e 100644 --- a/Master/texmf-dist/doc/latex/isomath/isomath.sty.html +++ b/Master/texmf-dist/doc/latex/isomath/isomath.sty.html @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="generator" content="Docutils 0.8: http://docutils.sourceforge.net/" /> @@ -10,7 +10,7 @@ /* :Author: David Goodger (goodger@python.org) -:Id: $Id: html4css1.css 6387 2010-08-13 12:23:41Z milde $ +:Id: $Id: html4css1.css 6511 2011-01-03 14:49:11Z milde $ :Copyright: This stylesheet has been placed in the public domain. Default cascading style sheet for the HTML output of Docutils. @@ -190,7 +190,7 @@ img.align-center, .figure.align-center, object.align-center { /* reset inner alignment in figures */ div.align-right { - text-align: left } + text-align: inherit } /* div.align-center * { */ /* text-align: left } */ @@ -341,8 +341,8 @@ body { /* avoid long lines --> better reading */ /* OTOH: lines should not be too short because of missing hyphenation, */ div.document { - max-width: 45em; - margin: 0 auto; + max-width: 45em; + margin: auto; } /* separate items except for compact lists */ @@ -376,8 +376,7 @@ div.sidebar { /* Special definition lists */ /* ======================== */ -/* start definition term on the same line as the label */ - +/* bold definition term on the same line as the label */ dl.field-list > dt, dl.option-list > dt, dl.docinfo > dt, dl.footnote > dt, dl.citation > dt, dl.description > dt { clear: left; @@ -385,31 +384,27 @@ dl.footnote > dt, dl.citation > dt, dl.description > dt { margin: 0; padding: 0; padding-right: 0.5em; -/* background: yellow; */ -} - -/* Definition list with the layout of a LaTeX `description` list */ -/* (bold label, continue on same line) */ -dl.description > dt { font-weight: bold; } +/* except for these */ +dl.option-list > dt, dl.footnote > dt { + font-weight: normal; +} + + /* Field Lists */ /* ----------- */ -/* field names: bold, followed by a colon */ -dl.field-list > dt, dl.docinfo > dt { - font-weight: bold; -} +/* field names followed by a colon */ dl.field-list > dt:after, dl.docinfo > dt:after { content: ":"; } /* Offset for field content (corresponds to the --field-name-limit option) */ dl.field-list > dd { - margin-left: 8.5em; + margin-left: 9em; /* ca. 14 chars in the test examples */ padding-left: 0.5em; -/* background: yellow; */ } /* start field-body on a new line after long field names */ @@ -420,8 +415,8 @@ dl.field-list > dd p { } dl.field-list > dd > p:first-child, -dl.field-list > dd > ol:first-child, -dl.field-list > dd > ul:first-child, +/* dl.field-list > dd > ol:first-child, */ +/* dl.field-list > dd > ul:first-child, */ dl.field-list > dd > dl:first-child { display: inline-block; } @@ -452,16 +447,12 @@ dl.field-list.fix-labelwidth > dd:after { /* docinfo */ -dl.docinfo { - margin: 2em 2em; /* setting from html4css1.css */ - padding-left: 0; -} - dl.docinfo > dd { margin-left: 8em; /* margin-bottom: 0.5em; */ } + /* option list */ dl.option-list { @@ -486,7 +477,7 @@ a.footnote-reference, a.fn-backref { text-decoration: inherit; /* do not underline footnote links */ } -dl.footnote, dl.citation { +dl.footnote { /* line on the left */ padding-left: 1ex; border-left: solid; @@ -494,8 +485,15 @@ dl.footnote, dl.citation { /* border-color: black; */ } +/* paragraph on same line as backrefs */ +dd > em { +/* background: green; */ + float: left; + margin-right: 1ex +} + -/* +/* Ordered List (Enumeration) -------------------------- @@ -512,7 +510,6 @@ ol { /* Set the negative indent of the list label as feature of the list item */ ol > li { text-indent: -40px; /* Mozillas default indent */ - margin-bottom: 1em; } /* Label */ @@ -573,96 +570,120 @@ ol.nested > li:before, ol.nested ol > li:before { /* smaller font for super- and subscripts */ /* sub, sup {font-size: 70%;} */ /* Mozilla default is `smaller` */ -/* unordered lists */ -/* --------------- */ - -/* drop bullets from Table of Contents */ -/* div.topic.contents ul { */ -/* list-style: none; */ -/* } */ /* Tables */ -/* ------ */ +/* ====== */ /* borders for "normal" tables */ -table.table { +table { + margin-top: 0.5em ; + margin-bottom: 0.5em; border-style: outset; border-width: thin; + /* border-collapse: collapse; */ } -table.table td, table.table th { +td, th { border-style: inset; border-width: thin; + /* text-align: left; */ + padding: 0 1ex; +} + +td > p:first-child, th > p:first-child { + margin-top: 0; +} +td > p, th > p { + margin-bottom: 0; } /* no borders for "borderless" tables */ -table.table.borderless, table.table.borderless * { +table.borderless, table.borderless * { border-style: none; } +/* "booktabs" style (no vertical lines) */ +table.booktabs { + border: 0; + border-top: 2px solid; + border-bottom: 2px solid; + border-collapse: collapse; +} + +table.booktabs * { + border: 0; +} +table.booktabs th { + border-bottom: thin solid; +} + +table > caption { + text-align: left; +/* padding: 2em 0 1em 0; */ +} + /* numbered tables and figures*/ body { counter-reset: table; - counter-reset: figure; +/* counter-reset: figure; */ } table.numbered > caption:before { counter-increment: table; - content: "table " counter(table) ": "; + content: "Table " counter(table) ": "; font-weight: bold; } - -table > caption { - text-align: left; - padding: 2em 0 1em 0; -} - /* whitespace and line-wrapping in inline literals ----------------------------------------------- */ /* possible values: normal, nowrap, pre, pre-wrap, pre-line */ -tt.docutils.literal { +tt.literal { white-space: pre-wrap; } + +/* Table of Contents */ + +/* don't indent like a topic */ +div.topic.contents { + margin: 0; +} +/* div.topic.contents ul { */ +/* list-style: none; */ +/* } */ + +div.topic.contents a { + text-decoration: none; /* no underline for links */ +} + +/* section numbers */ + +span.sectnum { + padding-right: 1ex; +} + +/* admonitions */ + +/* no padding for top and bottom */ +div.admonition, div.attention, div.caution, div.danger, div.error, +div.hint, div.important, div.note, div.tip, div.warning { + padding: 0px 1em } + </style> <style type="text/css"> -/* -:Author: Guenter Milde +/* Stylesheet for isomath documentation :Copyright: 2008 G. Milde This stylesheet is released under the GPL v. 2 - -Stylesheet for the Math Fonts Overview "Matheschriften" */ -/* deutsche Tabellenbeschriftung */ -/* table.numbered > caption:before { */ -/* content: "Tabelle " counter(table) ": "; */ -/* } */ - -/* booktabs Style */ -table.booktabs, table.booktabs td, table.booktabs th { - border: 0 } -table.booktabs { - border-top: 2px solid; - border-bottom: 2px solid; -} -table.booktabs th { - border-bottom: 1px solid; -} - -dl.docutils dt { - font-weight: bold; -} +dl.docutils dt { font-weight: bold; } /* docinfo */ -dl.docinfo > dt { - display: none; -} +dl.docinfo > dt { display: none; } dl.docinfo > dd { margin-left: 0; padding: 0 5%; @@ -672,7 +693,6 @@ dl.docinfo > dt.author + dd { text-align: center; padding-bottom: 1em; } - dt.date { display: none; } @@ -691,17 +711,53 @@ a.reference.internal { color: darkblue; } -/* +/- Listen mit field-list */ -dl.field-list > dt { - font-family: monospace; +a.reference.external { + text-decoration: underline; } + +/* a.reference.external:after { */ +/* content: "⎘"; */ +/* font-size: x-small; */ +/* vertical-align: super; */ +/* } */ + +dl.field-list { + margin-left: 2em; +} dl.field-list > dt:after { content: ""; /* drop trailing ':' */ } -/* Offset for field content (corresponds to the --field-name-limit option) */ -dl.field-list > dd { - margin-left: 1em; - padding-left: 0.5em; + +dl.footnote > dd { + margin-left: 1.2em; +} +dl.footnote > dt { + font-size: small; + vertical-align: super; +} + +a.footnote-reference > sup { + font-size: small; + vertical-align: super; + } + +td, th { + padding-bottom: 0.1ex; + padding-top: 0.1ex; +} + +em.bfit { + font-weight: bold; + font-family: serif; +} +em.sfbfit { + font-weight: bold; + font-family: sans-serif; +} + +/* no borders for "borderless" tables */ +table.booktabs.borderless, table.booktabs.borderless * { + border-style: none; } </style> @@ -712,16 +768,16 @@ dl.field-list > dd { <dl class="docinfo"> <dt class="copyright">Copyright</dt> -<dd>© 2008, 2010 Günter Milde</dd> +<dd class="copyright">© 2008, 2010 Günter Milde</dd> <dt>Licence</dt> -<dd>This work may be distributed and/or modified under the +<dd><p>This work may be distributed and/or modified under the conditions of the <a class="reference external" href="http://www.latex-project.org/lppl.txt">LaTeX Project Public License</a>, either -version 1.3 of this license or (at your option) any later version.</dd> +version 1.3 of this license or (at your option) any later version.</p> +</dd> <dt>Identification</dt> -<dd><pre class="literal-block"> -\NeedsTeXFormat{LaTeX2e} +<dd><pre class="literal-block">\NeedsTeXFormat{LaTeX2e} \ProvidesPackage{isomath} -[2010/08/23 v0.4 math according to ISO 31] +[2011/02/01 v0.5 ISO math style] </pre> </dd> </dl> @@ -730,359 +786,389 @@ version 1.3 of this license or (at your option) any later version.</dd> <p>The <cite>isomath</cite> package enables formatting Greek and Latin letters as symbols for vectors, matrices, and tensors in the typefaces recommended for scientific papers -by the International Standard ISO 31.</p> +by the International Standard ISO 80000-2.</p> +</div> +<div class="contents topic" id="contents"> +<p class="topic-title first">Contents</p> +<ul class="simple"> +<li><p><a class="reference internal" href="#history" id="id3">History</a></p></li> +<li><p><a class="reference internal" href="#requirements" id="id4">Requirements</a></p> +<ul> +<li><p><a class="reference internal" href="#fixmath-sty" id="id5">fixmath.sty</a></p></li> +<li><p><a class="reference internal" href="#kvoptions-sty" id="id6">kvoptions.sty</a></p></li> +</ul> +</li> +<li><p><a class="reference internal" href="#options" id="id7">Options</a></p> +<ul> +<li><p><a class="reference internal" href="#rmdefault" id="id8">rmdefault</a></p></li> +<li><p><a class="reference internal" href="#sfdefault" id="id9">sfdefault</a></p></li> +<li><p><a class="reference internal" href="#scaled" id="id10">scaled</a></p></li> +<li><p><a class="reference internal" href="#reusemathalphabets" id="id11">reuseMathAlphabets</a></p></li> +<li><p><a class="reference internal" href="#omlmath" id="id12">OMLmath*</a></p></li> +</ul> +</li> +<li><p><a class="reference internal" href="#declarations" id="id13">Declarations</a></p> +<ul> +<li><p><a class="reference internal" href="#math-alphabets" id="id14">Math alphabets</a></p> +<ul> +<li><p><a class="reference internal" href="#mathbfit" id="id15">mathbfit</a></p></li> +<li><p><a class="reference internal" href="#mathsfit" id="id16">mathsfit</a></p></li> +<li><p><a class="reference internal" href="#mathsfbfit" id="id17">mathsfbfit</a></p></li> +<li><p><a class="reference internal" href="#redefine-standard-alphabets" id="id18">Redefine standard alphabets</a></p></li> +</ul> +</li> +<li><p><a class="reference internal" href="#command-aliases" id="id19">Command aliases</a></p> +<ul> +<li><p><a class="reference internal" href="#vectorsym" id="id20">\vectorsym</a></p></li> +<li><p><a class="reference internal" href="#matrixsym" id="id21">\matrixsym</a></p></li> +<li><p><a class="reference internal" href="#tensorsym" id="id22">\tensorsym</a></p></li> +</ul> +</li> +<li><p><a class="reference internal" href="#font-mappings" id="id23">Font mappings</a></p> +<ul> +<li><p><a class="reference internal" href="#common-family-name-for-text-and-math" id="id24">Common family name for text and math</a></p></li> +<li><p><a class="reference internal" href="#scaling" id="id25">Scaling</a></p></li> +</ul> +</li> +</ul> +</li> +<li><p><a class="reference internal" href="#references" id="id26">References</a></p></li> +</ul> </div> <div class="section" id="history"> -<h1><a class="toc-backref" href="#id1">History</a></h1> -<table class="borderless borderless numbered align-left"> +<h1><a class="toc-backref" href="#id3">History</a></h1> +<table class="borderless booktabs numbered align-left"> <colgroup> <col width="4%" /> <col width="17%" /> <col width="79%" /> </colgroup> <tbody valign="top"> -<tr><td>0.1</td> -<td>2008-09-25</td> -<td>first public version.</td> +<tr><td><p>0.1</p></td> +<td><p>2008-09-25</p></td> +<td><p>first public version.</p></td> </tr> -<tr><td>0.2</td> -<td>2008-10-02</td> -<td>bugfix: a usage example was uncommented;</td> +<tr><td><p>0.2</p></td> +<td><p>2008-10-02</p></td> +<td><p>bugfix: a usage example was uncommented;</p></td> +</tr> +<tr><td><p></p></td> +<td> </td> +<td><p>updated documentation;</p></td> +</tr> +<tr><td><p></p></td> +<td> </td> +<td><p>define mathsans only if OMLmathsans is true;</p></td> </tr> -<tr><td></td> +<tr><td><p></p></td> <td> </td> -<td>updated documentation;</td> +<td><p>option reuseMathalphabets -> reuseMathAlphabets.</p></td> </tr> -<tr><td></td> +<tr><td><p>0.3</p></td> +<td><p>2009-06-19</p></td> +<td><p>documentation update;</p></td> +</tr> +<tr><td><p></p></td> <td> </td> -<td>define mathsans only if OMLmathsans is true;</td> +<td><p>fix OMLmathrm and OMLmathsans definitions;</p></td> </tr> -<tr><td></td> +<tr><td><p></p></td> <td> </td> -<td>option reuseMathalphabets -> reuseMathAlphabets.</td> +<td><p>switch license to LPP.</p></td> </tr> -<tr><td>0.3</td> -<td>2009-06-19</td> -<td>documentation update;</td> +<tr><td><p>0.4</p></td> +<td><p>2010-08-23</p></td> +<td><p>split user documentation from literate source;</p></td> </tr> -<tr><td></td> +<tr><td><p></p></td> <td> </td> -<td>fix OMLmathrm and OMLmathsans definitions;</td> +<td><p>option <tt class="literal">scaled</tt>;</p></td> </tr> -<tr><td></td> +<tr><td><p></p></td> <td> </td> -<td>switch license to LPP.</td> +<td><p>documentation update.</p></td> +</tr> +<tr><td><p>0.5</p></td> +<td><p>2011-01-04</p></td> +<td><p>math alphabet names matching Unicode;</p></td> </tr> -<tr><td>0.4</td> -<td>2010-08-23</td> -<td>split user documentation from literate source;</td> +<tr><td><p></p></td> +<td> </td> +<td><p>documentation review and extension;</p></td> </tr> -<tr><td></td> +<tr><td><p></p></td> <td> </td> -<td>option <tt class="docutils literal">scaled</tt>;</td> +<td><p>bold alphabet variants in <tt class="literal">bold</tt> math version;</p></td> </tr> -<tr><td></td> +<tr><td><p></p></td> <td> </td> -<td>documentation update.</td> +<td><p>upright numbers with <tt class="literal">\vectorsym</tt>.</p></td> </tr> </tbody> </table> -<div class="contents topic" id="contents"> -<p class="topic-title first">Contents</p> -<ul class="simple"> -<li><a class="reference internal" href="#history" id="id1">History</a></li> -<li><a class="reference internal" href="#requirements" id="id2">Requirements</a><ul> -<li><a class="reference internal" href="#fixmath-sty" id="id3">fixmath.sty</a></li> -<li><a class="reference internal" href="#kvoptions-sty" id="id4">kvoptions.sty</a></li> -</ul> -</li> -<li><a class="reference internal" href="#options" id="id5">Options</a><ul> -<li><a class="reference internal" href="#rmdefault" id="id6">rmdefault</a></li> -<li><a class="reference internal" href="#sfdefault" id="id7">sfdefault</a></li> -<li><a class="reference internal" href="#scaled" id="id8">scaled</a></li> -<li><a class="reference internal" href="#reusemathalphabets" id="id9">reuseMathAlphabets</a></li> -<li><a class="reference internal" href="#omlmath" id="id10">OMLmath*</a></li> -<li><a class="reference internal" href="#process-options" id="id11">Process Options</a></li> -</ul> -</li> -<li><a class="reference internal" href="#declarations" id="id12">Declarations</a><ul> -<li><a class="reference internal" href="#math-alphabets" id="id13">Math alphabets</a><ul> -<li><a class="reference internal" href="#mathbold" id="id14">mathbold</a></li> -<li><a class="reference internal" href="#mathsans" id="id15">mathsans</a></li> -<li><a class="reference internal" href="#mathboldsans" id="id16">mathboldsans</a></li> -<li><a class="reference internal" href="#redefine-standard-alphabets" id="id17">Redefine standard alphabets</a></li> -</ul> -</li> -<li><a class="reference internal" href="#command-aliases" id="id18">Command aliases</a><ul> -<li><a class="reference internal" href="#vectorsym" id="id19">\vectorsym</a></li> -<li><a class="reference internal" href="#matrixsym" id="id20">\matrixsym</a></li> -<li><a class="reference internal" href="#tensorsym" id="id21">\tensorsym</a></li> -</ul> -</li> -<li><a class="reference internal" href="#font-mappings" id="id22">Font mappings</a><ul> -<li><a class="reference internal" href="#scaling" id="id23">Scaling</a></li> -</ul> -</li> -</ul> -</li> -</ul> -</div> </div> <div class="section" id="requirements"> -<h1><a class="toc-backref" href="#id2">Requirements</a></h1> +<h1><a class="toc-backref" href="#id4">Requirements</a></h1> <div class="section" id="fixmath-sty"> -<h2><a class="toc-backref" href="#id3">fixmath.sty</a></h2> -<p>The package <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/fixmath.html">fixmath</a> by Walter Schmidt defines Greek letters as symbols -of type <tt class="docutils literal">\mathalpha</tt> and takes them from the <tt class="docutils literal">letters</tt> SymbolFont in -<tt class="docutils literal">\mathnormal</tt> (as opposed to <tt class="docutils literal">operators</tt> in <tt class="docutils literal">fontmath.ltx</tt>).</p> -<p><a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/fixmath.html">fixmath</a> also defines the <tt class="docutils literal">\mathbold</tt> alphabet, setting it to <tt class="docutils literal">cmm</tt>. +<h2><a class="toc-backref" href="#id5">fixmath.sty</a></h2> +<p>The package <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/fixmath.html">fixmath</a> by Walter Schmidt defines Greek letters as symbols +of type <tt class="literal">\mathalpha</tt> and takes them from the <tt class="literal">letters</tt> SymbolFont in +<tt class="literal">\mathnormal</tt> (as opposed to <tt class="literal">operators</tt> in <tt class="literal">fontmath.ltx</tt>).</p> +<p><a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/fixmath.html">fixmath</a> also defines the <tt class="literal">\mathbold</tt> alphabet, setting it to <tt class="literal">cmm</tt>. This definition will be overwritten with a configurable value for the font family below.</p> -<pre class="literal-block"> -\RequirePackage{fixmath} +<pre class="literal-block">\RequirePackage{fixmath} </pre> </div> <div class="section" id="kvoptions-sty"> -<h2><a class="toc-backref" href="#id4">kvoptions.sty</a></h2> -<p>The <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/kvoptions.html">kvoptions</a> package in the <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/oberdiek.html">oberdiek</a> bundle facilitates the setup of -package options and provides a key=value interface (based on <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/keyval.html">keyval</a>):</p> -<pre class="literal-block"> -\RequirePackage{kvoptions} +<h2><a class="toc-backref" href="#id6">kvoptions.sty</a></h2> +<p>The <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/kvoptions.html">kvoptions</a> package in the <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/oberdiek.html">oberdiek</a> bundle facilitates the setup of +package options and provides a key=value interface (based on <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/keyval.html">keyval</a>):</p> +<pre class="literal-block">\RequirePackage{kvoptions} </pre> </div> </div> <div class="section" id="options"> -<h1><a class="toc-backref" href="#id5">Options</a></h1> +<h1><a class="toc-backref" href="#id7">Options</a></h1> <div class="section" id="rmdefault"> -<h2><a class="toc-backref" href="#id6">rmdefault</a></h2> +<h2><a class="toc-backref" href="#id8">rmdefault</a></h2> <p>Family for roman math fonts. Must be available in OML encoding. The default is to use the corresponding text font family -(<tt class="docutils literal">\rmdefault</tt>).</p> -<pre class="literal-block"> -\DeclareStringOption[\rmdefault]{rmdefault} +(<tt class="literal">\rmdefault</tt>).</p> +<pre class="literal-block">\DeclareStringOption[\rmdefault]{rmdefault} </pre> </div> <div class="section" id="sfdefault"> -<h2><a class="toc-backref" href="#id7">sfdefault</a></h2> +<h2><a class="toc-backref" href="#id9">sfdefault</a></h2> <p>Family for sans-serif math fonts. The default selects <cite>CM Bright</cite>, as most sans serif fonts are not available in OML encoding:</p> -<pre class="literal-block"> -\DeclareStringOption[cmbr]{sfdefault} +<pre class="literal-block">\DeclareStringOption[cmbr]{sfdefault} </pre> </div> <div class="section" id="scaled"> -<h2><a class="toc-backref" href="#id8">scaled</a></h2> -<p>The sans-serif fonts, <tt class="docutils literal">fav</tt> (Arev), <tt class="docutils literal">llcmss</tt> (LX Fonts), and -<tt class="docutils literal">iwona</tt> can be scaled with the <tt class="docutils literal">scaled</tt> option.</p> -<pre class="literal-block"> -\DeclareStringOption[1.0]{scaled} -% Use a key definition like in inconsolata.sty (cf. also helvet.sty)? -% \define@key{isomath}{scaled}[1.0]{\def\isomath@scaled{s*[#1]}} +<h2><a class="toc-backref" href="#id10">scaled</a></h2> +<p>The sans-serif fonts, <tt class="literal">fav</tt> (Arev), <tt class="literal">llcmss</tt> (LX Fonts), and +<tt class="literal">iwona</tt> can be scaled with the <tt class="literal">scaled</tt> option.</p> +<pre class="literal-block">\DeclareStringOption[1.0]{scaled} </pre> </div> <div class="section" id="reusemathalphabets"> -<h2><a class="toc-backref" href="#id9">reuseMathAlphabets</a></h2> +<h2><a class="toc-backref" href="#id11">reuseMathAlphabets</a></h2> <p>The definition of new <a class="reference internal" href="#math-alphabets">math alphabets</a> can lead to a “too many math alphabets used in version normal” error.</p> <p>As a workaround, this option tells <cite>isomath</cite> to re-use the existing -<tt class="docutils literal">\mathbf</tt> and <tt class="docutils literal">\mathsf</tt> alphabets for <em>italic</em> bold and sans-serif +<tt class="literal">\mathbf</tt> and <tt class="literal">\mathsf</tt> alphabets for <em>italic</em> bold and sans-serif bold.</p> -<pre class="literal-block"> -\DeclareBoolOption{reuseMathAlphabets} +<pre class="literal-block">\DeclareBoolOption{reuseMathAlphabets} </pre> </div> <div class="section" id="omlmath"> -<h2><a class="toc-backref" href="#id10">OMLmath*</a></h2> +<h2><a class="toc-backref" href="#id12">OMLmath*</a></h2> <p>The following options cause <cite>isomath</cite> to (re)define the corresponding <a class="reference internal" href="#math-alphabets">math alphabets</a> in OML encoding:</p> -<pre class="literal-block"> -\DeclareBoolOption{OMLmathrm} +<pre class="literal-block">\DeclareBoolOption{OMLmathrm} \DeclareBoolOption{OMLmathbf} \DeclareBoolOption{OMLmathsf} -\DeclareBoolOption{OMLmathsans} +\DeclareBoolOption{OMLmathsfit} \DeclareBoolOption{OMLmathtt} +% backwards compatibility option alias +\DeclareVoidOption{OMLmathsans}{\isomath@OMLmathsfittrue} </pre> <p>Setting these options enables access to small Greek letters in -different shapes with e.g. <tt class="docutils literal">\mathrm{\pi}</tt> <strong>if an OML encoded font -is available</strong>. Currently, only the <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/mathdesign.html">mathdesign</a> fonts support roman in +different shapes with e.g. <tt class="literal"><span class="pre">\mathrm{\pi}</span></tt> <em>if an OML encoded font +is available</em>. Currently, only the <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/mathdesign.html">mathdesign</a> fonts support roman in OML encoding.</p> <p>With some packages, these options can result in a “too many math alphabets used in version normal” error.</p> -</div> -<div class="section" id="process-options"> -<h2><a class="toc-backref" href="#id11">Process Options</a></h2> -<p>Process the options with <tt class="docutils literal">kvoptions</tt> extensions:</p> -<pre class="literal-block"> -\ProcessKeyvalOptions* +<hr class="docutils" /> +<p>Process the options with <tt class="literal">kvoptions</tt> extensions:</p> +<pre class="literal-block">\ProcessKeyvalOptions* </pre> </div> </div> <div class="section" id="declarations"> -<h1><a class="toc-backref" href="#id12">Declarations</a></h1> +<h1><a class="toc-backref" href="#id13">Declarations</a></h1> <div class="section" id="math-alphabets"> -<h2><a class="toc-backref" href="#id13">Math alphabets</a></h2> +<h2><a class="toc-backref" href="#id14">Math alphabets</a></h2> <p>In math, LaTeX uses “absolute” fontnames instead of a selection by family, shape, and weight because typefaces have a semantic meaning -(see <a class="reference external" href="http://dante.ctan.org/CTAN/macros/latex/doc/fntguide.pdf">fntguide</a>).</p> +<a class="citation-reference" href="#fntguide" id="id1">[fntguide]</a>.</p> <p><cite>isomath</cite> defines a math alphabet for every required font variant and optionally re-defines the standard math alphabets in <cite>OML</cite> font encoding.</p> <p>Unfortunately, the number of math alphabets in one math version is limited to 16, so we have to be carefull not to exceed this. The -<tt class="docutils literal">reuseMathAlphabets</tt> option reduces this number by two, with the -side effect of italic shape with <tt class="docutils literal">\mathbf</tt> and <tt class="docutils literal">\mathsf</tt> commands:</p> -<pre class="literal-block"> -\ifisomath@reuseMathAlphabets +<tt class="literal">reuseMathAlphabets</tt> option reduces the number of math alphabet +definitions by two, with the side effect of italic shape with +<tt class="literal">\mathbf</tt> and <tt class="literal">\mathsf</tt> commands:</p> +<pre class="literal-block">\ifisomath@reuseMathAlphabets \PackageWarningNoLine{isomath}{% - Re-using math alphabet `mathsf' for \protect \mathboldsans - \MessageBreak and `mathbf' for \protect \mathbold + Re-using math alphabet `mathsf' for \protect \mathsfbfit + \MessageBreak and `mathbf' for \protect \mathbfit } \fi </pre> -<div class="section" id="mathbold"> -<h3><a class="toc-backref" href="#id14">mathbold</a></h3> -<p>The <em>italic bold</em> math alphabet is named <tt class="docutils literal">\mathbold</tt> like in -<a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/fixmath.html">fixmath</a> and related packages. With the <a class="reference internal" href="#reusemathalphabets">reuseMathAlphabets</a> option, -the roman bold math alphabet <tt class="docutils literal">\mathbf</tt> is redefined and -<tt class="docutils literal">\mathbold</tt> made an alias (overwriting existing definitions):</p> -<pre class="literal-block"> -\ifisomath@reuseMathAlphabets +<div class="section" id="mathbfit"> +<h3><a class="toc-backref" href="#id15">mathbfit</a></h3> +<p>The <em>bold italic</em> math alphabet is named <tt class="literal">\mathbfit</tt> like in +<a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/unicode-math.html">unicode-math</a> (with an alias <tt class="literal">\mathbold</tt> like in <a class="reference external" href="http://mirror.ctan.org/help/Catalogue/entries/fixmath.html">fixmath</a> and +related packages). With the <a class="reference internal" href="#reusemathalphabets">reuseMathAlphabets</a> option, the roman bold +math alphabet <tt class="literal">\mathbf</tt> is redefined and <tt class="literal">\mathbfit</tt> made an +alias. The series selector <tt class="literal">bx</tt> (bold extended) is used, because it +is better supported than <tt class="literal">b</tt>. (Is there any LaTeX math font +distinguishing between <tt class="literal">b</tt> and <tt class="literal">bx</tt>?)</p> +<pre class="literal-block">\ifisomath@reuseMathAlphabets \DeclareMathAlphabet{\mathbf}{OML}{\isomath@rmdefault}{bx}{it} - \def\mathbold{\mathbf} + \def\mathbfit{\mathbf} \else - \DeclareMathAlphabet{\mathbold}{OML}{\isomath@rmdefault}{bx}{it} + \DeclareMathAlphabet{\mathbfit}{OML}{\isomath@rmdefault}{bx}{it} \fi </pre> +<p>alias (overwriting the definition from fixmath):</p> +<pre class="literal-block">\renewcommand{\mathbold}{\mathbfit} +</pre> </div> -<div class="section" id="mathsans"> -<h3><a class="toc-backref" href="#id15">mathsans</a></h3> -<p>For <em>italic sans-serif</em>, we define a new alphabet named <tt class="docutils literal">\mathsans</tt> (in -analogy to <tt class="docutils literal">\mathbold</tt>). As this typeface is not required by ISO 31, it -is only defined if the <tt class="docutils literal">OMLmathsans</tt> option is set:</p> -<pre class="literal-block"> -\ifisomath@OMLmathsans - \DeclareMathAlphabet{\mathsans}{OML}{\isomath@sfdefault}{m}{it} +<div class="section" id="mathsfit"> +<h3><a class="toc-backref" href="#id16">mathsfit</a></h3> +<p>For <em>sans-serif italic</em>, we define a new alphabet <tt class="literal">\mathsfit</tt> (with +the alias <tt class="literal">\mathsans</tt> in analogy to <tt class="literal">\mathbold</tt>). As this typeface +is not required by ISO 80000-2 and TeX limits the number of math alphabets +to 16 per math version, it is only defined if the <tt class="literal">OMLmathsfit</tt> or +<tt class="literal">OMLmathsans</tt> option is set:</p> +<pre class="literal-block">\ifisomath@OMLmathsfit + \DeclareMathAlphabet{\mathsfit}{OML}{\isomath@sfdefault}{m}{it} + \SetMathAlphabet{\mathsfit}{bold}{OML}{\isomath@sfdefault}{bx}{it} + \def\mathsans{\mathsfit} \fi </pre> </div> -<div class="section" id="mathboldsans"> -<h3><a class="toc-backref" href="#id16">mathboldsans</a></h3> -<p>A <em>sans serif slanted bold</em> alphabet is needed for tensor symbols. +<div class="section" id="mathsfbfit"> +<h3><a class="toc-backref" href="#id17">mathsfbfit</a></h3> +<p>The <em>sans serif bold italic</em> alphabet is used for tensor symbols. +Following the Unicode math name scheme it is called +<tt class="literal"><span class="pre">\mathsfbfit``(with</span> the backwards compatibility alias <span class="pre">``\mathboldsans</span></tt>). With the <a class="reference internal" href="#reusemathalphabets">reuseMathAlphabets</a> option, the upright sans serif math -alphabet <tt class="docutils literal">\mathsf</tt> is redefined and <tt class="docutils literal">\mathboldsans</tt> made an -alias:</p> -<pre class="literal-block"> -\ifisomath@reuseMathAlphabets +alphabet <tt class="literal">\mathsf</tt> is redefined and <tt class="literal">\mathsfbfit</tt> made an +alias to it:</p> +<pre class="literal-block">\ifisomath@reuseMathAlphabets \DeclareMathAlphabet{\mathsf}{OML}{\isomath@sfdefault}{bx}{it} - \def\mathboldsans{\mathsf} + \def\mathsfbfit{\mathsf} \else - \DeclareMathAlphabet{\mathboldsans}{OML}{\isomath@sfdefault}{bx}{it} + \DeclareMathAlphabet{\mathsfbfit}{OML}{\isomath@sfdefault}{bx}{it} \fi +\def\mathboldsans{\mathsfbfit} </pre> </div> <div class="section" id="redefine-standard-alphabets"> -<h3><a class="toc-backref" href="#id17">Redefine standard alphabets</a></h3> +<h3><a class="toc-backref" href="#id18">Redefine standard alphabets</a></h3> <p>Redefine standard alphabets in <cite>OML</cite> font encoding if the corresponding <a class="reference internal" href="#omlmath">OMLmath*</a> option is true:</p> -<pre class="literal-block"> -\ifisomath@OMLmathrm +<pre class="literal-block">\ifisomath@OMLmathrm \SetMathAlphabet{\mathrm}{normal}{OML}{\isomath@rmdefault}{m}{n} + \SetMathAlphabet{\mathrm}{bold}{OML}{\isomath@rmdefault}{bx}{n} \fi \ifisomath@OMLmathbf - \SetMathAlphabet{\mathbf}{normal}{OML}{\isomath@rmdefault}{b}{n} + \SetMathAlphabet{\mathbf}{normal}{OML}{\isomath@rmdefault}{bx}{n} \fi \ifisomath@OMLmathsf \SetMathAlphabet{\mathsf}{normal}{OML}{\isomath@sfdefault}{m}{n} + \SetMathAlphabet{\mathsf}{bold}{OML}{\isomath@sfdefault}{bx}{n} \fi \ifisomath@OMLmathtt \SetMathAlphabet{\mathtt}{normal}{OML}{\ttdefault}{m}{n} + \SetMathAlphabet{\mathtt}{bold}{OML}{\ttdefault}{bx}{n} \fi </pre> </div> </div> <div class="section" id="command-aliases"> -<h2><a class="toc-backref" href="#id18">Command aliases</a></h2> +<h2><a class="toc-backref" href="#id19">Command aliases</a></h2> <p>The following macros allow semantic markup of mathematical symbols. -The argument is typeset as proposed by ISO 31 and -<a class="reference external" href="http://physics.nist.gov/Document/typefaces.pdf">Typefaces for Symbols in Scientific Manuscripts</a>.</p> +The argument is typeset as proposed by ISO 80000-2 and +<a class="reference external" href="http://physics.nist.gov/cuu/pdf/typefaces.pdf">Typefaces for Symbols in Scientific Manuscripts</a>.</p> <div class="section" id="vectorsym"> -<h3><a class="toc-backref" href="#id19">\vectorsym</a></h3> -<p>Symbols for vectors are typeset <em>boldface italic</em>:</p> -<pre class="literal-block"> -\newcommand{\vectorsym}{\mathbold} +<h3><a class="toc-backref" href="#id20">\vectorsym</a></h3> +<p>Alphabetic vectors symbols are typeset <em>boldface italic</em> while numeric +ones (e.g. zero vector) are typeset <em>boldface upright</em>. The number +test is a simplified version from the LaTeX FAQ +<a class="reference external" href="http://mail.tug.org/texlive/Contents/live/texmf-dist/doc/generic/FAQ-en/html/FAQ-isitanum.html">Is the argument a number?</a> +It fails if a number is followed by a non-number, e.g. <tt class="literal">\vectorsym{1a}</tt>, +but this is no valid vector symbol and would look strange with the +<tt class="literal">\vec</tt> accent, too.</p> +<pre class="literal-block">\providecommand*{\vectorsym}[1]{% + \ifnum9<1#1% + \mathbf{#1}% + \else% + \mathbfit{#1}% + \fi} </pre> <p>For easier writing or to make existing documents conform to the standard, -you might want to re-define the standard <tt class="docutils literal">\vec</tt> command after loading this -package (cf. the Examples section of the documentation).</p> -<p>Attention: Some fonts (CM, Latin Modern, ...) have old-style figures in -their math italic version. The Null vector must not be written <tt class="docutils literal">\vec{0}</tt> -in this case. Use e.g. <tt class="docutils literal">\mathbf{0}</tt>, <tt class="docutils literal">\boldsymbol{0}</tt> (with AMS math) or -<tt class="docutils literal">\bm{0}</tt> (with boldmath). The latter two variants provide also a failsafe -alias for a bold vector.</p> +you might want to re-define the standard <tt class="literal">\vec</tt> command after loading this +package.</p> </div> <div class="section" id="matrixsym"> -<h3><a class="toc-backref" href="#id20">\matrixsym</a></h3> +<h3><a class="toc-backref" href="#id21">\matrixsym</a></h3> <p>Symbols for matrices are typeset <em>boldface italic</em>, i. e. in the same face as vectors.</p> -<pre class="literal-block"> -\newcommand{\matrixsym}{\mathbold} +<pre class="literal-block">\providecommand*{\matrixsym}{\vectorsym} </pre> </div> <div class="section" id="tensorsym"> -<h3><a class="toc-backref" href="#id21">\tensorsym</a></h3> +<h3><a class="toc-backref" href="#id22">\tensorsym</a></h3> <p>Symbols for tensors are <em>sans-serif bold italic</em>:</p> -<pre class="literal-block"> -\newcommand{\tensorsym}{\mathboldsans} +<pre class="literal-block">\providecommand*{\tensorsym}{\mathsfbfit} </pre> </div> </div> <div class="section" id="font-mappings"> -<h2><a class="toc-backref" href="#id22">Font mappings</a></h2> +<h2><a class="toc-backref" href="#id23">Font mappings</a></h2> +<p>Substitutions needed for the math alphabet definitions and setup for +scaled fonts. For details about the font definition macros see +<a class="citation-reference" href="#fntguide" id="id2">[fntguide]</a>.</p> +<div class="section" id="common-family-name-for-text-and-math"> +<h3><a class="toc-backref" href="#id24">Common family name for text and math</a></h3> <p>Some font packages provide matching text and math font but do not -define a substitution in their <tt class="docutils literal">*.fd</tt> files.</p> -<p>We define the substitutions needed for the math alphabet definitions -in this package. Ideally, these should become part of the package's -<tt class="docutils literal">*.fd</tt> files.</p> -<p>For details about the font definition macros see the <a class="reference external" href="http://dante.ctan.org/CTAN/macros/latex/doc/fntguide.pdf">fntguide</a>.</p> -<p>Mathpazo (Palatino) ppl <-> zplm</p> -<pre class="literal-block"> -\DeclareFontFamily{OML}{ppl}{\skewchar\font127} +define a substitution in their <tt class="literal">*.fd</tt> files. Ideally, the following +mappings should be moved there.</p> +<p>Mathpazo (Palatino) ppl ↔ zplm</p> +<pre class="literal-block">\DeclareFontFamily{OML}{ppl}{\skewchar\font127} \DeclareFontShape{OML}{ppl}{m}{it}{<-> ssub * zplm/m/it}{} \DeclareFontShape{OML}{ppl}{bx}{it}{<-> ssub * zplm/b/it}{} </pre> +</div> <div class="section" id="scaling"> -<h3><a class="toc-backref" href="#id23">Scaling</a></h3> -<p>Scale the <tt class="docutils literal">fav</tt> (Arev), <tt class="docutils literal">llcmss</tt> (LX Fonts), and <tt class="docutils literal">iwona</tt> fonts -by the value of the <tt class="docutils literal">scaled</tt> option.</p> -<p>To get scaled versions of a font, you cannot use the <tt class="docutils literal">ssub</tt> -<cite>size function</cite>, but must use the empty function or <tt class="docutils literal">s</tt> with the font +<h3><a class="toc-backref" href="#id25">Scaling</a></h3> +<p>Scale the <tt class="literal">fav</tt> (Arev), <tt class="literal">llcmss</tt> (LX Fonts), and <tt class="literal">iwona</tt> fonts +by the value of the <a class="reference internal" href="#scaled">scaled</a> option.</p> +<p>To get scaled versions of a font, you cannot use the <tt class="literal">ssub</tt> +<cite>size function</cite>, but must use the empty function or <tt class="literal">s</tt> with the font file as argument [found by experiment, GM 2010-01-28].</p> -<p>Arev (see omlzavm.fd): fav <-> zavm</p> -<pre class="literal-block"> -\DeclareFontFamily{OML}{fav}{\skewchar\font127} +<p>Arev (see omlzavm.fd): fav ↔ zavm</p> +<pre class="literal-block">\DeclareFontFamily{OML}{fav}{\skewchar\font127} \DeclareFontShape{OML}{fav}{m}{it}{<-> s * [\isomath@scaled] zavmri7m}{} \DeclareFontShape{OML}{fav}{bx}{it}{<-> s * [\isomath@scaled] zavmbi7m}{} </pre> -<p>LX Fonts (see lxfonts.sty): llcmss -> llcmm</p> -<pre class="literal-block"> -\DeclareFontFamily{OML}{llcmss}{\skewchar\font'177} +<p>LX Fonts (see lxfonts.sty): llcmss ↔ llcmm</p> +<pre class="literal-block">\DeclareFontFamily{OML}{llcmss}{\skewchar\font'177} \DeclareFontShape{OML}{llcmss}{m}{it}{<-> s * [\isomath@scaled] lcmmi8}{} \DeclareFontShape{OML}{llcmss}{bx}{it}{<-> s * [\isomath@scaled] lcmmib8}{} </pre> -<p>Ivona (see <tt class="docutils literal">omliwona.fd</tt>):</p> -<pre class="literal-block"> -\DeclareFontFamily{OML}{iwona}{} +<p>Ivona (see <tt class="literal">omliwona.fd</tt>) iwona ↔ mi-iwona:</p> +<pre class="literal-block">\DeclareFontFamily{OML}{iwona}{} \DeclareFontShape{OML}{iwona}{m}{it}{<-> s * [\isomath@scaled] mi-iwonari}{} \DeclareFontShape{OML}{iwona}{bx}{it}{<-> s * [\isomath@scaled] mi-iwonabi}{} </pre> -<p>No declarations below this point:</p> -<pre class="literal-block"> -\endinput -</pre> -<!-- Links --> -<!-- ***** --> </div> </div> </div> +<div class="section" id="references"> +<h1><a class="toc-backref" href="#id26">References</a></h1> +<dl class="citation"><dt class="label">[fntguide]</dt> +<dd id="fntguide"> +<em>(<a class="fn-backref" href="#id1">1</a>, <a class="fn-backref" href="#id2">2</a>)</em> <p class="last"><cite>LaTeX 2e font selection</cite>: +<a class="reference external" href="http://mirror.ctan.org/macros/latex/doc/fntguide.pdf">http://mirror.ctan.org/macros/latex/doc/fntguide.pdf</a>.</p> +</dd> +</dl> +</div> </div> </body> </html> diff --git a/Master/texmf-dist/doc/latex/isomath/isomath.sty.txt b/Master/texmf-dist/doc/latex/isomath/isomath.sty.txt index 2c7405d7988..df34d12eee9 100644 --- a/Master/texmf-dist/doc/latex/isomath/isomath.sty.txt +++ b/Master/texmf-dist/doc/latex/isomath/isomath.sty.txt @@ -1,6 +1,11 @@ isomath.sty: Math for scientists ******************************** +:Abstract: The `isomath` package enables formatting Greek and Latin + letters as symbols for vectors, matrices, and tensors + in the typefaces recommended for scientific papers + by the International Standard ISO 80000-2. + :Copyright: © 2008, 2010 Günter Milde :Licence: This work may be distributed and/or modified under the conditions of the `LaTeX Project Public License`_, either @@ -11,13 +16,10 @@ isomath.sty: Math for scientists \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{isomath} - [2010/08/23 v0.4 math according to ISO 31] + [2011/02/01 v0.5 ISO math style] + +.. contents:: -:Abstract: The `isomath` package enables formatting Greek and Latin - letters as symbols for vectors, matrices, and tensors - in the typefaces recommended for scientific papers - by the International Standard ISO 31. - History ======= @@ -35,10 +37,12 @@ History 0.4 2010-08-23 split user documentation from literate source; \ option ``scaled``; \ documentation update. +0.5 2011-01-04 math alphabet names matching Unicode; +\ documentation review and extension; +\ bold alphabet variants in ``bold`` math version; +\ upright numbers with ``\vectorsym``. === ============ ======================================================== -.. contents:: - Requirements ============ @@ -46,13 +50,12 @@ Requirements fixmath.sty ----------- The package fixmath_ by Walter Schmidt defines Greek letters as symbols -of type ``\mathalpha`` and takes them from the ``letters`` SymbolFont in +of type ``\mathalpha`` and takes them from the ``letters`` symbol font in ``\mathnormal`` (as opposed to ``operators`` in ``fontmath.ltx``). fixmath_ also defines the ``\mathbold`` alphabet, setting it to ``cmm``. -This definition will be overwritten with a configurable value for -the font family below. -:: +This definition is be overwritten with a configurable value for +the font family below. :: \RequirePackage{fixmath} @@ -91,9 +94,6 @@ The sans-serif fonts, ``fav`` (Arev), ``llcmss`` (LX Fonts), and :: \DeclareStringOption[1.0]{scaled} - % Use a key definition like in inconsolata.sty (cf. also helvet.sty)? - % \define@key{isomath}{scaled}[1.0]{\def\isomath@scaled{s*[#1]}} - reuseMathAlphabets ------------------ @@ -107,28 +107,29 @@ bold. \DeclareBoolOption{reuseMathAlphabets} - OMLmath* -------- -The following options cause `isomath` to (re)define the corresponding +The following options cause `isomath` to (re)define the corresponding `math alphabets`_ in OML encoding:: \DeclareBoolOption{OMLmathrm} \DeclareBoolOption{OMLmathbf} \DeclareBoolOption{OMLmathsf} - \DeclareBoolOption{OMLmathsans} + \DeclareBoolOption{OMLmathsfit} \DeclareBoolOption{OMLmathtt} + % backwards compatibility option alias + \DeclareVoidOption{OMLmathsans}{\isomath@OMLmathsfittrue} Setting these options enables access to small Greek letters in -different shapes with e.g. ``\mathrm{\pi}`` **if an OML encoded font -is available**. Currently, only the mathdesign_ fonts support roman in +different shapes with e.g. ``\mathrm{\pi}`` *if an OML encoded font +is available*. Currently, only the mathdesign_ fonts support roman in OML encoding. With some packages, these options can result in a “too many math alphabets used in version normal” error. -Process Options ---------------- +-------------------------------------------------------- + Process the options with ``kvoptions`` extensions:: \ProcessKeyvalOptions* @@ -137,66 +138,80 @@ Process the options with ``kvoptions`` extensions:: Declarations ============ - Math alphabets -------------- In math, LaTeX uses “absolute” fontnames instead of a selection by family, shape, and weight because typefaces have a semantic meaning -(see fntguide_). +[fntguide]_. `isomath` defines a math alphabet for every required font variant and optionally re-defines the standard math alphabets in `OML` font encoding. Unfortunately, the number of math alphabets in one math version is -limited to 16, so we have to be carefull not to exceed this. The -``reuseMathAlphabets`` option reduces this number by two, with the -side effect of italic shape with ``\mathbf`` and ``\mathsf`` commands:: +limited to 16, so we have to be careful not to exceed this. The +``reuseMathAlphabets`` option reduces the number of math alphabet +definitions by two, with the side effect of italic shape with +``\mathbf`` and ``\mathsf`` commands:: \ifisomath@reuseMathAlphabets \PackageWarningNoLine{isomath}{% - Re-using math alphabet `mathsf' for \protect \mathboldsans - \MessageBreak and `mathbf' for \protect \mathbold + Re-using math alphabet `mathsf' for \protect \mathsfbfit + \MessageBreak and `mathbf' for \protect \mathbfit } \fi -mathbold +mathbfit ~~~~~~~~ -The *italic bold* math alphabet is named ``\mathbold`` like in -fixmath_ and related packages. With the reuseMathAlphabets_ option, -the roman bold math alphabet ``\mathbf`` is redefined and -``\mathbold`` made an alias (overwriting existing definitions):: +The *bold italic* math alphabet is named ``\mathbfit`` like in +unicode-math_ (with an alias ``\mathbold`` like in fixmath_ and +related packages). With the reuseMathAlphabets_ option, the roman bold +math alphabet ``\mathbf`` is redefined and ``\mathbfit`` made an +alias. The series selector ``bx`` (bold extended) is used, because it +is better supported than ``b``. (Is there any LaTeX math font +distinguishing between ``b`` and ``bx``?) :: \ifisomath@reuseMathAlphabets \DeclareMathAlphabet{\mathbf}{OML}{\isomath@rmdefault}{bx}{it} - \def\mathbold{\mathbf} + \def\mathbfit{\mathbf} \else - \DeclareMathAlphabet{\mathbold}{OML}{\isomath@rmdefault}{bx}{it} + \DeclareMathAlphabet{\mathbfit}{OML}{\isomath@rmdefault}{bx}{it} \fi -mathsans -~~~~~~~~ -For *italic sans-serif*, we define a new alphabet named ``\mathsans`` (in -analogy to ``\mathbold``). As this typeface is not required by ISO 31, it -is only defined if the ``OMLmathsans`` option is set:: +alias (overwriting the definition from fixmath):: - \ifisomath@OMLmathsans - \DeclareMathAlphabet{\mathsans}{OML}{\isomath@sfdefault}{m}{it} + \renewcommand{\mathbold}{\mathbfit} + +mathsfit +~~~~~~~~ +For *sans-serif italic*, we define a new alphabet ``\mathsfit`` (with +the alias ``\mathsans`` in analogy to ``\mathbold``). As this typeface +is not required by ISO 80000-2 and TeX limits the number of math alphabets +to 16 per math version, it is only defined if the ``OMLmathsfit`` or +``OMLmathsans`` option is set:: + + \ifisomath@OMLmathsfit + \DeclareMathAlphabet{\mathsfit}{OML}{\isomath@sfdefault}{m}{it} + \SetMathAlphabet{\mathsfit}{bold}{OML}{\isomath@sfdefault}{bx}{it} + \def\mathsans{\mathsfit} \fi -mathboldsans +mathsfbfit ~~~~~~~~~~~~ -A *sans serif slanted bold* alphabet is needed for tensor symbols. +The *sans serif bold italic* alphabet is used for tensor symbols. +Following the Unicode math name scheme it is called +``\mathsfbfit``(with the backwards compatibility alias ``\mathboldsans``). With the reuseMathAlphabets_ option, the upright sans serif math -alphabet ``\mathsf`` is redefined and ``\mathboldsans`` made an -alias:: +alphabet ``\mathsf`` is redefined and ``\mathsfbfit`` made an +alias to it:: \ifisomath@reuseMathAlphabets \DeclareMathAlphabet{\mathsf}{OML}{\isomath@sfdefault}{bx}{it} - \def\mathboldsans{\mathsf} + \def\mathsfbfit{\mathsf} \else - \DeclareMathAlphabet{\mathboldsans}{OML}{\isomath@sfdefault}{bx}{it} + \DeclareMathAlphabet{\mathsfbfit}{OML}{\isomath@sfdefault}{bx}{it} \fi + \def\mathboldsans{\mathsfbfit} Redefine standard alphabets ~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -206,68 +221,78 @@ if the corresponding `OMLmath*`_ option is true:: \ifisomath@OMLmathrm \SetMathAlphabet{\mathrm}{normal}{OML}{\isomath@rmdefault}{m}{n} + \SetMathAlphabet{\mathrm}{bold}{OML}{\isomath@rmdefault}{bx}{n} \fi \ifisomath@OMLmathbf - \SetMathAlphabet{\mathbf}{normal}{OML}{\isomath@rmdefault}{b}{n} + \SetMathAlphabet{\mathbf}{normal}{OML}{\isomath@rmdefault}{bx}{n} \fi \ifisomath@OMLmathsf \SetMathAlphabet{\mathsf}{normal}{OML}{\isomath@sfdefault}{m}{n} + \SetMathAlphabet{\mathsf}{bold}{OML}{\isomath@sfdefault}{bx}{n} \fi \ifisomath@OMLmathtt \SetMathAlphabet{\mathtt}{normal}{OML}{\ttdefault}{m}{n} + \SetMathAlphabet{\mathtt}{bold}{OML}{\ttdefault}{bx}{n} \fi Command aliases --------------- The following macros allow semantic markup of mathematical symbols. -The argument is typeset as proposed by ISO 31 and +The argument is typeset as proposed by ISO 80000-2 and `Typefaces for Symbols in Scientific Manuscripts`_. \\vectorsym ~~~~~~~~~~~ -Symbols for vectors are typeset *boldface italic*:: - - \newcommand{\vectorsym}{\mathbold} +Alphabetic vectors symbols are typeset *boldface italic* while numeric +ones (e.g. zero vector) are typeset *boldface upright*. The number +test is a simplified version from the LaTeX FAQ +`Is the argument a number? +<http://mail.tug.org/texlive/Contents/live/texmf-dist/doc/generic/FAQ-en/html/FAQ-isitanum.html>`__ +It fails if a number is followed by a non-number, e.g. ``\vectorsym{1a}``, +but this is no valid vector symbol and would look strange with the +``\vec`` accent, too. :: + + \providecommand*{\vectorsym}[1]{% + \ifnum9<1#1% + \mathbf{#1}% + \else% + \mathbfit{#1}% + \fi} For easier writing or to make existing documents conform to the standard, you might want to re-define the standard ``\vec`` command after loading this -package (cf. the Examples section of the documentation). - -Attention: Some fonts (CM, Latin Modern, ...) have old-style figures in -their math italic version. The Null vector must not be written ``\vec{0}`` -in this case. Use e.g. ``\mathbf{0}``, ``\boldsymbol{0}`` (with AMS math) or -``\bm{0}`` (with boldmath). The latter two variants provide also a failsafe -alias for a bold vector. +package. \\matrixsym ~~~~~~~~~~~ Symbols for matrices are typeset *boldface italic*, i. e. in the same face as vectors. :: - \newcommand{\matrixsym}{\mathbold} - + \providecommand*{\matrixsym}{\vectorsym} \\tensorsym ~~~~~~~~~~~ Symbols for tensors are *sans-serif bold italic*:: - \newcommand{\tensorsym}{\mathboldsans} + \providecommand*{\tensorsym}{\mathsfbfit} + - Font mappings ------------- -Some font packages provide matching text and math font but do not -define a substitution in their ``*.fd`` files. +Substitutions needed for the math alphabet definitions and setup for +scaled fonts. For details about the font definition macros see +[fntguide]_. -We define the substitutions needed for the math alphabet definitions -in this package. Ideally, these should become part of the package's -``*.fd`` files. +Common family name for text and math +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -For details about the font definition macros see the fntguide_. +Some font packages provide matching text and math font but do not +define a substitution in their ``*.fd`` files. Ideally, the following +mappings should be moved there. -Mathpazo (Palatino) ppl <-> zplm :: +Mathpazo (Palatino) ppl ↔ zplm :: \DeclareFontFamily{OML}{ppl}{\skewchar\font127} \DeclareFontShape{OML}{ppl}{m}{it}{<-> ssub * zplm/m/it}{} @@ -277,50 +302,51 @@ Mathpazo (Palatino) ppl <-> zplm :: Scaling ~~~~~~~ Scale the ``fav`` (Arev), ``llcmss`` (LX Fonts), and ``iwona`` fonts -by the value of the ``scaled`` option. +by the value of the scaled_ option. To get scaled versions of a font, you cannot use the ``ssub`` `size function`, but must use the empty function or ``s`` with the font file as argument [found by experiment, GM 2010-01-28]. -Arev (see omlzavm.fd): fav <-> zavm :: +Arev (see omlzavm.fd): fav ↔ zavm :: \DeclareFontFamily{OML}{fav}{\skewchar\font127} \DeclareFontShape{OML}{fav}{m}{it}{<-> s * [\isomath@scaled] zavmri7m}{} \DeclareFontShape{OML}{fav}{bx}{it}{<-> s * [\isomath@scaled] zavmbi7m}{} -LX Fonts (see lxfonts.sty): llcmss -> llcmm :: +LX Fonts (see lxfonts.sty): llcmss ↔ llcmm :: \DeclareFontFamily{OML}{llcmss}{\skewchar\font'177} \DeclareFontShape{OML}{llcmss}{m}{it}{<-> s * [\isomath@scaled] lcmmi8}{} \DeclareFontShape{OML}{llcmss}{bx}{it}{<-> s * [\isomath@scaled] lcmmib8}{} -Ivona (see ``omliwona.fd``):: +Iwona (see ``omliwona.fd``) iwona ↔ mi-iwona:: \DeclareFontFamily{OML}{iwona}{} \DeclareFontShape{OML}{iwona}{m}{it}{<-> s * [\isomath@scaled] mi-iwonari}{} \DeclareFontShape{OML}{iwona}{bx}{it}{<-> s * [\isomath@scaled] mi-iwonabi}{} -No declarations below this point:: - - \endinput -.. Links -.. ***** +References +========== + +.. [fntguide] `LaTeX 2e font selection`: + http://mirror.ctan.org/macros/latex/doc/fntguide.pdf. .. _LaTeX Project Public License: http://www.latex-project.org/lppl.txt -.. _arev: http://dante.ctan.org/CTAN/help/Catalogue/entries/arev.html -.. _cmbright: http://dante.ctan.org/CTAN/help/Catalogue/entries/cmbright.html -.. _fixmath: http://dante.ctan.org/CTAN/help/Catalogue/entries/fixmath.html -.. _fntguide: http://dante.ctan.org/CTAN/macros/latex/doc/fntguide.pdf -.. _hvmath: http://dante.ctan.org/CTAN/help/Catalogue/entries/hvmath.html -.. _iwona: http://dante.ctan.org/CTAN/help/Catalogue/entries/iwona.html -.. _keyval: http://dante.ctan.org/CTAN/help/Catalogue/entries/keyval.html -.. _kvoptions: http://dante.ctan.org/CTAN/help/Catalogue/entries/kvoptions.html -.. _lxfonts: http://dante.ctan.org/CTAN/help/Catalogue/entries/lxfonts.html -.. _mathdesign: http://dante.ctan.org/CTAN/help/Catalogue/entries/mathdesign.html +.. _arev: http://mirror.ctan.org/help/Catalogue/entries/arev.html +.. _cmbright: http://mirror.ctan.org/help/Catalogue/entries/cmbright.html +.. _fixmath: http://mirror.ctan.org/help/Catalogue/entries/fixmath.html +.. _hvmath: http://mirror.ctan.org/help/Catalogue/entries/hvmath.html +.. _iwona: http://mirror.ctan.org/help/Catalogue/entries/iwona.html +.. _keyval: http://mirror.ctan.org/help/Catalogue/entries/keyval.html +.. _kvoptions: http://mirror.ctan.org/help/Catalogue/entries/kvoptions.html +.. _lxfonts: http://mirror.ctan.org/help/Catalogue/entries/lxfonts.html +.. _mathdesign: http://mirror.ctan.org/help/Catalogue/entries/mathdesign.html .. _mathematical alphanumeric symbols: http://www.unicode.org/charts/PDF/U1D400.pdf -.. _oberdiek: http://dante.ctan.org/CTAN/help/Catalogue/entries/oberdiek.html +.. _oberdiek: http://mirror.ctan.org/help/Catalogue/entries/oberdiek.html .. _`Typefaces for Symbols in Scientific Manuscripts`: - http://physics.nist.gov/Document/typefaces.pdf + http://physics.nist.gov/cuu/pdf/typefaces.pdf +.. _unicode-math: + http://mirror.ctan.org/help/Catalogue/entries/unicode-math.html diff --git a/Master/texmf-dist/doc/latex/isomath/isomath.txt b/Master/texmf-dist/doc/latex/isomath/isomath.txt index ad3697083c4..23100dcacfe 100644 --- a/Master/texmf-dist/doc/latex/isomath/isomath.txt +++ b/Master/texmf-dist/doc/latex/isomath/isomath.txt @@ -4,148 +4,162 @@ isomath: Math for scientists **************************** :Author: Günter Milde -:Date: 2010-08-23 -:Copyright: © 2008, 2010 Günter Milde +:Date: 2011-01-14 +:Copyright: © 2008, 2011 Günter Milde :Licence: 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. -:Abstract: The isomath package enables formatting Greek and Latin - letters as symbols for vectors, matrices, and tensors - in the typefaces recommended for scientific papers - by the International Standard ISO 31. +:Abstract: The `isomath` package sets up an “ISO math style” allowing the + use of Greek and Latin letters as symbols for scalars, + vectors, matrices, and tensors in the typefaces recommended + for scientific papers by the International Standard + ISO 80000-2. .. contents:: .. sectnum:: -Motivation ----------- + +Features +-------- .. How do you write the stress tensor ``$\sigma$`` in a - sans-serif bold italic typeface, as recommended by [typefaces]_? + `sans-serif bold italic` typeface, as recommended by [typefaces]_? -Scientific organisations like IUPAP_, IUPAC_, NIST_, BIPM_, and others -recommend typesetting math according to the International Standard ISO 31 -`Quantities and units` [ISO-31]_.\ [#]_ +Leading international scientific organisations recommend math layout +rules in line with the International Standard [ISO-80000-2]_ in their +style guides, e. g., [typefaces]_, [checklist]_, [SI]_, [fonts_for_symbols]_, +[Red-Book]_, [Green-Book]_: -.. [#] Summaries of these rules are free available, see [typefaces]_, - [checklist]_, [fonts_for_symbols]_, and [SI-brochure]_. +* The overall rule is that symbols representing physical quantities + (or variables) are italic, but symbols representing units, or + labels, are roman. -The traditional `LaTeX math style` deviates in some points from this rules: +* Symbols for vectors are boldface italic, symbols for tensors are + sans-serif bold italic, and symbols for matrices are boldface + italic. -* The ``\vec`` command produces an array accent, while ISO 31 recommends - a bold italic typeface for vector symbols. +* The above rules apply equally to letter symbols from both the Greek + and the Latin alphabet. -* Greek letters are excluded from font changes with the math - alphabets, while the ISO 31 rules apply equally to letters from the - Greek and Latin alphabet. +The traditional TeX `math style`_ deviates from this rules in some +points: -* There is no provision for typesetting of Greek letters in bold italic - style recommended for vectors. +* capital Greek letters default to upright shape, -* There is no provision for typesetting letters in sans-serif bold italic - recommended for typesetting tensor symbols. +* small Greek letters are excluded from font changes with the `math + alphabets`_. -Some of these points are adressed by `related packages`_, however -there is currently no package (known to the author) that defines the -sans-serif bold italic math alphabet needed for tensor symbols. +* The ``\vec`` command produces an arrow accent. +The `isomath` package implements an `ISO math style`_ and provides +`new math alphabets`_ with bold italic and sans-serif bold italic +typeshape that can be used for vector and tensor symbols. -Features --------- .. _`equal treatment of Latin and Greek`: -Equal treatment of Latin and Greek letters -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +ISO math style +~~~~~~~~~~~~~~ -This feature is provided by the required package fixmath_ which -ensures that: +The required package fixmath_ changes the default math layout to the +“ISO” `math style`_: -+ Both, Greek and Latin letters change shape if a different - math alphabet is used. ++ Uppercase Greek letters are typeset italic by default. -+ By default, uppercase Greek letters are typeset in italic style. ++ Both, Greek and Latin letters change shape if a different + `math alphabet`_ is used. -However, `fixmath` works only for Computer Modern. With `isomath`, +However, fixmath works only for the Computer Modern font family. +With `isomath`, + the used math fonts are configurable (using the rmdefault_ and sfdefault_ options), and + upright Greek letters can be made available through the common - ``\math*`` alphabets via the OMLmath_ options, if the + ``\math*`` alphabets via the `OMLmath*`_ options if the corresponding fonts support the `OML font encoding`_. -Caution: - Placing Greek letters in a ``\math*`` macro, e. g. - ``\mathrm{k\Omega}``, can lead to garbage, as the standard math +.. Caution:: + + Using Greek letters in standard `math alphabets`_, e. g., + ``\mathrm{\pi}``, can lead to garbage, as the standard math alphabets are usually taken from text fonts that have ligatures and non-alpha symbols in place of the small Greek letters. - Do not use Greek letters in the standard math alphabet commands + Do not use small Greek letters in the standard math alphabet commands ``mathit``, ``mathrm``, ``mathbf``, ``mathsf``, and ``mathtt`` - unless you use the OMLmath_ options.\ [#]_ + unless you use the `OMLmath*`_ options. - .. [#] Some packages provide ``\up*`` or ``\var*`` macros for - upright Greek letters so the above example could be written - ``\mathrm{k}\upOmega``. + Some packages provide alternative macros or options for upright + Greek letters (cf. `Table 6`_). New math alphabets ~~~~~~~~~~~~~~~~~~ -New math alphabets are defined: +`Isomath` defines three new `math alphabets`_: + + .. class:: borderless -:``\mathbold``: boldface italic (vector and matrix symbols), -:``\mathboldsans``: sans-serif bold italic (tensor symbols). -:``\mathsans``: sans-serif italic (optional), + =============== ====================== ================================= + ``\mathbfit`` boldface italic vector and matrix symbols + ``\mathsfit`` sans-serif italic optional (see OMLmath*_ options) + ``\mathsfbfit`` sans-serif bold italic tensor symbols + =============== ====================== ================================= -The rmdefault_ and sfdefault_ options set the font family used for +The rmdefault_ and sfdefault_ options_ set the font family used for these alphabets. +.. Caution:: -Command aliases -~~~~~~~~~~~~~~~ -The command aliases ``\vectorsym``, ``\matrixsym``, and ``\tensorsym`` -allow semantic markup. They print the argument in an ISO-conforming -typeface. + Using the new math alphabets for numbers can result in _`upright + old-style numbers` instead of italic ones, because some italic math + fonts (e. g., cmr, cmbr) have old-style numbers in place of italic + digits. +For compatibility with earlier versions and `related packages`_, the +new math alphabets are also available under the aliases +``\mathbold``, ``\mathsans``, and ``\mathboldsans``. -Font mappings -~~~~~~~~~~~~~ +Semantic markup +~~~~~~~~~~~~~~~ +The following commands set the argument in an ISO-conforming math alphabet: -Some font definitions are added for font families which have an OML -encoded counterpart but no substitution definition in their ``*.fd`` -files. + .. class:: borderless -Usage ------ + ========================== ======================================== + ``\vectorsym, \matrixsym`` bold italic for Greek and Latin letters, + bold upright for numbers -Make sure that LaTeX can find ``isomath.sty`` and insert the command:: + ``\tensorsym`` sans-serif bold italic + ========================== ======================================== - \usepackage{isomath} -in the document preamble (see also Examples_). +Usage +----- +Make sure that LaTeX can find ``isomath.sty`` and load it with +``\usepackage`` (see also Options_ and Examples_). Options ~~~~~~~ rmdefault ''''''''' -Family for serif math fonts (roman and kursive). The default is to use the -corresponding text font family (the value of ``\rmdefault``). The font -must be available in `OML font encoding`_. +Family for serif math fonts (``\mathrm``, ``\mathbf``, ``\mathit``, +``\mathbfit``). The default is to use the corresponding text font +family (the value of ``\rmdefault``). The font must be available in +`OML font encoding`_ (cf. `Table 3`_). sfdefault ''''''''' Family for sans-serif math fonts. The default is ``cmbr`` because many sans-serif fonts define the Computer Roman font `cmm` as OML substitution -(see `Table 2`_). +(see `Table 4`_). -There are only few sans serif `fonts that support the OML -encoding`_: +There are only few sans serif fonts in `OML font encoding`_: -.. class:: booktab +.. class:: borderless ========== =========== =================================================== Name Package Comment @@ -153,27 +167,27 @@ Name Package Comment ``cmbr`` cmbright_ `Computer Modern Bright`, bitmap, slightly lighter than cmss (Type 1 fonts with hfbright_) ``fav`` arev_ `Arev` (`Vera Sans`) with math extension, - large x-hight + large x-height ``iwona`` iwona_ Humanistic Sans Serif, some shapes very similar to roman ``hvm`` hvmath_ `Helvetica Math`, commercial, free bitmap version -``llcmss`` lxfonts_ `LX Fonts`, very wide, excentric, large x-hight, +``llcmss`` lxfonts_ `LX Fonts`, very wide, eccentric, large x-height, new in 2008 ========== =========== =================================================== scaled '''''' -As the choice of sans serif math fonts is very limited, -the fonts, ``fav``, ``llcmss``, and ``iwona`` can be scaled -with the ``scaled`` option (see examples_). +To improve the chances of configuring a matching sans serif math font, +the fonts, ``fav``, ``llcmss``, and ``iwona`` can be scaled with the +``scaled`` option (cf. Examples_). reuseMathAlphabets '''''''''''''''''' The definition of new math alphabets can lead to a “`too many math alphabets used in version normal`_” error. As a workaround, this -option tells ``isomath`` to re-use the existing ``\mathbf`` and +option tells `isomath` to re-use the existing ``\mathbf`` and ``\mathsf`` alphabets for italic bold and sans-serif bold. [#]_ .. [#] To access the upright shapes, the corresponding ``\textbf`` and @@ -181,63 +195,110 @@ option tells ``isomath`` to re-use the existing ``\mathbf`` and math-mode off and might use a different font, so watch for side-effects. -OMLmath -'''''''' +.. _OMLmath*: + +OMLmathrm, OMLmathbf, OMLmathsf, OMLmathsfit, OMLmathtt +''''''''''''''''''''''''''''''''''''''''''''''''''''''' -With Greek letters defined as ``\mathalpha``, the math alphabets are -expected to be in `OML font encoding`_. Unfortunately, the standard -math alphabets are usually taken from OT1 or T1 encoded fonts that -have ligatures and accents in place of the Greek letters. +With Greek letters defined as ``\mathalpha``, the letter fonts are +expected to be in `OML font encoding`_. The predefined +`math alphabets`_, however, use OT1 encoded text fonts. These fonts +have ligatures and accents in place of the small Greek letters. +The ``\mathsfit`` alphabet is not required for ISO conforming math. -The following options cause isomath to (re)define math alphabets in OML -encoding:: +The ``OMLmath*`` options bind the corresponding ``\math*`` command to an +OML-encoded font. +This enables use of small Greek letters in `math alphabet`_ commands, +e. g., ``\mathrm{\pi}`` *if an OML encoded font is available*. +`Table 3`_ lists font families supporting the OML encoding. - OMLmathrm, OMLmathbf, OMLmathsf, OMLmathsans, OMLmathtt +.. caution:: -Setting these options enables access to small Greek letters in -different shapes with e.g. ``\mathrm{\pi}`` **if an OML encoded font -is available**. Currently, only the mathdesign_ package provides -upright `fonts that support the OML encoding`_. Many font packages -define an italic font as replacement for a roman font in OML encoding. + If no matching OML encoded font is found, LaTeX's substitute + mechanism kicks in and selects a font with different font attributes + (for all letters, not only Greek). Currently, only the mathdesign_ + package provides upright fonts in OML encoding. Many font packages + define an *italic* font as OML substitute for roman fonts. + + With some packages, these options can result in a “`too many math + alphabets used in version normal`_” error. -With some packages, these options can result in a “`too many math alphabets -used in version normal`_” error. Examples ~~~~~~~~ -* Use `isomath` with the default settings:: +* Redefine the standard ``\vec`` command to set its argument in an + ISO-conforming math alphabet.:: \usepackage{isomath} + \renewcommand{\vec}{\vectorsym} + +* Use scaled arev_ fonts for the sans serif alphabets + (adapt the scaling factor to your needs):: -* Define also a slanted sans-serif math alphabet:: + \usepackage[sfdefault=fav,scaled=0.875]{isomath} - \usepackage[OMLmathsans]{isomath} +* Define the ``\mathsfit`` sans-serif italic math alphabet:: -* Use the heavier `Arev` sans serif fonts:: + \usepackage[OMLmathsfit]{isomath} - \usepackage[sfdefault=fav,scaled=0.875]{isomath} - (Adapt the scaling factor to your needs.) +* The ``\mathbfit`` and ``\mathsfbfit`` alphabets do not have a different + weight in the ``bold`` `math version`_ because the number of LaTeX math + fonts providing `extrabold` or `ultrabold` series is negligible. -* Redefine the standard ``\vec`` macro to typeset its argument in `bold - italic`:: + As a workaround, use the heavier arev_ font, scaled to 0,875, in the + bold version of ``\mathsfbfit``:: \usepackage{isomath} - \renewcommand{\vec}{\vectorsym} + \DeclareFontShape{OML}{fav}{bx}{it}{<-> s * [0.875] zavmbi7m}{} + \SetMathAlphabet{\mathsfbfit}{bold}{OML}{fav}{bx}{it} - (Use ``\bm`` or ``boldmath`` for for the zero and unit vectors, as - ``\vec{0}`` and ``\vec{1}`` will give undesired results.) +See also the ``isomath-test.tex`` test document. -* The mathdesign_ package provides an OML encoded *bold roman* font but does - not set it up for ``\mathbf``. To set it up, write e.g.:: +How to get upright small Greek letters +'''''''''''''''''''''''''''''''''''''' - \usepackage[charter]{mathdesign} - \usepackage[OMLmathbf]{isomath} +Of the following methods, only the first requires `isomath`: - Now, e.g. ``\mathbf{\pi}`` produces a bold upright pi symbol. +a) Use `isomath` and the mathdesign_ package:: + + \usepackage[utopia]{mathdesign} + \usepackage[OMLmathrm,OMLmathbf]{isomath} + + Now, e. g., ``\mathrm{\pi}`` and ``\mathbf{\pi}`` work as + expected. + +b) To get upright small Greek letters without affecting other fonts, + set the math alphabet manually to one of the three mathdesign_ + fonts, e. g.:: + + \SetMathAlphabet{\mathbf}{normal}{OML}{mdput}{b}{n} + + (check if the letter shapes match with the rest of the document). + +c) Use a package that provides macros for upright Greek letters + in math: + + .. class:: borderless + + ============= ===================================== + fourier_ ``\otheralpha ... \otherOmega`` + kpfonts_ ``\alphaup ... \Omegaup`` + mathdesign_ ``\alphaup ... \Omegaup`` + upgreek_ ``\upalpha ... \upOmega`` + ============= ===================================== + +d) Use an upright text character (requires a matching LGR-encoded + Greek text font). The following lines redefine ``\pi`` to set + the mathematical constant pi upright:: + + \usepackage[LGR,T1]{fontenc} + \usepackage[greek,british]{babel} + \usepackage{amsmath} + \let\mathpi\pi + \renewcommand{\pi}{\text{\textrm{\greektext p }}} -See also the ``isomath-test.tex`` test document. Related packages @@ -250,7 +311,7 @@ fixmath_ by Walter Schmidt defines Greek letters as alphabetic symbols. kvoptions_ - (in the oberdiek_ bundle) facilitates the setup of package options + by Heiko Oberdiek facilitates the setup of package options and provides a key=value interface (based on keyval_). @@ -258,65 +319,62 @@ Recommendations ~~~~~~~~~~~~~~~ cmbright_ - provides *sans serif* and *sans-serif bold* fonts for the - ``\mathsans`` and ``\mathboldsans`` alphabets that match with - Computer Modern and derivatives. Free Type 1 versions of the fonts - with hfbright_. + by Walter Schmidt provides sans serif and sans-serif bold fonts + for the ``\mathsfit`` and ``\mathsfbfit`` alphabets that match + with Computer Modern and derivatives. Free Type 1 versions of the + fonts are provided by hfbright_. arev_ - provides *sans serif* somewhat heavier letters that are clearly - distinguishable from the roman or italic counterparts (important if - used to distinguish vectors and tensors). However, `Arev` has a - large x-hight, so for most default fonts, either small or capital + by Stephen Hartke provides the not-so-light `Arev` sans serif font + with letters that are clearly distinguishable from the roman or + italic counterparts (important if used to distinguish vectors and + tensors). + + `Arev` has a large x-height. For many fonts, either small or capital letters will not match in size. Alternatives ~~~~~~~~~~~~ -If the only requirement is a bold italic font for (Latin and Greek) vector -symbols, there are established alternatives to `isomath`: - -* Packages that support `equal treatment of Latin and Greek`_ and - provide the ``\mathbold`` alphabet (but not ``\mathsansbold``) in - `OML font encoding`_: +See `Table 2`_ for other packages that implement the “ISO” `math +style`_ and `Table 6`_ for packages that provide bold italic +math fonts. - Roman - * eulervm_ (Euler Math), - * fixmath_ (Computer Modern), - * mathpazo_ (Palatino), - * tmmath_ (TM-Math/Times). +`“In-line math versions”`_ + can be used as ISO-conforming replacement for ``\vec``: - Sans serif - * arev_ (Arev/Vera Sans), - * cmbright_ (CM Bright), - * hvmath_ (HV-Math/Helvetica), + * ``\boldsymbol`` from `amsbsy`_ (part of `amsmath`_, the + near-indispensable adjunct to serious mathematical typesetting in + LaTeX), + * ``\bm`` from the `bm`_ package. Combining `bm` and `isomath` may + lead to the `too many math alphabets used in version normal`_ error. -* Packages that provide commands which can be used as replacement for - ``\vec``: - - * `amsbsy`_ (part of `amsmath`_, the near-indispensable adjunct to serious - mathematical typesetting in LaTeX) defines ``\boldmath``, +``\text`` + from `amsmath`_ can be used to get, e. g., upright or sans-serif + bold italic Greek symbols from a text font into a formula (see + `How to get upright small Greek letters`_). - * `bm`_ defines a command ``\bm`` which makes its argument bold (more - careful than amsbsy's ``\boldmath``). Combining `bm` and `isomath` may - lead to the `too many math alphabets used in version normal`_ error. +unicode-math_ + for XeTeX and LuaTeX allows mathematical typesetting using OpenType + math fonts. It supports the “ISO” `math style`_ and all mathematical + characters in the Unicode standard. -The ``\text`` macro from `amsmath`_ can be used to get e.g. upright or -sans-serif bold slanted Greek symbols from a text font into a formula. + unicode-math cannot be used together with `isomath`. It can, however, + replace all of isomath's functionality. See the discussion of `the + unicode-math package`_ below. Conflicts ~~~~~~~~~ -* “_`too many math alphabets used in version normal`” - +“_`too many math alphabets used in version normal`” This error occurs if the combination of packages tries to load more - than 16 fonts into the ‘normal’ math version. + than 16 fonts into the ``normal`` `math version`_. - It can be avoided with the reuseMathAlphabets_ option (see there - for side-effects). + `Isomath` can reduce the number of math alphabet definitions with the + reuseMathAlphabets_ option (see there for side-effects). Examples for problematic combinations: @@ -327,13 +385,13 @@ Conflicts and heavy fonts. Their number can be customized by defining ``\bmmax`` and ``\hmmax`` before loading the package. -* The `fourier`_ package for math typesetting with Utopia defines its own, - incompatible math font encodings. It cannot be used with ``isomath`` but - provides other means to typeset upright or italic Greek (see its - documentation). +fourier_ + provides upright and italic Greek letters, but uses non-standard + math font encodings. It cannot be used with `isomath`. - However, it is possible to use the symbols from `fourier`_ together - with math alphabets from another package, e.g `mathdesign`_:: + However, it is possible to use the non-alphanumeric symbols from + `fourier`_ together with math alphabets from another package, e.g + `mathdesign`_:: \usepackage{fourier} \usepackage[OMLmathbf,rmdefault=mdput, @@ -343,43 +401,197 @@ Conflicts Background ---------- -Letter symbols -~~~~~~~~~~~~~~ +This section discusses LaTeX `math font selection`_, suitable +`math letter fonts`_ for the ISO math style, and the relation of LaTeX and +`Unicode mathematical typesetting`_. -IUPAC_'s [fonts_for_symbols]_ guide says: - 2. The overall rule is that symbols representing physical quantities (or - variables) are italic, but symbols representing units, or labels, are - roman. […] +Math font selection +~~~~~~~~~~~~~~~~~~~ - 3. The above rule applies equally to letter symbols from both the Greek - and the Latin alphabet, […]. +There are three complementary methods to set font attributes in LaTeX +math mode: `LaTeX 2e font selection` [fntguide]_ describes `math +alphabets`_ and `math versions`_, several extension packages +provide alternative `math styles`_ (cf. `Table 2`_). -In contrast, the standard LaTeX style treats Greek letter symbols +.. _math alphabet: -* as invariant operators, +Math alphabets +'''''''''''''' -* with lower case italic and upper case upright. +Math alphabets are a counterpart to the `mathematical alphanumeric +symbols`_ block in Unicode. Both are “to be used for mathematical +variables where style variations are important semantically”. +The font guide [fntguide]_ defines in +section 3: -A possible fix (established by fixmath_) is using a common font for -Greek and Latin letters. There is one established font encoding -providing Latin and Greek letters: the `OML font encoding`_. However, + Some math fonts are selected explicitly by one-argument commands + such as ``\mathsf{max}`` or ``\mathbf{vec}``; such fonts are called + *math alphabets*. -* support_ for OML is limited to a few (mostly italic) fonts. + Math fonts [...] have the same five attributes as text fonts: + encoding, family, series, shape and size. However, there are no + commands that allow the attributes to be individually changed. + Instead, the conversion from math fonts to these five attributes is + controlled by the `math version`_. -* The widely supported but non-standard `LGR` font encoding has Greek - but no Latin letters, while + The _`predefined math alphabets` are: -* the standard Greek font encoding `T7` is just a “reserved name”. + .. class:: borderless + ================= =============== + ``\mathnormal`` default [#mathnormal]_ + ``\mathrm`` roman [#roman]_ + ``\mathbf`` bold roman + ``\mathsf`` sans serif + ``\mathit`` text italic + ``\mathtt`` typewriter + ``\mathcal`` calligraphic + ================= =============== -OML font encoding +.. [#mathnormal] ``\mathnormal`` is used by default for alphanumeric + characters in math mode. It sets the letter shape according to + character class and `math style`_. (`Table 1`_ shows the default + letter shapes for common math styles). + +.. [#roman] The specifier “roman” is ambiguous: roman shape + stands for *upright*, while roman type stands for *serif* (as + opposed to sans serif). + +Many packages define additional math alphabets (cf. `Table 6`_). + +In contrast to the similar named text commands, math alphabets are +*not* orthogonal, e. g., the code ``$\mathit{\mathbf{a}}$`` sets the +letter ``a`` in **upright** bold type. + + +.. _math version: + +Math versions +''''''''''''' + +The number of mathematical symbols exceeds the maximal number of +characters in a TeX font file by an order of magnitude. [#max]_ +Grouping math fonts with common characteristics in math versions +simplifies the setting of font attributes for mathematical expressions. + +*Math versions* set up “math symbol fonts” for non-alphanumeric +symbols and bind the `math alphabet`_ commands to fonts using default +values for non-specified font attributes. TeX limits the number of +(symbol + alphanumeric) fonts per math version to 16. + +The predefined math versions are ``normal`` and ``bold`` with the +defaults: + + .. class:: borderless + + ======== ========== ======== + .. ``normal`` ``bold`` + *type* serif serif + *weight* medium bold + *shape* upright upright + ======== ========== ======== + +Packages can define additional math versions, e. g., the wrisym_ package +defines a ``mono`` math version. A ``sans`` math version example is +available from a `comp.text.tex post +<http://newsgroups.derkeiler.com/Archive/Comp/comp.text.tex/2007-09/msg00181.html>`__ + +Math versions are intended for mathematical content in a special +context, e. g., a bold section heading. +Setting a math version resembles the individual selection of text +font attributes (bold, sans-serif, monospaced). + +Math versions can only be changed outside of math mode. The commands +``\boldsymbol`` (amsmath_) and ``\bm`` (bm_) behave like _`“in-line +math versions”`: they typeset their argument using the fonts of the +``bold`` math version but can be used inside math mode. + +Example: four ways to set the letter ``a`` in a bold +sans-serif font:: + + % Text Math: + \textbf{\textsf{a}} $\bm{\mathsf{a}}$ + \bfseries \textsf{a} \mathversion{bold} $\mathsf{a}$ + +.. [#max] Unicode provides about 2500 math characters. Font files used + by 8-bit TeX engines can hold up to 256 characters. The standard + math fonts adhere to the original limit of 128 characters. + +.. _math style: + +Math styles +''''''''''' + +A *math style* is a document-level feature that determines the default +letter shape in math mode (i. e. the shape attribute of letters in the +``\mathnormal`` `math alphabet`_). + +.. _Table 1: + +.. table:: Default letter shapes for common math styles + + ============ ======= ======= ======= ======= + math style latin Latin greek Greek + ============ ======= ======= ======= ======= + TeX it it it up + ISO it it it it + French it up up up + upright up up up up + ============ ======= ======= ======= ======= + +LaTeX defaults to the “TeX” math style (without naming it such). +Alternative math styles are introduced by extension packages +(`Table 2`_). + +.. _Table 2: + +.. table:: Packages providing math styles + + ============ ============= ================================== + math style Package Option(s) + ============ ============= ================================== + ISO fixmath_ + .. isomath + .. kpfonts_ slantedGreeks + .. lucimatx_ math-style=iso + .. mathdesign_ greekuppercase=italicized + .. mathpazo_ slantedGreek + .. mathptmx_ slantedGreek + .. unicode-math_ math-style=ISO + + French fourier_ upright + .. kpfonts_ frenchstyle (or upright) + .. lucimatx_ math-style=french + .. mathdesign_ uppercase=upright, greeklowercase=upright + .. unicode-math_ math-style=french + + upright eulervm_ + .. lucimatx_ math-style=upright + .. unicode-math_ math-style=upright + ============ ============= ================================== + + +Math letter fonts ~~~~~~~~~~~~~~~~~ +The equal treatment of Latin and Greek letters in the `ISO math +style`_ is simplest achieved with a font that contains all required +letters in one file. + +There is only one established LaTeX font encoding that contains Latin and +Greek letters, the `OML font encoding`_. The standard Greek font +encoding `T7` is just a “reserved name” and the de-facto standard +Greek text font encoding `LGR` has no Latin letters. Unfortunately, +`OML support`_ is limited to a few (mostly italic) fonts. + +OML font encoding +''''''''''''''''' + The `LaTeX font encodings` guide [encguide]_ names the OML encoding `TeX math italic` and defines: - The OML encoding contains italic Latin and Greek letters for use in + The _`OML` encoding contains italic Latin and Greek letters for use in mathematical formulas (typically used for variables) together with some symbols. @@ -394,9 +606,9 @@ The reference to *italic* shape is odd: alphabets in roman {n} as well as italic {it} shape without conflicts. -This seems to be a remnant of pre-NFSS times – there is only one OML -encoded font in Knuth's Computer Modern fonts: `Computer Modern Math -Italic` (cmmi) – rather than a necessary restriction. +This seems to be more a remnant of pre-NFSS times than a necessary +restriction – there is only one OML encoded font in Knuth's Computer +Modern fonts: `Computer Modern Math Italic` (cmmi). Proposals: @@ -415,16 +627,16 @@ Proposals: Math Letters`. The latter would also explain the acronym OML. -Support -''''''' +OML Support +''''''''''' Unfortunately, support for the OML encoding is missing for many font -families even if the base font contains all Greek letters. - +families even if the text font defines Greek letters. Supported font families can be found searching for ``oml*.fd`` files and grepping for ``DeclareFont.*OML`` in ``*.sty`` files. -`Table 1`_ lists the findings for a selection of TeXLive + some -additonally installed font packages. + +`Table 3`_ lists the findings for a selection of TeXLive 2009 + some +additionally installed font packages. * If there is an alias (substitution) from the text font to a math-variant, only the text font is listed. @@ -433,57 +645,57 @@ additonally installed font packages. however mapping to an italic variant of the OML encoded font. These are not listed as supporting ``m/n`` or ``bx/n`` here. -`Table 2`_ lists some fonts that define ``cmm`` as OML substitution. -With isomath, a better matching substitution can be set using the -rmdefault_ or sfdefault_ options. - -.. _Table 1: +.. _Table 3: -.. table:: _`Fonts that support the OML encoding` +.. table:: Font families supporting the OML encoding ============= =========================== ======= ======== ====== ======= Name Family m/it bx/it m/n bx/n ============= =========================== ======= ======== ====== ======= - aer AE (Almost European) x x - antt Antykwa Torunska x x - cmr Computer Modern Roman x x - ccr Concrete x x - cmbr Computer Modern Bright x x - hlh Lucida x x - hfor CM with old-style digits x x - iwona Iwona (sans serif) x x - jkp Kepler Serif x x - jkpl Kepler Serif x x - jkpvos Kepler Serif x x - jkplvos Kepler Serif x x - llcmm LXfonts (sans serif) x x - lmr Latin Modern Roman x x - mak Kerkis x - kurier Kurier x x - mdbch Math Design Charter x x x x - mdput Math Design Utopia x x x x - mdugm Math Design Garamond x x x x - neohellenic GFS Neohellenic x - plcm CM (PLaTeX) x - ptmom Times (Omega or MB-Times) x x - ptmomu Times (Omega or MB-Times) x x - ptmcm Times (psfont) x - pxr Palatino (pxfonts) x x - qpl Palatino/Pagella (qpxmath) x x - qtm Times/Termes (qtxmath) x x - txr Times (txfonts) x x - udidot Didot (gfsdidot) x - ywclm (greektex) x x - zavm Arev (Vera Sans-Serif) x x - zesfcm (efont) x - zplm Palatino (mathpazo) x x - zpple Palatino x x - ztmcm Times (mathptmx) x - zer Computer Modern (zefonts) x x + aer AE (Almost European) ✓ ✓ + antt Antykwa Torunska ✓ ✓ + cmr Computer Modern Roman ✓ ✓ + ccr Concrete ✓ ✓ + cmbr Computer Modern Bright ✓ ✓ + hlh Lucida ✓ ✓ + hfor CM with old-style digits ✓ ✓ + iwona Iwona (sans serif) ✓ ✓ + jkp Kepler Serif ✓ ✓ + jkpl Kepler Serif ✓ ✓ + jkpvos Kepler Serif ✓ ✓ + jkplvos Kepler Serif ✓ ✓ + llcmm LX Fonts (sans serif) ✓ ✓ + lmr Latin Modern Roman ✓ ✓ + mak Kerkis ✓ + kurier Kurier ✓ ✓ + mdbch Math Design Charter ✓ ✓ ✓ ✓ + mdput Math Design Utopia ✓ ✓ ✓ ✓ + mdugm Math Design Garamond ✓ ✓ ✓ ✓ + neohellenic GFS Neohellenic ✓ + plcm CM (PLaTeX) ✓ + ptmom Times (Omega or MB-Times) ✓ ✓ + ptmomu Times (Omega or MB-Times) ✓ ✓ + ptmcm Times (psfont) ✓ + pxr Palatino (pxfonts) ✓ ✓ + qpl Palatino/Pagella (qpxmath) ✓ ✓ + qtm Times/Termes (qtxmath) ✓ ✓ + txr Times (txfonts) ✓ ✓ + udidot Didot (gfsdidot) ✓ + ywclm (greektex) ✓ ✓ + zavm Arev (Vera Sans-Serif) ✓ ✓ + zesfcm (efont) ✓ + zplm Palatino (mathpazo) ✓ ✓ + zpple Palatino ✓ ✓ + ztmcm Times (mathptmv) ✓ + zer Computer Modern (zefonts) ✓ ✓ ============= =========================== ======= ======== ====== ======= -.. _Table 2: +`Table 4`_ lists some fonts that define ``cmm`` as OML substitution. +With `isomath`, a better matching substitution can be set using the +rmdefault_ or sfdefault_ options. + +.. _Table 4: .. table:: Non-CM fonts with ``cmm`` as OML substitution @@ -513,189 +725,345 @@ rmdefault_ or sfdefault_ options. ============= =============================== -Math in Unicode -~~~~~~~~~~~~~~~ +Unicode mathematical typesetting +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The technical report [tr25]_ presents an in-depth discussion of the +mathematics character repertoire of the Unicode Standard as well as +mathematical notation in general. -Basis for the definition of the Unicode block -`mathematical alphanumeric symbols`_, was the consideration outlined -in [beeton:2000]_: - - These alphabets are needed for proper composition - of mathematics: - - * lightface upright Latin, Greek and digits - * boldface upright Latin, Greek and digits - * lightface italic Latin, Greek and digits - * boldface italic Latin, Greek and digits - * script - * fraktur - * bold fraktur - * open-face (blackboard bold) including digits - * lightface upright sans serif Latin and digits - * lightface italic sans serif Latin - * boldface upright sans serif Latin, Greek, and digits - * boldface italic sans serif Latin and Greek - * monospace Latin and digits - - Except for the lightface upright letters and digits, - which are to be encoded using the base Unicodes - (ASCII for the Latin letters and digits), the - alphanumerics are to be placed in a tightly packed - block (U+D400–D7FF) in plane 1, so that they can - be used for math (most likely via entity names in - MathML), but will be very difficult to access for - other purposes. - -The technical report `Unicode Support for Mathematics` [tr25]_ lists -“alphanumeric symbols encountered in mathematics” in table 2: -`Mathematical Alphabets`. - -The Unicode block `mathematical alphanumeric symbols`_ provides style -variants for Latin and Greek letters and digits. It is labelled “to be -used for mathematical variables where style variations are important -semantically”. `Table 3`_ gives a survey of current LaTeX support. - -.. _table 3: - -.. table:: Styles in the `mathematical alphanumeric symbols`_ - Unicode block - :class: booktab - - ================= ======= ================= ========================== - Style Symbols LaTeX macro Package, Comment - [#]_ - ================= ======= ================= ========================== - bold LGD ``\mathbf`` no Greek - - italic LG ``\mathit`` no Greek - \ ``\mathnormal`` small Greek but - old-style digits (upright) - bold italic LG ``\mathbold`` fixmath and friends - \ ``\boldsymbol`` ams - script L ``\mathcal`` or only capital Latin - (calligraphic) ``\mathscr`` - bold script L - fraktur L ``\mathfrak`` eufrak - double-struck L D ``\mathbb`` bbold, mathbbol, - mbboard - \ ``\mathbbm`` bbm - \ ``\mathds`` dsfont - bold fraktur L - sans-serif L D ``\mathsf`` no Greek - sans-serif bold LGD - sans-serif italic L ``\mathsans`` isomath - sans bold italic LG ``\mathboldsans`` isomath - monospace L D ``\mathtt`` no Greek - ----------------- ------- ----------------- -------------------------- - *Not in the mathematical alphanumeric symbols block*: - ---------------------------------------------------------------------- - plain LGD ``\mathrm`` no Greek - \ ``\mathnormal`` capital Greek - ================= ======= ================= ========================== - -.. [#] LGD: **L**\ atin, **G**\ reek, **D**\ igits +This section compares `math font selection`_ in LaTeX and Unicode. +It suggests a set of 14 math alphabets that covers all Unicode +`mathematical alphanumeric symbols`_ and discusses compatibility +issues between math typesetting with traditional (8-bit) TeX engines +versus `the unicode-math package`_ for Unicode-enabled TeX engines +(XeTeX, LuaTeX). +.. _mathematical alphanumeric symbols: + +Unicode math alphabets +'''''''''''''''''''''' + +Chapter 2 `Mathematical Character Repertoire` of [tr25]_ lists 14 +`Mathematical Alphabets` in Table 2.1. These mathematical alphabets are a +superset of the predefined `math alphabets`_ in the LaTeX core. + +Unicode assignes code points to most letters of the mathematical +alphabets in the `mathematical alphanumeric symbols Unicode block`_. +The plain (upright, serifed) letters have been unified with the +existing characters in the Basic Latin and Greek blocks. + +`Table 5`_ maps the 14 Unicode mathematical alphabets to LaTeX commands +according to the `naming scheme`_ below. `Table 6`_ lists the status of +LaTeX support for the mathematical alphanumeric symbols. Full support is +provided by `the unicode-math package`_. + +.. _table 5: + +.. table:: Mapping Unicode `mathematical alphanumeric symbols`_ to LaTeX + math alphabets. + + ========== ======== ============= ================== =============== + serifs weight shape symbols math alphabet + ========== ======== ============= ================== =============== + *serif* *medium* *upright* Latin/Greek/digits ``\mathrm`` + [#up]_ + .. bold Latin/Greek/digits ``\mathbf`` + .. italic Latin/Greek ``\mathit`` + .. bold italic Latin/Greek ``\mathbfit`` + .. script Latin ``\mathcal`` + .. bold script Latin ``\mathbfcal`` + .. fraktur Latin ``\mathfrak`` + .. double-struck Latin/digits ``\mathbb`` + .. bold fraktur Latin ``\mathbffrak`` + sans serif Latin/digits ``\mathsf`` + sans serif bold Latin/Greek/digits ``\mathsfbf`` + sans serif italic Latin ``\mathsfit`` + sans serif bold italic Latin/Greek ``\mathsfbfit`` + .. monospace Latin/digits ``\mathtt`` + ========== ======== ============= ================== =============== + +.. [#up] plain standard characters outside the + `mathematical alphanumeric symbols` Unicode block. + +Naming scheme +````````````` + +The naming scheme is an extension of the predefined `math alphabet`_ +commands with the established short-cuts: + + .. class:: borderless + + ===== ================================ + bf bold + it italic + cal script (calligraphic) + frak fraktur + bb double-struck (blackboard bold) + sf sans serif + ===== ================================ + +combined to commands in the form ``\math<type><weight><shape>``. + +The <*type*>, <*weight*>, and <*shape*> specifiers are optional +(defaults depend on the `math version`_). Their order matches the +names of Unicode `Mathematical Alphanumeric Symbols`_. + +Examples:: + + \mathbf{d} % MATHEMATICAL BOLD SMALL D + \mathsfbfit{d} % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL D. + + +.. _Table 6: + +.. table:: LaTeX support for `mathematical alphanumeric symbols`_. + + ============ ========================= =========================== + style math alphabet package, comment + ============ ========================= =========================== + plain [#up]_ ``\mathrm`` predefined [#no-g]_ + .. ``\mathup`` unicode-math_ + bf ``\mathbf`` predefined [#no-g]_ + it ``\mathit`` predefined [#no-g]_ + bf it ``\mathbfit`` isomath [#digits]_ + .. ``\mathbold`` fixmath_, mathpazo_, + mathptmx_, tmmath_ + [#digits]_ + .. ``\boldsymbol`` amsmath_ + .. ``\bm`` bm_ + cal ``\mathcal`` predefined [#script]_ + .. ``\mathscr`` mathrsfs_, euscript_, + mathdesign_ + bf cal ``\mathbfscr`` unicode-math_ + frak ``\mathfrak`` amssymb_, amsfonts_, eufrak_ + bf frak ``\mathbffrak`` unicode-math_ + bb ``\mathbb`` amssymb_, bbold_, + mathbbol_, mbboard_, + mathpazo_ + .. ``\mathbbm`` bbm_ + .. ``\mathds`` dsfont (doublestoke_) + sf ``\mathsf`` predefined [#no-g]_ + sf bf ``\mathbfsfup`` unicode-math_ + sf it ``\mathsfit`` isomath [#digits]_ + sf bf it ``\mathsfbfit`` isomath [#digits]_ + .. ``\mathbold`` cmbright_, hvmath_ + .. ``\mathbfsfit`` unicode-math_ + tt ``\mathtt`` predefined [#no-g]_ + ============ ========================= =========================== + +.. [#no-g] no small Greek, full Greek with `OMLmath*`_ options. +.. [#digits] Some italic math fonts (e. g., cmr, cmbr) have old-style + numbers in place of italic digits. +.. [#script] no small Latin, formal script with calrsfs_, eucal_, fourier_ + + +The unicode-math package +'''''''''''''''''''''''' + +Users of UTF-8 enabled TeX engines (XeTeX, LuaTeX) can typeset +mathematics with the experimental unicode-math_ package by Will +Robertson. It provides a LaTeX interface to OpenType fonts with math +support, e. g., `Asana Math`_, Cambria Math, `New Euler`_ or XITS_, with +commands to access the complete mathematics character repertoire of the +Unicode Standard + +LaTeX `math font selection`_ methods with unicode-math: + +`math alphabets`_ + map to a range of the `mathematical alphanumeric symbols`_ block in the + current font (or a substitution defined with the ``range`` math font + option). + + Some command names differ from the `predefined math alphabets`_ or the + above `naming scheme`_: + + =============== =============== + LaTeX unicode-math + =============== =============== + ``\mathbf`` ``\mathbfup`` + ``\mathsf`` ``\mathsfup`` + ``\mathsfbf`` ``\mathbfsfup`` + ``\mathsfbfit`` ``\mathbfsfit`` + =============== =============== + + With unicode-math, ``\mathbf``, ``\mathsf``, and ``\mathsfbf`` + behave similar to `“in-line math versions”`_: they consider the + `math style`_ for upright vs. italic shape. Compatibility can be + achieved via the options ``bold-style=upright`` and + ``sans-style=upright``. + + ``\mathbfsfit`` reverses the order of the ``sf`` and ``bf`` selectors, + so that, e. g., the Unicode character `MATHEMATICAL SANS-SERIF BOLD + ITALIC CAPITAL A` is selected by the non-mnemonic ``\mathbfsfit{A}``. + +`math versions`_ + are not directly supported but easy to emulate. + + As Unicode fonts can hold all math symbols in a single font file, a + single ``\setmathfont[<font features>]{<font name>}`` can replace + the ``\mathversion{<mathversion>}`` command if a complete OpenType + math font in the desired version is available. + + + However, complete OpenType math fonts are rare. Therefore + unicode-math supports using multiple fonts with the ``range`` + option. This way one can emulate, e. g., the ``bold`` math version + via:: + + \renewcommand{\boldmath}{% + \setmathfont{XITS Bold}% + \setmathfont[range={"1D400-"1F020}]{XITS Math}% + \setmathfont[range=\mathup->\mathbfup]{XITS Math}% + \setmathfont[range=\mathsfit->\mathbfsfit]{XITS Math}% + % ... + } + + It would be nice if unicode-math could provide a ``\newmathversion`` + command similar to the ``\newfontfamily`` in fontspec_ for such setups. + + For alphanumerical characters, the ``\mathbf``, ``\mathsf``, and + ``\mathsfbf`` behave like `“in-line math versions”`_. + +`math styles`_ + are supported with the ``math-style`` package option that accepts the + values ``TeX``, ``ISO``, ``french``, ``upright``, and ``literal``. Conclusions and outlook ~~~~~~~~~~~~~~~~~~~~~~~ -It is hoped, that in the future more fonts families will support the OML -encoding in normal and bold weight as well as upright and italic shape. -This would be a major step towards a LaTeX equivalent of the `Mathematical -Alphanumeric Symbols`_ Unicode block. +It is hoped, that in the future more fonts families will support the +OML encoding in normal and bold weight as well as upright and italic +shape. This would be a major step towards a LaTeX equivalent of the +`mathematical alphanumeric symbols`_ Unicode block. This should be (relatively) easy to achieve via virtual fonts when the glyphs for the Greek letters already exist. Examples are Latin Modern, -Kerkis, GFS-Neohellenic, LX-Fonts and KP-Serif. +Kerkis, GFS Neohellenic, LX Fonts and KP-Serif. -Alternatively, the T7 encoding could be used for math alphabets (if it ever -happens to materialise). +Alternatively, the T7 encoding could be used for math alphabets (if it +ever happens to materialise). -Upright small Greek letters in ``\mathrm`` would enable the specification of -the constant pi, Myons, Pions, alpha-particles, photons, and neutrinos -without special packages. (With mathdesign_, this is already possible -today.) +Upright small Greek letters in ``\mathrm`` would enable the +specification of the constant pi, Myons, Pions, alpha-particles, +photons, and neutrinos with `math alphabets`_. (With mathdesign_ +fonts, this is already possible today.) +With the development of the unicode-math_ package, an interesting +alternative for ISO-conforming math typesetting became available to +users of Unicode-enabled TeX engines (XeTeX or LuaTeX). References ---------- -.. [ISO-31] International Standard 31 `Quantities and units`, - (ISO 31-0:1992 to ISO 31-14:1992): - http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_tc_browse.htm?commid=46202 +.. [ISO-80000-2] `Quantities and units – Part 2: Mathematical signs + and symbols to be used in the natural sciences and technology`: + http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=31887. + +.. [ISO-31] `Quantities and units`, Superseded by [ISO-80000]. -.. [typefaces] `Typefaces for Symbols in Scientific Manuscripts`: - http://physics.nist.gov/Document/typefaces.pdf +.. [typefaces] National Institute of Standards and Technology (NIST_), + `Typefaces for Symbols in Scientific Manuscripts`: + http://physics.nist.gov/cuu/pdf/typefaces.pdf. -.. [checklist] `SI Unit rules and style conventions` +.. [checklist] National Institute of Standards and Technology (NIST_), + `SI Unit rules and style conventions` Check List for Reviewing Manuscripts: - http://physics.nist.gov/cuu/Units/checklist.html + http://physics.nist.gov/cuu/Units/checklist.html. -.. [fonts_for_symbols] `On the use of italic and roman fonts for symbols +.. [fonts_for_symbols] International Union of Pure and Applied + Chemistry (IUPAC_), `On the use of italic and roman fonts for symbols in scientific text`, (Revised December 1999): - http://old.iupac.org/standing/idcns/fonts_for_symbols.html + http://old.iupac.org/standing/idcns/fonts_for_symbols.html. + +.. [SI] Bureau international des poids et mesures (BIPM_), + `The International System of Units (SI)`: + http://www.bipm.org/en/si/si_brochure/. + +.. [Green-Book] International Union of Pure and Applied Chemistry (IUPAC_), + `Quantities, Units and Symbols in Physical Chemistry`, + 3rd edition, RSC Publishing, Cambridge 2007: + [ISBN 0 85404 433 7; ISBN-13 978 0 85404 433 7]. -.. [SI-brochure] `The International System of Units (SI)`: - http://www.bipm.org/en/si/si_brochure/ +.. [Red-Book] International Union of Pure and Applied Physics (IUPAP_), + `Symbols, Units, Nomenclature and Fundamental Constants in Physics`: + http://metrology.wordpress.com/measurement-process-index/iupap-red-book/index-iupap-red-book/. -.. [encguide] `LaTeX font encodings`: - http://mirror.ctan.org/macros/latex/doc/encguide.pdf +.. [encguide] Frank Mittelbach, Robin Fairbairns, Werner Lemberg, + LaTeX3 Project Team, `LaTeX font encodings`: + http://mirror.ctan.org/macros/latex/doc/encguide.pdf. -.. [fntguide] `LaTeX 2e font selection`: - http://mirror.ctan.org/macros/latex/doc/fntguide.pdf +.. [fntguide] LaTeX3 Project Team, `LaTeX 2e font selection`: + http://mirror.ctan.org/macros/latex/doc/fntguide.pdf. -.. [tr25] `Unicode Support for Mathematics`, Unicode Technical Report #25: - http://www.unicode.org/reports/tr25/ +.. [tr25] Barbara Beeton, Asmus Freytag, Murray Sargent III, + `Unicode Support for Mathematics`, Unicode Technical Report #25: + http://www.unicode.org/reports/tr25/. .. [beeton:2000] Barbara Beeton: `Unicode and math, a combination whose time has come – Finally!`, - TUGBoat, 21#3, 2000. available: + TUGBoat, 21#3, 2000: http://www.tug.org/TUGboat/Articles/tb21-3/tb68beet.pdf. .. see also - [koma-mail] Custom font substitution: http://www.komascript.de/node/823 - - [Green-Book] `Quantities, Units and Symbols in Physical Chemistry`, - 3rd edition, RSC Publishing, Cambridge 2007: - [ISBN 0 85404 433 7; ISBN-13 978 0 85404 433 7] + [koma-mail] Custom font substitution: http://www.komascript.de/node/823. .. Links ===== -.. Print external links as footnotes (currently errors with LaTeX) - .. target-notes:: - -.. _LaTeX Project Public License: http://www.latex-project.org/lppl.txt .. _BIPM: http://www.bipm.org/ .. _IUPAC: http://iupac.org/ .. _IUPAP: http://www.iupap.org/ +.. _LaTeX Project Public License: http://www.latex-project.org/lppl.txt +.. _Jens-Peer Kuska: http://phong.informatik.uni-leipzig.de/~kuska/ .. _NIST: http://physics.nist.gov/ -.. _mathematical alphanumeric symbols: +.. _mathematical alphanumeric symbols unicode block: http://www.unicode.org/charts/PDF/U1D400.pdf -.. _amsbsy: http://dante.ctan.org/CTAN/help/Catalogue/entries/amsbsy.html -.. _amsmath: http://dante.ctan.org/CTAN/help/Catalogue/entries/amsmath.html -.. _arev: http://dante.ctan.org/CTAN/help/Catalogue/entries/arev.html -.. _bm: http://dante.ctan.org/CTAN/help/Catalogue/entries/bm.html -.. _cmbright: http://dante.ctan.org/CTAN/help/Catalogue/entries/cmbright.html -.. _eulervm: http://dante.ctan.org/CTAN/help/Catalogue/entries/eulervm.html -.. _fixmath: http://dante.ctan.org/CTAN/help/Catalogue/entries/fixmath.html -.. _fix-cm: http://dante.ctan.org/CTAN/help/Catalogue/entries/fix-cm.html -.. _fourier: http://dante.ctan.org/CTAN/help/Catalogue/entries/fourier.html -.. _hvmath: http://dante.ctan.org/CTAN/help/Catalogue/entries/hvmath.html -.. _hfbright: http://dante.ctan.org/CTAN/help/Catalogue/entries/hfbright.html -.. _ifthen: http://dante.ctan.org/CTAN/help/Catalogue/entries/ifthen.html -.. _iwona: http://dante.ctan.org/CTAN/help/Catalogue/entries/iwona.html -.. _kpfonts: http://dante.ctan.org/CTAN/help/Catalogue/entries/kpfonts.html -.. _kvoptions: http://dante.ctan.org/CTAN/help/Catalogue/entries/kvoptions.html -.. _keyval: http://dante.ctan.org/CTAN/help/Catalogue/entries/keyval.html -.. _lxfonts: http://dante.ctan.org/CTAN/help/Catalogue/entries/lxfonts.html -.. _mathdesign: http://dante.ctan.org/CTAN/help/Catalogue/entries/mathdesign.html -.. _mathpazo: http://dante.ctan.org/CTAN/help/Catalogue/entries/mathpazo.html -.. _oberdiek: http://dante.ctan.org/CTAN/help/Catalogue/entries/oberdiek.html +.. _amsbsy: http://mirror.ctan.org/help/Catalogue/entries/amsbsy.html +.. _amsfonts: http://mirror.ctan.org/help/Catalogue/entries/amsfonts.html +.. _amsmath: http://mirror.ctan.org/help/Catalogue/entries/amsmath.html +.. _amssymb: http://mirror.ctan.org/help/Catalogue/entries/amssymb.html +.. _arev: http://mirror.ctan.org/help/Catalogue/entries/arev.html +.. _Asana Math: http://mirror.ctan.org/help/Catalogue/entries/asana-math.html +.. _bm: http://mirror.ctan.org/help/Catalogue/entries/bm.html +.. _bbm: http://mirror.ctan.org/help/Catalogue/entries/bbm.html +.. _bbold: http://mirror.ctan.org/help/Catalogue/entries/bbold.html +.. _calrsfs: http://mirror.ctan.org/help/Catalogue/entries/calrsfs.html +.. _cmbright: http://mirror.ctan.org/help/Catalogue/entries/cmbright.html +.. _doublestoke: http://mirror.ctan.org/help/Catalogue/entries/doublestoke.html +.. _eucal: http://mirror.ctan.org/help/Catalogue/entries/eucal.html +.. _eufrak: http://mirror.ctan.org/help/Catalogue/entries/eufrak.html +.. _eulervm: http://mirror.ctan.org/help/Catalogue/entries/eulervm.html +.. _euscript: http://mirror.ctan.org/help/Catalogue/entries/euscript.html +.. _fixmath: http://mirror.ctan.org/help/Catalogue/entries/fixmath.html +.. _fix-cm: http://mirror.ctan.org/help/Catalogue/entries/fix-cm.html +.. _fourier: http://mirror.ctan.org/help/Catalogue/entries/fourier.html +.. _fontspec: http://mirror.ctan.org/help/Catalogue/entries/fontspec.html +.. _hvmath: http://mirror.ctan.org/help/Catalogue/entries/hvmath.html +.. _hfbright: http://mirror.ctan.org/help/Catalogue/entries/hfbright.html +.. _ifthen: http://mirror.ctan.org/help/Catalogue/entries/ifthen.html +.. _iwona: http://mirror.ctan.org/help/Catalogue/entries/iwona.html +.. _kpfonts: http://mirror.ctan.org/help/Catalogue/entries/kpfonts.html +.. _kvoptions: http://mirror.ctan.org/help/Catalogue/entries/kvoptions.html +.. _keyval: http://mirror.ctan.org/help/Catalogue/entries/keyval.html +.. _lxfonts: http://mirror.ctan.org/help/Catalogue/entries/lxfonts.html +.. _lucimatx: http://pctex.com/files/managed/b/bf/lucimatxAbbrev.pdf +.. _mathbbol: http://mirror.ctan.org/help/Catalogue/entries/mathbbol.html +.. _mbboard: http://mirror.ctan.org/help/Catalogue/entries/mbboard.html +.. _mathdesign: http://mirror.ctan.org/help/Catalogue/entries/mathdesign.html +.. _mathpazo: http://mirror.ctan.org/help/Catalogue/entries/mathpazo.html +.. _mathptmx: http://mirror.ctan.org/help/Catalogue/entries/mathptmx.html +.. _mathrsfs: http://mirror.ctan.org/help/Catalogue/entries/mathrsfs.html +.. _New Euler: https://github.com/khaledhosny/euler-otf +.. _pxfonts: http://mirror.ctan.org/help/Catalogue/entries/pxfonts.html .. _sfmath: http://dtrx.de/od/tex/sfmath.html -.. _pxfonts: http://dante.ctan.org/CTAN/help/Catalogue/entries/pxfonts.html -.. _tmmath: http://dante.ctan.org/CTAN/help/Catalogue/entries/tmmath.html -.. _txfonts: http://dante.ctan.org/CTAN/help/Catalogue/entries/txfonts.html +.. _tmmath: http://mirror.ctan.org/help/Catalogue/entries/tmmath.html +.. _txfonts: http://mirror.ctan.org/help/Catalogue/entries/txfonts.html +.. _unicode-math: + http://mirror.ctan.org/help/Catalogue/entries/unicode-math.html +.. _upgreek: http://mirror.ctan.org/help/Catalogue/entries/upgreek.html +.. _wrisym: http://phong.informatik.uni-leipzig.de/~kuska/wri_texmf_4.2.zip +.. _XITS: http://mirror.ctan.org/help/Catalogue/entries/xits.html diff --git a/Master/texmf-dist/tex/latex/isomath/isomath.sty b/Master/texmf-dist/tex/latex/isomath/isomath.sty index 2686cbcefba..55ee4f50ac5 100644 --- a/Master/texmf-dist/tex/latex/isomath/isomath.sty +++ b/Master/texmf-dist/tex/latex/isomath/isomath.sty @@ -1,6 +1,11 @@ % isomath.sty: Math for scientists % ******************************** % +% :Abstract: The `isomath` package enables formatting Greek and Latin +% letters as symbols for vectors, matrices, and tensors +% in the typefaces recommended for scientific papers +% by the International Standard ISO 80000-2. +% % :Copyright: © 2008, 2010 Günter Milde % :Licence: This work may be distributed and/or modified under the % conditions of the `LaTeX Project Public License`_, either @@ -11,13 +16,10 @@ \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{isomath} -[2010/08/23 v0.4 Mathematics conformant to ISO 31.] +[2011/02/01 v0.5 ISO math style] -% :Abstract: The `isomath` package enables formatting Greek and Latin -% letters as symbols for vectors, matrices, and tensors -% in the typefaces recommended for scientific papers -% by the International Standard ISO 31. -% +% .. contents:: +% % History % ======= % @@ -35,10 +37,12 @@ % 0.4 2010-08-23 split user documentation from literate source; % \ option ``scaled``; % \ documentation update. +% 0.5 2011-01-04 math alphabet names matching Unicode; +% \ documentation review and extension; +% \ bold alphabet variants in ``bold`` math version; +% \ upright numbers with ``\vectorsym``. % === ============ ======================================================== % -% .. contents:: -% % % Requirements % ============ @@ -46,13 +50,12 @@ % fixmath.sty % ----------- % The package fixmath_ by Walter Schmidt defines Greek letters as symbols -% of type ``\mathalpha`` and takes them from the ``letters`` SymbolFont in +% of type ``\mathalpha`` and takes them from the ``letters`` symbol font in % ``\mathnormal`` (as opposed to ``operators`` in ``fontmath.ltx``). % % fixmath_ also defines the ``\mathbold`` alphabet, setting it to ``cmm``. -% This definition will be overwritten with a configurable value for -% the font family below. -% :: +% This definition is be overwritten with a configurable value for +% the font family below. :: \RequirePackage{fixmath} @@ -91,9 +94,6 @@ % :: \DeclareStringOption[1.0]{scaled} -% Use a key definition like in inconsolata.sty (cf. also helvet.sty)? -% \define@key{isomath}{scaled}[1.0]{\def\isomath@scaled{s*[#1]}} - % reuseMathAlphabets % ------------------ @@ -107,28 +107,29 @@ \DeclareBoolOption{reuseMathAlphabets} - % OMLmath* % -------- -% The following options cause `isomath` to (re)define the corresponding +% The following options cause `isomath` to (re)define the corresponding % `math alphabets`_ in OML encoding:: \DeclareBoolOption{OMLmathrm} \DeclareBoolOption{OMLmathbf} \DeclareBoolOption{OMLmathsf} -\DeclareBoolOption{OMLmathsans} +\DeclareBoolOption{OMLmathsfit} \DeclareBoolOption{OMLmathtt} +% backwards compatibility option alias +\DeclareVoidOption{OMLmathsans}{\isomath@OMLmathsfittrue} % Setting these options enables access to small Greek letters in -% different shapes with e.g. ``\mathrm{\pi}`` **if an OML encoded font -% is available**. Currently, only the mathdesign_ fonts support roman in +% different shapes with e.g. ``\mathrm{\pi}`` *if an OML encoded font +% is available*. Currently, only the mathdesign_ fonts support roman in % OML encoding. % % With some packages, these options can result in a “too many math alphabets % used in version normal” error. % -% Process Options -% --------------- +% -------------------------------------------------------- +% % Process the options with ``kvoptions`` extensions:: \ProcessKeyvalOptions* @@ -137,66 +138,80 @@ % Declarations % ============ % -% % Math alphabets % -------------- % % In math, LaTeX uses “absolute” fontnames instead of a selection by % family, shape, and weight because typefaces have a semantic meaning -% (see fntguide_). +% [fntguide]_. % % `isomath` defines a math alphabet for every required font variant and % optionally re-defines the standard math alphabets in `OML` font encoding. % % Unfortunately, the number of math alphabets in one math version is -% limited to 16, so we have to be carefull not to exceed this. The -% ``reuseMathAlphabets`` option reduces this number by two, with the -% side effect of italic shape with ``\mathbf`` and ``\mathsf`` commands:: +% limited to 16, so we have to be careful not to exceed this. The +% ``reuseMathAlphabets`` option reduces the number of math alphabet +% definitions by two, with the side effect of italic shape with +% ``\mathbf`` and ``\mathsf`` commands:: \ifisomath@reuseMathAlphabets \PackageWarningNoLine{isomath}{% - Re-using math alphabet `mathsf' for \protect \mathboldsans - \MessageBreak and `mathbf' for \protect \mathbold + Re-using math alphabet `mathsf' for \protect \mathsfbfit + \MessageBreak and `mathbf' for \protect \mathbfit } \fi -% mathbold +% mathbfit % ~~~~~~~~ -% The *italic bold* math alphabet is named ``\mathbold`` like in -% fixmath_ and related packages. With the reuseMathAlphabets_ option, -% the roman bold math alphabet ``\mathbf`` is redefined and -% ``\mathbold`` made an alias (overwriting existing definitions):: +% The *bold italic* math alphabet is named ``\mathbfit`` like in +% unicode-math_ (with an alias ``\mathbold`` like in fixmath_ and +% related packages). With the reuseMathAlphabets_ option, the roman bold +% math alphabet ``\mathbf`` is redefined and ``\mathbfit`` made an +% alias. The series selector ``bx`` (bold extended) is used, because it +% is better supported than ``b``. (Is there any LaTeX math font +% distinguishing between ``b`` and ``bx``?) :: \ifisomath@reuseMathAlphabets \DeclareMathAlphabet{\mathbf}{OML}{\isomath@rmdefault}{bx}{it} - \def\mathbold{\mathbf} + \def\mathbfit{\mathbf} \else - \DeclareMathAlphabet{\mathbold}{OML}{\isomath@rmdefault}{bx}{it} + \DeclareMathAlphabet{\mathbfit}{OML}{\isomath@rmdefault}{bx}{it} \fi -% mathsans -% ~~~~~~~~ -% For *italic sans-serif*, we define a new alphabet named ``\mathsans`` (in -% analogy to ``\mathbold``). As this typeface is not required by ISO 31, it -% is only defined if the ``OMLmathsans`` option is set:: +% alias (overwriting the definition from fixmath):: -\ifisomath@OMLmathsans - \DeclareMathAlphabet{\mathsans}{OML}{\isomath@sfdefault}{m}{it} +\renewcommand{\mathbold}{\mathbfit} + +% mathsfit +% ~~~~~~~~ +% For *sans-serif italic*, we define a new alphabet ``\mathsfit`` (with +% the alias ``\mathsans`` in analogy to ``\mathbold``). As this typeface +% is not required by ISO 80000-2 and TeX limits the number of math alphabets +% to 16 per math version, it is only defined if the ``OMLmathsfit`` or +% ``OMLmathsans`` option is set:: + +\ifisomath@OMLmathsfit + \DeclareMathAlphabet{\mathsfit}{OML}{\isomath@sfdefault}{m}{it} + \SetMathAlphabet{\mathsfit}{bold}{OML}{\isomath@sfdefault}{bx}{it} + \def\mathsans{\mathsfit} \fi -% mathboldsans +% mathsfbfit % ~~~~~~~~~~~~ -% A *sans serif slanted bold* alphabet is needed for tensor symbols. +% The *sans serif bold italic* alphabet is used for tensor symbols. +% Following the Unicode math name scheme it is called +% ``\mathsfbfit``(with the backwards compatibility alias ``\mathboldsans``). % With the reuseMathAlphabets_ option, the upright sans serif math -% alphabet ``\mathsf`` is redefined and ``\mathboldsans`` made an -% alias:: +% alphabet ``\mathsf`` is redefined and ``\mathsfbfit`` made an +% alias to it:: \ifisomath@reuseMathAlphabets \DeclareMathAlphabet{\mathsf}{OML}{\isomath@sfdefault}{bx}{it} - \def\mathboldsans{\mathsf} + \def\mathsfbfit{\mathsf} \else - \DeclareMathAlphabet{\mathboldsans}{OML}{\isomath@sfdefault}{bx}{it} + \DeclareMathAlphabet{\mathsfbfit}{OML}{\isomath@sfdefault}{bx}{it} \fi +\def\mathboldsans{\mathsfbfit} % Redefine standard alphabets % ~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -206,68 +221,78 @@ \ifisomath@OMLmathrm \SetMathAlphabet{\mathrm}{normal}{OML}{\isomath@rmdefault}{m}{n} + \SetMathAlphabet{\mathrm}{bold}{OML}{\isomath@rmdefault}{bx}{n} \fi \ifisomath@OMLmathbf - \SetMathAlphabet{\mathbf}{normal}{OML}{\isomath@rmdefault}{b}{n} + \SetMathAlphabet{\mathbf}{normal}{OML}{\isomath@rmdefault}{bx}{n} \fi \ifisomath@OMLmathsf \SetMathAlphabet{\mathsf}{normal}{OML}{\isomath@sfdefault}{m}{n} + \SetMathAlphabet{\mathsf}{bold}{OML}{\isomath@sfdefault}{bx}{n} \fi \ifisomath@OMLmathtt \SetMathAlphabet{\mathtt}{normal}{OML}{\ttdefault}{m}{n} + \SetMathAlphabet{\mathtt}{bold}{OML}{\ttdefault}{bx}{n} \fi % Command aliases % --------------- % % The following macros allow semantic markup of mathematical symbols. -% The argument is typeset as proposed by ISO 31 and +% The argument is typeset as proposed by ISO 80000-2 and % `Typefaces for Symbols in Scientific Manuscripts`_. % % \\vectorsym % ~~~~~~~~~~~ -% Symbols for vectors are typeset *boldface italic*:: - -\newcommand{\vectorsym}{\mathbold} +% Alphabetic vectors symbols are typeset *boldface italic* while numeric +% ones (e.g. zero vector) are typeset *boldface upright*. The number +% test is a simplified version from the LaTeX FAQ +% `Is the argument a number? +% <http://mail.tug.org/texlive/Contents/live/texmf-dist/doc/generic/FAQ-en/html/FAQ-isitanum.html>`__ +% It fails if a number is followed by a non-number, e.g. ``\vectorsym{1a}``, +% but this is no valid vector symbol and would look strange with the +% ``\vec`` accent, too. :: + +\providecommand*{\vectorsym}[1]{% + \ifnum9<1#1% + \mathbf{#1}% + \else% + \mathbfit{#1}% + \fi} % For easier writing or to make existing documents conform to the standard, % you might want to re-define the standard ``\vec`` command after loading this -% package (cf. the Examples section of the documentation). -% -% Attention: Some fonts (CM, Latin Modern, ...) have old-style figures in -% their math italic version. The Null vector must not be written ``\vec{0}`` -% in this case. Use e.g. ``\mathbf{0}``, ``\boldsymbol{0}`` (with AMS math) or -% ``\bm{0}`` (with boldmath). The latter two variants provide also a failsafe -% alias for a bold vector. +% package. % % \\matrixsym % ~~~~~~~~~~~ % Symbols for matrices are typeset *boldface italic*, i. e. in the same face % as vectors. :: -\newcommand{\matrixsym}{\mathbold} - +\providecommand*{\matrixsym}{\vectorsym} % \\tensorsym % ~~~~~~~~~~~ % Symbols for tensors are *sans-serif bold italic*:: -\newcommand{\tensorsym}{\mathboldsans} +\providecommand*{\tensorsym}{\mathsfbfit} + - % Font mappings % ------------- % -% Some font packages provide matching text and math font but do not -% define a substitution in their ``*.fd`` files. +% Substitutions needed for the math alphabet definitions and setup for +% scaled fonts. For details about the font definition macros see +% [fntguide]_. % -% We define the substitutions needed for the math alphabet definitions -% in this package. Ideally, these should become part of the package's -% ``*.fd`` files. +% Common family name for text and math +% ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ % -% For details about the font definition macros see the fntguide_. +% Some font packages provide matching text and math font but do not +% define a substitution in their ``*.fd`` files. Ideally, the following +% mappings should be moved there. % -% Mathpazo (Palatino) ppl <-> zplm :: +% Mathpazo (Palatino) ppl ↔ zplm :: \DeclareFontFamily{OML}{ppl}{\skewchar\font127} \DeclareFontShape{OML}{ppl}{m}{it}{<-> ssub * zplm/m/it}{} @@ -277,50 +302,51 @@ % Scaling % ~~~~~~~ % Scale the ``fav`` (Arev), ``llcmss`` (LX Fonts), and ``iwona`` fonts -% by the value of the ``scaled`` option. +% by the value of the scaled_ option. % % To get scaled versions of a font, you cannot use the ``ssub`` % `size function`, but must use the empty function or ``s`` with the font % file as argument [found by experiment, GM 2010-01-28]. % -% Arev (see omlzavm.fd): fav <-> zavm :: +% Arev (see omlzavm.fd): fav ↔ zavm :: \DeclareFontFamily{OML}{fav}{\skewchar\font127} \DeclareFontShape{OML}{fav}{m}{it}{<-> s * [\isomath@scaled] zavmri7m}{} \DeclareFontShape{OML}{fav}{bx}{it}{<-> s * [\isomath@scaled] zavmbi7m}{} -% LX Fonts (see lxfonts.sty): llcmss -> llcmm :: +% LX Fonts (see lxfonts.sty): llcmss ↔ llcmm :: \DeclareFontFamily{OML}{llcmss}{\skewchar\font'177} \DeclareFontShape{OML}{llcmss}{m}{it}{<-> s * [\isomath@scaled] lcmmi8}{} \DeclareFontShape{OML}{llcmss}{bx}{it}{<-> s * [\isomath@scaled] lcmmib8}{} -% Ivona (see ``omliwona.fd``):: +% Iwona (see ``omliwona.fd``) iwona ↔ mi-iwona:: \DeclareFontFamily{OML}{iwona}{} \DeclareFontShape{OML}{iwona}{m}{it}{<-> s * [\isomath@scaled] mi-iwonari}{} \DeclareFontShape{OML}{iwona}{bx}{it}{<-> s * [\isomath@scaled] mi-iwonabi}{} -% No declarations below this point:: - -\endinput -% .. Links -% .. ***** +% References +% ========== +% +% .. [fntguide] `LaTeX 2e font selection`: +% http://mirror.ctan.org/macros/latex/doc/fntguide.pdf. % % .. _LaTeX Project Public License: http://www.latex-project.org/lppl.txt -% .. _arev: http://dante.ctan.org/CTAN/help/Catalogue/entries/arev.html -% .. _cmbright: http://dante.ctan.org/CTAN/help/Catalogue/entries/cmbright.html -% .. _fixmath: http://dante.ctan.org/CTAN/help/Catalogue/entries/fixmath.html -% .. _fntguide: http://dante.ctan.org/CTAN/macros/latex/doc/fntguide.pdf -% .. _hvmath: http://dante.ctan.org/CTAN/help/Catalogue/entries/hvmath.html -% .. _iwona: http://dante.ctan.org/CTAN/help/Catalogue/entries/iwona.html -% .. _keyval: http://dante.ctan.org/CTAN/help/Catalogue/entries/keyval.html -% .. _kvoptions: http://dante.ctan.org/CTAN/help/Catalogue/entries/kvoptions.html -% .. _lxfonts: http://dante.ctan.org/CTAN/help/Catalogue/entries/lxfonts.html -% .. _mathdesign: http://dante.ctan.org/CTAN/help/Catalogue/entries/mathdesign.html +% .. _arev: http://mirror.ctan.org/help/Catalogue/entries/arev.html +% .. _cmbright: http://mirror.ctan.org/help/Catalogue/entries/cmbright.html +% .. _fixmath: http://mirror.ctan.org/help/Catalogue/entries/fixmath.html +% .. _hvmath: http://mirror.ctan.org/help/Catalogue/entries/hvmath.html +% .. _iwona: http://mirror.ctan.org/help/Catalogue/entries/iwona.html +% .. _keyval: http://mirror.ctan.org/help/Catalogue/entries/keyval.html +% .. _kvoptions: http://mirror.ctan.org/help/Catalogue/entries/kvoptions.html +% .. _lxfonts: http://mirror.ctan.org/help/Catalogue/entries/lxfonts.html +% .. _mathdesign: http://mirror.ctan.org/help/Catalogue/entries/mathdesign.html % .. _mathematical alphanumeric symbols: % http://www.unicode.org/charts/PDF/U1D400.pdf -% .. _oberdiek: http://dante.ctan.org/CTAN/help/Catalogue/entries/oberdiek.html +% .. _oberdiek: http://mirror.ctan.org/help/Catalogue/entries/oberdiek.html % .. _`Typefaces for Symbols in Scientific Manuscripts`: -% http://physics.nist.gov/Document/typefaces.pdf +% http://physics.nist.gov/cuu/pdf/typefaces.pdf +% .. _unicode-math: +% http://mirror.ctan.org/help/Catalogue/entries/unicode-math.html |