[Tex/LaTex] Define spec symbol glyph’s Unicode

unicode

Suppose I have:

\documentclass{article}
\begin{document}
$1 \cdot{1}$
\end{document}

I want to know the glyphs' Unicode for cdot special symbol.
I followed such way.

I've run latex command on my *nix system and perform such command

\show\cdot

after that I see

\cdot=\mathchar"2201.

But that is wrong Unicode for CENTERED DOT character.

How can I determine the mapping rules from 2201 to Unicode?

Best Answer

You guessed right that the "2201 is a number in hexadecimal representation, but this number is not connected to Unicode (which was born years after Knuth invented mathcodes).

The four hexadecimal digits tell TeX that \cdot is an operation symbol (the first digit 2), which must be taken from the font in math family 2 (the second digit), choosing the glyph at slot "01.

TeX knows about at most 16 math families, each can define three fonts for the normal size, first level subscripts and superscripts, and second level sub(super)scripts.

Family 0 fonts contain the upright letters, family 1 the math italic ones; family 2 fonts contain the most common math symbols; finally family 3 fonts contain the "big" symbols such as extensible parentheses.

These four families are compulsory if one wants to typeset math formulas, as TeX relies on parameters from these fonts to do its job. Other families can be (and are) defined by the LaTeX kernel (for \mathbf, \mathsf and so on) or by additional packages (for example stmaryrd).

There's no connection whatsoever between math codes and Unicode.

The XeTeX and LuaTeX engines define new primitives for dealing with Unicode math fonts, but that's another story.

TeX fonts contain at most 256 glyphs, the standard math fonts only 128. Their tables are laid out in the TeXbook or in TeX by Topic (on TeX Live this one is available with texdoc texbytopic). You can produce yourself the font tables by typesetting the following document:

\documentclass{article}
\usepackage[a4paper,margin=3cm]{geometry}
\usepackage{fonttable}
\setcounter{secnumdepth}{0}
\pagestyle{empty}
\begin{document}

\section{Family 0}
\xfonttable{OT1}{cmr}{m}{n}
\newpage

\section{Family 1}
\xfonttable{OML}{cmr}{m}{n}
\newpage

\section{Family 2}
\xfonttable{OMS}{cmr}{m}{n}
\newpage

\section{Family 3}
\xfonttable{OMX}{cmex}{m}{n}

\end{document}
Related Question