forked from liblouis/liblouisutdml
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathwiskunde.sem
275 lines (257 loc) · 9.32 KB
/
wiskunde.sem
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
#
# Copyright (C) 2010 DocArch <http://www.docarch.be>.
#
# This file is part of liblouis.
#
# liblouis is free software: you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as
# published by the Free Software Foundation, either version 2.1 of the
# License, or (at your option) any later version.
#
# liblouis is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with liblouis. If not, see
# <http://www.gnu.org/licenses/>.
#
# ----------------------------------------------------------------------------------------------
#
# Flemish Braille Math Code (a.k.a. Woluwe code)
# Created and maintained by Bert Frees <bertfrees@gmail.com>
# See also: « Handleiding Braillesymbolen Wiskunde »
# (Gilbert Notaert, Marc Suij en Emmanuel Vandekerkhove, G.on Woluwe, 1984)
#
# ----------------------------------------------------------------------------------------------
namespaces math=http://www.w3.org/1998/Math/MathML
math math
generic semantics
generic mstyle
generic mi \es
generic mn \es
generic mo \es
generic mtext \et,\et
generic mrow
generic mfrac \ef,\ed,\ex
generic &xpath(//math:mfrac[descendant::math:mfrac]) \ef,\ed\ed,\ex
#generic &xpath(//math:mfenced[@open='(' and @close=')'][not(child::math:mtable)]) (,\*)
generic &xpath(//math:mfenced[@open='' and @close=''][not(child::math:mtable)]) (,\*)
generic &xpath(//math:mfenced[@open='' and @close=']'][not(child::math:mtable)]) (,\*]
generic &xpath(//math:mfenced[@open='[' and @close=''][not(child::math:mtable)]) [,\*)
generic &xpath(//math:mfenced[@open='[' and @close=']'][not(child::math:mtable)]) [,\*]
generic &xpath(//math:mfenced[@open='[' and @close='['][not(child::math:mtable)]) [,\*[
generic &xpath(//math:mfenced[@open=']' and @close=']'][not(child::math:mtable)]) ],\*]
generic &xpath(//math:mfenced[@open=']' and @close='['][not(child::math:mtable)]) ],\*[
generic &xpath(//math:mfenced[@open='∣' and @close='∣'][not(child::math:mtable)]) @1456,\*@1456
generic mtable
skip &xpath(//math:mtext[ancestor::math:mfrac or ancestor::math:mtable])
softreturn mtr @56@1256
softreturn &xpath(//*[not(self::math:mfenced)]/math:mtable/math:mtr[position()=1]) @123456
generic &xpath(//*[not(self::math:mfenced)]/math:mtable/math:mtr[position()=last()]) @56@1256,\*\ex
generic mtd \s
generic &xpath(//math:mtd[position()=1])
#softreturn &xpath(//math:mfenced[@open='(']/math:mtable/math:mtr[position()=1]) (@123456
softreturn &xpath(//math:mfenced[@open='']/math:mtable/math:mtr[position()=1]) (@123456
softreturn &xpath(//math:mfenced[@open='[']/math:mtable/math:mtr[position()=1]) [@123456
softreturn &xpath(//math:mfenced[@open=']']/math:mtable/math:mtr[position()=1]) ]@123456
softreturn &xpath(//math:mfenced[@open='∣']/math:mtable/math:mtr[position()=1]) @1456@123456
#generic &xpath(//math:mfenced[@close=')']/math:mtable/math:mtr[position()=last()]) @56@1256,\*\ex)
generic &xpath(//math:mfenced[@close='']/math:mtable/math:mtr[position()=last()]) @56@1256,\*\ex)
generic &xpath(//math:mfenced[@close=']']/math:mtable/math:mtr[position()=last()]) @56@1256,\*\ex]
generic &xpath(//math:mfenced[@close='[']/math:mtable/math:mtr[position()=last()]) @56@1256,\*\ex[
generic &xpath(//math:mfenced[@close='∣']/math:mtable/math:mtr[position()=last()]) @56@1256,\*\ex@1456
generic msub ,\ei\e_r,\ex
generic msup ,\ei\e\x280cr,\ex
generic msubsup ,\ei\e_r,\ex\ei\e\x280cr,\ex
skip munder
skip mover
skip munderover
generic &xpath(//math:munder [child::*[1][ string()='∫' or string()='∬' or string()='∭' or string()='∑' or string()='∏' or string()='lim']]) ,\ei\e_r,\ex
generic &xpath(//math:mover [child::*[1][ string()='∫' or string()='∬' or string()='∭' or string()='∑' or string()='∏']]) ,\ei\e\x280cr,\ex
generic &xpath(//math:munderover[child::*[1][ string()='∫' or string()='∬' or string()='∭' or string()='∑' or string()='∏']]) ,\ei\e_r,\ex\ei\e\x280cr,\ex
generic &xpath(//math:munder [child::*[1][not(string()='∫' or string()='∬' or string()='∭' or string()='∑' or string()='∏') and string-length()=1]]) ,\ei\e_c,\ex
generic &xpath(//math:munderover[child::*[1][not(string()='∫' or string()='∬' or string()='∭' or string()='∑' or string()='∏') and string-length()=1]]) ,\ei\e_c,\ex\ei\e\x280cc,\ex
generic &xpath(//math:mover [child::*[1][not(string()='∫' or string()='∬' or string()='∭' or string()='∑' or string()='∏') and string-length()=1] and child::*[2][string()='⃗' or string()='→']]) @45@1246
skip &xpath(//math:mover [child::*[1][not(string()='∫' or string()='∬' or string()='∭' or string()='∑' or string()='∏') and string-length()=1]] / child::*[2][string()='⃗' or string()='→'])
generic &xpath(//math:mover [child::*[1][not(string()='∫' or string()='∬' or string()='∭' or string()='∑' or string()='∏') and string-length()=1] and not(child::*[2][string()='⃗' or string()='→'])]) ,\ei\e\x280cc,\ex
generic &xpath(//math:mover[child::*[1][string-length()>1] and child::*[2][string()='¯']]) @456@25,\ex
generic &xpath(//math:mover[child::*[1][string-length()>1] and child::*[2][string()='̂']]) @456@126,\ex
generic &xpath(//math:mover[child::*[1][string-length()>1] and child::*[2][string()='̃']]) @456@26,\ex
generic &xpath(//math:mover[child::*[1][string-length()>1] and child::*[2][string()='⃗']]) @456@25@2,\ex
generic &xpath(//math:mover[child::*[1][string-length()>1] and child::*[2][string()='→']]) @456@25@2,\ex
generic &xpath(//math:mover[child::*[1][string-length()>1] and child::*[2][string()='←']]) @456@2@25,\ex
skip &xpath(//math:mover[child::*[1][string-length()>1]] / child::*[2][string()='¯'])
skip &xpath(//math:mover[child::*[1][string-length()>1]] / child::*[2][string()='̂'])
skip &xpath(//math:mover[child::*[1][string-length()>1]] / child::*[2][string()='̃'])
skip &xpath(//math:mover[child::*[1][string-length()>1]] / child::*[2][string()='⃗'])
skip &xpath(//math:mover[child::*[1][string-length()>1]] / child::*[2][string()='→'])
skip &xpath(//math:mover[child::*[1][string-length()>1]] / child::*[2][string()='←'])
generic none \en
generic mprescripts
skip mmultiscripts
generic &xpath(//math:mmultiscripts[not(child::math:mprescripts) and (count(child::*)=3)]) ,\ei\e_r,\ex\ei\e\x280cr,\ex
reverse &xpath(//math:mmultiscripts[ (child::math:mprescripts) and (count(child::*)=4)]) \ei\e\x280cl,\ex\ei\e_l,\ex
generic msqrt \ev,\*\ex
generic mroot \ev,\*\ex
reverse &xpath(//math:mroot[count(child::*)=2]) \ei\e\x280cl,\ex\ev,\ex
# ----------------------------------------------------------------------------------------------
skip abs
skip and
skip annotation
skip annotation-xml
skip apply
skip approx
skip arccos
skip arccosh
skip arccot
skip arccoth
skip arccsc
skip arccsch
skip arcsec
skip arcsech
skip arcsin
skip arcsinh
skip arctan
skip arctanh
skip arg
skip bvar
skip card
skip cartesianproduct
skip ceiling
skip ci
skip cn
skip codomain
skip complexes
skip compose
skip condition
skip conjugate
skip cos
skip cosh
skip cot
skip coth
skip csc
skip csch
skip csymbol
skip curl
skip declare
skip degree
skip determinant
skip diff
skip divergence
skip divide
skip domain
skip domainofapplication
skip emptyset
skip eq
skip equivalent
skip eulergamma
skip exists
skip exp
skip exponentiale
skip factorial
skip factorof
skip false
skip floor
skip fn
skip forall
skip gcd
skip geq
skip grad
skip gt
skip ident
skip image
skip imaginary
skip imaginaryi
skip implies
skip in
skip infinity
skip int
skip integers
skip intersect
skip interval
skip inverse
skip lambda
skip laplacian
skip lcm
skip leq
skip limit
skip list
skip ln
skip log
skip logbase
skip lowlimit
skip lt
skip maction
skip maligngroup
skip malignmark
skip matrix
skip matrixrow
skip max
skip mean
skip median
skip menclose
skip merror
skip mglyph
skip min
skip minus
skip mlabeledtr
skip mode
skip moment
skip momentabout
skip mpadded
skip mphantom
skip ms
skip mspace
skip naturalnumbers
skip neq
skip not
skip notanumber
skip notin
skip notprsubset
skip notsubset
skip or
skip otherwise
skip outerproduct
skip partialdiff
skip pi
skip piece
skip piecewise
skip plus
skip power
skip primes
skip product
skip prsubset
skip quotient
skip rationals
skip real
skip reals
skip reln
skip rem
skip root
skip scalarproduct
skip sdev
skip sec
skip sech
skip selector
skip sep
skip set
skip setdiff
skip sin
skip sinh
skip subset
skip sum
skip tan
skip tanh
skip tendsto
skip times
skip transpose
skip true
skip union
skip uplimit
skip variance
skip vector
skip vectorproduct
skip xor
# ----------------------------------------------------------------------------------------------