• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

sile-typesetter / sile / 6932773445

20 Nov 2023 04:11PM UTC coverage: 60.703% (-1.6%) from 62.266%
6932773445

Pull #1904

github

alerque
feat(utilities): Add Greek alphabetical (non-arithmetic) numbering

Useful in some context such as biblical annotations etc. where greek
characters are used orderly for numbering.
Pull Request #1904: Merge develop into master (commit to next release being breaking)

66 of 193 new or added lines in 19 files covered. (34.2%)

321 existing lines in 26 files now uncovered.

9452 of 15571 relevant lines covered (60.7%)

2104.43 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/languages/ca.lua
UNCOV
1
SILE.nodeMakers.ca = pl.class({
×
2
   _base = SILE.nodeMakers.unicode,
3

4
   -- overriden properties from parent class
5
   isQuoteType = { qu = true }, -- split tokens at apostrophes &c.
6
})
7

UNCOV
8
SILE.hyphenator.languages["ca"] = {}
×
UNCOV
9
SILE.hyphenator.languages["ca"].patterns =
×
10
   {
11
--
12
-- Attach vowel groups to left consonant
13
"1ba",
14
"1be",
15
"1bi",
16
"1bo",
17
"1bu",
18
"1ca",
19
"1ce",
20
"1ci",
21
"1co",
22
"1cu",
23
"1da",
24
"1de",
25
"1di",
26
"1do",
27
"3du",
28
"1fa",
29
"1fe",
30
"1fi",
31
"1fo",
32
"1fu",
33
"1ga",
34
"1ge",
35
"1gi",
36
"1go",
37
"1gu",
38
"1ha",
39
"1he",
40
"1hi",
41
"1ho",
42
"1hu",
43
"1ja",
44
"1je",
45
"1ji",
46
"1jo",
47
"1ju",
48
"1la",
49
"1le",
50
"1li",
51
"1lo",
52
"1lu",
53
"1ma",
54
"1me",
55
"1mi",
56
"1mo",
57
"1mu",
58
"1na",
59
"1ne",
60
"3ni",
61
"1no",
62
"1nu",
63
"1pa",
64
"3pe",
65
"3pi",
66
"3po",
67
"1pu",
68
"1qu",
69
"1ra",
70
"1re",
71
"1ri",
72
"1ro",
73
"1ru",
74
"1sa",
75
"1se",
76
"1si",
77
"1so",
78
"1su",
79
"1ta",
80
"1te",
81
"1ti",
82
"1to",
83
"1tu",
84
"1va",
85
"1ve",
86
"1vi",
87
"1vo",
88
"1vu",
89
"1xa",
90
"1xe",
91
"1xi",
92
"1xo",
93
"1xu",
94
"1za",
95
"1ze",
96
"1zi",
97
"1zo",
98
"1zu",
99
"1bé",
100
"1bí",
101
"1bó",
102
"1bú",
103
"1bà",
104
"1bè",
105
"1bò",
106
"1cé",
107
"1cí",
108
"1có",
109
"1cú",
110
"1cà",
111
"1cè",
112
"1cò",
113
"1ço",
114
"1ça",
115
"1çu",
116
"1çó",
117
"1çú",
118
"1çà",
119
"1çò",
120
"1dé",
121
"1dí",
122
"1dó",
123
"1dú",
124
"1dà",
125
"1dè",
126
"1dò",
127
"1fé",
128
"1fí",
129
"1fó",
130
"1fú",
131
"1fà",
132
"1fè",
133
"1fò",
134
"1gé",
135
"1gí",
136
"1gó",
137
"1gú",
138
"1gà",
139
"1gè",
140
"1gò",
141
"1gü",
142
"1hé",
143
"1hí",
144
"1hó",
145
"1hú",
146
"1hà",
147
"1hè",
148
"1hò",
149
"1jé",
150
"1jí",
151
"1jó",
152
"1jú",
153
"1jà",
154
"1jè",
155
"1jò",
156
"1lé",
157
"1lí",
158
"1ló",
159
"1lú",
160
"1là",
161
"1lè",
162
"1lò",
163
"1mé",
164
"1mí",
165
"1mó",
166
"1mú",
167
"1mà",
168
"1mè",
169
"1mò",
170
"1né",
171
"1ní",
172
"1nó",
173
"1nú",
174
"1nà",
175
"1nè",
176
"1nò",
177
"1pé",
178
"1pí",
179
"1pó",
180
"1pú",
181
"1pà",
182
"1pè",
183
"1pò",
184
"1qü",
185
"1ré",
186
"1rí",
187
"1ró",
188
"1rú",
189
"1rà",
190
"1rè",
191
"1rò",
192
"1sé",
193
"1sí",
194
"1só",
195
"1sú",
196
"1sà",
197
"1sè",
198
"1sò",
199
"1té",
200
"1tí",
201
"1tó",
202
"1tú",
203
"1tà",
204
"1tè",
205
"1tò",
206
"1vé",
207
"1ví",
208
"1vó",
209
"1vú",
210
"1và",
211
"1vè",
212
"1vò",
213
"1xé",
214
"1xí",
215
"1xó",
216
"1xú",
217
"1xà",
218
"1xè",
219
"1xò",
220
"1zé",
221
"1zí",
222
"1zó",
223
"1zú",
224
"1zà",
225
"1zè",
226
"1zò",
227
--
228
-- Build legal consonant groups, leave other consonants bound to
229
-- the previous group. This overrides part of the previous pattern
230
-- group.
231
"3l2la",
232
"1l2le",
233
"1l2li",
234
"3l2lo",
235
"1l2lu",
236
"1b2la",
237
"1b2le",
238
"1b2li",
239
"1b2lo",
240
"1b2lu",
241
"1b2ra",
242
"1b2re",
243
"1b2ri",
244
"1b2ro",
245
"1b2ru",
246
"1c2la",
247
"1c2le",
248
"1c2li",
249
"1c2lo",
250
"1c2lu",
251
"1c2ra",
252
"1c2re",
253
"1c2ri",
254
"1c2ro",
255
"1c2ru",
256
"1d2ra",
257
"1d2re",
258
"1d2ri",
259
"1d2ro",
260
"1d2ru",
261
"1f2la",
262
"1f2le",
263
"1f2li",
264
"1f2lo",
265
"1f2lu",
266
"1f2ra",
267
"1f2re",
268
"1f2ri",
269
"1f2ro",
270
"1f2ru",
271
"1g2la",
272
"1g2le",
273
"1g2li",
274
"1g2lo",
275
"1g2lu",
276
"1g2ra",
277
"1g2re",
278
"1g2ri",
279
"1g2ro",
280
"1g2ru",
281
"1p2la",
282
"1p2le",
283
"1p2li",
284
"1p2lo",
285
"1p2lu",
286
"1p2ra",
287
"1p2re",
288
"1p2ri",
289
"1p2ro",
290
"1p2ru",
291
"1t2ra",
292
"1t2re",
293
"1t2ri",
294
"1t2ro",
295
"1t2ru",
296
"1n2ya",
297
"1n2ye",
298
"1n2yi",
299
"1n2yo",
300
"1n2yu",
301
"1l2lé",
302
"1l2lí",
303
"1l2ló",
304
"1l2lú",
305
"1l2là",
306
"1l2lè",
307
"1l2lò",
308
"1b2lé",
309
"1b2lí",
310
"1b2ló",
311
"1b2lú",
312
"1b2là",
313
"1b2lè",
314
"1b2lò",
315
"1b2ré",
316
"1b2rí",
317
"1b2ró",
318
"1b2rú",
319
"1b2rà",
320
"1b2rè",
321
"1b2rò",
322
"1c2lé",
323
"1c2lí",
324
"1c2ló",
325
"1c2lú",
326
"1c2là",
327
"1c2lè",
328
"1c2lò",
329
"1c2ré",
330
"1c2rí",
331
"1c2ró",
332
"1c2rú",
333
"1c2rà",
334
"1c2rè",
335
"1c2rò",
336
"1d2ré",
337
"1d2rí",
338
"1d2ró",
339
"1d2rú",
340
"1d2rà",
341
"1d2rè",
342
"1d2rò",
343
"1f2lé",
344
"1f2lí",
345
"1f2ló",
346
"1f2lú",
347
"1f2là",
348
"1f2lè",
349
"1f2lò",
350
"1f2ré",
351
"1f2rí",
352
"1f2ró",
353
"1f2rú",
354
"1f2rà",
355
"1f2rè",
356
"1f2rò",
357
"1g2lé",
358
"1g2lí",
359
"1g2ló",
360
"1g2lú",
361
"1g2là",
362
"1g2lè",
363
"1g2lò",
364
"1g2ré",
365
"1g2rí",
366
"1g2ró",
367
"1g2rú",
368
"1g2rà",
369
"1g2rè",
370
"1g2rò",
371
"1p2lé",
372
"1p2lí",
373
"1p2ló",
374
"1p2lú",
375
"1p2là",
376
"1p2lè",
377
"1p2lò",
378
"1p2ré",
379
"1p2rí",
380
"1p2ró",
381
"1p2rú",
382
"1p2rà",
383
"1p2rè",
384
"1p2rò",
385
"1t2ré",
386
"1t2rí",
387
"1t2ró",
388
"1t2rú",
389
"1t2rà",
390
"1t2rè",
391
"1t2rò",
392
"1n2yé",
393
"1n2yí",
394
"1n2yó",
395
"1n2yú",
396
"1n2yà",
397
"1n2yè",
398
"1n2yò",
399
-- Vowels are kept together by the defaults
400
-- We break here diphthongs and the like
401
"a1a",
402
"a1e",
403
"a1o",
404
"e1a",
405
"e1e",
406
"e1o",
407
"i1a",
408
"i1e",
409
"i1o",
410
"o1a",
411
"o1e",
412
"o1o",
413
"u1a",
414
"u1e",
415
"u1o",
416
"a1é",
417
"a1í",
418
"a1ó",
419
"a1ú",
420
"a1à",
421
"a1è",
422
"a1ò",
423
"a1ï",
424
"a1ü",
425
"e1é",
426
"e1í",
427
"e1ó",
428
"e1ú",
429
"e1à",
430
"e1è",
431
"e1ò",
432
"e1ï",
433
"e1ü",
434
"i1é",
435
"i1í",
436
"i1ó",
437
"i1ú",
438
"i1à",
439
"i1è",
440
"i1ò",
441
"i1ï",
442
"i1ü",
443
"o1é",
444
"o1í",
445
"o1ó",
446
"o1ú",
447
"o1à",
448
"o1è",
449
"o1ò",
450
"o1ï",
451
"o1ü",
452
"u1é",
453
"u1í",
454
"u1ó",
455
"u1ú",
456
"u1à",
457
"u1è",
458
"u1ò",
459
"u1ï",
460
"u1ü",
461
"é1a",
462
"é1e",
463
"é1o",
464
"é1ï",
465
"é1ü",
466
"í1a",
467
"í1e",
468
"í1o",
469
"í1ï",
470
"í1ü",
471
"ó1a",
472
"ó1e",
473
"ó1o",
474
"ó1ï",
475
"ó1ü",
476
"ú1a",
477
"ú1e",
478
"ú1o",
479
"ú1ï",
480
"ú1ü",
481
"à1a",
482
"à1e",
483
"à1o",
484
"à1ï",
485
"à1ü",
486
"è1a",
487
"è1e",
488
"è1o",
489
"è1ï",
490
"è1ü",
491
"ò1a",
492
"ò1e",
493
"ò1o",
494
"ò1ï",
495
"ò1ü",
496
"ï1a",
497
"ï1e",
498
"ï1o",
499
"ï1é",
500
"ï1í",
501
"ï1ó",
502
"ï1ú",
503
"ï1à",
504
"ï1è",
505
"ï1ò",
506
"ï1i",
507
"ü1a",
508
"ü1e",
509
"ü1o",
510
"ü1é",
511
"ü1í",
512
"ü1ó",
513
"ü1ú",
514
"ü1à",
515
"ü1è",
516
"ü1ò",
517
-- We consider here i and u as semiconsonants
518
"a1i2a",
519
"a1i2e",
520
"a1i2o",
521
"a1i2u",
522
"a1u2a",
523
"a1u2e",
524
"a1u2i",
525
"a1u2o",
526
"a1u2u",
527
"e1i2a",
528
"e1i2e",
529
"e1i2o",
530
"e1i2u",
531
"e1u2a",
532
"e1u2e",
533
"e1u2i",
534
"e1u2o",
535
"e1u2u",
536
"i1i2a",
537
"i1i2e",
538
"i1i2o",
539
"i1i2u",
540
"i1u2a",
541
"i1u2e",
542
"i1u2i",
543
"i1u2o",
544
"i1u2u",
545
"o1i2a",
546
"o1i2e",
547
"o1i2o",
548
"o1i2u",
549
"o1u2a",
550
"o1u2e",
551
"o1u2o",
552
"o1u2i",
553
"o1u2u",
554
"u1i2a",
555
"u1i2e",
556
"u1i2o",
557
"u1i2u",
558
"u1u2a",
559
"u1u2e",
560
"u1u2i",
561
"u1u2o",
562
"u1u2u",
563
"a1i2é",
564
"a1i2í",
565
"a1i2ó",
566
"a1i2ú",
567
"a1i2à",
568
"a1i2è",
569
"a1i2ò",
570
"a1u2é",
571
"a1u2í",
572
"a1u2ó",
573
"a1u2ú",
574
"a1u2à",
575
"a1u2è",
576
"a1u2ò",
577
"e1i2é",
578
"e1i2í",
579
"e1i2ó",
580
"e1i2ú",
581
"e1i2à",
582
"e1i2è",
583
"e1i2ò",
584
"e1u2é",
585
"e1u2í",
586
"e1u2ó",
587
"e1u2ú",
588
"e1u2à",
589
"e1u2è",
590
"e1u2ò",
591
"i1i2é",
592
"i1i2í",
593
"i1i2ó",
594
"i1i2ú",
595
"i1i2à",
596
"i1i2è",
597
"i1i2ò",
598
"i1u2é",
599
"i1u2í",
600
"i1u2ó",
601
"i1u2ú",
602
"i1u2à",
603
"i1u2è",
604
"i1u2ò",
605
"o1i2é",
606
"o1i2í",
607
"o1i2ó",
608
"o1i2ú",
609
"o1i2à",
610
"o1i2è",
611
"o1i2ò",
612
"o1u2é",
613
"o1u2í",
614
"o1u2ó",
615
"o1u2ú",
616
"o1u2à",
617
"o1u2è",
618
"o1u2ò",
619
"u1i2é",
620
"u1i2í",
621
"u1i2ó",
622
"u1i2ú",
623
"u1i2à",
624
"u1i2è",
625
"u1i2ò",
626
"u1u2é",
627
"u1u2í",
628
"u1u2ó",
629
"u1u2ú",
630
"u1u2à",
631
"u1u2è",
632
"u1u2ò",
633
"é1i2a",
634
"é1i2e",
635
"é1i2o",
636
"é1i2u",
637
"é1u2a",
638
"é1u2e",
639
"é1u2o",
640
"é1u2i",
641
"é1u2u",
642
"í1i2a",
643
"í1i2e",
644
"í1i2o",
645
"í1i2u",
646
"í1u2a",
647
"í1u2e",
648
"í1u2o",
649
"í1u2i",
650
"í1u2u",
651
"ó1i2a",
652
"ó1i2e",
653
"ó1i2o",
654
"ó1i2u",
655
"ó1u2a",
656
"ó1u2e",
657
"ó1u2o",
658
"ó1u2i",
659
"ó1u2u",
660
"ú1i2a",
661
"ú1i2e",
662
"ú1i2o",
663
"ú1i2u",
664
"ú1u2a",
665
"ú1u2e",
666
"ú1u2o",
667
"ú1u2i",
668
"ú1u2u",
669
"à1i2a",
670
"à1i2e",
671
"à1i2o",
672
"à1i2u",
673
"à1u2a",
674
"à1u2e",
675
"à1u2o",
676
"à1u2i",
677
"à1u2u",
678
"è1i2a",
679
"è1i2e",
680
"è1i2o",
681
"è1i2u",
682
"è1u2a",
683
"è1u2e",
684
"è1u2o",
685
"è1u2i",
686
"è1u2u",
687
"ò1i2a",
688
"ò1i2e",
689
"ò1i2o",
690
"ò1i2u",
691
"ò1u2a",
692
"ò1u2e",
693
"ò1u2o",
694
"ò1u2i",
695
"ò1u2u",
696
"ï1i2a",
697
"ï1i2e",
698
"ï1i2o",
699
"ï1i2é",
700
"ï1i2í",
701
"ï1i2ó",
702
"ï1i2ú",
703
"ï1i2à",
704
"ï1i2è",
705
"ï1i2ò",
706
"ï1i2u",
707
"ï1u2a",
708
"ï1u2e",
709
"ï1u2o",
710
"ï1u2é",
711
"ï1u2í",
712
"ï1u2ó",
713
"ï1u2ú",
714
"ï1u2à",
715
"ï1u2è",
716
"ï1u2ò",
717
"ï1u2i",
718
"ï1u2u",
719
"ü1i2a",
720
"ü1i2e",
721
"ü1i2o",
722
"ü1i2é",
723
"ü1i2í",
724
"ü1i2ó",
725
"ü1i2ú",
726
"ü1i2à",
727
"ü1i2è",
728
"ü1i2ò",
729
"ü1i2u",
730
"ü1u2a",
731
"ü1u2e",
732
"ü1u2o",
733
"ü1u2é",
734
"ü1u2í",
735
"ü1u2ó",
736
"ü1u2ú",
737
"ü1u2à",
738
"ü1u2è",
739
"ü1u2ò",
740
"ü1u2i",
741
"ü1u2u",
742
-- Semiconsonants at the beginning of word
743
".hi2a",
744
".hi2e",
745
".hi2o",
746
".hi2u",
747
".hu2a",
748
".hu2e",
749
".hu2i",
750
".hu2o",
751
".i2è",
752
".i2ò",
753
".u2è",
754
".u2ò",
755
".hi2é",
756
".hi2ó",
757
".hi2ú",
758
".hi2à",
759
".hi2è",
760
".hi2ò",
761
".hu2é",
762
".hu2í",
763
".hu2ó",
764
".hu2à",
765
".hu2è",
766
".hu2ò",
767
-- And now the crescent diphtongs
768
"gu2a",
769
"gu2e",
770
"gu2i",
771
"gu2o",
772
"qu2a",
773
"qu2e",
774
"qu2i",
775
"qu2o",
776
"gu2é",
777
"gu2í",
778
"gu2ó",
779
"gu2à",
780
"gu2è",
781
"gu2ò",
782
"qu2é",
783
"qu2í",
784
"qu2ó",
785
"qu2à",
786
"qu2è",
787
"qu2ò",
788
"gü2e",
789
"gü2é",
790
"gü2í",
791
"gü2è",
792
"gü2i",
793
"qü2e",
794
"qü2é",
795
"qü2í",
796
"qü2è",
797
"qü2i",
798
-- We add here some exceptions to the rules for diaeresis
799
"a1isme.",
800
"e1isme.",
801
"i1isme.",
802
"o1isme.",
803
"u1isme.",
804
"a1ista.",
805
"e1ista.",
806
"i1ista.",
807
"o1ista.",
808
"u1ista.",
809
"a1um.",
810
"e1um.",
811
"i1um.",
812
"o1um.",
813
"u1um.",
814
-- disallow hyphenation on possible prefixes
815
".antihi2",
816
".be2n",
817
".be2s",
818
".bi2s",
819
".ca2p",
820
".ce2l",
821
".cla2r",
822
".co2ll",
823
".co2n",
824
".co2r",
825
".de2s",
826
".di2s",
827
".en3a",
828
".hipe2r",
829
".hiperm2n",
830
".in3ac",
831
".in3ad",
832
".in3ap",
833
".in3es",
834
".in3o",
835
".inte2r",
836
".ma2l",
837
".mal1t2hus",
838
".pa2n",
839
".pe2r",
840
".pe3ri",
841
".pos2t",
842
".psa2l",
843
".rebe2s",
844
".re2d",
845
".su2b",
846
".sub3o",
847
".subde2s",
848
".supe2r",
849
".tran2s",
850
-- Avoid hyphenation on some intra-word groups
851
"g2no",
852
"p2si",
853
"p2se",
854
"p2neu",
855
"g2nò",
856
"p2sí",
857
-- Avoid wrong hyphenation on some foreign-origin words
858
".ch2",
859
".th2",
860
"ein1s2tein",
861
"ru1t2herford",
862
"ni2etz1sc2he",
863
-- Add some good patterns found by patgen
864
"3exp",
865
"3nef",
866
"3nei",
867
"3pr",
868
"3ser",
869
"a3ne",
870
"a3ri",
871
"bi3se",
872
"des3ag",
873
"des3ar",
874
"des3av",
875
"des3enc",
876
"e3ism",
877
"e3le",
878
"e3rio",
879
"e3ris",
880
"es3aco",
881
"es3af",
882
"es3ap",
883
"es3arr",
884
"es3as",
885
"es3int",
886
"ig3n",
887
"in3ex",
888
"n3si",
889
"o3ro",
890
"qui3e",
891
"s3emp",
892
"s3esp",
893
"sub3a",
894
"ui3et",
895
"o3gnò",
896
   }
897

UNCOV
898
SILE.hyphenator.languages["ca"].exceptions = {
×
899
"cu-rie",
900
"cu-ries",
901
"gei-sha",
902
"gei-shes",
903
"goua-che",
904
"goua-ches",
905
"hip-py",
906
"hip-pies",
907
"hob-by",
908
"hob-bies",
909
"jeep",
910
"jeeps",
911
"joule",
912
"joules",
913
"klee-nex",
914
"klee-nexs",
915
"lar-ghet-ti",
916
"lar-ghet-to",
917
"lied",
918
"lieder",
919
"nos-al-tres",
920
"ro-yal-ties",
921
"ro-yal-ty",
922
"vos-al-tres",
923
"whis-ky",
924
"whis-kies",
925
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc