diff options
author | Karl Berry <karl@freefriends.org> | 2009-06-21 00:24:47 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2009-06-21 00:24:47 +0000 |
commit | 1818174ad5a62aca7ee9a87c646d9888c0e1188a (patch) | |
tree | dcd4c6f5f20742233e74dc0af9b33e69d819f8df /Master | |
parent | d5c69362ef92a985a1cecefe6bbbca5eb51e822a (diff) |
isomath 0.3 (20jun09)
git-svn-id: svn://tug.org/texlive/trunk@13844 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r-- | Master/texmf-dist/doc/latex/isomath/README.html | 90 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/isomath/README.txt | 31 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/isomath/isomath-test.pdf | bin | 137549 -> 149348 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/isomath/isomath-test.tex | 20 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/isomath/isomath.sty.html | 540 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/isomath/isomath.sty.pdf | bin | 198265 -> 118889 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/isomath/isomath.sty.txt | 320 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/isomath/isomath.sty | 318 |
8 files changed, 922 insertions, 397 deletions
diff --git a/Master/texmf-dist/doc/latex/isomath/README.html b/Master/texmf-dist/doc/latex/isomath/README.html index 4ef137e6460..80b4d954370 100644 --- a/Master/texmf-dist/doc/latex/isomath/README.html +++ b/Master/texmf-dist/doc/latex/isomath/README.html @@ -5,13 +5,13 @@ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="generator" content="Docutils 0.6: http://docutils.sourceforge.net/" /> <title>isomath: Math for scientists</title> -<meta name="date" content="2008-10-02" /> -<meta name="copyright" content="© 2008 Günter Milde <milde@users.berlios.de>" /> +<meta name="date" content="2009-06-19" /> +<meta name="copyright" content="© 2008, 2009 Günter Milde <milde@users.berlios.de>" /> <style type="text/css"> /* :Author: David Goodger (goodger@python.org) -:Id: $Id: html4css1.css 5631 2008-08-24 13:01:23Z goodger $ +:Id: $Id: html4css1.css 5951 2009-05-18 18:03:10Z milde $ :Copyright: This stylesheet has been placed in the public domain. Default cascading style sheet for the HTML output of Docutils. @@ -159,11 +159,32 @@ h2.subtitle { hr.docutils { width: 75% } -img.align-left { - clear: left } +img.align-left, .figure.align-left{ + clear: left ; + float: left ; + margin-right: 1em } -img.align-right { - clear: right } +img.align-right, .figure.align-right { + clear: right ; + float: right ; + margin-left: 1em } + +.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: left } + +/* div.align-center * { */ +/* text-align: left } */ ol.simple, ul.simple { margin-bottom: 1em } @@ -292,11 +313,12 @@ ul.auto-toc { <col class="docinfo-content" /> <tbody valign="top"> <tr><th class="docinfo-name">Date:</th> -<td>2008-10-02</td></tr> +<td>2009-06-19</td></tr> <tr><th class="docinfo-name">Copyright:</th> -<td>© 2008 Günter Milde <<a class="reference external" href="mailto:milde@users.berlios.de">milde@users.berlios.de</a>></td></tr> -<tr class="field"><th class="docinfo-name">Licence:</th><td class="field-body">Released under the terms of the GNU General Public License -(v. 2 or later)</td> +<td>© 2008, 2009 Günter Milde <<a class="reference external" href="mailto:milde@users.berlios.de">milde@users.berlios.de</a>></td></tr> +<tr class="field"><th class="docinfo-name">Licence:</th><td class="field-body">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.</td> </tr> </tbody> </table> @@ -309,6 +331,50 @@ by the International Standard ISO 31. For this, a <em>bold italic</em> and a <em>sans-serif bold italic</em> math alphabet are defined.</p> </div> +<div class="section" id="history"> +<h1>History</h1> +<table border="1" class="borderless docutils"> +<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> +<tr><td>0.2</td> +<td>2008-10-02</td> +<td>bugfix: a usage example was uncommented;</td> +</tr> +<tr><td></td> +<td> </td> +<td>updated documentation;</td> +</tr> +<tr><td></td> +<td> </td> +<td>define mathsans only if OMLmathsans is true;</td> +</tr> +<tr><td></td> +<td> </td> +<td>option reuseMathalphabets -> reuseMathAlphabets.</td> +</tr> +<tr><td>0.3</td> +<td>2009-06-19</td> +<td>documentation update;</td> +</tr> +<tr><td></td> +<td> </td> +<td>fix OMLmathrm and OMLmathsans definitions;</td> +</tr> +<tr><td></td> +<td> </td> +<td>switch license to LPPL</td> +</tr> +</tbody> +</table> +</div> <div class="section" id="files"> <h1>Files</h1> <table class="docutils field-list" frame="void" rules="none"> @@ -335,7 +401,7 @@ math alphabet are defined.</p> </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"><span class="pre">isomath.sty</span></tt> and <tt class="docutils literal"><span class="pre">isomath.sty.txt</span></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 +<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.</p> </div> <div class="section" id="requirements"> diff --git a/Master/texmf-dist/doc/latex/isomath/README.txt b/Master/texmf-dist/doc/latex/isomath/README.txt index 77d479962e9..98cc54641e7 100644 --- a/Master/texmf-dist/doc/latex/isomath/README.txt +++ b/Master/texmf-dist/doc/latex/isomath/README.txt @@ -1,10 +1,13 @@ isomath: Math for scientists ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -:Date: 2008-10-02 -:Copyright: © 2008 Günter Milde <milde@users.berlios.de> -:Licence: Released under the terms of the GNU General Public License - (v. 2 or later) +:Date: 2009-06-19 +:Copyright: © 2008, 2009 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 letters as symbols for vectors, matrices, and tensors in the typefaces recommended for scientific papers @@ -12,6 +15,22 @@ isomath: Math for scientists For this, a *bold italic* and a *sans-serif bold italic* math alphabet are defined. +History +======= +.. class:: borderless + +=== ============ ======================================================== +0.1 2008-09-25 first public version. +0.2 2008-10-02 bugfix: a usage example was uncommented; +\ updated documentation; +\ define \mathsans only if OMLmathsans is true; +\ option reuseMathalphabets -> reuseMathAlphabets. +0.3 2009-06-19 documentation update; +\ fix OMLmathrm and OMLmathsans definitions; +\ switch license to LPPL +=== ============ ======================================================== + + Files ===== @@ -29,7 +48,7 @@ Files The bidirectional text <-> code converter PyLit_ can convert between ``isomath.sty`` and ``isomath.sty.txt``. -The Python docutils_ and pdflatex were used to generate the HTML and PDF +The Python Docutils_ and pdflatex were used to generate the HTML and PDF documentation. @@ -70,6 +89,8 @@ More examples and usage hints are in the documentation files. References ========== +.. _LaTeX Project Public License: http://www.latex-project.org/lppl.txt + .. [typefaces] `Typefaces for Symbols in Scientific Manuscripts`: http://physics.nist.gov/Document/typefaces.pdf 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 3d95a73d963..2c07263df02 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 ce6ab3fa5b6..8f303197143 100644 --- a/Master/texmf-dist/doc/latex/isomath/isomath-test.tex +++ b/Master/texmf-dist/doc/latex/isomath/isomath-test.tex @@ -8,7 +8,7 @@ % ---------------- % :: -\documentclass[a4paper,english]{article} +\documentclass[a4paper]{article} \usepackage[LGR,T1]{fontenc} % \usepackage[T1]{fontenc} % \usepackage[utf8]{inputenc} @@ -67,14 +67,16 @@ utopia% {mathdesign} % \sfdefault is cmss (use cmbr?) \newcommand*{\isomathoptions}{} \renewcommand*{\isomathoptions}{% -% reuseMathAlphabets,% -OMLmathsans,% +%reuseMathAlphabets,% +OMLmathrm,% OMLmathbf,% -% OMLmathsf, -sfdefault=cmbr% CM-Bright -% sfdefault=iwona% Iwona sans (some glyphs too close to roman) -% sfdefault=zavm% Arew sans (larger than normal) -% sfdefault=llcmm% LX sans (larger than normal) +%OMLmathsf,% +%OMLmathtt,% +%OMLmathsans,% +sfdefault=cmbr% CM-Bright +%sfdefault=iwona% Iwona sans (some glyphs too close to roman) +%sfdefault=zavm% Arev sans (larger than normal) +%sfdefault=llcmm% LX sans (larger than normal) } % Load customisable packages @@ -91,7 +93,7 @@ sfdefault=cmbr% CM-Bright % Fall-back definition for \mathsans:: \providecommand*{\mathsans}[1]% -{mathsans\ not\ defined,\ use\ \mathtt{OMLmathsans}\ option} +{\textsf{mathsans not defined, use \texttt{OMLmathsans} option}} % Now print a test sheet:: diff --git a/Master/texmf-dist/doc/latex/isomath/isomath.sty.html b/Master/texmf-dist/doc/latex/isomath/isomath.sty.html index e715047ab01..30856ca6ec9 100644 --- a/Master/texmf-dist/doc/latex/isomath/isomath.sty.html +++ b/Master/texmf-dist/doc/latex/isomath/isomath.sty.html @@ -5,12 +5,12 @@ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="generator" content="Docutils 0.6: http://docutils.sourceforge.net/" /> <title>isomath: Math for scientists</title> -<meta name="copyright" content="© 2008 Günter Milde" /> +<meta name="copyright" content="© 2008, 2009 Günter Milde" /> <style type="text/css"> /* :Author: David Goodger (goodger@python.org) -:Id: $Id: html4css1.css 5631 2008-08-24 13:01:23Z goodger $ +:Id: $Id: html4css1.css 5951 2009-05-18 18:03:10Z milde $ :Copyright: This stylesheet has been placed in the public domain. Default cascading style sheet for the HTML output of Docutils. @@ -158,11 +158,32 @@ h2.subtitle { hr.docutils { width: 75% } -img.align-left { - clear: left } +img.align-left, .figure.align-left{ + clear: left ; + float: left ; + margin-right: 1em } -img.align-right { - clear: right } +img.align-right, .figure.align-right { + clear: right ; + float: right ; + margin-left: 1em } + +.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: left } + +/* div.align-center * { */ +/* text-align: left } */ ol.simple, ul.simple { margin-bottom: 1em } @@ -291,9 +312,10 @@ ul.auto-toc { <col class="docinfo-content" /> <tbody valign="top"> <tr><th class="docinfo-name">Copyright:</th> -<td>© 2008 Günter Milde</td></tr> -<tr class="field"><th class="docinfo-name">Licence:</th><td class="field-body">Released under the terms of the GNU General Public License -(version 2 or later).</td> +<td>© 2008, 2009 Günter Milde</td></tr> +<tr class="field"><th class="docinfo-name">Licence:</th><td class="field-body">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.</td> </tr> </tbody> </table> @@ -308,69 +330,73 @@ and a <em>sans-serif bold italic</em> math alphabet are defined.</p> <div class="contents topic" id="contents"> <p class="topic-title first">Contents</p> <ul class="simple"> -<li><a class="reference internal" href="#introduction" id="id11">Introduction</a><ul> -<li><a class="reference internal" href="#motivation" id="id12">Motivation</a></li> -<li><a class="reference internal" href="#features" id="id13">Features</a></li> -<li><a class="reference internal" href="#usage" id="id14">Usage</a><ul> -<li><a class="reference internal" href="#examples" id="id15">Examples</a></li> +<li><a class="reference internal" href="#introduction" id="id17">Introduction</a><ul> +<li><a class="reference internal" href="#motivation" id="id18">Motivation</a></li> +<li><a class="reference internal" href="#features" id="id19">Features</a></li> +<li><a class="reference internal" href="#usage" id="id20">Usage</a><ul> +<li><a class="reference internal" href="#examples" id="id21">Examples</a></li> +</ul> +</li> +<li><a class="reference internal" href="#related-packages" id="id22">Related packages</a><ul> +<li><a class="reference internal" href="#conflicts" id="id23">Conflicts</a></li> </ul> </li> -<li><a class="reference internal" href="#related-packages" id="id16">Related packages</a><ul> -<li><a class="reference internal" href="#conflicts" id="id17">Conflicts</a></li> +<li><a class="reference internal" href="#greek-in-math" id="id24">Greek in Math</a><ul> +<li><a class="reference internal" href="#unicode-math-support" id="id25">Unicode Math Support</a></li> +<li><a class="reference internal" href="#oml-font-encoding" id="id26">OML font encoding</a><ul> +<li><a class="reference internal" href="#definition" id="id27">Definition</a></li> +<li><a class="reference internal" href="#support" id="id28">Support</a></li> </ul> </li> -<li><a class="reference internal" href="#greek-in-math" id="id18">Greek in Math</a><ul> -<li><a class="reference internal" href="#unicode-math-support" id="id19">Unicode Math Support</a></li> -<li><a class="reference internal" href="#oml-font-encoding" id="id20">OML font encoding</a><ul> -<li><a class="reference internal" href="#definition" id="id21">Definition</a></li> -<li><a class="reference internal" href="#support" id="id22">Support</a></li> +<li><a class="reference internal" href="#conclusions-and-outlook" id="id29">Conclusions and outlook</a></li> </ul> </li> -<li><a class="reference internal" href="#conclusions-and-outlook" id="id23">Conclusions and outlook</a></li> </ul> </li> +<li><a class="reference internal" href="#implementation" id="id30">Implementation</a><ul> +<li><a class="reference internal" href="#identification" id="id31">Identification</a><ul> +<li><a class="reference internal" href="#history" id="id32">History</a></li> </ul> </li> -<li><a class="reference internal" href="#implementation" id="id24">Implementation</a><ul> -<li><a class="reference internal" href="#identification" id="id25">Identification</a></li> -<li><a class="reference internal" href="#requirements" id="id26">Requirements</a><ul> -<li><a class="reference internal" href="#fixmath-sty" id="id27">fixmath.sty</a></li> -<li><a class="reference internal" href="#kvoptions-sty" id="id28">kvoptions.sty</a></li> +<li><a class="reference internal" href="#requirements" id="id33">Requirements</a><ul> +<li><a class="reference internal" href="#fixmath-sty" id="id34">fixmath.sty</a></li> +<li><a class="reference internal" href="#kvoptions-sty" id="id35">kvoptions.sty</a></li> </ul> </li> -<li><a class="reference internal" href="#options" id="id29">Options</a><ul> -<li><a class="reference internal" href="#rmdefault" id="id30">rmdefault</a></li> -<li><a class="reference internal" href="#sfdefault" id="id31">sfdefault</a></li> -<li><a class="reference internal" href="#reusemathalphabets" id="id32">reuseMathAlphabets</a></li> -<li><a class="reference internal" href="#oml-math-alphabets" id="id33">OML math alphabets</a></li> +<li><a class="reference internal" href="#options" id="id36">Options</a><ul> +<li><a class="reference internal" href="#rmdefault" id="id37">rmdefault</a></li> +<li><a class="reference internal" href="#sfdefault" id="id38">sfdefault</a></li> +<li><a class="reference internal" href="#reusemathalphabets" id="id39">reuseMathAlphabets</a></li> +<li><a class="reference internal" href="#oml-math-alphabets" id="id40">OML math alphabets</a></li> +<li><a class="reference internal" href="#process-options" id="id41">Process Options</a></li> </ul> </li> -<li><a class="reference internal" href="#declarations" id="id34">Declarations</a><ul> -<li><a class="reference internal" href="#math-alphabets" id="id35">Math alphabets</a><ul> -<li><a class="reference internal" href="#mathbold" id="id36">mathbold</a></li> -<li><a class="reference internal" href="#mathsans" id="id37">mathsans</a></li> -<li><a class="reference internal" href="#mathboldsans" id="id38">mathboldsans</a></li> -<li><a class="reference internal" href="#redefine-standard-alphabets" id="id39">Redefine standard alphabets</a></li> +<li><a class="reference internal" href="#declarations" id="id42">Declarations</a><ul> +<li><a class="reference internal" href="#math-alphabets" id="id43">Math alphabets</a><ul> +<li><a class="reference internal" href="#mathbold" id="id44">mathbold</a></li> +<li><a class="reference internal" href="#mathsans" id="id45">mathsans</a></li> +<li><a class="reference internal" href="#mathboldsans" id="id46">mathboldsans</a></li> +<li><a class="reference internal" href="#redefine-standard-alphabets" id="id47">Redefine standard alphabets</a></li> </ul> </li> -<li><a class="reference internal" href="#command-aliases" id="id40">Command aliases</a><ul> -<li><a class="reference internal" href="#vectorsym" id="id41">\vectorsym</a></li> -<li><a class="reference internal" href="#matrixsym" id="id42">\matrixsym</a></li> -<li><a class="reference internal" href="#tensorsym" id="id43">\tensorsym</a></li> +<li><a class="reference internal" href="#command-aliases" id="id48">Command aliases</a><ul> +<li><a class="reference internal" href="#vectorsym" id="id49">\vectorsym</a></li> +<li><a class="reference internal" href="#matrixsym" id="id50">\matrixsym</a></li> +<li><a class="reference internal" href="#tensorsym" id="id51">\tensorsym</a></li> </ul> </li> -<li><a class="reference internal" href="#font-mappings" id="id44">Font mappings</a></li> +<li><a class="reference internal" href="#font-mappings" id="id52">Font mappings</a></li> </ul> </li> </ul> </li> -<li><a class="reference internal" href="#references" id="id45">References</a></li> +<li><a class="reference internal" href="#references" id="id53">References</a></li> </ul> </div> <div class="section" id="introduction"> -<h1><a class="toc-backref" href="#id11">Introduction</a></h1> +<h1><a class="toc-backref" href="#id17">Introduction</a></h1> <div class="section" id="motivation"> -<h2><a class="toc-backref" href="#id12">Motivation</a></h2> +<h2><a class="toc-backref" href="#id18">Motivation</a></h2> <!-- Did you ever manage to write the stress tensor ``$\sigma$`` in a *sans-serif bold italic* typeface, as recommended by [typefaces]_? --> <p>Scientific organisations like <a class="reference external" href="http://www.iupap.org/">IUPAP</a>, <a class="reference external" href="http://iupac.org/">IUPAC</a>, <a class="reference external" href="http://physics.nist.gov/">NIST</a>, <a class="reference external" href="http://www.bipm.org/">BIPM</a>, and others @@ -395,12 +421,12 @@ there is currently no package (known to the author) that defines the <colgroup><col class="label" /><col /></colgroup> <tbody valign="top"> <tr><td class="label"><a class="fn-backref" href="#id2">[1]</a></td><td>Summaries of these rules are free available, see <a class="citation-reference" href="#typefaces" id="id4">[typefaces]</a>, -<a class="citation-reference" href="#fonts-for-symbols" id="id5">[fonts-for-symbols]</a>, and <a class="citation-reference" href="#si-brochure" id="id6">[SI-brochure]</a>.</td></tr> +<a class="citation-reference" href="#checklist" id="id5">[checklist]</a>, <a class="citation-reference" href="#fonts-for-symbols" id="id6">[fonts-for-symbols]</a>, and <a class="citation-reference" href="#si-brochure" id="id7">[SI-brochure]</a>.</td></tr> </tbody> </table> </div> <div class="section" id="features"> -<h2><a class="toc-backref" href="#id13">Features</a></h2> +<h2><a class="toc-backref" href="#id19">Features</a></h2> <p>The <tt class="docutils literal"><span class="pre">isomath.sty</span></tt> package facilitates the task to abide with ISO 31 when typesetting math with LaTeX:</p> <ul> @@ -442,11 +468,12 @@ files.</p> </ul> </div> <div class="section" id="usage"> -<h2><a class="toc-backref" href="#id14">Usage</a></h2> +<h2><a class="toc-backref" href="#id20">Usage</a></h2> <p>Make sure that LaTeX can find <tt class="docutils literal"><span class="pre">isomath.sty</span></tt> and insert the command <tt class="docutils literal"><span class="pre">\usepackage{isomath}</span></tt> in the document preamble.</p> +<p>For package options, see the <a class="reference internal" href="#options">Options</a> section below.</p> <div class="section" id="examples"> -<h3><a class="toc-backref" href="#id15">Examples</a></h3> +<h3><a class="toc-backref" href="#id21">Examples</a></h3> <ul> <li><p class="first">In many cases (e.g. when <tt class="docutils literal"><span class="pre">\sfdefault</span></tt> expands to "cmss"), the <tt class="docutils literal"><span class="pre">\mathboldsans</span></tt> alphabet is neither bold nor sans, as "cmss" has no OML @@ -455,6 +482,10 @@ encoded variants and maps to "cmmi".</p> <pre class="literal-block"> \usepackage[sfdefault=cmbr]{isomath} </pre> +<p>Define also a slanted sans-serif math alphabet:</p> +<pre class="literal-block"> +\usepackage[sfdefault=cmbr,OMLmathsans]{isomath} +</pre> </li> <li><p class="first">Redefine the standard <tt class="docutils literal"><span class="pre">\vec</span></tt> macro to typeset its argument in <cite>bold italic</cite>:</p> @@ -475,7 +506,7 @@ not set it up for <tt class="docutils literal"><span class="pre">\mathbf</span>< </div> </div> <div class="section" id="related-packages"> -<h2><a class="toc-backref" href="#id16">Related packages</a></h2> +<h2><a class="toc-backref" href="#id22">Related packages</a></h2> <p>A set of packages at CTAN also defines Greek letters as <tt class="docutils literal"><span class="pre">\mathalpha</span></tt> and provide the <tt class="docutils literal"><span class="pre">\mathbold</span></tt> alphabet (in OML):</p> <ul class="simple"> @@ -492,64 +523,228 @@ provide the <tt class="docutils literal"><span class="pre">\mathbold</span></tt> the <tt class="docutils literal"><span class="pre">\mathsans</span></tt> and <tt class="docutils literal"><span class="pre">\mathboldsans</span></tt> alphabets that match with Computer Modern and derivatives.</p> <div class="section" id="conflicts"> -<h3><a class="toc-backref" href="#id17">Conflicts</a></h3> +<h3><a class="toc-backref" href="#id23">Conflicts</a></h3> <p>The <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/fourier.html">fourier</a> package for math typesetting with Utopia defines its own, -incompatible math font encodings. It cannot be used with <tt class="docutils literal"><span class="pre">isomath</span></tt> but -provides other means to typeset upright or italic Greek (see its -documentation).</p> +incompatible math font encodings. It cannot be used with <tt class="docutils literal"><span class="pre">isomath</span></tt> +but provides other means to typeset upright or italic Greek (see its +documentation).<a class="footnote-reference" href="#id9" id="id8"><sup>2</sup></a></p> <p>The <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/kpfonts.html">kpfonts</a>, <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/pxfonts.html">pxfonts</a>, and <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/txfonts.html">txfonts</a> packages define many additional -math alphabets and can only be combined with <tt class="docutils literal"><span class="pre">isomath</span></tt>, if the -<a class="reference internal" href="#reusemathalphabets">reuseMathAlphabets</a> option is used.</p> +math alphabets the additional definitions in isomath lead to a "too many +math alphabets used in version normal" error. The error can be avoided with +the <a class="reference internal" href="#reusemathalphabets">reuseMathAlphabets</a> option.</p> +<table class="docutils footnote" frame="void" id="id9" rules="none"> +<colgroup><col class="label" /><col /></colgroup> +<tbody valign="top"> +<tr><td class="label"><a class="fn-backref" href="#id8">[2]</a></td><td><p class="first">However, it is possible to use the symbols from <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/fourier.html">fourier</a> together +with math alphabets from another package, e.g <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/mathdesign.html">mathdesign</a>:</p> +<pre class="last literal-block"> +\usepackage{fourier} +\usepackage[OMLmathbf,rmdefault=mdput,sfdefault=cmbr]{isomath} +</pre> +</td></tr> +</tbody> +</table> </div> </div> <div class="section" id="greek-in-math"> -<h2><a class="toc-backref" href="#id18">Greek in Math</a></h2> +<h2><a class="toc-backref" href="#id24">Greek in Math</a></h2> +<p><a class="reference external" href="http://iupac.org/">IUPAC</a>'s <a class="citation-reference" href="#fonts-for-symbols" id="id10">[fonts-for-symbols]</a> guide says:</p> +<blockquote> +<ol class="arabic simple" start="2"> +<li>The overall rule is that symbols representing physical quantities (or +variables) are italic, but symbols representing units, or labels, are +roman. [...]</li> +<li>The above rule <strong>applies equally to letter symbols from both the Greek +and the Latin alphabet</strong>, although authors often appear to resist +putting Greek letters into italic.</li> +</ol> +</blockquote> +<p>[emphasis by the author]. In contrast, the standard LaTeX style treats Greek +symbols as invariant operators with lower case italic and upper case upright.</p> <div class="section" id="unicode-math-support"> -<h3><a class="toc-backref" href="#id19">Unicode Math Support</a></h3> -<p>The technical report <cite>Unicode Support for Mathematics</cite> <a class="citation-reference" href="#tr25" id="id7">[tr25]</a> lists -<em>alphanumeric symbols encountered in mathematics</em> in Table 2.1 <cite>Mathematical -Alphabets</cite>. It includes Latin and Greek letters in the bold, italic, bold -italic, sans-serif bold, and sans-serif bold italic math styles.</p> +<h3><a class="toc-backref" href="#id25">Unicode Math Support</a></h3> +<p>The technical report <cite>Unicode Support for Mathematics</cite> <a class="citation-reference" href="#tr25" id="id11">[tr25]</a> lists +"lphanumeric symbols encountered in mathematics"in table 2 <cite>Mathematical +Alphabets</cite>.</p> <p>The Unicode block <a class="reference external" href="http://www.unicode.org/charts/PDF/U1D400.pdf">mathematical alphanumeric symbols</a> provides style -variants for Latin and Greek letters and digits. It is "to be used for -mathematical variables where style variations are important semantically".</p> +variants for Latin and Greek letters and digits. It is labelled "to be used +for mathematical variables where style variations are important +semantically".</p> +<table border="1" class="booktab docutils" id="table-1"> +<caption>Styles in the <a class="reference external" href="http://www.unicode.org/charts/PDF/U1D400.pdf">mathematical alphanumeric symbols</a> +Unicode block</caption> +<colgroup> +<col width="26%" /> +<col width="6%" /> +<col width="26%" /> +<col width="42%" /> +</colgroup> +<thead valign="bottom"> +<tr><th class="head">Style</th> +<th class="head">LGD<a class="footnote-reference" href="#id13" id="id12"><sup>3</sup></a></th> +<th class="head">LaTeX macro</th> +<th class="head">Package, Comment</th> +</tr> +</thead> +<tbody valign="top"> +<tr><td>bold</td> +<td>LGD</td> +<td><tt class="docutils literal"><span class="pre">\mathbf</span></tt></td> +<td>no Greek</td> +</tr> +<tr><td>italic</td> +<td>LG</td> +<td><tt class="docutils literal"><span class="pre">\mathit</span></tt></td> +<td>no Greek</td> +</tr> +<tr><td></td> +<td> </td> +<td><tt class="docutils literal"><span class="pre">\mathnormal</span></tt></td> +<td>small Greek but +old-style roman Digits</td> +</tr> +<tr><td>bold italic</td> +<td>LG</td> +<td><tt class="docutils literal"><span class="pre">\mathbold</span></tt></td> +<td>fixmath and friends</td> +</tr> +<tr><td></td> +<td> </td> +<td><tt class="docutils literal"><span class="pre">\boldsymbol</span></tt></td> +<td>ams</td> +</tr> +<tr><td>script</td> +<td>L</td> +<td><tt class="docutils literal"><span class="pre">\mathcal</span></tt> or</td> +<td>only capital Latin</td> +</tr> +<tr><td>(calligraphic)</td> +<td> </td> +<td><tt class="docutils literal"><span class="pre">\mathscr</span></tt></td> +<td> </td> +</tr> +<tr><td>bold script</td> +<td>L</td> +<td> </td> +<td> </td> +</tr> +<tr><td>fraktur</td> +<td>L</td> +<td><tt class="docutils literal"><span class="pre">\mathfrak</span></tt></td> +<td>eufrak</td> +</tr> +<tr><td>double-struck</td> +<td>L D</td> +<td><tt class="docutils literal"><span class="pre">\mathbb</span></tt></td> +<td>bbold, mathbbol, +mbboard</td> +</tr> +<tr><td></td> +<td> </td> +<td><tt class="docutils literal"><span class="pre">\mathbbm</span></tt></td> +<td>bbm</td> +</tr> +<tr><td></td> +<td> </td> +<td><tt class="docutils literal"><span class="pre">\mathds</span></tt></td> +<td>dsfont</td> +</tr> +<tr><td>bold fraktur</td> +<td>L</td> +<td> </td> +<td> </td> +</tr> +<tr><td>sans-serif</td> +<td>L D</td> +<td><tt class="docutils literal"><span class="pre">\mathsf</span></tt></td> +<td>no Greek</td> +</tr> +<tr><td>sans-serif bold</td> +<td>LGD</td> +<td> </td> +<td> </td> +</tr> +<tr><td>sans-serif italic</td> +<td>L</td> +<td><tt class="docutils literal"><span class="pre">\mathsans</span></tt></td> +<td>isomath</td> +</tr> +<tr><td>sans bold italic</td> +<td>LG</td> +<td><tt class="docutils literal"><span class="pre">\mathboldsans</span></tt></td> +<td>isomath</td> +</tr> +<tr><td>monospace</td> +<td>L D</td> +<td><tt class="docutils literal"><span class="pre">\mathtt</span></tt></td> +<td>no Greek</td> +</tr> +<tr><td colspan="4"><em>Not in the mathematical alphanumeric symbols block</em>:</td> +</tr> +<tr><td>plain</td> +<td>LGD</td> +<td><tt class="docutils literal"><span class="pre">\mathrm</span></tt></td> +<td>no Greek</td> +</tr> +<tr><td></td> +<td> </td> +<td><tt class="docutils literal"><span class="pre">\mathnormal</span></tt></td> +<td>capital Greek</td> +</tr> +</tbody> +</table> +<table class="docutils footnote" frame="void" id="id13" rules="none"> +<colgroup><col class="label" /><col /></colgroup> +<tbody valign="top"> +<tr><td class="label"><a class="fn-backref" href="#id12">[3]</a></td><td>LGD: <strong>L</strong>atin, <strong>G</strong>reek, <strong>D</strong>igits</td></tr> +</tbody> +</table> </div> <div class="section" id="oml-font-encoding"> -<h3><a class="toc-backref" href="#id20">OML font encoding</a></h3> -<p>The OML font encoding is the only established encoding providing -Latin and Greek letters in one font:</p> -<ul class="simple"> -<li>LGR is Greek-only,</li> -<li>T7 is just a "reserved name" for a standard Greek encoding.</li> -</ul> +<h3><a class="toc-backref" href="#id26">OML font encoding</a></h3> +<p><em>OML</em> is the only established font encoding providing Latin and Greek +letters in one font. (The text font encoding <em>LGR</em> is Greek-only while <em>T7</em> +is just a "reserved name" for a standard Greek encoding.)</p> <div class="section" id="definition"> -<h4><a class="toc-backref" href="#id21">Definition</a></h4> -<p>The <cite>LaTeX font encodings</cite> guide <a class="citation-reference" href="#encguide" id="id8">[encguide]</a> names OML <cite>TeX math italic</cite> and +<h4><a class="toc-backref" href="#id27">Definition</a></h4> +<p>The <cite>LaTeX font encodings</cite> guide <a class="citation-reference" href="#encguide" id="id14">[encguide]</a> names OML <cite>TeX math italic</cite> and defines:</p> <blockquote> The OML encoding contains italic Latin and Greek letters for use in mathematical formulas (typically used for variables) together with some symbols.</blockquote> -<p>However, the reference to <strong>italic</strong> seems to be a description of the <em>state -of the art</em> rather than a necessary restriction:</p> -<ul class="simple"> -<li>The only OML encoded CM font is <cite>Computer Modern Math Italic</cite> (cmmi),</li> -<li>but generally, font encodings (T1, OT1) are not specific to the font shape.</li> -<li>Both, <tt class="docutils literal"><span class="pre">\DeclareSymbolFont</span></tt> and <tt class="docutils literal"><span class="pre">\DeclareMathAlphabet</span></tt> require a -{<shape>} argument. Thus it is possible to define OML encoded math -alphabets in roman {n} as well as italic {it} shape without conflicts.</li> -<li>A more suitable public name would be <cite>TeX math letters</cite> or <cite>Original/Old -Math Letters</cite>. The latter would also explain the acronym OML.</li> +<p>However, the reference to <strong>italic</strong> letters seems to be a description of +the <em>state of the art</em> rather than a necessary restriction:</p> +<ul> +<li><p class="first">There is only one OML encoded font in the Computer Modern fonts: +<cite>Computer Modern Math Italic</cite> (cmmi).</p> +</li> +<li><p class="first">Generally, font encodings (T1, OT1) are not specific to the font shape.</p> +</li> +<li><p class="first">Both, <tt class="docutils literal"><span class="pre">\DeclareSymbolFont</span></tt> and <tt class="docutils literal"><span class="pre">\DeclareMathAlphabet</span></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> +<li><p class="first">The name <cite>TeX math italic</cite> can be interpreted as "encoding <em>of</em> <cite>Computer +Modern Math Italic</cite>" rather than "encoding <em>for</em> 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> +<p>A more inclusive definition would be:</p> +<blockquote> +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.</blockquote> </div> <div class="section" id="support"> -<h4><a class="toc-backref" href="#id22">Support</a></h4> +<h4><a class="toc-backref" href="#id28">Support</a></h4> <p>Unfortunately, support for the OML encoding is missing for many font families even if the base font contains all Greek letters. Supported font families can be found searching for <tt class="docutils literal"><span class="pre">oml*.fd</span></tt> files and by grepping for "DeclareFont.*OML", "SymbolFont.*OML" and "MathAlphabet.*OML" in <tt class="docutils literal"><span class="pre">*.sty</span></tt> files.</p> -<table border="1" class="booktab docutils" id="table-1"> +<table border="1" class="booktab docutils" id="table-2"> <caption>Fonts supporting the OML font encoding</caption> <colgroup> <col width="19%" /> @@ -678,21 +873,21 @@ in <tt class="docutils literal"><span class="pre">*.sty</span></tt> files.</p> <td>Math Design Charter</td> <td>x</td> <td>x</td> -<td>?</td> +<td>x</td> <td>x</td> </tr> <tr><td>mdput</td> <td>Math Design Utopia</td> <td>x</td> <td>x</td> -<td>?</td> +<td>x</td> <td>x</td> </tr> <tr><td>mdugm</td> <td>Math Design Garamond</td> <td>x</td> <td>x</td> -<td>?</td> +<td>x</td> <td>x</td> </tr> <tr><td>neohellenic</td> @@ -818,8 +1013,8 @@ an italic variant of the OML encoded font. These are not listed as supporting {m}{n} or {bx}{n} here.</li> </ul> <p>The following fonts define <tt class="docutils literal"><span class="pre">cmm</span></tt> as OML substitution. A better matching -substitution can be set with the <a class="reference internal" href="#rmdefault">rmdefault</a> option.</p> -<table border="1" class="booktab docutils" id="table-2"> +substitution can be set with the <a class="reference internal" href="#rmdefault">rmdefault</a> or <a class="reference internal" href="#sfdefault">sfdefault</a> options.</p> +<table border="1" class="booktab docutils" id="table-3"> <caption>Non-CM fonts with <tt class="docutils literal"><span class="pre">cmm</span></tt> as OML substitution</caption> <colgroup> <col width="30%" /> @@ -896,7 +1091,7 @@ substitution can be set with the <a class="reference internal" href="#rmdefault" </div> </div> <div class="section" id="conclusions-and-outlook"> -<h3><a class="toc-backref" href="#id23">Conclusions and outlook</a></h3> +<h3><a class="toc-backref" href="#id29">Conclusions and outlook</a></h3> <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 external" href="http://www.unicode.org/charts/PDF/U1D400.pdf">Mathematical @@ -904,27 +1099,30 @@ 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, T7 could be used for math alphabets (if it ever happens to -materialise).</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="docutils literal"><span class="pre">\mathrm</span></tt> would enable the specification of -Myons, Pions, alpha-particles, photons, and neutrinos without special -packages. (With <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/mathdesign.html">mathdesign</a>, this is already possible today.)</p> +the constant pi, Myons, Pions, alpha-particles, photons, and neutrinos +without special packages. (With <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/mathdesign.html">mathdesign</a>, this is already possible +today.)</p> </div> </div> </div> <div class="section" id="implementation"> -<h1><a class="toc-backref" href="#id24">Implementation</a></h1> +<h1><a class="toc-backref" href="#id30">Implementation</a></h1> <div class="section" id="identification"> -<h2><a class="toc-backref" href="#id25">Identification</a></h2> +<h2><a class="toc-backref" href="#id31">Identification</a></h2> <pre class="literal-block"> \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{isomath} -[2008/10/02 v0.2 typeset math according to International Standard ISO 31] +[2009/06/19 v0.3 typeset math according to International Standard ISO 31] </pre> +<div class="section" id="history"> +<h3><a class="toc-backref" href="#id32">History</a></h3> <table border="1" class="borderless docutils"> <colgroup> -<col width="7%" /> -<col width="14%" /> +<col width="4%" /> +<col width="17%" /> <col width="79%" /> </colgroup> <tbody valign="top"> @@ -934,18 +1132,40 @@ packages. (With <a class="reference external" href="http://dante.ctan.org/CTAN/h </tr> <tr><td>0.2</td> <td>2008-10-02</td> -<td>bugfix: a usage example was uncommented; -updated documentation; -define mathsans only if OMLmathsans is true; -option reuseMathalphabets -> reuseMathAlphabets.</td> +<td>bugfix: a usage example was uncommented;</td> +</tr> +<tr><td></td> +<td> </td> +<td>updated documentation;</td> +</tr> +<tr><td></td> +<td> </td> +<td>define mathsans only if OMLmathsans is true;</td> +</tr> +<tr><td></td> +<td> </td> +<td>option reuseMathalphabets -> reuseMathAlphabets.</td> +</tr> +<tr><td>0.3</td> +<td>2009-06-19</td> +<td>documentation update;</td> +</tr> +<tr><td></td> +<td> </td> +<td>fix OMLmathrm and OMLmathsans definitions;</td> +</tr> +<tr><td></td> +<td> </td> +<td>switch license to LPPL</td> </tr> </tbody> </table> </div> +</div> <div class="section" id="requirements"> -<h2><a class="toc-backref" href="#id26">Requirements</a></h2> +<h2><a class="toc-backref" href="#id33">Requirements</a></h2> <div class="section" id="fixmath-sty"> -<h3><a class="toc-backref" href="#id27">fixmath.sty</a></h3> +<h3><a class="toc-backref" href="#id34">fixmath.sty</a></h3> <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"><span class="pre">\mathalpha</span></tt> and takes them from the "letters" SymbolFont in <tt class="docutils literal"><span class="pre">\mathnormal</span></tt> (as opposed to "operators" in <tt class="docutils literal"><span class="pre">fontmath.ltx</span></tt>).</p> @@ -957,8 +1177,10 @@ the font family below.)</p> </pre> <div class="caution"> <p class="first admonition-title">Caution!</p> -<p>Placing small Greek letters in a math alphabet, e.g. -<tt class="docutils literal"><span class="pre">\mathrm{k\Omega}</span></tt>, can lead to garbage.</p> +<p>After loading fixmath, placing Greek letters in a math alphabet, e.g. +<tt class="docutils literal"><span class="pre">\mathrm{k\Omega}</span></tt>, can lead to garbage, as the standard math alphabets +are usually taken from OT1 encoded fonts that have ligatures and +non-alpha symbols in place of the small Greek letters.</p> <p>If the chosen font supports the <a class="reference internal" href="#oml-font-encoding">OML font encoding</a>, you can use the options for <a class="reference internal" href="#oml-math-alphabets">OML math alphabets</a>. Otherwise, place Greek letters outside the math alphabet command.</p> @@ -967,7 +1189,7 @@ letters, e.g. <tt class="docutils literal"><span class="pre">\mathrm{k}\upOmega< </div> </div> <div class="section" id="kvoptions-sty"> -<h3><a class="toc-backref" href="#id28">kvoptions.sty</a></h3> +<h3><a class="toc-backref" href="#id35">kvoptions.sty</a></h3> <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"> @@ -976,21 +1198,21 @@ package options and provides a key=value interface (based on <a class="reference </div> </div> <div class="section" id="options"> -<h2><a class="toc-backref" href="#id29">Options</a></h2> +<h2><a class="toc-backref" href="#id36">Options</a></h2> <div class="section" id="rmdefault"> -<h3><a class="toc-backref" href="#id30">rmdefault</a></h3> +<h3><a class="toc-backref" href="#id37">rmdefault</a></h3> <p>Alternative family for roman math fonts. The default is to use the -corresponding text font family (<tt class="docutils literal"><span class="pre">\rmdefault</span></tt>) in OMS encoding. -<a class="reference internal" href="#table-2">Table 2</a> lists some fonts where a different setting is advised.</p> +corresponding text font family (<tt class="docutils literal"><span class="pre">\rmdefault</span></tt>) in OML encoding. +<a class="reference internal" href="#table-3">Table 3</a> lists some fonts where a different setting is advised.</p> <pre class="literal-block"> \DeclareStringOption[\rmdefault]{rmdefault} </pre> </div> <div class="section" id="sfdefault"> -<h3><a class="toc-backref" href="#id31">sfdefault</a></h3> +<h3><a class="toc-backref" href="#id38">sfdefault</a></h3> <p>Alternative family for sans-serif math fonts. The default is to use the -corresponding text font family (<tt class="docutils literal"><span class="pre">\sfdefault</span></tt>) in OMS encoding.</p> -<p>Computer Modern Sans Serif (cmss) has no OMS encoded variant. Nor have many +corresponding text font family (<tt class="docutils literal"><span class="pre">\sfdefault</span></tt>) in OML encoding.</p> +<p>Computer Modern Sans Serif (cmss) has no OML encoded variant. Nor have many derivatives (lmss, aess, ...). Actually, there are only a few OML-encoded sans-serif fonts (all slanted/italic):</p> <table class="docutils field-list" frame="void" rules="none"> @@ -1020,7 +1242,7 @@ recommended setting.</p> </dl> </div> <div class="section" id="reusemathalphabets"> -<h3><a class="toc-backref" href="#id32">reuseMathAlphabets</a></h3> +<h3><a class="toc-backref" href="#id39">reuseMathAlphabets</a></h3> <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 <tt class="docutils literal"><span class="pre">isomath</span></tt> to re-use the existing @@ -1038,7 +1260,7 @@ might use a different font).</p> </div> </div> <div class="section" id="oml-math-alphabets"> -<h3><a class="toc-backref" href="#id33">OML math alphabets</a></h3> +<h3><a class="toc-backref" href="#id40">OML math alphabets</a></h3> <p>With Greek letters defined as <tt class="docutils literal"><span class="pre">\mathalpha</span></tt>, the math alphabets are expected to be in <a class="reference internal" href="#oml-font-encoding">OML font encoding</a>. Unfortunately, the standard math alphabets are usually taken from OT1 encoded fonts that have ligatures and @@ -1056,13 +1278,15 @@ encoding:</p> shapes with e.g. <tt class="docutils literal"><span class="pre">\mathrm{\pi}</span></tt> — <em>if an OML encoded font is available</em>. Currently, support for the <a class="reference internal" href="#oml-font-encoding">OML font encoding</a> is rather limited:</p> <ul class="simple"> -<li>only the <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/mathdesign.html">mathdesign</a> fonts support <em>bold roman</em> in OML encoding, while</li> +<li>only the <a class="reference external" href="http://dante.ctan.org/CTAN/help/Catalogue/entries/mathdesign.html">mathdesign</a> fonts support roman in OML encoding, while</li> <li>many font packages define an italic font as OML replacement for a roman font.</li> </ul> <p>With some packages, these options can result in a "too many math alphabets used in version normal" error.</p> -<hr class="docutils" /> +</div> +<div class="section" id="process-options"> +<h3><a class="toc-backref" href="#id41">Process Options</a></h3> <p>Process the options with <tt class="docutils literal"><span class="pre">kvoptions</span></tt> extensions:</p> <pre class="literal-block"> \ProcessKeyvalOptions* @@ -1070,20 +1294,20 @@ used in version normal" error.</p> </div> </div> <div class="section" id="declarations"> -<h2><a class="toc-backref" href="#id34">Declarations</a></h2> +<h2><a class="toc-backref" href="#id42">Declarations</a></h2> <div class="section" id="math-alphabets"> -<h3><a class="toc-backref" href="#id35">Math alphabets</a></h3> +<h3><a class="toc-backref" href="#id43">Math alphabets</a></h3> <p>In math, LaTeX uses "absolute" fontnames instead of a selection by family, -shape, and weight because typefaces have a semantic meaning <a class="citation-reference" href="#fntguide" id="id9">[fntguide]</a>. +shape, and weight because typefaces have a semantic meaning <a class="citation-reference" href="#fntguide" id="id15">[fntguide]</a>. This correlates with the <a class="reference internal" href="#unicode-math-support">Unicode math support</a> where the <a class="reference external" href="http://www.unicode.org/charts/PDF/U1D400.pdf">mathematical alphanumeric symbols</a> block defines distinct Unicode -characters for in Greek and Latin letters in different typefaces.</p> +characters for Greek and Latin letters in different typefaces.</p> <p>Isomath defines a math alphabet for every required font variant and optionally re-defines the standard math alphabets in <a class="reference internal" href="#oml-font-encoding">OML font encoding</a>. Unfortunately, the number of math alphabets in one math version is limited to 16, so we have to be carefull not to exceed this.</p> <div class="section" id="mathbold"> -<h4><a class="toc-backref" href="#id36">mathbold</a></h4> +<h4><a class="toc-backref" href="#id44">mathbold</a></h4> <p>The <em>italic bold</em> math alphabet is named <tt class="docutils literal"><span class="pre">\mathbold</span></tt> like in <a class="reference internal" href="#related-packages">related packages</a>. With the <a class="reference internal" href="#reusemathalphabets">reuseMathAlphabets</a> option, <tt class="docutils literal"><span class="pre">\mathfb</span></tt> is redefined and <tt class="docutils literal"><span class="pre">\mathbold</span></tt> made an alias (overwriting existing @@ -1098,10 +1322,10 @@ definitions):</p> </pre> </div> <div class="section" id="mathsans"> -<h4><a class="toc-backref" href="#id37">mathsans</a></h4> +<h4><a class="toc-backref" href="#id45">mathsans</a></h4> <p>For <em>italic sans-serif</em>, we define a new alphabet named <tt class="docutils literal"><span class="pre">\mathsans</span></tt> (in -analogy to <tt class="docutils literal"><span class="pre">\mathbold</span></tt>). As this typeface is not required by ISO 31, it is -only defined if the <tt class="docutils literal"><span class="pre">OMLmathsans</span></tt> option is set:</p> +analogy to <tt class="docutils literal"><span class="pre">\mathbold</span></tt>). As this typeface is not required by ISO 31, it +is only defined if the <tt class="docutils literal"><span class="pre">OMLmathsans</span></tt> option is set:</p> <pre class="literal-block"> \ifisomath@OMLmathsans \DeclareMathAlphabet{\mathsans}{OML}{\isomath@sfdefault}{m}{it} @@ -1109,7 +1333,7 @@ only defined if the <tt class="docutils literal"><span class="pre">OMLmathsans</ </pre> </div> <div class="section" id="mathboldsans"> -<h4><a class="toc-backref" href="#id38">mathboldsans</a></h4> +<h4><a class="toc-backref" href="#id46">mathboldsans</a></h4> <p>A <em>sans serif slanted bold</em> alphabet is needed for tensor symbols. With the <a class="reference internal" href="#reusemathalphabets">reuseMathAlphabets</a> option, <tt class="docutils literal"><span class="pre">\mathsf</span></tt> is redefined and <tt class="docutils literal"><span class="pre">\mathboldsans</span></tt> made an alias:</p> @@ -1123,31 +1347,31 @@ made an alias:</p> </pre> </div> <div class="section" id="redefine-standard-alphabets"> -<h4><a class="toc-backref" href="#id39">Redefine standard alphabets</a></h4> +<h4><a class="toc-backref" href="#id47">Redefine standard alphabets</a></h4> <p>Redefine standard alphabets in <a class="reference internal" href="#oml-font-encoding">OML font encoding</a> if the corresponding <a class="reference internal" href="#oml-math-alphabets">OML math alphabets</a> option is true:</p> <pre class="literal-block"> \ifisomath@OMLmathrm - \SetMathAlphabet{\mathrm}{normal}{OML}{\isomath@rmdefault}{n}{n} + \SetMathAlphabet{\mathrm}{normal}{OML}{\isomath@rmdefault}{m}{n} \fi \ifisomath@OMLmathbf \SetMathAlphabet{\mathbf}{normal}{OML}{\isomath@rmdefault}{b}{n} \fi \ifisomath@OMLmathsf - \SetMathAlphabet{\mathsf}{normal}{OML}{\isomath@sfdefault}{n}{n} + \SetMathAlphabet{\mathsf}{normal}{OML}{\isomath@sfdefault}{m}{n} \fi \ifisomath@OMLmathtt - \SetMathAlphabet{\mathtt}{normal}{OML}{\ttdefault}{n}{n} + \SetMathAlphabet{\mathtt}{normal}{OML}{\ttdefault}{m}{n} \fi </pre> </div> </div> <div class="section" id="command-aliases"> -<h3><a class="toc-backref" href="#id40">Command aliases</a></h3> +<h3><a class="toc-backref" href="#id48">Command aliases</a></h3> <p>The following macros allow semantic markup of mathematical symbols. -The argument is typeset as proposed by ISO 31 and <a class="citation-reference" href="#typefaces" id="id10">[typefaces]</a>.</p> +The argument is typeset as proposed by ISO 31 and <a class="citation-reference" href="#typefaces" id="id16">[typefaces]</a>.</p> <div class="section" id="vectorsym"> -<h4><a class="toc-backref" href="#id41">\vectorsym</a></h4> +<h4><a class="toc-backref" href="#id49">\vectorsym</a></h4> <p>Symbols for vectors are typeset <em>boldface italic</em>:</p> <pre class="literal-block"> \newcommand{\vectorsym}{\mathbold} @@ -1155,9 +1379,14 @@ The argument is typeset as proposed by ISO 31 and <a class="citation-reference" <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"><span class="pre">\vec</span></tt> command after loading this package (cf. the <a class="reference internal" href="#examples">Examples</a> section).</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"><span class="pre">\vec{0}</span></tt> +in this case. Use e.g. <tt class="docutils literal"><span class="pre">\mathbf{0}</span></tt>, <tt class="docutils literal"><span class="pre">\boldsymbol{0}</span></tt> (with AMS math) or +<tt class="docutils literal"><span class="pre">\bm{0}</span></tt> (with boldmath). The latter two variants provide also a failsafe +alias for a bold vector.</p> </div> <div class="section" id="matrixsym"> -<h4><a class="toc-backref" href="#id42">\matrixsym</a></h4> +<h4><a class="toc-backref" href="#id50">\matrixsym</a></h4> <p>Symbols for matrices are typeset <em>boldface italic</em>, i. e. in the same face as vectors.</p> <pre class="literal-block"> @@ -1165,7 +1394,7 @@ as vectors.</p> </pre> </div> <div class="section" id="tensorsym"> -<h4><a class="toc-backref" href="#id43">\tensorsym</a></h4> +<h4><a class="toc-backref" href="#id51">\tensorsym</a></h4> <p>Symbols for tensors are <em>sans-serif bold italic</em>:</p> <pre class="literal-block"> \newcommand{\tensorsym}{\mathboldsans} @@ -1173,7 +1402,7 @@ as vectors.</p> </div> </div> <div class="section" id="font-mappings"> -<h3><a class="toc-backref" href="#id44">Font mappings</a></h3> +<h3><a class="toc-backref" href="#id52">Font mappings</a></h3> <p>Some font packages provide a matching math font but do not define a substitution in their <tt class="docutils literal"><span class="pre">*.fd</span></tt> files.</p> <p>We define the substitutions needed for the math alphabet definitions in this @@ -1185,15 +1414,14 @@ definitions in the package's <tt class="docutils literal"><span class="pre">*.fd \DeclareFontShape{OML}{ppl}{m}{it}{<-> ssub * zplm/m/it}{} \DeclareFontShape{OML}{ppl}{bx}{it}{<-> ssub * zplm/b/it}{} </pre> -<p>Arev (arev): fav -> zavm</p> +<p>Arev (see omlzavm.fd): fav -> zavm</p> <pre class="literal-block"> -\DeclareFontFamily{OML}{fav}{} +\DeclareFontFamily{OML}{fav}{\skewchar \font =127} \DeclareFontShape{OML}{fav}{m}{it}{<->ssub * zavm/m/it}{} \DeclareFontShape{OML}{fav}{bx}{it}{<->ssub * zavm/b/it}{} </pre> -<p>LX Fonts (lxfonts): llcmss -> llcmm</p> +<p>LX Fonts (see lxfonts.sty): llcmss -> llcmm</p> <pre class="literal-block"> -% repeat font declarations from lxfonts.sty \DeclareFontFamily{OML}{llcmm}{\skewchar\font'177} \DeclareFontShape{OML}{llcmm}{m}{it}{<-> lcmmi8}{} \DeclareFontShape{OML}{llcmm}{bx}{it}{<-> lcmmib8}{} @@ -1210,7 +1438,7 @@ definitions in the package's <tt class="docutils literal"><span class="pre">*.fd </div> </div> <div class="section" id="references"> -<h1><a class="toc-backref" href="#id45">References</a></h1> +<h1><a class="toc-backref" href="#id53">References</a></h1> <table class="docutils citation" frame="void" id="iso-31" rules="none"> <colgroup><col class="label" /><col /></colgroup> <tbody valign="top"> @@ -1222,43 +1450,51 @@ definitions in the package's <tt class="docutils literal"><span class="pre">*.fd <table class="docutils citation" frame="void" id="typefaces" rules="none"> <colgroup><col class="label" /><col /></colgroup> <tbody valign="top"> -<tr><td class="label">[typefaces]</td><td><em>(<a class="fn-backref" href="#id4">1</a>, <a class="fn-backref" href="#id10">2</a>)</em> <cite>Typefaces for Symbols in Scientific Manuscripts</cite>: +<tr><td class="label">[typefaces]</td><td><em>(<a class="fn-backref" href="#id4">1</a>, <a class="fn-backref" href="#id16">2</a>)</em> <cite>Typefaces for Symbols in Scientific Manuscripts</cite>: <a class="reference external" href="http://physics.nist.gov/Document/typefaces.pdf">http://physics.nist.gov/Document/typefaces.pdf</a></td></tr> </tbody> </table> +<table class="docutils citation" frame="void" id="checklist" rules="none"> +<colgroup><col class="label" /><col /></colgroup> +<tbody valign="top"> +<tr><td class="label"><a class="fn-backref" href="#id5">[checklist]</a></td><td><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></td></tr> +</tbody> +</table> <table class="docutils citation" frame="void" id="fonts-for-symbols" rules="none"> <colgroup><col class="label" /><col /></colgroup> <tbody valign="top"> -<tr><td class="label"><a class="fn-backref" href="#id5">[fonts-for-symbols]</a></td><td><cite>On the use of italic and roman fonts for symbols in -scientific text</cite>, (Revised December 1999): +<tr><td class="label">[fonts-for-symbols]</td><td><em>(<a class="fn-backref" href="#id6">1</a>, <a class="fn-backref" href="#id10">2</a>)</em> <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></td></tr> </tbody> </table> <table class="docutils citation" frame="void" id="si-brochure" rules="none"> <colgroup><col class="label" /><col /></colgroup> <tbody valign="top"> -<tr><td class="label"><a class="fn-backref" href="#id6">[SI-brochure]</a></td><td><cite>The International System of Units (SI)</cite>: +<tr><td class="label"><a class="fn-backref" href="#id7">[SI-brochure]</a></td><td><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></td></tr> </tbody> </table> <table class="docutils citation" frame="void" id="encguide" rules="none"> <colgroup><col class="label" /><col /></colgroup> <tbody valign="top"> -<tr><td class="label"><a class="fn-backref" href="#id8">[encguide]</a></td><td><cite>LaTeX font encodings</cite>: +<tr><td class="label"><a class="fn-backref" href="#id14">[encguide]</a></td><td><cite>LaTeX font encodings</cite>: <a class="reference external" href="http://dante.ctan.org/CTAN/macros/latex/doc/encguide.pdf">http://dante.ctan.org/CTAN/macros/latex/doc/encguide.pdf</a></td></tr> </tbody> </table> <table class="docutils citation" frame="void" id="fntguide" rules="none"> <colgroup><col class="label" /><col /></colgroup> <tbody valign="top"> -<tr><td class="label"><a class="fn-backref" href="#id9">[fntguide]</a></td><td><cite>LaTeX 2e font selection</cite>: +<tr><td class="label"><a class="fn-backref" href="#id15">[fntguide]</a></td><td><cite>LaTeX 2e font selection</cite>: <a class="reference external" href="http://dante.ctan.org/CTAN/macros/latex/doc/fntguide.pdf">http://dante.ctan.org/CTAN/macros/latex/doc/fntguide.pdf</a></td></tr> </tbody> </table> <table class="docutils citation" frame="void" id="tr25" rules="none"> <colgroup><col class="label" /><col /></colgroup> <tbody valign="top"> -<tr><td class="label"><a class="fn-backref" href="#id7">[tr25]</a></td><td><cite>Unicode Support for Mathematics</cite>, Unicode Technical Report #25: +<tr><td class="label"><a class="fn-backref" href="#id11">[tr25]</a></td><td><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></td></tr> </tbody> </table> diff --git a/Master/texmf-dist/doc/latex/isomath/isomath.sty.pdf b/Master/texmf-dist/doc/latex/isomath/isomath.sty.pdf Binary files differindex 662fea4dab0..40ef06f05c2 100644 --- a/Master/texmf-dist/doc/latex/isomath/isomath.sty.pdf +++ b/Master/texmf-dist/doc/latex/isomath/isomath.sty.pdf diff --git a/Master/texmf-dist/doc/latex/isomath/isomath.sty.txt b/Master/texmf-dist/doc/latex/isomath/isomath.sty.txt index aa082fdd79c..c133b50b45e 100644 --- a/Master/texmf-dist/doc/latex/isomath/isomath.sty.txt +++ b/Master/texmf-dist/doc/latex/isomath/isomath.sty.txt @@ -1,21 +1,22 @@ isomath: Math for scientists ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -:Copyright: © 2008 Günter Milde -:Licence: Released under the terms of the GNU General Public License - (version 2 or later). - -:Abstract: The isomath package enables formatting Greek and Latin - letters as symbols for vectors, matrices, and tensors - in the typefaces recommended for scientific papers +:Copyright: © 2008, 2009 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. For this, a *bold italic* and a *sans-serif bold italic* math alphabet are defined. -.. contents:: +.. contents:: Introduction ************ - + Motivation ========== @@ -46,7 +47,7 @@ there is currently no package (known to the author) that defines the *sans-serif bold italic* math alphabet needed for tensor symbols. .. [#] Summaries of these rules are free available, see [typefaces]_, - [fonts-for-symbols]_, and [SI-brochure]_. + [checklist]_, [fonts-for-symbols]_, and [SI-brochure]_. Features @@ -59,17 +60,17 @@ typesetting math with LaTeX: + Greek letters change shape together with Latin letters if a different math alphabet is used. - + + Uppercase Greek letters are typeset in italic style by default. - - + Upright Greek letters can be made available through the ``\mathrm`` - and ``\mathbf`` alphabets, if the corresponding fonts support the + + + Upright Greek letters can be made available through the ``\mathrm`` + and ``\mathbf`` alphabets, if the corresponding fonts support the `OML font encoding`_. * The `command aliases`_ ``\vectorsym``, ``\matrixsym``, and ``\tensorsym`` allow semantic markup. They print the argument in an ISO-conforming typeface. - + * For this, new `math alphabets`_ are defined: :``\mathbold``: *boldface italic* (vector and matrix symbols), @@ -84,14 +85,16 @@ typesetting math with LaTeX: encoded counterpart but no substitution definition in their ``*.fd`` files. - + Usage ===== Make sure that LaTeX can find ``isomath.sty`` and insert the command ``\usepackage{isomath}`` in the document preamble. -Examples +For package options, see the Options_ section below. + +Examples -------- * In many cases (e.g. when ``\sfdefault`` expands to "cmss"), the @@ -101,7 +104,11 @@ Examples Use cmbright_ for sans-serif math alphabets:: \usepackage[sfdefault=cmbr]{isomath} - + + Define also a slanted sans-serif math alphabet:: + + \usepackage[sfdefault=cmbr,OMLmathsans]{isomath} + * Redefine the standard ``\vec`` macro to typeset its argument in `bold italic`:: @@ -113,7 +120,7 @@ Examples \usepackage[charter]{mathdesign} \usepackage[OMLmathbf,sfdefault=cmbr]{isomath} - + Now, ``\mathbf{\pi}`` produces a bold upright pi symbol. Related packages @@ -140,38 +147,97 @@ Conflicts --------- 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). +incompatible math font encodings. It cannot be used with ``isomath`` +but provides other means to typeset upright or italic Greek (see its +documentation).\ [#]_ The `kpfonts`_, `pxfonts`_, and `txfonts`_ packages define many additional -math alphabets and can only be combined with ``isomath``, if the -reuseMathAlphabets_ option is used. +math alphabets the additional definitions in isomath lead to a "too many +math alphabets used in version normal" error. The error can be avoided with +the reuseMathAlphabets_ option. + +.. [#] However, it is possible to use the symbols from `fourier`_ together + with math alphabets from another package, e.g `mathdesign`_:: + + \usepackage{fourier} + \usepackage[OMLmathbf,rmdefault=mdput,sfdefault=cmbr]{isomath} + Greek in Math ============= +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. [...] + + 3. The above rule **applies equally to letter symbols from both the Greek + and the Latin alphabet**, although authors often appear to resist + putting Greek letters into italic. + +[emphasis by the author]. In contrast, the standard LaTeX style treats Greek +symbols as invariant operators with lower case italic and upper case upright. + Unicode Math Support -------------------- -The technical report `Unicode Support for Mathematics` [tr25]_ lists -*alphanumeric symbols encountered in mathematics* in Table 2.1 `Mathematical -Alphabets`. It includes Latin and Greek letters in the bold, italic, bold -italic, sans-serif bold, and sans-serif bold italic math styles. +The technical report `Unicode Support for Mathematics` [tr25]_ lists +"lphanumeric 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 "to be used for -mathematical variables where style variations are important semantically". +variants for Latin and Greek letters and digits. It is labelled "to be used +for mathematical variables where style variations are important +semantically". + +.. _table 1: + +.. table:: Styles in the `mathematical alphanumeric symbols`_ + Unicode block + :class: booktab + + ================= ==== ================= ============================ + Style LGD LaTeX macro Package, Comment + [#]_ + ================= ==== ================= ============================ + bold LGD ``\mathbf`` no Greek + + italic LG ``\mathit`` no Greek + \ ``\mathnormal`` small Greek but + old-style roman Digits + 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 OML font encoding ----------------- -The OML font encoding is the only established encoding providing -Latin and Greek letters in one font: - -* LGR is Greek-only, -* T7 is just a "reserved name" for a standard Greek encoding. +*OML* is the only established font encoding providing Latin and Greek +letters in one font. (The text font encoding *LGR* is Greek-only while *T7* +is just a "reserved name" for a standard Greek encoding.) Definition """""""""" @@ -179,24 +245,36 @@ Definition The `LaTeX font encodings` guide [encguide]_ names OML `TeX math italic` and defines: - The OML encoding contains italic Latin and Greek letters for use in - mathematical formulas (typically used for variables) together with some - symbols. + The OML encoding contains italic Latin and Greek letters for use in + mathematical formulas (typically used for variables) together with some + symbols. -However, the reference to **italic** seems to be a description of the *state -of the art* rather than a necessary restriction: +However, the reference to **italic** letters seems to be a description of +the *state of the art* rather than a necessary restriction: -* The only OML encoded CM font is `Computer Modern Math Italic` (cmmi), +* There is only one OML encoded font in the Computer Modern fonts: + `Computer Modern Math Italic` (cmmi). -* but generally, font encodings (T1, OT1) are not specific to the font shape. +* Generally, font encodings (T1, OT1) are not specific to the font shape. * Both, ``\DeclareSymbolFont`` and ``\DeclareMathAlphabet`` require a - {<shape>} argument. Thus it is possible to define OML encoded math + {<shape>} argument. Thus it is possible to set up OML encoded math alphabets in roman {n} as well as italic {it} shape without conflicts. -* A more suitable public name would be `TeX math letters` or `Original/Old +* The name `TeX math italic` can be interpreted as "encoding *of* `Computer + Modern Math Italic`" rather than "encoding *for* math italic" fonts. + + A less confusing name would be `TeX math letters` or `Original/Old Math Letters`. The latter would also explain the acronym OML. +A more inclusive definition would be: + + 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 `Computer Modern Math Italic` (cmmi) font. + + + Support """"""" @@ -206,7 +284,7 @@ Supported font families can be found searching for ``oml*.fd`` files and by grepping for "DeclareFont.*OML", "SymbolFont.*OML" and "MathAlphabet.*OML" in ``*.sty`` files. -.. _table 1: +.. _table 2: .. table:: Fonts supporting the OML font encoding :class: booktab @@ -229,9 +307,9 @@ in ``*.sty`` files. llcmm LXfonts (sans serif) x x lmr Latin Modern Roman x x mak Kerkis x - mdbch Math Design Charter x x ? x - mdput Math Design Utopia x x ? x - mdugm Math Design Garamond x 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 @@ -260,9 +338,9 @@ Explanations: supporting {m}{n} or {bx}{n} here. The following fonts define ``cmm`` as OML substitution. A better matching -substitution can be set with the rmdefault_ option. +substitution can be set with the rmdefault_ or sfdefault_ options. -.. _table 2: +.. _table 3: .. table:: Non-CM fonts with ``cmm`` as OML substitution :class: booktab @@ -296,7 +374,7 @@ 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. +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. @@ -304,12 +382,14 @@ 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. -Alternatively, T7 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 -Myons, Pions, alpha-particles, photons, and neutrinos without special -packages. (With mathdesign_, this is already possible today.) +the constant pi, Myons, Pions, alpha-particles, photons, and neutrinos +without special packages. (With mathdesign_, this is already possible +today.) + Implementation ************** @@ -320,19 +400,25 @@ Identification \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{isomath} - [2008/10/02 v0.2 typeset math according to International Standard ISO 31] - + [2009/06/19 v0.3 typeset math according to International Standard ISO 31] + +History +------- + .. class:: borderless - -===== ========== ======================================================== + +=== ============ ======================================================== 0.1 2008-09-25 first public version. 0.2 2008-10-02 bugfix: a usage example was uncommented; - updated documentation; - define \mathsans only if OMLmathsans is true; - option reuseMathalphabets -> reuseMathAlphabets. -===== ========== ======================================================== +\ updated documentation; +\ define \mathsans only if OMLmathsans is true; +\ option reuseMathalphabets -> reuseMathAlphabets. +0.3 2009-06-19 documentation update; +\ fix OMLmathrm and OMLmathsans definitions; +\ switch license to LPPL +=== ============ ======================================================== + - Requirements ============ @@ -341,29 +427,30 @@ fixmath.sty The package fixmath_ by Walter Schmidt defines Greek letters as symbols of type ``\mathalpha`` and takes them from the "letters" SymbolFont in -``\mathnormal`` (as opposed to "operators" in ``fontmath.ltx``). +``\mathnormal`` (as opposed to "operators" in ``fontmath.ltx``). fixmath_ also defines the ``\mathbold`` alphabet, setting it to ``cmm``. However, this definition will be overwritten with a configurable value for -the font family below.) - +the font family below.) :: \RequirePackage{fixmath} -.. caution:: +.. caution:: + + After loading fixmath, placing Greek letters in a math alphabet, e.g. + ``\mathrm{k\Omega}``, can lead to garbage, as the standard math alphabets + are usually taken from OT1 encoded fonts that have ligatures and + non-alpha symbols in place of the small Greek letters. - Placing small Greek letters in a math alphabet, e.g. - ``\mathrm{k\Omega}``, can lead to garbage. - If the chosen font supports the `OML font encoding`_, you can use the options for `OML math alphabets`_. Otherwise, place Greek letters - outside the math alphabet command. - + outside the math alphabet command. + Some packages provide ``\up*`` or ``\var*`` macros for upright Greek letters, e.g. ``\mathrm{k}\upOmega``. - + kvoptions.sty ------------- @@ -379,8 +466,9 @@ rmdefault --------- Alternative family for roman math fonts. The default is to use the -corresponding text font family (``\rmdefault``) in OMS encoding. -`Table 2`_ lists some fonts where a different setting is advised. +corresponding text font family (``\rmdefault``) in OML encoding. +`Table 3`_ lists some fonts where a different setting is advised. + :: \DeclareStringOption[\rmdefault]{rmdefault} @@ -389,9 +477,9 @@ sfdefault --------- Alternative family for sans-serif math fonts. The default is to use the -corresponding text font family (``\sfdefault``) in OMS encoding. - -Computer Modern Sans Serif (cmss) has no OMS encoded variant. Nor have many +corresponding text font family (``\sfdefault``) in OML encoding. + +Computer Modern Sans Serif (cmss) has no OML encoded variant. Nor have many derivatives (lmss, aess, ...). Actually, there are only a few OML-encoded sans-serif fonts (all slanted/italic): @@ -412,7 +500,7 @@ recommended setting. TODO Allow scaling? - + reuseMathAlphabets ------------------ @@ -424,17 +512,17 @@ As a workaround, this option tells ``isomath`` to re-use the existing To access the upright shapes, the corresponding ``\textbf`` and ``\textsf`` commands might be used (however, this toggles the math-mode off and -might use a different font). +might use a different font). :: \DeclareBoolOption{reuseMathAlphabets} -.. caution:: +.. caution:: Do not use ``reuseMathAlphabets`` together with the ``OMLmathbf`` or - ``OMLmathsf`` options. + ``OMLmathsf`` options. + - OML math alphabets ------------------ @@ -453,22 +541,24 @@ encoding:: \DeclareBoolOption{OMLmathtt} Setting these options enables access to small Greek letters in different -shapes with e.g. ``\mathrm{\pi}`` — *if an OML encoded font is available*. +shapes with e.g. ``\mathrm{\pi}`` — *if an OML encoded font is available*. Currently, support for the `OML font encoding`_ is rather limited: -* only the mathdesign_ fonts support *bold roman* in OML encoding, while +* only the mathdesign_ fonts support roman in OML encoding, while * many font packages define an italic font as OML replacement for a roman font. - + 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* + Declarations ============ @@ -476,10 +566,10 @@ Math alphabets -------------- In math, LaTeX uses "absolute" fontnames instead of a selection by family, -shape, and weight because typefaces have a semantic meaning [fntguide]_. -This correlates with the `Unicode math support`_ where the -`mathematical alphanumeric symbols`_ block defines distinct Unicode -characters for in Greek and Latin letters in different typefaces. +shape, and weight because typefaces have a semantic meaning [fntguide]_. +This correlates with the `Unicode math support`_ where the +`mathematical alphanumeric symbols`_ block defines distinct Unicode +characters for Greek and Latin letters in different typefaces. Isomath defines a math alphabet for every required font variant and optionally re-defines the standard math alphabets in `OML font encoding`_. @@ -489,8 +579,8 @@ to 16, so we have to be carefull not to exceed this. mathbold """""""" -The *italic bold* math alphabet is named ``\mathbold`` like in -`related packages`_. With the reuseMathAlphabets_ option, ``\mathfb`` +The *italic bold* math alphabet is named ``\mathbold`` like in +`related packages`_. With the reuseMathAlphabets_ option, ``\mathfb`` is redefined and ``\mathbold`` made an alias (overwriting existing definitions):: @@ -505,14 +595,14 @@ 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:: +analogy to ``\mathbold``). As this typeface is not required by ISO 31, it +is only defined if the ``OMLmathsans`` option is set:: \ifisomath@OMLmathsans \DeclareMathAlphabet{\mathsans}{OML}{\isomath@sfdefault}{m}{it} \fi -mathboldsans +mathboldsans """""""""""" A *sans serif slanted bold* alphabet is needed for tensor symbols. With the @@ -524,7 +614,7 @@ made an alias:: \def\mathboldsans{\mathsf} \else \DeclareMathAlphabet{\mathboldsans}{OML}{\isomath@sfdefault}{bx}{it} - \fi + \fi Redefine standard alphabets """"""""""""""""""""""""""" @@ -533,16 +623,16 @@ Redefine standard alphabets in `OML font encoding`_ if the corresponding `OML math alphabets`_ option is true:: \ifisomath@OMLmathrm - \SetMathAlphabet{\mathrm}{normal}{OML}{\isomath@rmdefault}{n}{n} + \SetMathAlphabet{\mathrm}{normal}{OML}{\isomath@rmdefault}{m}{n} \fi \ifisomath@OMLmathbf \SetMathAlphabet{\mathbf}{normal}{OML}{\isomath@rmdefault}{b}{n} \fi \ifisomath@OMLmathsf - \SetMathAlphabet{\mathsf}{normal}{OML}{\isomath@sfdefault}{n}{n} + \SetMathAlphabet{\mathsf}{normal}{OML}{\isomath@sfdefault}{m}{n} \fi \ifisomath@OMLmathtt - \SetMathAlphabet{\mathtt}{normal}{OML}{\ttdefault}{n}{n} + \SetMathAlphabet{\mathtt}{normal}{OML}{\ttdefault}{m}{n} \fi Command aliases @@ -562,6 +652,12 @@ 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). +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. + \\matrixsym """"""""""" @@ -594,15 +690,14 @@ Mathpazo (Palatino) ppl -> zplm :: \DeclareFontShape{OML}{ppl}{m}{it}{<-> ssub * zplm/m/it}{} \DeclareFontShape{OML}{ppl}{bx}{it}{<-> ssub * zplm/b/it}{} -Arev (arev): fav -> zavm :: +Arev (see omlzavm.fd): fav -> zavm :: - \DeclareFontFamily{OML}{fav}{} + \DeclareFontFamily{OML}{fav}{\skewchar \font =127} \DeclareFontShape{OML}{fav}{m}{it}{<->ssub * zavm/m/it}{} \DeclareFontShape{OML}{fav}{bx}{it}{<->ssub * zavm/b/it}{} -LX Fonts (lxfonts): llcmss -> llcmm :: - - % repeat font declarations from lxfonts.sty +LX Fonts (see lxfonts.sty): llcmss -> llcmm :: + \DeclareFontFamily{OML}{llcmm}{\skewchar\font'177} \DeclareFontShape{OML}{llcmm}{m}{it}{<-> lcmmi8}{} \DeclareFontShape{OML}{llcmm}{bx}{it}{<-> lcmmib8}{} @@ -620,15 +715,19 @@ No declarations below this point:: References ********** -.. [ISO-31] International Standard 31 `Quantities and units`, +.. [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 .. [typefaces] `Typefaces for Symbols in Scientific Manuscripts`: http://physics.nist.gov/Document/typefaces.pdf -.. [fonts-for-symbols] `On the use of italic and roman fonts for symbols in - scientific text`, (Revised December 1999): +.. [checklist] `SI Unit rules and style conventions` + Check List for Reviewing Manuscripts: + http://physics.nist.gov/cuu/Units/checklist.html + +.. [fonts-for-symbols] `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 .. [SI-brochure] `The International System of Units (SI)`: @@ -653,6 +752,7 @@ References .. Links .. ***** +.. _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/ diff --git a/Master/texmf-dist/tex/latex/isomath/isomath.sty b/Master/texmf-dist/tex/latex/isomath/isomath.sty index 89353a74869..c20b6e9a1d5 100644 --- a/Master/texmf-dist/tex/latex/isomath/isomath.sty +++ b/Master/texmf-dist/tex/latex/isomath/isomath.sty @@ -1,21 +1,22 @@ % isomath: Math for scientists % ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ % -% :Copyright: © 2008 Günter Milde -% :Licence: Released under the terms of the GNU General Public License -% (version 2 or later). -% -% :Abstract: The isomath package enables formatting Greek and Latin -% letters as symbols for vectors, matrices, and tensors -% in the typefaces recommended for scientific papers +% :Copyright: © 2008, 2009 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. For this, a *bold italic* % and a *sans-serif bold italic* math alphabet are defined. % -% .. contents:: +% .. contents:: % % Introduction % ************ -% +% % Motivation % ========== % @@ -46,7 +47,7 @@ % *sans-serif bold italic* math alphabet needed for tensor symbols. % % .. [#] Summaries of these rules are free available, see [typefaces]_, -% [fonts-for-symbols]_, and [SI-brochure]_. +% [checklist]_, [fonts-for-symbols]_, and [SI-brochure]_. % % % Features @@ -59,17 +60,17 @@ % % + Greek letters change shape together with Latin letters if a different % math alphabet is used. -% +% % + Uppercase Greek letters are typeset in italic style by default. -% -% + Upright Greek letters can be made available through the ``\mathrm`` -% and ``\mathbf`` alphabets, if the corresponding fonts support the +% +% + Upright Greek letters can be made available through the ``\mathrm`` +% and ``\mathbf`` alphabets, if the corresponding fonts support the % `OML font encoding`_. % % * The `command aliases`_ ``\vectorsym``, ``\matrixsym``, and ``\tensorsym`` % allow semantic markup. They print the argument in an ISO-conforming % typeface. -% +% % * For this, new `math alphabets`_ are defined: % % :``\mathbold``: *boldface italic* (vector and matrix symbols), @@ -84,14 +85,16 @@ % encoded counterpart but no substitution definition in their ``*.fd`` % files. % -% +% % Usage % ===== % % Make sure that LaTeX can find ``isomath.sty`` and insert the command % ``\usepackage{isomath}`` in the document preamble. % -% Examples +% For package options, see the Options_ section below. +% +% Examples % -------- % % * In many cases (e.g. when ``\sfdefault`` expands to "cmss"), the @@ -101,7 +104,11 @@ % Use cmbright_ for sans-serif math alphabets:: % \usepackage[sfdefault=cmbr]{isomath} -% +% +% Define also a slanted sans-serif math alphabet:: + +% \usepackage[sfdefault=cmbr,OMLmathsans]{isomath} +% % * Redefine the standard ``\vec`` macro to typeset its argument in `bold % italic`:: @@ -113,7 +120,7 @@ % \usepackage[charter]{mathdesign} % \usepackage[OMLmathbf,sfdefault=cmbr]{isomath} -% +% % Now, ``\mathbf{\pi}`` produces a bold upright pi symbol. % % Related packages @@ -140,38 +147,97 @@ % --------- % % 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). +% incompatible math font encodings. It cannot be used with ``isomath`` +% but provides other means to typeset upright or italic Greek (see its +% documentation).\ [#]_ % % The `kpfonts`_, `pxfonts`_, and `txfonts`_ packages define many additional -% math alphabets and can only be combined with ``isomath``, if the -% reuseMathAlphabets_ option is used. +% math alphabets the additional definitions in isomath lead to a "too many +% math alphabets used in version normal" error. The error can be avoided with +% the reuseMathAlphabets_ option. +% +% .. [#] However, it is possible to use the symbols from `fourier`_ together +% with math alphabets from another package, e.g `mathdesign`_:: + +% \usepackage{fourier} +% \usepackage[OMLmathbf,rmdefault=mdput,sfdefault=cmbr]{isomath} +% % % Greek in Math % ============= % +% 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. [...] +% +% 3. The above rule **applies equally to letter symbols from both the Greek +% and the Latin alphabet**, although authors often appear to resist +% putting Greek letters into italic. +% +% [emphasis by the author]. In contrast, the standard LaTeX style treats Greek +% symbols as invariant operators with lower case italic and upper case upright. +% % Unicode Math Support % -------------------- % -% The technical report `Unicode Support for Mathematics` [tr25]_ lists -% *alphanumeric symbols encountered in mathematics* in Table 2.1 `Mathematical -% Alphabets`. It includes Latin and Greek letters in the bold, italic, bold -% italic, sans-serif bold, and sans-serif bold italic math styles. +% The technical report `Unicode Support for Mathematics` [tr25]_ lists +% "lphanumeric 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 "to be used for -% mathematical variables where style variations are important semantically". +% variants for Latin and Greek letters and digits. It is labelled "to be used +% for mathematical variables where style variations are important +% semantically". +% +% .. _table 1: +% +% .. table:: Styles in the `mathematical alphanumeric symbols`_ +% Unicode block +% :class: booktab +% +% ================= ==== ================= ============================ +% Style LGD LaTeX macro Package, Comment +% [#]_ +% ================= ==== ================= ============================ +% bold LGD ``\mathbf`` no Greek +% +% italic LG ``\mathit`` no Greek +% \ ``\mathnormal`` small Greek but +% old-style roman Digits +% 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 % % % OML font encoding % ----------------- % -% The OML font encoding is the only established encoding providing -% Latin and Greek letters in one font: -% -% * LGR is Greek-only, -% * T7 is just a "reserved name" for a standard Greek encoding. +% *OML* is the only established font encoding providing Latin and Greek +% letters in one font. (The text font encoding *LGR* is Greek-only while *T7* +% is just a "reserved name" for a standard Greek encoding.) % % Definition % """""""""" @@ -179,24 +245,36 @@ % The `LaTeX font encodings` guide [encguide]_ names OML `TeX math italic` and % defines: % -% The OML encoding contains italic Latin and Greek letters for use in -% mathematical formulas (typically used for variables) together with some -% symbols. +% The OML encoding contains italic Latin and Greek letters for use in +% mathematical formulas (typically used for variables) together with some +% symbols. % -% However, the reference to **italic** seems to be a description of the *state -% of the art* rather than a necessary restriction: +% However, the reference to **italic** letters seems to be a description of +% the *state of the art* rather than a necessary restriction: % -% * The only OML encoded CM font is `Computer Modern Math Italic` (cmmi), +% * There is only one OML encoded font in the Computer Modern fonts: +% `Computer Modern Math Italic` (cmmi). % -% * but generally, font encodings (T1, OT1) are not specific to the font shape. +% * Generally, font encodings (T1, OT1) are not specific to the font shape. % % * Both, ``\DeclareSymbolFont`` and ``\DeclareMathAlphabet`` require a -% {<shape>} argument. Thus it is possible to define OML encoded math +% {<shape>} argument. Thus it is possible to set up OML encoded math % alphabets in roman {n} as well as italic {it} shape without conflicts. % -% * A more suitable public name would be `TeX math letters` or `Original/Old +% * The name `TeX math italic` can be interpreted as "encoding *of* `Computer +% Modern Math Italic`" rather than "encoding *for* math italic" fonts. +% +% A less confusing name would be `TeX math letters` or `Original/Old % Math Letters`. The latter would also explain the acronym OML. % +% A more inclusive definition would be: +% +% 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 `Computer Modern Math Italic` (cmmi) font. +% +% +% % Support % """"""" % @@ -206,7 +284,7 @@ % grepping for "DeclareFont.*OML", "SymbolFont.*OML" and "MathAlphabet.*OML" % in ``*.sty`` files. % -% .. _table 1: +% .. _table 2: % % .. table:: Fonts supporting the OML font encoding % :class: booktab @@ -229,9 +307,9 @@ % llcmm LXfonts (sans serif) x x % lmr Latin Modern Roman x x % mak Kerkis x -% mdbch Math Design Charter x x ? x -% mdput Math Design Utopia x x ? x -% mdugm Math Design Garamond x 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 @@ -260,9 +338,9 @@ % supporting {m}{n} or {bx}{n} here. % % The following fonts define ``cmm`` as OML substitution. A better matching -% substitution can be set with the rmdefault_ option. +% substitution can be set with the rmdefault_ or sfdefault_ options. % -% .. _table 2: +% .. _table 3: % % .. table:: Non-CM fonts with ``cmm`` as OML substitution % :class: booktab @@ -296,7 +374,7 @@ % ----------------------- % % 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. +% 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. % @@ -304,12 +382,14 @@ % glyphs for the Greek letters already exist. Examples are Latin Modern, % Kerkis, GFS-Neohellenic, LX-Fonts and KP-Serif. % -% Alternatively, T7 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 -% Myons, Pions, alpha-particles, photons, and neutrinos without special -% packages. (With mathdesign_, this is already possible today.) +% the constant pi, Myons, Pions, alpha-particles, photons, and neutrinos +% without special packages. (With mathdesign_, this is already possible +% today.) +% % % Implementation % ************** @@ -320,19 +400,25 @@ \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{isomath} -[2008/10/02 v0.2 typeset math according to International Standard ISO 31] +[2009/06/19 v0.3 typeset math according to International Standard ISO 31] +% History +% ------- +% % .. class:: borderless -% -% ===== ========== ======================================================== +% +% === ============ ======================================================== % 0.1 2008-09-25 first public version. % 0.2 2008-10-02 bugfix: a usage example was uncommented; -% updated documentation; -% define \mathsans only if OMLmathsans is true; -% option reuseMathalphabets -> reuseMathAlphabets. -% ===== ========== ======================================================== +% \ updated documentation; +% \ define \mathsans only if OMLmathsans is true; +% \ option reuseMathalphabets -> reuseMathAlphabets. +% 0.3 2009-06-19 documentation update; +% \ fix OMLmathrm and OMLmathsans definitions; +% \ switch license to LPPL +% === ============ ======================================================== +% % -% % Requirements % ============ % @@ -341,29 +427,30 @@ % % The package fixmath_ by Walter Schmidt defines Greek letters as symbols % of type ``\mathalpha`` and takes them from the "letters" SymbolFont in -% ``\mathnormal`` (as opposed to "operators" in ``fontmath.ltx``). +% ``\mathnormal`` (as opposed to "operators" in ``fontmath.ltx``). % % fixmath_ also defines the ``\mathbold`` alphabet, setting it to ``cmm``. % However, this definition will be overwritten with a configurable value for -% the font family below.) -% +% the font family below.) % :: \RequirePackage{fixmath} -% .. caution:: +% .. caution:: +% +% After loading fixmath, placing Greek letters in a math alphabet, e.g. +% ``\mathrm{k\Omega}``, can lead to garbage, as the standard math alphabets +% are usually taken from OT1 encoded fonts that have ligatures and +% non-alpha symbols in place of the small Greek letters. % -% Placing small Greek letters in a math alphabet, e.g. -% ``\mathrm{k\Omega}``, can lead to garbage. -% % If the chosen font supports the `OML font encoding`_, you can use the % options for `OML math alphabets`_. Otherwise, place Greek letters -% outside the math alphabet command. -% +% outside the math alphabet command. +% % Some packages provide ``\up*`` or ``\var*`` macros for upright Greek % letters, e.g. ``\mathrm{k}\upOmega``. % -% +% % kvoptions.sty % ------------- % @@ -379,8 +466,9 @@ % --------- % % Alternative family for roman math fonts. The default is to use the -% corresponding text font family (``\rmdefault``) in OMS encoding. -% `Table 2`_ lists some fonts where a different setting is advised. +% corresponding text font family (``\rmdefault``) in OML encoding. +% `Table 3`_ lists some fonts where a different setting is advised. +% % :: \DeclareStringOption[\rmdefault]{rmdefault} @@ -389,9 +477,9 @@ % --------- % % Alternative family for sans-serif math fonts. The default is to use the -% corresponding text font family (``\sfdefault``) in OMS encoding. -% -% Computer Modern Sans Serif (cmss) has no OMS encoded variant. Nor have many +% corresponding text font family (``\sfdefault``) in OML encoding. +% +% Computer Modern Sans Serif (cmss) has no OML encoded variant. Nor have many % derivatives (lmss, aess, ...). Actually, there are only a few OML-encoded % sans-serif fonts (all slanted/italic): % @@ -412,7 +500,7 @@ % TODO % Allow scaling? % -% +% % reuseMathAlphabets % ------------------ % @@ -424,17 +512,17 @@ % % To access the upright shapes, the corresponding ``\textbf`` and ``\textsf`` % commands might be used (however, this toggles the math-mode off and -% might use a different font). +% might use a different font). % % :: \DeclareBoolOption{reuseMathAlphabets} -% .. caution:: +% .. caution:: % Do not use ``reuseMathAlphabets`` together with the ``OMLmathbf`` or -% ``OMLmathsf`` options. +% ``OMLmathsf`` options. +% % -% % OML math alphabets % ------------------ % @@ -453,22 +541,24 @@ \DeclareBoolOption{OMLmathtt} % Setting these options enables access to small Greek letters in different -% shapes with e.g. ``\mathrm{\pi}`` — *if an OML encoded font is available*. +% shapes with e.g. ``\mathrm{\pi}`` — *if an OML encoded font is available*. % Currently, support for the `OML font encoding`_ is rather limited: % -% * only the mathdesign_ fonts support *bold roman* in OML encoding, while +% * only the mathdesign_ fonts support roman in OML encoding, while % * many font packages define an italic font as OML replacement for a roman % font. -% +% % 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* + % Declarations % ============ % @@ -476,10 +566,10 @@ % -------------- % % In math, LaTeX uses "absolute" fontnames instead of a selection by family, -% shape, and weight because typefaces have a semantic meaning [fntguide]_. -% This correlates with the `Unicode math support`_ where the -% `mathematical alphanumeric symbols`_ block defines distinct Unicode -% characters for in Greek and Latin letters in different typefaces. +% shape, and weight because typefaces have a semantic meaning [fntguide]_. +% This correlates with the `Unicode math support`_ where the +% `mathematical alphanumeric symbols`_ block defines distinct Unicode +% characters for Greek and Latin letters in different typefaces. % % Isomath defines a math alphabet for every required font variant and % optionally re-defines the standard math alphabets in `OML font encoding`_. @@ -489,8 +579,8 @@ % mathbold % """""""" % -% The *italic bold* math alphabet is named ``\mathbold`` like in -% `related packages`_. With the reuseMathAlphabets_ option, ``\mathfb`` +% The *italic bold* math alphabet is named ``\mathbold`` like in +% `related packages`_. With the reuseMathAlphabets_ option, ``\mathfb`` % is redefined and ``\mathbold`` made an alias (overwriting existing % definitions):: @@ -505,14 +595,14 @@ % """""""" % % 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:: +% analogy to ``\mathbold``). As this typeface is not required by ISO 31, it +% is only defined if the ``OMLmathsans`` option is set:: \ifisomath@OMLmathsans \DeclareMathAlphabet{\mathsans}{OML}{\isomath@sfdefault}{m}{it} \fi -% mathboldsans +% mathboldsans % """""""""""" % % A *sans serif slanted bold* alphabet is needed for tensor symbols. With the @@ -524,7 +614,7 @@ \def\mathboldsans{\mathsf} \else \DeclareMathAlphabet{\mathboldsans}{OML}{\isomath@sfdefault}{bx}{it} -\fi +\fi % Redefine standard alphabets % """"""""""""""""""""""""""" @@ -533,16 +623,16 @@ % if the corresponding `OML math alphabets`_ option is true:: \ifisomath@OMLmathrm - \SetMathAlphabet{\mathrm}{normal}{OML}{\isomath@rmdefault}{n}{n} + \SetMathAlphabet{\mathrm}{normal}{OML}{\isomath@rmdefault}{m}{n} \fi \ifisomath@OMLmathbf \SetMathAlphabet{\mathbf}{normal}{OML}{\isomath@rmdefault}{b}{n} \fi \ifisomath@OMLmathsf - \SetMathAlphabet{\mathsf}{normal}{OML}{\isomath@sfdefault}{n}{n} + \SetMathAlphabet{\mathsf}{normal}{OML}{\isomath@sfdefault}{m}{n} \fi \ifisomath@OMLmathtt - \SetMathAlphabet{\mathtt}{normal}{OML}{\ttdefault}{n}{n} + \SetMathAlphabet{\mathtt}{normal}{OML}{\ttdefault}{m}{n} \fi % Command aliases @@ -562,6 +652,12 @@ % you might want to re-define the standard ``\vec`` command after loading this % package (cf. the Examples_ section). % +% 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. +% % \\matrixsym % """"""""""" % @@ -594,15 +690,14 @@ \DeclareFontShape{OML}{ppl}{m}{it}{<-> ssub * zplm/m/it}{} \DeclareFontShape{OML}{ppl}{bx}{it}{<-> ssub * zplm/b/it}{} -% Arev (arev): fav -> zavm :: +% Arev (see omlzavm.fd): fav -> zavm :: -\DeclareFontFamily{OML}{fav}{} +\DeclareFontFamily{OML}{fav}{\skewchar \font =127} \DeclareFontShape{OML}{fav}{m}{it}{<->ssub * zavm/m/it}{} \DeclareFontShape{OML}{fav}{bx}{it}{<->ssub * zavm/b/it}{} -% LX Fonts (lxfonts): llcmss -> llcmm :: - -% repeat font declarations from lxfonts.sty +% LX Fonts (see lxfonts.sty): llcmss -> llcmm :: + \DeclareFontFamily{OML}{llcmm}{\skewchar\font'177} \DeclareFontShape{OML}{llcmm}{m}{it}{<-> lcmmi8}{} \DeclareFontShape{OML}{llcmm}{bx}{it}{<-> lcmmib8}{} @@ -620,15 +715,19 @@ % References % ********** % -% .. [ISO-31] International Standard 31 `Quantities and units`, +% .. [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 % % .. [typefaces] `Typefaces for Symbols in Scientific Manuscripts`: % http://physics.nist.gov/Document/typefaces.pdf % -% .. [fonts-for-symbols] `On the use of italic and roman fonts for symbols in -% scientific text`, (Revised December 1999): +% .. [checklist] `SI Unit rules and style conventions` +% Check List for Reviewing Manuscripts: +% http://physics.nist.gov/cuu/Units/checklist.html +% +% .. [fonts-for-symbols] `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 % % .. [SI-brochure] `The International System of Units (SI)`: @@ -653,6 +752,7 @@ % .. Links % .. ***** % +% .. _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/ |