389
|
1 Tests for spell checking. vim: set ft=vim :
|
|
2
|
|
3 STARTTEST
|
|
4 :so small.vim
|
|
5 :"
|
415
|
6 :" Don't want to depend on the locale from the environment
|
389
|
7 :set enc=latin1
|
415
|
8 :e!
|
|
9 :" First generate a .spl file from a .dic and a .aff file.
|
419
|
10 gg:/^affstart1/+1,/^affend1/-1w! Xtest.aff
|
|
11 gg:/^dicstart/+1,/^dicend/-1w! Xtest.dic
|
|
12 :mkspell! Xtest Xtest
|
389
|
13 :"
|
|
14 :" use that spell file
|
|
15 :set spl=Xtest.latin1.spl
|
|
16 :set spell
|
391
|
17 :func SpellTest()
|
389
|
18 /^test1:
|
391
|
19 normal ]smm
|
|
20 let str = spellbadword()
|
|
21 $put =str
|
|
22 normal `m
|
|
23 let lst = spellsuggest(str, 4)
|
|
24 $put =string(lst)
|
|
25 normal `m]smm
|
|
26 let str = spellbadword()
|
|
27 $put =str
|
|
28 normal `m
|
|
29 let lst = spellsuggest(str, 2)
|
|
30 $put =string(lst)
|
|
31 normal `m]smm
|
|
32 let str = spellbadword()
|
|
33 $put =str
|
|
34 normal `m
|
|
35 let lst = spellsuggest(str, 2)
|
|
36 $put =string(lst)
|
|
37 normal `m]smm
|
|
38 let str = spellbadword()
|
|
39 $put =str
|
|
40 normal `m
|
|
41 let lst = spellsuggest(str, 2)
|
|
42 $put =string(lst)
|
|
43 normal `m]smm
|
|
44 let str = spellbadword()
|
|
45 $put =str
|
|
46 normal `m
|
|
47 let lst = spellsuggest(str, 2)
|
|
48 $put =string(lst)
|
|
49 normal `m]smm
|
|
50 let str = spellbadword()
|
|
51 $put =str
|
|
52 normal `m
|
|
53 let lst = spellsuggest(str, 2)
|
|
54 $put =string(lst)
|
|
55 endfunc
|
|
56 :call SpellTest()
|
389
|
57 :spelldump
|
|
58 1GyG:q
|
|
59 :$put
|
|
60 :$put =soundfold('goobledygoook')
|
|
61 :$put =soundfold('kóopërÿnôven')
|
|
62 :$put =soundfold('oeverloos gezwets edale')
|
|
63 :"
|
|
64 :" and now with SAL instead of SOFO items; test automatic reloading
|
|
65 gg:/^affstart2/+1,/^affend2/-1w! Xtest.aff
|
|
66 :mkspell! Xtest Xtest
|
|
67 :$put =soundfold('goobledygoook')
|
|
68 :$put =soundfold('kóopërÿnôven')
|
|
69 :$put =soundfold('oeverloos gezwets edale')
|
|
70 :"
|
|
71 :" also use an addition file
|
|
72 gg:/^addstart/+1,/^addend/-1w! Xtest.latin1.add
|
|
73 :mkspell! Xtest.latin1.add.spl Xtest.latin1.add
|
|
74 :set spellfile=Xtest.latin1.add
|
|
75 /^test2:
|
|
76 ]s:let str = spellbadword()
|
|
77 :$put =str
|
419
|
78 :set spl=Xtest_us.latin1.spl
|
389
|
79 /^test2:
|
|
80 ]smm:let str = spellbadword()
|
|
81 :$put =str
|
|
82 `m]s:let str = spellbadword()
|
|
83 :$put =str
|
419
|
84 :set spl=Xtest_gb.latin1.spl
|
389
|
85 /^test2:
|
|
86 ]smm:let str = spellbadword()
|
|
87 :$put =str
|
|
88 `m]s:let str = spellbadword()
|
|
89 :$put =str
|
419
|
90 :set spl=Xtest_nz.latin1.spl
|
389
|
91 /^test2:
|
|
92 ]smm:let str = spellbadword()
|
|
93 :$put =str
|
|
94 `m]s:let str = spellbadword()
|
|
95 :$put =str
|
419
|
96 :set spl=Xtest_ca.latin1.spl
|
389
|
97 /^test2:
|
|
98 ]smm:let str = spellbadword()
|
|
99 :$put =str
|
|
100 `m]s:let str = spellbadword()
|
|
101 :$put =str
|
|
102 :"
|
391
|
103 :" Postponed prefixes
|
|
104 gg:/^affstart3/+1,/^affend3/-1w! Xtest.aff
|
|
105 :mkspell! Xtest Xtest
|
|
106 :set spellfile=
|
|
107 :set spl=Xtest.latin1.spl
|
|
108 :spelldump
|
|
109 1GyG:q
|
|
110 :$put
|
|
111 :call SpellTest()
|
|
112 :"
|
489
|
113 :" Compounding
|
|
114 gg:/^compaffstart/+1,/^compaffend/-1w! Xtest.aff
|
|
115 gg:/^compdicstart/+1,/^compdicend/-1w! Xtest.dic
|
|
116 :mkspell! Xtest Xtest
|
|
117 :set spellfile=
|
|
118 :set spl=Xtest.latin1.spl
|
|
119 :spelldump
|
|
120 1GyG:q
|
|
121 :$put
|
|
122 /^comptest:
|
|
123 :for i in range(12)
|
|
124 normal ]smm
|
|
125 let str = spellbadword()
|
|
126 $put =str
|
|
127 normal `m
|
|
128 let lst = spellsuggest(str, 3)
|
|
129 $put =string(lst)
|
|
130 normal `m
|
|
131 endfor
|
|
132 :"
|
389
|
133 gg:/^test output:/,$wq! test.out
|
|
134 ENDTEST
|
|
135
|
|
136 affstart1
|
|
137 SET ISO8859-1
|
|
138 TRY esianrtolcdugmphbyfvkwjkqxz-ëéèêïîäàâöüû'ESIANRTOLCDUGMPHBYFVKWJKQXZ
|
|
139
|
|
140 FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
|
|
141 LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
|
|
142 UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
|
|
143
|
|
144 SOFOFROM abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞ¿
|
|
145 SOFOTO ebctefghejklnnepkrstevvkesebctefghejklnnepkrstevvkeseeeeeeeceeeeeeeedneeeeeeeeeeepseeeeeeeeceeeeeeeedneeeeeeeeeeep?
|
|
146
|
|
147 MIDWORD '-
|
|
148
|
|
149 KEP =
|
|
150 RAR ?
|
|
151 BAD !
|
|
152
|
|
153 NOSPLITSUGS
|
|
154
|
|
155 PFX I N 1
|
|
156 PFX I 0 in .
|
|
157
|
|
158 PFX O Y 1
|
|
159 PFX O 0 out .
|
|
160
|
|
161 SFX S Y 2
|
|
162 SFX S 0 s [^s]
|
|
163 SFX S 0 es s
|
|
164
|
391
|
165 SFX N N 3
|
|
166 SFX N 0 en [^n]
|
|
167 SFX N 0 nen n
|
|
168 SFX N 0 n .
|
|
169
|
389
|
170 REP 3
|
|
171 REP g ch
|
|
172 REP ch g
|
|
173 REP svp s.v.p.
|
|
174
|
|
175 MAP 9
|
|
176 MAP aàáâãäå
|
|
177 MAP eèéêë
|
|
178 MAP iìíîï
|
|
179 MAP oòóôõö
|
|
180 MAP uùúûü
|
|
181 MAP nñ
|
|
182 MAP cç
|
|
183 MAP yÿý
|
|
184 MAP sß
|
|
185 affend1
|
|
186
|
|
187 affstart2
|
|
188 SET ISO8859-1
|
|
189 TRY esianrtolcdugmphbyfvkwjkqxz-ëéèêïîäàâöüû'ESIANRTOLCDUGMPHBYFVKWJKQXZ
|
|
190
|
|
191 FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
|
|
192 LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
|
|
193 UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
|
|
194
|
|
195 MIDWORD '-
|
|
196
|
|
197 KEP =
|
|
198 RAR ?
|
|
199 BAD !
|
|
200
|
|
201 NOSPLITSUGS
|
|
202
|
|
203 PFX I N 1
|
|
204 PFX I 0 in .
|
|
205
|
|
206 PFX O Y 1
|
|
207 PFX O 0 out .
|
|
208
|
|
209 SFX S Y 2
|
|
210 SFX S 0 s [^s]
|
|
211 SFX S 0 es s
|
|
212
|
391
|
213 SFX N N 3
|
|
214 SFX N 0 en [^n]
|
|
215 SFX N 0 nen n
|
|
216 SFX N 0 n .
|
|
217
|
389
|
218 REP 3
|
|
219 REP g ch
|
|
220 REP ch g
|
|
221 REP svp s.v.p.
|
|
222
|
|
223 MAP 9
|
|
224 MAP aàáâãäå
|
|
225 MAP eèéêë
|
|
226 MAP iìíîï
|
|
227 MAP oòóôõö
|
|
228 MAP uùúûü
|
|
229 MAP nñ
|
|
230 MAP cç
|
|
231 MAP yÿý
|
|
232 MAP sß
|
|
233
|
|
234 SAL AH(AEIOUY)-^ *H
|
|
235 SAL AR(AEIOUY)-^ *R
|
|
236 SAL A(HR)^ *
|
|
237 SAL A^ *
|
|
238 SAL AH(AEIOUY)- H
|
|
239 SAL AR(AEIOUY)- R
|
|
240 SAL A(HR) _
|
|
241 SAL À^ *
|
|
242 SAL Å^ *
|
|
243 SAL BB- _
|
|
244 SAL B B
|
|
245 SAL CQ- _
|
|
246 SAL CIA X
|
|
247 SAL CH X
|
|
248 SAL C(EIY)- S
|
|
249 SAL CK K
|
|
250 SAL COUGH^ KF
|
|
251 SAL CC< C
|
|
252 SAL C K
|
|
253 SAL DG(EIY) K
|
|
254 SAL DD- _
|
|
255 SAL D T
|
|
256 SAL É< E
|
|
257 SAL EH(AEIOUY)-^ *H
|
|
258 SAL ER(AEIOUY)-^ *R
|
|
259 SAL E(HR)^ *
|
|
260 SAL ENOUGH^$ *NF
|
|
261 SAL E^ *
|
|
262 SAL EH(AEIOUY)- H
|
|
263 SAL ER(AEIOUY)- R
|
|
264 SAL E(HR) _
|
|
265 SAL FF- _
|
|
266 SAL F F
|
|
267 SAL GN^ N
|
|
268 SAL GN$ N
|
|
269 SAL GNS$ NS
|
|
270 SAL GNED$ N
|
|
271 SAL GH(AEIOUY)- K
|
|
272 SAL GH _
|
|
273 SAL GG9 K
|
|
274 SAL G K
|
|
275 SAL H H
|
|
276 SAL IH(AEIOUY)-^ *H
|
|
277 SAL IR(AEIOUY)-^ *R
|
|
278 SAL I(HR)^ *
|
|
279 SAL I^ *
|
|
280 SAL ING6 N
|
|
281 SAL IH(AEIOUY)- H
|
|
282 SAL IR(AEIOUY)- R
|
|
283 SAL I(HR) _
|
|
284 SAL J K
|
|
285 SAL KN^ N
|
|
286 SAL KK- _
|
|
287 SAL K K
|
|
288 SAL LAUGH^ LF
|
|
289 SAL LL- _
|
|
290 SAL L L
|
|
291 SAL MB$ M
|
|
292 SAL MM M
|
|
293 SAL M M
|
|
294 SAL NN- _
|
|
295 SAL N N
|
|
296 SAL OH(AEIOUY)-^ *H
|
|
297 SAL OR(AEIOUY)-^ *R
|
|
298 SAL O(HR)^ *
|
|
299 SAL O^ *
|
|
300 SAL OH(AEIOUY)- H
|
|
301 SAL OR(AEIOUY)- R
|
|
302 SAL O(HR) _
|
|
303 SAL PH F
|
|
304 SAL PN^ N
|
|
305 SAL PP- _
|
|
306 SAL P P
|
|
307 SAL Q K
|
|
308 SAL RH^ R
|
|
309 SAL ROUGH^ RF
|
|
310 SAL RR- _
|
|
311 SAL R R
|
|
312 SAL SCH(EOU)- SK
|
|
313 SAL SC(IEY)- S
|
|
314 SAL SH X
|
|
315 SAL SI(AO)- X
|
|
316 SAL SS- _
|
|
317 SAL S S
|
|
318 SAL TI(AO)- X
|
|
319 SAL TH @
|
|
320 SAL TCH-- _
|
|
321 SAL TOUGH^ TF
|
|
322 SAL TT- _
|
|
323 SAL T T
|
|
324 SAL UH(AEIOUY)-^ *H
|
|
325 SAL UR(AEIOUY)-^ *R
|
|
326 SAL U(HR)^ *
|
|
327 SAL U^ *
|
|
328 SAL UH(AEIOUY)- H
|
|
329 SAL UR(AEIOUY)- R
|
|
330 SAL U(HR) _
|
|
331 SAL V^ W
|
|
332 SAL V F
|
|
333 SAL WR^ R
|
|
334 SAL WH^ W
|
|
335 SAL W(AEIOU)- W
|
|
336 SAL X^ S
|
|
337 SAL X KS
|
|
338 SAL Y(AEIOU)- Y
|
|
339 SAL ZZ- _
|
|
340 SAL Z S
|
|
341 affend2
|
|
342
|
391
|
343 affstart3
|
|
344 SET ISO8859-1
|
|
345
|
|
346 FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
|
|
347 LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
|
|
348 UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
|
|
349
|
|
350 PFXPOSTPONE
|
|
351
|
|
352 MIDWORD '-
|
|
353
|
|
354 KEP =
|
|
355 RAR ?
|
|
356 BAD !
|
|
357
|
|
358 NOSPLITSUGS
|
|
359
|
|
360 PFX I N 1
|
|
361 PFX I 0 in .
|
|
362
|
|
363 PFX O Y 1
|
456
|
364 PFX O 0 out [a-z]
|
391
|
365
|
|
366 SFX S Y 2
|
|
367 SFX S 0 s [^s]
|
|
368 SFX S 0 es s
|
|
369
|
|
370 SFX N N 3
|
|
371 SFX N 0 en [^n]
|
|
372 SFX N 0 nen n
|
|
373 SFX N 0 n .
|
|
374
|
|
375 REP 3
|
|
376 REP g ch
|
|
377 REP ch g
|
|
378 REP svp s.v.p.
|
|
379
|
|
380 MAP 9
|
|
381 MAP aàáâãäå
|
|
382 MAP eèéêë
|
|
383 MAP iìíîï
|
|
384 MAP oòóôõö
|
|
385 MAP uùúûü
|
|
386 MAP nñ
|
|
387 MAP cç
|
|
388 MAP yÿý
|
|
389 MAP sß
|
|
390 affend3
|
|
391
|
389
|
392 dicstart
|
|
393 123456
|
391
|
394 test/NO
|
389
|
395 # comment
|
|
396 wrong
|
|
397 Comment
|
|
398 OK
|
|
399 uk
|
|
400 put/ISO
|
|
401 the end
|
|
402 deol
|
|
403 déôr
|
|
404 dicend
|
|
405
|
489
|
406 compaffstart
|
|
407 SET ISO8859-1
|
|
408
|
|
409 FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
|
|
410 LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
|
|
411 UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
|
|
412
|
|
413 COMPOUNDFLAGS m+
|
|
414 COMPOUNDFLAGS sm*e
|
|
415 COMPOUNDFLAGS sm+
|
|
416 COMPOUNDMIN 3
|
|
417 COMPOUNDMAX 3
|
|
418
|
|
419 COMPOUNDSYLMAX 5
|
|
420 SYLLABLE aáeéiíoóöõuúüûy/aa/au/ea/ee/ei/ie/oa/oe/oo/ou/uu/ui
|
|
421
|
|
422 MAP 9
|
|
423 MAP aàáâãäå
|
|
424 MAP eèéêë
|
|
425 MAP iìíîï
|
|
426 MAP oòóôõö
|
|
427 MAP uùúûü
|
|
428 MAP nñ
|
|
429 MAP cç
|
|
430 MAP yÿý
|
|
431 MAP sß
|
|
432
|
|
433 NEEDAFFIX x
|
|
434
|
|
435 PFXPOSTPONE
|
|
436
|
|
437 MIDWORD '-
|
|
438
|
|
439 SFX q N 1
|
|
440 SFX q 0 -ok .
|
|
441
|
|
442 SFX a Y 2
|
|
443 SFX a 0 s .
|
|
444 SFX a 0 ize . nocomp
|
|
445
|
|
446 PFX p N 1
|
|
447 PFX p 0 pre .
|
|
448 compaffend
|
|
449
|
|
450 compdicstart
|
|
451 1234
|
|
452 word/m
|
|
453 util/am
|
|
454 pro/xq
|
|
455 tomato/m
|
|
456 bork/mp
|
|
457 start/s
|
|
458 end/e
|
|
459 compdicend
|
|
460
|
389
|
461 addstart
|
|
462 /regions=usgbnz
|
|
463 elequint/2
|
|
464 elekwint/3
|
|
465 addend
|
|
466
|
|
467 test1:
|
|
468 inputs wrong
|
|
469 comment wrong
|
|
470 puts OK
|
|
471 ok wrong
|
|
472 Ok wrong
|
|
473 the end. test wrong
|
|
474 déôl
|
|
475
|
|
476 test2:
|
|
477 elequint test elekwint test elekwent asdf
|
|
478
|
489
|
479 comptest:
|
|
480 word util
|
|
481 wordutil wordutils wordutilize
|
|
482 pro pro-ok
|
|
483 bork borkbork borkborkbork borkborkborkbork borkborkborkborkbork
|
|
484 tomato tomatotomato tomatotomatotomato
|
|
485 startend endstart endend startstart
|
|
486 startword startwordword wordstart startwordend startwordwordend
|
|
487 prebork preborkprebork preborkborkprebork preborkpreborkbork
|
|
488 borkpreborkpreborkbork
|
389
|
489
|
|
490 test output:
|