summaryrefslogtreecommitdiff
path: root/tex/context/base/font-unk.mkiv
blob: 988e5df3d3c8c726a2213db1c57b65c65ba61dfa (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
%D \module
%D   [       file=font-unk,
%D        version=1998.09.10,
%D          title=\CONTEXT\ Font Macros,
%D       subtitle=Unknown Defaults,
%D         author=Hans Hagen,
%D           date=\currentdate,
%D      copyright={PRAGMA ADE \& \CONTEXT\ Development Team}]
%C
%C This module is part of the \CONTEXT\ macro||package and is
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.

%D This module is rather important, because it enables us to
%D define and call for not yet defined fonts in a way
%D completely independant of real font names. First we map
%D some meaningful names onto unknown filenames.

\unprotect

\definefontsynonym [Serif]              [unknown]
\definefontsynonym [SerifBold]          [unknown]
\definefontsynonym [SerifItalic]        [unknown]
\definefontsynonym [SerifSlanted]       [unknown]
\definefontsynonym [SerifBoldItalic]    [unknown]
\definefontsynonym [SerifBoldSlanted]   [unknown]
\definefontsynonym [SerifCaps]          [unknown]

\definefontsynonym [Sans]               [unknown]
\definefontsynonym [SansBold]           [unknown]
\definefontsynonym [SansItalic]         [unknown]
\definefontsynonym [SansSlanted]        [unknown]
\definefontsynonym [SansBoldItalic]     [unknown]
\definefontsynonym [SansBoldSlanted]    [unknown]
\definefontsynonym [SansCaps]           [unknown]

\definefontsynonym [Mono]               [unknown]
\definefontsynonym [MonoBold]           [unknown]
\definefontsynonym [MonoItalic]         [unknown]
\definefontsynonym [MonoSlanted]        [unknown]
\definefontsynonym [MonoBoldItalic]     [unknown]
\definefontsynonym [MonoBoldSlanted]    [unknown]
\definefontsynonym [MonoCaps]           [unknown]

\definefontsynonym [MathRoman]          [unknown]
\definefontsynonym [MathRomanL2R]       [MathRoman]
\definefontsynonym [MathRomanR2L]       [MathRoman]
\definefontsynonym [MathRomanBold]      [MathRoman]
\definefontsynonym [MathRomanBoldL2R]   [MathRomanBold]
\definefontsynonym [MathRomanBoldR2L]   [MathRomanBold]

\definefontsynonym [Handwriting]        [unknown]
\definefontsynonym [Calligraphic]       [unknown]

%D This permit us to define (use) fonts that refer to the default
%D style (so, Bold may expand to SansBold or SerifBold, depending
%D on the default style in the typeface).

\definefontsynonym[\s!Normal]     [\noexpand\v_font_string_d]
\definefontsynonym[\s!Bold]       [\noexpand\v_font_string_d\noexpand\s!Bold]
\definefontsynonym[\s!Italic]     [\noexpand\v_font_string_d\noexpand\s!Italic]
\definefontsynonym[\s!Slanted]    [\noexpand\v_font_string_d\noexpand\s!Slanted]
\definefontsynonym[\s!BoldItalic] [\noexpand\v_font_string_d\noexpand\s!BoldItalic]
\definefontsynonym[\s!BoldSlanted][\noexpand\v_font_string_d\noexpand\s!BoldSlanted]
\definefontsynonym[\s!Caps]       [\noexpand\v_font_string_d\noexpand\s!Caps]

%D Also handy:

\definefontsynonym [Regular]            [Serif]
\definefontsynonym [RegularBold]        [SerifBold]
\definefontsynonym [RegularItalic]      [SerifItalic]
\definefontsynonym [RegularSlanted]     [SerifSlanted]
\definefontsynonym [RegularBoldItalic]  [SerifBoldItalic]
\definefontsynonym [RegularBoldSlanted] [SerifBoldSlanted]
\definefontsynonym [RegularCaps]        [SerifCaps]

\definefontsynonym [Support]            [Sans]
\definefontsynonym [SupportBold]        [SansBold]
\definefontsynonym [SupportItalic]      [SansItalic]
\definefontsynonym [SupportSlanted]     [SansSlanted]
\definefontsynonym [SupportBoldItalic]  [SansBoldItalic]
\definefontsynonym [SupportBoldSlanted] [SansBoldSlanted]
\definefontsynonym [SupportCaps]        [SansCaps]

%D Well, not that good an idea:

\definefontsynonym [Roman]              [Serif]
\definefontsynonym [RomanBold]          [SerifBold]
\definefontsynonym [RomanItalic]        [SerifItalic]
\definefontsynonym [RomanSlanted]       [SerifSlanted]
\definefontsynonym [RomanBoldItalic]    [SerifBoldItalic]
\definefontsynonym [RomanBoldSlanted]   [SerifBoldSlanted]
\definefontsynonym [RomanCaps]          [SerifCaps]

\definefontsynonym [Type]               [Mono]
\definefontsynonym [TypeBold]           [MonoBold]
\definefontsynonym [TypeItalic]         [MonoItalic]
\definefontsynonym [TypeSlanted]        [MonoSlanted]
\definefontsynonym [TypeBoldItalic]     [MonoBoldItalic]
\definefontsynonym [TypeBoldSlanted]    [MonoBoldSlanted]
\definefontsynonym [TypeCaps]           [MonoCaps]

%D Next we define roman, sans and monospaced font sets.

\definebodyfont [default] [rm]
  [\s!tf=Serif            sa 1,
   \s!bf=SerifBold        sa 1,
   \s!it=SerifItalic      sa 1,
   \s!sl=SerifSlanted     sa 1,
   \s!bi=SerifBoldItalic  sa 1,
   \s!bs=SerifBoldSlanted sa 1,
   \s!sc=SerifCaps        sa 1]

\definebodyfont [default] [ss]
  [\s!tf=Sans            sa 1,
   \s!bf=SansBold        sa 1,
   \s!it=SansItalic      sa 1,
   \s!sl=SansSlanted     sa 1,
   \s!bi=SansBoldItalic  sa 1,
   \s!bs=SansBoldSlanted sa 1,
   \s!sc=SansCaps        sa 1]

\definebodyfont [default] [tt]
  [\s!tf=Mono            sa 1,
   \s!bf=MonoBold        sa 1,
   \s!it=MonoItalic      sa 1,
   \s!sl=MonoSlanted     sa 1,
   \s!bi=MonoBoldItalic  sa 1,
   \s!bs=MonoBoldSlanted sa 1,
   \s!sc=MonoCaps        sa 1]

\definebodyfont [default] [mm]
  [\s!mr  =MathRoman        mo 1,
   \s!mrlr=MathRomanL2R     mo 1,
   \s!mrrl=MathRomanR2L     mo 1,
   \s!mb  =MathRomanBold    mo 1,
   \s!mblr=MathRomanBoldL2R mo 1,
   \s!mbrl=MathRomanBoldR2L mo 1]

\definebodyfont [default] [hw]
  [\s!tf=Handwriting sa 1]

\definebodyfont [default] [cg]
  [\s!tf=Calligraphy sa 1]

%D These definitions come into action as soon as names are
%D mapped onto real file names (or names that themselves are
%D mapped).

\protect \endinput