summaryrefslogtreecommitdiff
path: root/fonts/sansmathfonts/tex/sansmathfonts.sty
blob: bb47e5ff7538319adebdbfbba4f79b663f96038d (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
% sansmathfonts.sty
%
% Provides complete sans serif math fonts
%
% author: Ariel Barton
%
% Copyright Ariel Barton, 2013
%
% 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.
% The latest version of the license is in
%    http://www.latex-project.org/lppl.txt
% and version 1.3 or later is part of all distributions of
% LaTeX version 2003/06/01 or later.
%
% This work has the LPPL maintenance status "author-maintained".
%
% The complete list of files considered part of this work is in
% the file `sansmathfonts.pdf' and its source code `sansmathfonts.tex'.
%

\ProvidesPackage{sansmathfonts}[2013/03/22]

\newif \ifmath@sansmathfonts \math@sansmathfontstrue

\def\sfdefault@sansmathfonts{xcmss}

\DeclareOption{notmath}{\math@sansmathfontsfalse}
\DeclareOption{I}{\def\sfdefault@sansmathfonts{cmsmf}}

\ProcessOptions

\ifmath@sansmathfonts

% Turn off Beamer math replacements
\@ifpackageloaded{beamerbasefont}{\usefonttheme{professionalfonts}}{}

% Sans serif math
% Code borrowed from fontmath.ltx 
% (edited; cmr->cmsmf, cmm->cmssm, cmsy->cmsssy, cmex->cmssex)
\DeclareFontSubstitution{OML}{cmssm}{m}{it}
\DeclareFontSubstitution{OMS}{cmsssy}{m}{n}
\DeclareFontSubstitution{OMX}{cmssex}{m}{n}
\DeclareFontSubstitution{U}{\sfdefault@sansmathfonts}{m}{n}
\DeclareSymbolFont{operators}   {OT1}{cmsmf} {m}{n}
\DeclareSymbolFont{letters}     {OML}{cmssm} {m}{it}
\DeclareSymbolFont{symbols}     {OMS}{cmsssy}{m}{n}
\DeclareSymbolFont{largesymbols}{OMX}{cmssex}{m}{n}
\SetSymbolFont{operators}{bold}{OT1}{cmsmf} {bx}{n}
\SetSymbolFont{letters}  {bold}{OML}{cmssm} {b}{it}
\SetSymbolFont{symbols}  {bold}{OMS}{cmsssy}{b}{n}

% Code borrowed from concmath.sty (amsfonts/amssymb option)
\AtBeginDocument{%
	\@ifpackageloaded{amsfonts}{%
	\DeclareSymbolFont{AMSa}{U}{ssmsa}{m}{n}
	\DeclareSymbolFont{AMSb}{U}{ssmsb}{m}{n}
	}{}%
	\@ifpackageloaded{esint}{%
	\DeclareSymbolFont{largesymbolsA}{U}{ssesint}{m}{n}
	}{}
	}	

% beamer currently sets 
% \mathrm to upright serif and
% \mathit to slanted sans serif.
% They should be consistent,
% and the setup should be such that if you aren't paying attention,
% then you get the font of the rest of the letters,
% that is, sans serif.

% Code borrowed from fontmath.ltx 
% (edited; cmr->cmsmf)
\DeclareSymbolFontAlphabet{\mathrm}    {operators}
\DeclareSymbolFontAlphabet{\mathnormal}{letters}
\DeclareSymbolFontAlphabet{\mathcal}   {symbols}
\DeclareMathAlphabet      {\mathbf}{OT1}{cmsmf}{bx}{n}
\DeclareMathAlphabet      {\mathsf}{OT1}{cmsmf}{m}{n}
\DeclareMathAlphabet      {\mathit}{OT1}{cmsmf}{m}{it}
\DeclareMathAlphabet      {\mathtt}{OT1}{cmtt}{m}{n}
\SetMathAlphabet\mathsf{bold}{OT1}{cmsmf}{bx}{n}
\SetMathAlphabet\mathit{bold}{OT1}{cmsmf}{bx}{it}

\fi

\DeclareMathAlphabet      {\mathserif}{OT1}{cmr}{m}{n}

% Use the improved sans family
% (provides sans serif small caps fonts)
\def\sfdefault{\sfdefault@sansmathfonts}