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
|
%D \module
%D [ file=m-newmme,
%D version=2005.06.10, % 1999.12.20,
%D title=\CONTEXT\ XML Macros,
%D subtitle=MathML Entities,
%D author=Hans Hagen,
%D date=\currentdate,
%D copyright={PRAGMA ADE}]
%C
%C This module is part of the \CONTEXT\ macro||package and is
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
\writestatus{loading}{ConTeXt XML Macros / MathML Entities}
\unprotect
%D Used in the manual:
\def\showMMLentity#1%
{\bgroup
\doifXMLentityelse{#1}
{\let\MMLleft\empty\let\MMLright\empty\mathematics{\getXMLentity{#1}{}}}
{\getXMLentity{unknown}}%
\egroup}
\newbox\unknownXMLentity
\setbox\unknownXMLentity\hbox{\inframed[\c!strut=\v!no,\c!offset=1pt]{\ttx ?}}
\defineXMLentity [unknown] {\copy\unknownXMLentity}
%D A (not really needed) precaution:
\ifx\blackboard\undefined
\def\blackboard{\ifx\Bbb\undefined\else\expandafter\Bbb\fi}
\fi
%D Basic entities, greek:
\defineXMLentity [alpha] {\mathematics \alpha}
\defineXMLentity [beta] {\mathematics \beta}
\defineXMLentity [gamma] {\mathematics \gamma}
\defineXMLentity [delta] {\mathematics \delta}
\defineXMLentity [epsilon] {\mathematics \epsilon}
\defineXMLentity [zeta] {\mathematics \zeta}
\defineXMLentity [eta] {\mathematics \eta}
\defineXMLentity [theta] {\mathematics \theta}
\defineXMLentity [iota] {\mathematics \iota}
\defineXMLentity [kappa] {\mathematics \kappa}
\defineXMLentity [lambda] {\mathematics \lambda}
\defineXMLentity [theta] {\mathematics \theta}
\defineXMLentity [mu] {\mathematics \mu}
\defineXMLentity [nu] {\mathematics \nu}
\defineXMLentity [xi] {\mathematics \xi}
\defineXMLentity [pi] {\mathematics \pi}
\defineXMLentity [rho] {\mathematics \rho}
\defineXMLentity [sigma] {\mathematics \sigma}
\defineXMLentity [tau] {\mathematics \tau}
\defineXMLentity [upsilon] {\mathematics \upsilon}
\defineXMLentity [phi] {\mathematics \phi}
\defineXMLentity [chi] {\mathematics \chi}
\defineXMLentity [psi] {\mathematics \psi}
\defineXMLentity [omega] {\mathematics \omega}
\defineXMLentity [varepsilon] {\mathematics \varepsilon}
\defineXMLentity [vartheta] {\mathematics \vartheta}
\defineXMLentity [varpi] {\mathematics \varpi}
\defineXMLentity [varrho] {\mathematics \varrho}
\defineXMLentity [varsigma] {\mathematics \varsigma}
\defineXMLentity [varphi] {\mathematics \varphi}
\defineXMLentity [epsilonv] {\mathematics \varepsilon}
\defineXMLentity [thetav] {\mathematics \vartheta}
\defineXMLentity [piv] {\mathematics \varpi}
\defineXMLentity [rhov] {\mathematics \varrho}
\defineXMLentity [sigmav] {\mathematics \varsigma}
\defineXMLentity [phiv] {\mathematics \varphi}
\defineXMLentity [epsi] {\mathematics \epsilon}
\defineXMLentity [epsiv] {\mathematics \varepsilon}
\defineXMLentity [Alpha] {A}
\defineXMLentity [Beta] {B}
\defineXMLentity [Gamma] {\mathematics \Gamma}
\defineXMLentity [Delta] {\mathematics \Delta}
\defineXMLentity [Epsilon] {E}
\defineXMLentity [Zeta] {Z}
\defineXMLentity [Eta] {N}
\defineXMLentity [Theta] {\mathematics \Theta}
\defineXMLentity [Iota] {I}
\defineXMLentity [Kappa] {K}
\defineXMLentity [Lambda] {\mathematics \Lambda}
\defineXMLentity [Mu] {M}
\defineXMLentity [Nu] {N}
\defineXMLentity [Xi] {\mathematics \Xi}
\defineXMLentity [Pi] {\mathematics \Pi}
\defineXMLentity [Ro] {R}
\defineXMLentity [Sigma] {\mathematics \Sigma}
\defineXMLentity [Tau] {T}
\defineXMLentity [Upsilon] {\mathematics \Upsilon}
\defineXMLentity [Phi] {\mathematics \Phi}
\defineXMLentity [Chi] {X}
\defineXMLentity [Psi] {\mathematics \Psi}
\defineXMLentity [Omega] {\mathematics \Omega}
%D Basic entities, hebrew:
\defineXMLentity [aleph] {\mathematics \aleph}
%D Basic entities, functions:
\defineXMLentity [abs] {\mathopnolimits{abs}}
\defineXMLentity [arg] {\mathopnolimits{arg}}
\defineXMLentity [codomain] {\mathopnolimits{codomain}}
\defineXMLentity [curl] {\mathopnolimits{curl}}
\defineXMLentity [determinant] {\mathopnolimits{det}}
\defineXMLentity [divergence] {\mathopnolimits{div}}
\defineXMLentity [domain] {\mathopnolimits{domain}}
\defineXMLentity [false] {\mathopnolimits{false}}
\defineXMLentity [gcd] {\mathopnolimits{gcd}}
\defineXMLentity [grad] {\mathopnolimits{grad}}
\defineXMLentity [identity] {\mathopnolimits{id}}
\defineXMLentity [image] {\mathopnolimits{image}}
\defineXMLentity [lcm] {\mathopnolimits{lcm}}
\defineXMLentity [max] {\mathopnolimits{max}}
\defineXMLentity [median] {\mathopnolimits{median}}
\defineXMLentity [min] {\mathopnolimits{min}}
\defineXMLentity [mode] {\mathopnolimits{mode}}
\defineXMLentity [mod] {\mathopnolimits{mod}}
\defineXMLentity [notanumber] {\mathopnolimits{NaN}}
\defineXMLentity [otherwise] {\mathopnolimits{otherwise}}
\defineXMLentity [true] {\mathopnolimits{true}}
\defineXMLentity [declare] {\mathopnolimits{declare}}
\defineXMLentity [as] {\mathopnolimits{as}}
\defineXMLentity [polar] {\mathopnolimits{Polar}}
\defineXMLentity [mathematicald] {d}
\defineXMLentity [imaginaryi] {{\rm i}}
\defineXMLentity [differentiald] {\partial}
\defineXMLentity [exponentiale] {{\rm e}}
\defineXMLentity [capitaldifferentiald] {D}
\defineXMLentity [ii] {\getXMLentity{imaginaryi}}
\defineXMLentity [dd] {\getXMLentity{differentiald}}
\defineXMLentity [ee] {\getXMLentity{exponentiale}}
\defineXMLentity [DD] {\getMMLentity{capitaldifferentiald}}
\defineXMLentity [ImaginaryI] {\getXMLentity{imaginaryi}}
\defineXMLentity [DifferentialD] {\getXMLentity{differentiald}}
\defineXMLentity [ExponentialE] {\getXMLentity{exponentiale}}
\defineXMLentity [CapitalDifferentialD] {\getXMLentity{differentiald}}
\defineXMLentity [NaN] {\getXMLentity{notanumber}}
\defineXMLentity [NotANumber] {\getXMLentity{notanumber}}
\defineXMLentity [and] {\wedge}
\defineXMLentity [exists] {\exists}
\defineXMLentity [forall] {\forall}
\defineXMLentity [implies] {\Rightarrow}
\defineXMLentity [not] {\neg}
\defineXMLentity [or] {\vee}
\defineXMLentity [xor] {\mathopnolimits{xor}}
\defineXMLentity [imaginary] {\Im}
\defineXMLentity [real] {\Re}
\defineXMLentity [lceiling] {\lceil}
\defineXMLentity [rceiling] {\rceil}
\defineXMLentity [lfloor] {\lfloor}
\defineXMLentity [rfloor] {\rfloor}
\defineXMLentity [ne] {\neq}
\defineXMLentity [neq] {\neq}
\defineXMLentity [gt] {>}
\defineXMLentity [lt] {<}
\defineXMLentity [ge] {\geq}
\defineXMLentity [geq] {\geq}
\defineXMLentity [le] {\leq}
\defineXMLentity [leq] {\leq}
\defineXMLentity [equivalent] {\equiv}
\defineXMLentity [equiv] {\equiv}
\defineXMLentity [approx] {\approx}
\defineXMLentity [factorof] {\mid}
\defineXMLentity [mapsto] {\mapsto}
\defineXMLentity [int] {\int}
\defineXMLentity [prime] {\prime}
\defineXMLentity [laplacian] {\nabla^2}
\defineXMLentity [partial] {\partial}
\defineXMLentity [union] {\cup}
\defineXMLentity [intersect] {\cap}
\defineXMLentity [in] {\in}
\defineXMLentity [notin] {\not\in}
\defineXMLentity [subset] {\subset}
\defineXMLentity [prsubset] {\subseteq}
\defineXMLentity [notsubset] {\not\subset}
\defineXMLentity [notprsubset] {\not\subseteq}
\defineXMLentity [setdiff] {\setminus}
\defineXMLentity [card] {\vert}
\defineXMLentity [cartesianproduct] {\times}
\defineXMLentity [sum] {\sum}
\defineXMLentity [prod] {\prod}
\defineXMLentity [product] {\prod}
\defineXMLentity [lim] {\lim}
\defineXMLentity [exp] {\mathopnolimits{exp}} % {\exp}
\defineXMLentity [ln] {\mathopnolimits{ln}} % {\ln}
\defineXMLentity [log] {\mathopnolimits{log}} % {\log}
\defineXMLentity [sin] {\mathopnolimits{sin}}
\defineXMLentity [arcsin] {\mathopnolimits{arcsin}}
\defineXMLentity [sinh] {\mathopnolimits{sinh}}
\defineXMLentity [arcsinh] {\mathopnolimits{arcsinh}}
\defineXMLentity [cos] {\mathopnolimits{cos}}
\defineXMLentity [arccos] {\mathopnolimits{arccos}}
\defineXMLentity [cosh] {\mathopnolimits{cosh}}
\defineXMLentity [arccosh] {\mathopnolimits{arccosh}}
\defineXMLentity [tan] {\mathopnolimits{tan}}
\defineXMLentity [arctan] {\mathopnolimits{arctan}}
\defineXMLentity [tanh] {\mathopnolimits{tanh}}
\defineXMLentity [arctanh] {\mathopnolimits{arctanh}}
\defineXMLentity [cot] {\mathopnolimits{cot}}
\defineXMLentity [arccot] {\mathopnolimits{arccot}}
\defineXMLentity [coth] {\mathopnolimits{coth}}
\defineXMLentity [arccoth] {\mathopnolimits{arccoth}}
\defineXMLentity [csc] {\mathopnolimits{csc}}
\defineXMLentity [arccsc] {\mathopnolimits{arccsc}}
\defineXMLentity [csch] {\mathopnolimits{csch}}
\defineXMLentity [arccsch] {\mathopnolimits{arccsch}}
\defineXMLentity [sec] {\mathopnolimits{sec}}
\defineXMLentity [arcsec] {\mathopnolimits{arcsec}}
\defineXMLentity [sech] {\mathopnolimits{sech}}
\defineXMLentity [arcsech] {\mathopnolimits{arcsech}}
\defineXMLentity [transpose] {^{\rm T}}
\defineXMLentity [plusminus] {\mathematics{\pm}}
\defineXMLentity [minusplus] {\mathematics{\mp}}
\defineXMLentity [vectorproduct] {\times}
\defineXMLentity [scalarproduct] {\cdot}
\defineXMLentity [outerproduct] {\otimes}
\defineXMLentity [integers] {\integers}
\defineXMLentity [reals] {\reals}
\defineXMLentity [rationals] {\rationals}
\defineXMLentity [naturalnumbers] {\naturalnumbers}
\defineXMLentity [complexes] {\complexes}
\defineXMLentity [primes] {\primes}
\defineXMLentity [emptyset] {\emptyset}
\defineXMLentity [pi] {\pi}
\defineXMLentity [eulergamma] {\gamma}
\defineXMLentity [infinity] {\mathematics{\infty}}
\defineXMLentity [InvisibleTimes] {}
\defineXMLentity [InvisibleComma] {}
\defineXMLentity [ApplyFunction] {}
\defineXMLentity [it] {\getXMLentity{InvisibleTines}}
\defineXMLentity [ic] {\getXMLentity{InvisibleComma}}
\defineXMLentity [af] {\getXMLentity{ApplyFunction}}
\defineXMLentity [PlusMinus] {\getXMLentity{plusminus}}
\defineXMLentity [infin] {\getXMLentity{infinity}}
\defineXMLentity [infty] {\getXMLentity{infinity}}
\defineXMLentity [part] {\getXMLentity{differentiald}}
\defineXMLentity [RightArrow] {\normalorfiller\rightarrow\rightarrowfill}
\defineXMLentity [LeftArrow] {\normalorfiller\leftarrow\leftarrowfill}
\defineXMLentity [UnderBrace] {\normalorfiller\empty\upbracefill}
\defineXMLentity [OverBrace] {\normalorfiller\empty\downbracefill}
\defineXMLentity [UnderBar] {\normalorfiller\hrule\hrulefill}
\defineXMLentity [OverBar] {\normalorfiller\hrule\hrulefill}
\defineXMLentity [Hat] {\normalorfiller\empty\empty} % todo
\defineXMLentity [downarrow] {\mathortext\downarrow\empty}
\defineXMLentity [uparrow] {\mathortext\uparrow\empty}
\defineXMLentity [Tab] {\hskip4em}
\defineXMLentity [NewLine] {\mathortext\empty\crlf}
\defineXMLentity [IndentingNewLine] {\mathortext\empty\crlf}
\defineXMLentity [NoBreak] {\nobreak}
\defineXMLentity [GoodBreak] {\goodbreak}
\defineXMLentity [BadBreak] {\nobreak}
\defineXMLentity [Space] {\getXMLentity{MediumSpace}}
\defineXMLentity [NonBreakingSpace] {\getXMLentity{MediumSpace}}
\defineXMLentity [ZeroWidthSpace] {}
\def\somespaceentity#1#2%
{\mathortext
{\mskip#1mu}
{\ifvmode\dontleavehmode\else\unskip\fi\hskip#2em\strut\hskip\zeropoint\ignorespaces}%
\relax}
\defineXMLentity [VeryThinSpace] {\somespaceentity {2}{.125}}
\defineXMLentity [ThinSpace] {\somespaceentity {3}{.25}}
\defineXMLentity [MediumSpace] {\somespaceentity {4}{.5}}
\defineXMLentity [ThickSpace] {\somespaceentity {5}{1}}
\defineXMLentity [NegativeVeryThinSpace] {\somespaceentity{-2}{-.125}}
\defineXMLentity [NegativeThinSpace] {\somespaceentity{-3}{-.25}}
\defineXMLentity [NegativeMediumSpace] {\somespaceentity{-4}{-.5}}
\defineXMLentity [NegativeThickSpace] {\somespaceentity{-5}{-1}}
\defineXMLentity [NegVeryThinSpace] {\getXMLentity{NegativeVeryThinSpace}}
\defineXMLentity [NegThinSpace] {\getXMLentity{NegativeThinSpace}}
\defineXMLentity [NegMediumSpace] {\getXMLentity{NegativeMediumSpace}}
\defineXMLentity [NegThickSpace] {\getXMLentity{NegativeThickSpace}}
\defineXMLentity [nbsp] {\getXMLentity{NonBreakingSpace}}
\defineXMLentity [thinsp] {\getXMLentity{ThinSpace}}
\defineXMLentity [medsp] {\getXMLentity{MediumSpace}}
\defineXMLentity [thicksp] {\getXMLentity{ThickSpace}}
\defineXMLentity [larr] {\getXMLentity{LeftArrow}}
\defineXMLentity [rarr] {\getXMLentity{RightArrow}}
\ifx\MMLleft \undefined \let\MMLleft \firstofoneargument \fi
\ifx\MMLright\undefined \let\MMLright\firstofoneargument \fi
\defineXMLentity [lbrace] {\normalordelimiter{\{}{\MMLleft \{}}
\defineXMLentity [rbrace] {\normalordelimiter{\}}{\MMLright\}}}
\defineXMLentity [lbracket] {\normalordelimiter{[}{\MMLleft [}}
\defineXMLentity [rbracket] {\normalordelimiter{]}{\MMLright]}}
\defineXMLentity [lparenthesis] {\normalordelimiter{(}{\MMLleft (}}
\defineXMLentity [rparenthesis] {\normalordelimiter{)}{\MMLright)}}
\defineXMLentity [langle] {\normalordelimiter{\langle}{\MMLleft \langle}}
\defineXMLentity [rangle] {\normalordelimiter{\rangle}{\MMLright\rangle}}
\defineXMLentity [lang] {\getXMLentity{langle}}
\defineXMLentity [rang] {\getXMLentity{rangle}}
\defineXMLentity [lbrack] {\getXMLentity{lbracket}}
\defineXMLentity [rbrack] {\getXMLentity{rbracket}}
\defineXMLentity [lparent] {\getXMLentity{lparenthesis}}
\defineXMLentity [rparent] {\getXMLentity{rparenthesis}}
\defineXMLentity [\letterleftbrace ] {\getXMLentity{lbrace}}
\defineXMLentity [\letterrightbrace] {\getXMLentity{rbrace}}
\defineXMLentity [{[}] {\getXMLentity{lbracket}}
\defineXMLentity [{]}] {\getXMLentity{rbracket}}
\defineXMLentity [{(}] {\getXMLentity{lparenthesis}}
\defineXMLentity [{)}] {\getXMLentity{rparenthesis}}
\defineXMLentity [times] {\mathematics{\times}}
\defineXMLentity [minus] {\mathematics{-}}
\defineXMLentity [plus] {\mathematics{+}}
\defineXMLentity [plusmn] {\mathematics{\pm}}
\defineXMLentity [nabla] {\nabla}
\def\myspecialnormalvert {\mathematics{\vert}}
\def\myspecialstretchvert{\;\vrule\;}
\defineXMLentity [,] {{,}}
\defineXMLentity [.] {{.}}
\defineXMLentity [+] {+}
\defineXMLentity [-] {-}
\defineXMLentity [|] {\myspecialnormalvert}
\defineXMLentity [/] {/}
\defineXMLentity [*] {\times}
\defineXMLentity [=] {=}
% \defineXMLentity [(] {(}
% \defineXMLentity [)] {)}
% \defineXMLentity [<] {\mathematics{<}}
% \defineXMLentity [>] {\mathematics{>}}
% \defineXMLentity [(] {\MMLleft (}
% \defineXMLentity [)] {\MMLright)}
% \defineXMLentity [{[}] {\MMLleft [}
% \defineXMLentity [{]}] {\MMLright]}
\defineXMLentity [++] {++}
\defineXMLentity [--] {--}
\defineXMLentity [//] {//}
\defineXMLentity [**] {\times\times}
\defineXMLentity [==] {==}
\defineXMLentity [...] {\cdots}
\defineXMLentity [quot] {"}
\defineXMLentity [triangle] {\mathematics\triangle}
\defineXMLentity [otimes] {\mathematics\otimes}
\defineXMLentity [oplus] {\mathematics\oplus}
\defineXMLentity [cup] {\mathematics\cup}
\defineXMLentity [cap] {\mathematics\cap}
\defineXMLentity [sdot] {\mathematics\cdot}
\defineXMLentity [dot] {\mathematics\cdot}
\defineXMLentity [sim] {\mathematics\sim}
\defineXMLentity [circ] {\mathematics\circ}
\defineXMLentity [dagger] {\mathematics\dagger}
\defineXMLentity [cdots] {\mathematics\cdots}
\defineXMLentity [...] {\getXMLentity{cdots}}
\defineXMLentity [continued] {\getXMLentity{cdots}}
\defineXMLentity [sub] {\getXMLentity{subset}}
\defineXMLentity [sube] {\getXMLentity{prsubset}}
\defineXMLentity [notprsubset] {\getXMLentity{notprsubset}}
\defineXMLentity [ndash] {\endash}
\defineXMLentity [mdash] {\emdash}
\defineXMLentity [tex-bar] {\mathematics{\vert}}
\defineXMLentity [tex-dollar] {\dollar}
\defineXMLentity [tex-backslash] {\backslash}
\defineXMLentity [tex-leftbrace] {\mathematics{\{}}
\defineXMLentity [tex-rightbrace] {\mathematics{\}}}
\protect \endinput
|