summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/isomath/isomath.txt
blob: ad3697083c4024715e1f077290777955e5e00463 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
.. -*- rst-mode -*-

isomath: Math for scientists
****************************

:Author:    Günter Milde
:Date:      2010-08-23
:Copyright: © 2008, 2010 Günter Milde
:Licence:   This work may be distributed and/or modified under the
            conditions of the `LaTeX Project Public License`_, either
            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.

.. contents::
.. sectnum::

Motivation
----------

.. How do you write the stress tensor ``$\sigma$`` in a
   sans-serif bold italic typeface, as recommended by [typefaces]_?

Scientific organisations like IUPAP_, IUPAC_, NIST_, BIPM_, and others
recommend typesetting math according to the International Standard ISO 31
`Quantities and units` [ISO-31]_.\ [#]_

.. [#] Summaries of these rules are free available, see [typefaces]_,
       [checklist]_, [fonts_for_symbols]_, and [SI-brochure]_.

The traditional `LaTeX math style` deviates in some points from this rules:

* The ``\vec`` command produces an array accent, while ISO 31 recommends
  a bold italic typeface for vector symbols.

* Greek letters are excluded from font changes with the math
  alphabets, while the ISO 31 rules apply equally to letters from the
  Greek and Latin alphabet.

* There is no provision for typesetting of Greek letters in bold italic
  style recommended for vectors.

* There is no provision for typesetting letters in sans-serif bold italic
  recommended for typesetting tensor symbols.

Some of these points are adressed by `related packages`_, however
there is currently no package (known to the author) that defines the
sans-serif bold italic math alphabet needed for tensor symbols.


Features
--------

.. _`equal treatment of Latin and Greek`:

Equal treatment of Latin and Greek letters
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This feature is provided by the required package fixmath_ which
ensures that:

+ Both, Greek and Latin letters change shape if a different
  math alphabet is used.

+ By default, uppercase Greek letters are typeset in italic style.

However, `fixmath` works only for Computer Modern.  With `isomath`,

+ the used math fonts are configurable (using the rmdefault_ and
  sfdefault_ options), and

+ upright Greek letters can be made available through the common
  ``\math*`` alphabets via the OMLmath_ options, if the
  corresponding fonts support the `OML font encoding`_.

Caution:
  Placing Greek letters in a ``\math*`` macro, e. g.
  ``\mathrm{k\Omega}``, can lead to garbage, as the standard math
  alphabets are usually taken from text fonts that have ligatures and
  non-alpha symbols in place of the small Greek letters.
  Do not use Greek letters in the standard math alphabet commands
  ``mathit``, ``mathrm``, ``mathbf``, ``mathsf``, and ``mathtt``
  unless you use the OMLmath_ options.\ [#]_

  .. [#] Some packages provide ``\up*`` or ``\var*`` macros for
     upright Greek letters so the above example could be written
     ``\mathrm{k}\upOmega``.


New math alphabets
~~~~~~~~~~~~~~~~~~
New math alphabets are defined:

:``\mathbold``: boldface italic (vector and matrix symbols),
:``\mathboldsans``: sans-serif bold italic  (tensor symbols).
:``\mathsans``: sans-serif italic (optional),

The rmdefault_ and sfdefault_ options set the font family used for
these alphabets.


Command aliases
~~~~~~~~~~~~~~~
The command aliases ``\vectorsym``, ``\matrixsym``, and ``\tensorsym``
allow semantic markup. They print the argument in an ISO-conforming
typeface.


Font mappings
~~~~~~~~~~~~~

Some font definitions are added for font families which have an OML
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 (see also Examples_).


Options
~~~~~~~

rmdefault
'''''''''
Family for serif math fonts (roman and kursive). The default is to use the
corresponding text font family (the value of ``\rmdefault``). The font
must be available in `OML font encoding`_.


sfdefault
'''''''''
Family for sans-serif math fonts. The default is ``cmbr`` because many
sans-serif fonts define the Computer Roman font `cmm` as OML substitution
(see `Table 2`_).

There are only few sans serif `fonts that support the OML
encoding`_:

.. class:: booktab

========== =========== ===================================================
Name       Package     Comment
========== =========== ===================================================
``cmbr``   cmbright_   `Computer Modern Bright`, bitmap, slightly lighter
                       than cmss (Type 1 fonts with hfbright_)
``fav``    arev_       `Arev` (`Vera Sans`) with math extension,
                       large x-hight
``iwona``  iwona_      Humanistic Sans Serif,
                       some shapes very similar to roman
``hvm``    hvmath_     `Helvetica Math`, commercial, free bitmap version
``llcmss`` lxfonts_    `LX Fonts`, very wide, excentric, large x-hight,
                       new in 2008
========== =========== ===================================================


scaled
''''''
As the choice of sans serif math fonts is very limited,
the fonts, ``fav``, ``llcmss``, and ``iwona`` can be scaled
with the ``scaled`` option (see examples_).


reuseMathAlphabets
''''''''''''''''''
The definition of new math alphabets can lead to a “`too many math
alphabets used in version normal`_” error. As a workaround, this
option tells ``isomath`` to re-use the existing ``\mathbf`` and
``\mathsf`` alphabets for italic bold and sans-serif bold. [#]_

.. [#] 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, so watch for
   side-effects.

OMLmath
''''''''

With Greek letters defined as ``\mathalpha``, the math alphabets are
expected to be in `OML font encoding`_. Unfortunately, the standard
math alphabets are usually taken from OT1 or T1 encoded fonts that
have ligatures and accents in place of the Greek letters.

The following options cause isomath to (re)define math alphabets in OML
encoding::

  OMLmathrm, OMLmathbf, OMLmathsf, OMLmathsans, 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**. Currently, only the mathdesign_ package provides
upright `fonts that support the OML encoding`_. Many font packages
define an italic font as replacement for a roman font in OML encoding.

With some packages, these options can result in a “`too many math alphabets
used in version normal`_” error.

Examples
~~~~~~~~

* Use `isomath` with the default settings::

    \usepackage{isomath}

* Define also a slanted sans-serif math alphabet::

    \usepackage[OMLmathsans]{isomath}

* Use the heavier `Arev` sans serif fonts::

    \usepackage[sfdefault=fav,scaled=0.875]{isomath}

  (Adapt the scaling factor to your needs.)

* Redefine the standard ``\vec`` macro to typeset its argument in `bold
  italic`::

    \usepackage{isomath}
    \renewcommand{\vec}{\vectorsym}

  (Use ``\bm`` or ``boldmath`` for for the zero and unit vectors, as
  ``\vec{0}`` and ``\vec{1}`` will give undesired results.)

* The mathdesign_ package provides an OML encoded *bold roman* font but does
  not set it up for ``\mathbf``. To set it up, write e.g.::

    \usepackage[charter]{mathdesign}
    \usepackage[OMLmathbf]{isomath}

  Now, e.g. ``\mathbf{\pi}`` produces a bold upright pi symbol.

See also the ``isomath-test.tex`` test document.


Related packages
----------------

Requirements
~~~~~~~~~~~~

fixmath_
  by Walter Schmidt defines Greek letters as alphabetic symbols.

kvoptions_
  (in the oberdiek_ bundle) facilitates the setup of package options
  and provides a key=value interface (based on keyval_).


Recommendations
~~~~~~~~~~~~~~~

cmbright_
  provides *sans serif* and *sans-serif bold* fonts for the
  ``\mathsans`` and ``\mathboldsans`` alphabets that match with
  Computer Modern and derivatives. Free Type 1 versions of the fonts
  with hfbright_.

arev_
  provides *sans serif* somewhat heavier letters that are clearly
  distinguishable from the roman or italic counterparts (important if
  used to distinguish vectors and tensors). However, `Arev` has a
  large x-hight, so for most default fonts, either small or capital
  letters will not match in size.


Alternatives
~~~~~~~~~~~~

If the only requirement is a bold italic font for (Latin and Greek) vector
symbols, there are established alternatives to `isomath`:

* Packages that support `equal treatment of Latin and Greek`_ and
  provide the ``\mathbold`` alphabet (but not ``\mathsansbold``) in
  `OML font encoding`_:

  Roman
    * eulervm_   (Euler Math),
    * fixmath_  (Computer Modern),
    * mathpazo_ (Palatino),
    * tmmath_   (TM-Math/Times).

  Sans serif
    * arev_     (Arev/Vera Sans),
    * cmbright_ (CM Bright),
    * hvmath_   (HV-Math/Helvetica),


* Packages that provide commands which can be used as replacement for
  ``\vec``:

  * `amsbsy`_ (part of `amsmath`_, the near-indispensable adjunct to serious
    mathematical typesetting in LaTeX) defines ``\boldmath``,

  * `bm`_ defines a command ``\bm`` which makes its argument bold (more
    careful than amsbsy's ``\boldmath``). Combining `bm` and `isomath` may
    lead to the `too many math alphabets used in version normal`_ error.

The ``\text`` macro from `amsmath`_ can be used to get e.g. upright or
sans-serif bold slanted Greek symbols from a text font into a formula.


Conflicts
~~~~~~~~~

* “_`too many math alphabets used in version normal`”

  This error occurs if the combination of packages tries to load more
  than 16 fonts into the ‘normal’ math version.

  It can be avoided with the reuseMathAlphabets_ option (see there
  for side-effects).

  Examples for problematic combinations:

  + The `kpfonts`_, `pxfonts`_, and `txfonts`_ packages define many
    additional math alphabets.

  + The `bm`_ package normally allocates several symbol fonts for bold
    and heavy fonts. Their number can be customized by defining
    ``\bmmax`` and ``\hmmax`` before loading the package.

* The `fourier`_ package for math typesetting with Utopia defines its own,
  incompatible math font encodings. It cannot be used with ``isomath`` but
  provides other means to typeset upright or italic Greek (see its
  documentation).

  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=arev,scaled=0.85]{isomath}


Background
----------

Letter symbols
~~~~~~~~~~~~~~

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, […].

In contrast, the standard LaTeX style treats Greek letter symbols

* as invariant operators,

* with lower case italic and upper case upright.

A possible fix (established by fixmath_) is using a common font for
Greek and Latin letters.  There is one established font encoding
providing Latin and Greek letters: the `OML font encoding`_. However,

* support_ for OML is limited to a few (mostly italic) fonts.

* The widely supported but non-standard `LGR` font encoding has Greek
  but no Latin letters, while

* the standard Greek font encoding `T7` is just a “reserved name”.


OML font encoding
~~~~~~~~~~~~~~~~~

The `LaTeX font encodings` guide [encguide]_ names the OML encoding
`TeX math italic` and defines:

  The OML encoding contains italic Latin and Greek letters for use in
  mathematical formulas (typically used for variables) together with some
  symbols.

The reference to *italic* shape is odd:

* No other font encoding is specific to the font shape.

* The different font selection and the semantic of font features in
  math do not interfere with the font *encoding*: Both,
  ``\DeclareSymbolFont`` and ``\DeclareMathAlphabet`` 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.

This seems to be a remnant of pre-NFSS times – there is only one OML
encoded font in Knuth's Computer Modern fonts: `Computer Modern Math
Italic` (cmmi) – rather than a necessary restriction.

Proposals:

* Drop the *italic* from the definition. Optionally add an explanation:

    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.

* The name `TeX math italic` can be interpreted as “the encoding
  **of** `Computer Modern Math Italic`” rather than “an 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.


Support
'''''''

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 ``oml*.fd`` files
and grepping for ``DeclareFont.*OML`` in ``*.sty`` files.
`Table 1`_ lists the findings for a selection of TeXLive + some
additonally installed font packages.

* If there is an alias (substitution) from the text font to a
  math-variant, only the text font is listed.

* Many text fonts define substitutions also for upright shape,
  however mapping to an italic variant of the OML encoded font. These
  are not listed as supporting ``m/n`` or ``bx/n`` here.

`Table 2`_ lists some fonts that define ``cmm`` as OML substitution.
With isomath, a better matching substitution can be set using the
rmdefault_ or sfdefault_ options.

.. _Table 1:

.. table:: _`Fonts that support the OML encoding`

   ============= =========================== ======= ======== ====== =======
   Name          Family                      m/it    bx/it    m/n    bx/n
   ============= =========================== ======= ======== ====== =======
   aer           AE (Almost European)           x      x
   antt          Antykwa Torunska               x      x
   cmr           Computer Modern Roman          x      x
   ccr           Concrete                       x      x
   cmbr          Computer Modern Bright         x      x
   hlh           Lucida                         x      x
   hfor          CM with old-style digits       x      x
   iwona         Iwona (sans serif)             x      x
   jkp           Kepler Serif                   x      x
   jkpl          Kepler Serif                   x      x
   jkpvos        Kepler Serif                   x      x
   jkplvos       Kepler Serif                   x      x
   llcmm         LXfonts (sans serif)           x      x
   lmr           Latin Modern Roman             x      x
   mak           Kerkis                         x
   kurier        Kurier                         x      x
   mdbch         Math Design Charter            x      x         x     x
   mdput         Math Design Utopia             x      x         x     x
   mdugm         Math Design Garamond           x      x         x     x
   neohellenic   GFS Neohellenic                x
   plcm          CM (PLaTeX)                    x
   ptmom         Times (Omega or MB-Times)      x      x
   ptmomu        Times (Omega or MB-Times)      x      x
   ptmcm         Times (psfont)                 x
   pxr           Palatino (pxfonts)             x      x
   qpl           Palatino/Pagella (qpxmath)     x      x
   qtm           Times/Termes (qtxmath)         x      x
   txr           Times (txfonts)                x      x
   udidot        Didot (gfsdidot)               x
   ywclm         (greektex)                     x      x
   zavm          Arev (Vera Sans-Serif)         x      x
   zesfcm        (efont)                        x
   zplm          Palatino (mathpazo)            x      x
   zpple         Palatino                       x      x
   ztmcm         Times (mathptmx)               x
   zer           Computer Modern (zefonts)      x      x
   ============= =========================== ======= ======== ====== =======


.. _Table 2:

.. table:: Non-CM fonts with ``cmm`` as OML substitution

   ============= ===============================
   Family        Name
   ============= ===============================
   bch           Charter (psnfss)
   pag           Avant Garde (psnfss)
   pbk           Bookman (psnfss)
   pcr           Courier (psnfss)
   phv           Helvetica (psnfss)
   pnc           New Century Schoolbook (psnfss)
   ppl           Palatino (psnfss)
   ptm           Times Roman (psnfss)
   put           Utopia (psnfss)
   pzc           Zapf Chancery (psnfss)
   uag           Avant Garde (avantgar)
   ubk           Bookman (bookman)
   ucr           Courier (courier)
   ucrs          Courier
   unc           New Courier (nctrsbk)
   uni           Universal (universa)
   uhv           Helvetica (helvetic)
   upl           Palatino (palatino)
   utm           Times (times)
   uzc           Zapf Chancery (zapfchan)
   ============= ===============================


Math in Unicode
~~~~~~~~~~~~~~~

Basis for the definition of the Unicode block
`mathematical alphanumeric symbols`_, was the consideration outlined
in [beeton:2000]_:

  These alphabets are needed for proper composition
  of mathematics:

  * lightface upright Latin, Greek and digits
  * boldface upright Latin, Greek and digits
  * lightface italic Latin, Greek and digits
  * boldface italic Latin, Greek and digits
  * script
  * fraktur
  * bold fraktur
  * open-face (blackboard bold) including digits
  * lightface upright sans serif Latin and digits
  * lightface italic sans serif Latin
  * boldface upright sans serif Latin, Greek, and digits
  * boldface italic sans serif Latin and Greek
  * monospace Latin and digits

  Except for the lightface upright letters and digits,
  which are to be encoded using the base Unicodes
  (ASCII for the Latin letters and digits), the
  alphanumerics are to be placed in a tightly packed
  block (U+D400–D7FF) in plane 1, so that they can
  be used for math (most likely via entity names in
  MathML), but will be very difficult to access for
  other purposes.

The technical report `Unicode Support for Mathematics` [tr25]_ lists
“alphanumeric symbols encountered in mathematics” in table 2:
`Mathematical Alphabets`.

The Unicode block `mathematical alphanumeric symbols`_ provides style
variants for Latin and Greek letters and digits. It is labelled “to be
used for mathematical variables where style variations are important
semantically”. `Table 3`_ gives a survey of current LaTeX support.

.. _table 3:

.. table:: Styles in the `mathematical alphanumeric symbols`_
   Unicode block
   :class: booktab

   ================= ======= ================= ==========================
   Style             Symbols LaTeX macro       Package, Comment
                     [#]_
   ================= ======= ================= ==========================
   bold              LGD     ``\mathbf``       no Greek

   italic            LG      ``\mathit``       no Greek
   \                         ``\mathnormal``   small Greek but
                                               old-style digits (upright)
   bold italic       LG      ``\mathbold``     fixmath and friends
   \                         ``\boldsymbol``   ams
   script            L       ``\mathcal`` or   only capital Latin
   (calligraphic)            ``\mathscr``
   bold script       L
   fraktur           L       ``\mathfrak``     eufrak
   double-struck     L D     ``\mathbb``       bbold, mathbbol,
                                               mbboard
   \                         ``\mathbbm``      bbm
   \                         ``\mathds``       dsfont
   bold fraktur      L
   sans-serif        L D     ``\mathsf``       no Greek
   sans-serif bold   LGD
   sans-serif italic L       ``\mathsans``     isomath
   sans bold italic  LG      ``\mathboldsans`` isomath
   monospace         L D     ``\mathtt``       no Greek
   ----------------- ------- ----------------- --------------------------
   *Not in the mathematical alphanumeric symbols block*:
   ----------------------------------------------------------------------
   plain             LGD     ``\mathrm``       no Greek
   \                         ``\mathnormal``   capital Greek
   ================= ======= ================= ==========================

.. [#] LGD: **L**\ atin, **G**\ reek, **D**\ igits



Conclusions and outlook
~~~~~~~~~~~~~~~~~~~~~~~

It is hoped, that in the future more fonts families will support the OML
encoding in normal and bold weight as well as upright and italic shape.
This would be a major step towards a LaTeX equivalent of the `Mathematical
Alphanumeric Symbols`_ Unicode block.

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, the T7 encoding could be used for math alphabets (if it ever
happens to materialise).

Upright small Greek letters in ``\mathrm`` would enable the specification of
the constant pi, Myons, Pions, alpha-particles, photons, and neutrinos
without special packages. (With mathdesign_, this is already possible
today.)



References
----------

.. [ISO-31] International Standard 31 `Quantities and units`,
   (ISO 31-0:1992 to ISO 31-14:1992):
   http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_tc_browse.htm?commid=46202

.. [typefaces] `Typefaces for Symbols in Scientific Manuscripts`:
   http://physics.nist.gov/Document/typefaces.pdf

.. [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)`:
   http://www.bipm.org/en/si/si_brochure/

.. [encguide] `LaTeX font encodings`:
   http://mirror.ctan.org/macros/latex/doc/encguide.pdf

.. [fntguide] `LaTeX 2e font selection`:
   http://mirror.ctan.org/macros/latex/doc/fntguide.pdf

.. [tr25] `Unicode Support for Mathematics`, Unicode Technical Report #25:
   http://www.unicode.org/reports/tr25/

.. [beeton:2000] Barbara Beeton:
   `Unicode and math, a combination whose time has come – Finally!`,
   TUGBoat, 21#3, 2000. available:
   http://www.tug.org/TUGboat/Articles/tb21-3/tb68beet.pdf.

.. see also
   [koma-mail] Custom font substitution: http://www.komascript.de/node/823

   [Green-Book] `Quantities, Units and Symbols in Physical Chemistry`,
   3rd edition, RSC Publishing, Cambridge 2007:
   [ISBN 0 85404 433 7; ISBN-13 978 0 85404 433 7]


.. Links
   =====

.. Print external links as footnotes (currently errors with LaTeX)
   .. target-notes::

.. _LaTeX Project Public License: http://www.latex-project.org/lppl.txt
.. _BIPM:  http://www.bipm.org/
.. _IUPAC: http://iupac.org/
.. _IUPAP: http://www.iupap.org/
.. _NIST:  http://physics.nist.gov/
.. _mathematical alphanumeric symbols:
    http://www.unicode.org/charts/PDF/U1D400.pdf
.. _amsbsy: http://dante.ctan.org/CTAN/help/Catalogue/entries/amsbsy.html
.. _amsmath: http://dante.ctan.org/CTAN/help/Catalogue/entries/amsmath.html
.. _arev: http://dante.ctan.org/CTAN/help/Catalogue/entries/arev.html
.. _bm: http://dante.ctan.org/CTAN/help/Catalogue/entries/bm.html
.. _cmbright: http://dante.ctan.org/CTAN/help/Catalogue/entries/cmbright.html
.. _eulervm: http://dante.ctan.org/CTAN/help/Catalogue/entries/eulervm.html
.. _fixmath: http://dante.ctan.org/CTAN/help/Catalogue/entries/fixmath.html
.. _fix-cm: http://dante.ctan.org/CTAN/help/Catalogue/entries/fix-cm.html
.. _fourier: http://dante.ctan.org/CTAN/help/Catalogue/entries/fourier.html
.. _hvmath: http://dante.ctan.org/CTAN/help/Catalogue/entries/hvmath.html
.. _hfbright: http://dante.ctan.org/CTAN/help/Catalogue/entries/hfbright.html
.. _ifthen: http://dante.ctan.org/CTAN/help/Catalogue/entries/ifthen.html
.. _iwona: http://dante.ctan.org/CTAN/help/Catalogue/entries/iwona.html
.. _kpfonts: http://dante.ctan.org/CTAN/help/Catalogue/entries/kpfonts.html
.. _kvoptions: http://dante.ctan.org/CTAN/help/Catalogue/entries/kvoptions.html
.. _keyval: http://dante.ctan.org/CTAN/help/Catalogue/entries/keyval.html
.. _lxfonts: http://dante.ctan.org/CTAN/help/Catalogue/entries/lxfonts.html
.. _mathdesign: http://dante.ctan.org/CTAN/help/Catalogue/entries/mathdesign.html
.. _mathpazo: http://dante.ctan.org/CTAN/help/Catalogue/entries/mathpazo.html
.. _oberdiek: http://dante.ctan.org/CTAN/help/Catalogue/entries/oberdiek.html
.. _sfmath: http://dtrx.de/od/tex/sfmath.html
.. _pxfonts: http://dante.ctan.org/CTAN/help/Catalogue/entries/pxfonts.html
.. _tmmath: http://dante.ctan.org/CTAN/help/Catalogue/entries/tmmath.html
.. _txfonts: http://dante.ctan.org/CTAN/help/Catalogue/entries/txfonts.html