diff --git a/languages/eo.lua b/languages/eo.lua index 53c6a2264e..9b6179c6d1 100644 --- a/languages/eo.lua +++ b/languages/eo.lua @@ -1,4 +1,81 @@ +-- Verkita originale por Fredrick BRENNAN (copypaste@kittens.ph) 2022-jare + SILE.hyphenator.languages["eo"] = {exceptions={}} SILE.hyphenator.languages["eo"].patterns = { -"a1", "b1", "c1", "ĉ1", "d1", "e1", "f1", "g1", "ĝ1", "h1", "ĥ1", "h1", "i1", "j1", "ĵ1", "k1", "l1", "m1", "n1", "o1", "p1", "r1", "s1", "ŝ1", "t1", "u1", "ŭ1", "v1", "z1", +-- La fonto de la ŝablonoj ĉisubaj estas Sergio Pokrovskij (@pok49)'s GitHub-projekto «vortdivido». +-- Ili uzendas LaTeX-permisile. +"1a2ĉ1aj.", "1a2ĉ1ajn.", "1a2ĉ1oj.", "1a2ĉ1ojn.", "1a2ĉ1on.", "1a2ĉ3an.", "1a2ĉa.", "1a2ĉe.", "1a2ĉo.", "1a2d1aj.", "1a2d1ajn.", "1a2d1as.", "1a2d1is.", "1a2d1oj.", "1a2d1ojn.", "1a2d1on.", "1a2d1re2s1", "1a2d1us.", "1a2d3an.", "1a2d3os.", "1a2da.", "1a2de.", "1a2di.", "1a2dmin", "1a2do.", "1a2du.", "1a2er", "1a2f3rik", "1a2fabl", "1a2fiŝ", "1a2gra", "1a2ĵ1aj.", "1a2ĵ1ajn.", "1a2ĵ1oj.", "1a2ĵ1ojn.", "1a2ĵ1on.", "1a2ĵ3an.", "1a2ĵa.", "1a2ĵe.", "1a2ĵo.", "1a2kir1", "1a2kr", "1a2kv", "1a2merik", "1a2per", "1a2r1aj.", "1a2r1ajn.", "1a2r1oj.", "1a2r1ojn.", "1a2r1on.", "1a2r2b", "1a2r3an.", "1a2ra.", "1a2re.", "1a2ro.", "1a2t1aj.", "1a2t1ajn.", "1a2t1ec", "1a2t1oj.", "1a2t1ojn.", "1a2t1on.", "1a2t3an.", "1a2ta.", "1a2te.", "1a2to.", "1a2va1r", "1an1t1aj.", "1an1t1ajn.", "1an1t1oj.", "1an1t1ojn.", "1an1t1on.", "1an1t3an.", "1an1ta.", "1an1te.", "1an1to.", "1an2t1ec", "1an2t1ig", "1as.", "1av2i3d", "1e2ben", "1e2bl1aj.", "1e2bl1ajn.", "1e2bl1aĵ", "1e2bl1as.", "1e2bl1ec", "1e2bl1is.", "1e2bl1oj.", "1e2bl1ojn.", "1e2bl1on.", "1e2bl1us.", "1e2bl3an.", "1e2bl3ig", "1e2bl3os.", "1e2bla.", "1e2ble.", "1e2bli.", "1e2blo.", "1e2blu.", "1e2c1aj.", "1e2c1ajn.", "1e2c1oj.", "1e2c1ojn.", "1e2c1on.", "1e2c3an.", "1e2ca.", "1e2ce.", "1e2co.", "1e2d2z", "1e2g1aj.", "1e2g1ajn.", "1e2g1as.", "1e2g1is.", "1e2g1oj.", "1e2g1ojn.", "1e2g1on.", "1e2g1us.", "1e2g3an.", "1e2g3os.", "1e2ga.", "1e2gal", "1e2ge.", "1e2gi.", "1e2go.", "1e2gu.", "1e2j1aj.", "1e2j1ajn.", "1e2j1ig", "1e2j1iĝ", "1e2j1oj.", "1e2j1ojn.", "1e2j1on.", "1e2j3an.", "1e2ja.", "1e2je.", "1e2jo.", "1e2le1g2an3t", "1e2lemen2t1", "1e2m1aj.", "1e2m1ajn.", "1e2m1as.", "1e2m1ec", "1e2m1u2l", "1e2m3an.", "1e2m3os.", "1e2ma.", "1e2me.", "1e2mo.", "1e2mon.", "1e2s1tr", "1e2sprim", "1e2str1i2n1aj.", "1e2str1i2n1ajn.", "1e2str1i2n1oj.", "1e2str1i2n1ojn.", "1e2str1i2n1on.", "1e2str1i2n3an.", "1e2str1i2na.", "1e2str1i2ne.", "1e2str1i2no.", "1e2t1aj.", "1e2t1ajn.", "1e2t1as.", "1e2t1is.", "1e2t1oj.", "1e2t1ojn.", "1e2t1on.", "1e2t1us.", "1e2t3an.", "1e2t3os.", "1e2ta.", "1e2taĝ", "1e2te.", "1e2ti.", "1e2to.", "1e2tu.", "1ek4s3c4i2t", "1i2d1aj.", "1i2d1ajn.", "1i2d1i2n1aj.", "1i2d1i2n1ajn.", "1i2d1i2n1oj.", "1i2d1i2n1ojn.", "1i2d1i2n1on.", "1i2d1i2n3an.", "1i2d1i2na.", "1i2d1i2ne.", "1i2d1i2no.", "1i2d1oj.", "1i2d1ojn.", "1i2d1on.", "1i2d3an.", "1i2da.", "1i2do.", "1i2g1a2d", "1i2g1aj.", "1i2g1ajn.", "1i2g1as.", "1i2g1e2m", "1i2g1i2l", "1i2g1is.", "1i2g1oj.", "1i2g1ojn.", "1i2g1on.", "1i2g1us.", "1i2g3an.", "1i2g3os.", "1i2ga.", "1i2gant", "1i2gat", "1i2ge.", "1i2gebl", "1i2gi.", "1i2gint", "1i2git", "1i2go.", "1i2gont", "1i2gu.", "1i2ĝ1a2d", "1i2ĝ1aj.", "1i2ĝ1ajn.", "1i2ĝ1as.", "1i2ĝ1e2m", "1i2ĝ1is.", "1i2ĝ1oj.", "1i2ĝ1ojn.", "1i2ĝ1on.", "1i2ĝ1us.", "1i2ĝ3an.", "1i2ĝ3e4m", "1i2ĝ3os.", "1i2ĝa.", "1i2ĝant", "1i2ĝe.", "1i2ĝi.", "1i2ĝint", "1i2ĝo.", "1i2ĝont", "1i2ĝu.", "1i2l1aj.", "1i2l1ajn.", "1i2l1ar", "1i2l1oj.", "1i2l1ojn.", "1i2l1on.", "1i2l3an.", "1i2la.", "1i2le.", "1i2lo.", "1i2s2m3ec", "1i2s2t1aj.", "1i2s2t1ajn.", "1i2s2t1i2n1aj.", "1i2s2t1i2n1ajn.", "1i2s2t1i2n1oj.", "1i2s2t1i2n1ojn.", "1i2s2t1i2n1on.", "1i2s2t1i2n3an.", "1i2s2t1i2na.", "1i2s2t1i2ne.", "1i2s2t1i2no.", "1i2s2t1oj.", "1i2s2t1ojn.", "1i2s2t1on.", "1i2s2t3a4r", "1i2s2t3an.", "1i2s2t3ec", "1i2s2ta.", "1i2s2te.", "1i2s2to.", "1i2t1aj.", "1i2t1ajn.", "1i2t1oj.", "1i2t1ojn.", "1i2t1on.", "1i2t3an.", "1i2t3ec", "1i2ta.", "1i2te.", "1i2to.", "1in1t1aj.", "1in1t1ajn.", "1in1t1oj.", "1in1t1ojn.", "1in1t1on.", "1in1t3an.", "1in1ta.", "1in1te.", "1in1to.", "1in2d1aj.", "1in2d1ajn.", "1in2d1as.", "1in2d1is.", "1in2d1us.", "1in2d3an.", "1in2d3ec", "1in2d3ig", "1in2d3iĝ", "1in2d3os.", "1in2da.", "1in2de.", "1in2do.", "1in2don.", "1in2t3ar", "1in2t3ec", "1in2t3us", "1inte2r1", "1is.", "1is2m1aj.", "1is2m1ajn.", "1is2m1oj.", "1is2m1ojn.", "1is2m1on.", "1is2m3an.", "1is2ma.", "1is2me.", "1is2mo.", "1o2bl1aj.", "1o2bl1ajn.", "1o2bl1ec", "1o2bl1oj.", "1o2bl1ojn.", "1o2bl1on.", "1o2bl3an.", "1o2bla.", "1o2ble.", "1o2blo.", "1o2dor", "1o2kup", "1o2por1tun", "1o2rel", "1o2s3c2i3l", "1oj.", "1ojn.", "1on.", "1on2t1aj.", "1on2t1ajn.", "1on2t1oj.", "1on2t1ojn.", "1on2t1on.", "1on2t3an.", "1on2ta.", "1on2te.", "1on2to.", "1os.", "1s2c2h", "1s2trek", "1ŝ2tejn", "1u2j1aj.", "1u2j1ajn.", "1u2j1ig", "1u2j1iĝ", "1u2j1oj.", "1u2j1ojn.", "1u2j1on.", "1u2j3an.", "1u2ja.", "1u2je.", "1u2jo.", "1u2l1aj.", "1u2l1ajn.", "1u2l1ar", "1u2l1i2n1aj.", "1u2l1i2n1ajn.", "1u2l1i2n1oj.", "1u2l1i2n1ojn.", "1u2l1i2n1on.", "1u2l1i2n3an.", "1u2l1i2na.", "1u2l1i2ne.", "1u2l1i2no.", "1u2l1oj.", "1u2l1ojn.", "1u2l1on.", "1u2l3an.", "1u2l3ec", "1u2l3ej", "1u2la.", "1u2le.", "1u2lo.", "1u2m1aj.", "1u2m1ajn.", "1u2m1as.", "1u2m1is.", "1u2m1oj.", "1u2m1ojn.", "1u2m1on.", "1u2m1us.", "1u2m3an.", "1u2m3ec", "1u2m3os.", "1u2ma.", "1u2me.", "1u2mi.", "1u2mo.", "1u2mu.", "1u2nuo", "1us.", "2a3a2", "2ao2", "2b1ŝ2", "2c1s2", "2ĉ1g2", "2ĉ1ĝ2", "2ĉ1ŝ2", "2e3o", "2eu2", "2f1j2", "2f1ĵ", "2f1t", "2f3k", "2fik", "2g1d2", "2g1m", "2ĝ1b2", "2hn.", "2ĥ1s2", "2i4larb", "2ipov", "2j1s2", "2jis.", "2k1n", "2k3e2rar", "2l3ĥ2", "2linter", "2m3f2", "2n1j", "2n1m", "2oplen", "2ou", "2p1f2", "2p1j2", "2p1k2", "2p1m2", "2p1p2", "2p1s2", "2p1ŝ2", "2p1t", "2r1ĉ", "2r1g", "2r1ĝ", "2r1ĵ", "2r1ŝ2", "2r1v", "2r1z", "2s1g2", "2s1l", "2s1m", "2s1r2", "2s3e2rar", "2sk.", "2spre", "2stf", "2ŝ1c2", "2ŝ1ĉ2", "2ŝ1d2", "2ŝ1g2", "2t1l2", "2u3l2ard", "2u3l2ari", "2v1j2", "2v1r2", "3a2c2i2d", "3a2mas", "3a2par2a3t", "3a4ranĝ", "3afe23", "3aj.", "3ajn.", "3an.", "3e2kz", "3e2senc", "3fiks", "3k2nab", "3k2ned", "3n2j1aj.", "3n2j1ajn.", "3n2j1oj.", "3n2j1ojn.", "3n2j1on.", "3n2j3an.", "3n2ja.", "3n2je.", "3n2jo.", "3o4lea", "3o4lei", "3o4leo", "3s2lab", "3s2lalom", "3s2lang", "3s2lav", "3s2lip", "3s2lovak", "3s2loven", "3s2lup", "3s2merald", "3s2tr2a2t", "3s2tu1d", "4b1b2", "4b1c", "4b1ĉ", "4b1d", "4b1f", "4b1g", "4b1ĝ", "4b1h4", "4b1j2", "4b1ĵ", "4b1k", "4b1m", "4b1n", "4b1p", "4b1s", "4b1s2k", "4b1t", "4b1v", "4b1z", "4c1b", "4c1c2", "4c1ĉ", "4c1d", "4c1f", "4c1g", "4c1ĝ", "4c1h4", "4c1j2", "4c1ĵ", "4c1k", "4c1l", "4c1m", "4c1n", "4c1p2", "4c1r", "4c1ŝ", "4c1t", "4c1v", "4c1z", "4ĉ1b", "4ĉ1c", "4ĉ1ĉ", "4ĉ1d", "4ĉ1f", "4ĉ1h4", "4ĉ1ĵ", "4ĉ1k", "4ĉ1l2", "4ĉ1m", "4ĉ1n", "4ĉ1p", "4ĉ1s", "4ĉ1t", "4ĉ1v", "4ĉ1z", "4d1b", "4d1c", "4d1ĉ", "4d1d2", "4d1f", "4d1g", "4d1ĝ", "4d1h4", "4d1j2", "4d1ĵ", "4d1k", "4d1l4", "4d1m", "4d1n2", "4d1p", "4d1ŝ2", "4d1t", "4d1v", "4d3s2", "4f1b", "4f1c", "4f1ĉ", "4f1d", "4f1f2", "4f1g", "4f1ĝ", "4f1h4", "4f1m", "4f1n", "4f1p", "4f1s4", "4f1ŝ4", "4f1v", "4f1z", "4g1b", "4g1c", "4g1ĉ", "4g1f", "4g1g2", "4g1ĝ", "4g1h4", "4g1j2", "4g1ĵ", "4g1k", "4g1n", "4g1p", "4g1s", "4g1ŝ", "4g1t", "4g1z", "4ĝ1c", "4ĝ1ĉ", "4ĝ1d", "4ĝ1f", "4ĝ1g", "4ĝ1ĝ", "4ĝ1h4", "4ĝ1j2", "4ĝ1ĵ", "4ĝ1k", "4ĝ1l", "4ĝ1m", "4ĝ1n", "4ĝ1p", "4ĝ1r", "4ĝ1s", "4ĝ1ŝ", "4ĝ1t", "4ĝ1v", "4ĝ1z", "4h1ĉ", "4h1ĝ", "4h1ĵ", "4h1ŝ", "4ĥ1b", "4ĥ1c", "4ĥ1ĉ", "4ĥ1d", "4ĥ1f", "4ĥ1g", "4ĥ1ĝ", "4ĥ1h4", "4ĥ1j2", "4ĥ1ĵ", "4ĥ1k", "4ĥ1m", "4ĥ1n", "4ĥ1p", "4ĥ1ŝ", "4ĥ1t", "4ĥ1v", "4ĥ1z", "4j1b", "4j1c", "4j1ĉ", "4j1d", "4j1f", "4j1g", "4j1ĝ", "4j1h4", "4j1ĵ", "4j1k", "4j1l", "4j1m", "4j1n", "4j1p", "4j1r", "4j1ŝ", "4j1t", "4j1v", "4j1z", "4j2s3t", "4ĵ1b", "4ĵ1c", "4ĵ1ĉ", "4ĵ1d", "4ĵ1f", "4ĵ1g", "4ĵ1ĝ", "4ĵ1h4", "4ĵ1j2", "4ĵ1ĵ", "4ĵ1k", "4ĵ1l", "4ĵ1m", "4ĵ1n", "4ĵ1p", "4ĵ1s", "4ĵ1ŝ", "4ĵ1t", "4ĵ1v", "4ĵ1z", "4k1b2", "4k1c", "4k1ĉ", "4k1d", "4k1f", "4k1g", "4k1ĝ", "4k1h4", "4k1j2", "4k1ĵ", "4k1m", "4k1p", "4k1s", "4k1ŝ2", "4k1t", "4k1z", "4k3k2", "4l1b", "4l1c", "4l1ĉ", "4l1d", "4l1f", "4l1g", "4l1ĝ", "4l1h4", "4l1j2", "4l1ĵ", "4l1k", "4l1l2", "4l1m", "4l1n", "4l1r4", "4l1s2", "4l1t", "4l1v", "4l1z", "4l3p", "4l5ŝ2", "4m1b", "4m1c", "4m1ĉ", "4m1d", "4m1g", "4m1ĝ", "4m1h4", "4m1j2", "4m1ĵ", "4m1l", "4m1n", "4m1p", "4m1r", "4m1s2", "4m1ŝ", "4m1t", "4m1v", "4m1z", "4m3e2rar", "4m3k", "4m3m2", "4n1b", "4n1c", "4n1ĉ", "4n1d", "4n1f", "4n1g", "4n1ĝ", "4n1h4", "4n1ĵ", "4n1k", "4n1l2", "4n1n", "4n1p2", "4n1r", "4n1s2", "4n1ŝ2", "4n1t", "4n1v2", "4n1z", "4ne.", "4oĉambr", "4ografi", "4ologi", "4p1b2", "4p1c2", "4p1ĉ2", "4p1d2", "4p1g2", "4p1ĝ2", "4p1h4", "4p1ĵ2", "4p1v2", "4p1z2", "4r1b", "4r1c", "4r1d", "4r1f", "4r1h4", "4r1ĥ4", "4r1j2", "4r1k", "4r1l2", "4r1m", "4r1n", "4r1p", "4r1r4", "4r1s2", "4r1t", "4s1ĉ", "4s1d", "4s1ĝ", "4s1h4", "4s1j2", "4s1ĵ", "4s1n", "4s3b2", "4s3s2", "4s3ŝ2", "4st1n", "4ŝ1b", "4ŝ1f", "4ŝ1ĝ", "4ŝ1h4", "4ŝ1ĵ", "4ŝ1k", "4ŝ1s", "4ŝ1ŝ2", "4ŝ1z", "4t1b", "4t1c", "4t1ĉ", "4t1d", "4t1f", "4t1g", "4t1ĝ", "4t1h4", "4t1j2", "4t1ĵ", "4t1k", "4t1m", "4t1n", "4t1p2", "4t1ŝ2", "4t1t", "4t1v", "4t1z", "4t3s2", "4ŭ1", "4v1c2", "4v1ĉ", "4v1d", "4v1f", "4v1g", "4v1ĝ", "4v1h4", "4v1ĵ", "4v1k2", "4v1l", "4v1m", "4v1n", "4v1p", "4v1s", "4v1ŝ", "4v1t", "4v1v", "4v1z", "4v3b2", "4z1b", "4z1c", "4z1ĉ", "4z1d", "4z1f4", "4z1g", "4z1ĝ", "4z1h4", "4z1j2", "4z1ĵ", "4z1k", "4z1l", "4z1m", "4z1n", "4z1p", "4z1r", "4z1s", "4z1ŝ", "4z1t", "4z1v", "5m2anier", "5s2nuf", "5s4led", "5s4mirg", "a1", "a2b1r", "a2bu3t2i3l", "a2cet2i3l", "a2ĉ2e3t", "a2dek2v2a3t", "a2g1reg2a3t", "a2k1rob2a3t", "a2kur2a3t", "a2l3ig", "a2lie", "a2liĝ", "a2nali", "a2rom2a3t", "a2spekt", ".ab2a3t", ".ab2is3m", ".abs2i3d", ".abs2in3t", "adiab2a3t", "adjut2an3t", "advok2a3t", "ae2", "afrik2a3t", ".ag1a2d", ".ag2a3t", ".ag2i3t", ".aj2n1", ".aj3n2u", ".ak1r2i3d", "ak1red2i3t", ".akum2u3l", ".al1est", ".al2t", "al3t2a3r", "al3tabl", "al3ter", "al3trui", ".al4i3g2a3tor", ".alb2u3m", "alfab2e3t", "alop2a3t", "alum2e3t", "am2a3r", "ambas2a3d", ".amet2i3s3t", "amul2e3t", ".an2a3k", ".and2u3j", ".ang2i3l", "ang2u3l", "antikr2i3s3t", "antrac2i3t", "aor2i3s3t", "ap1l", ".apet2i3t", ".apr2e3c", ".apr2i3l", ".aps2i3d", ".apu2d1", ".ar2i3d", ".ar2i3s3t", "ar3bitr", ".arg2i3l", ".arog2an3t", "asimil3i4t", ".ask2e3t", ".askar2i3d", ".asp2i3d", ".at1l2e3t", ".aŭ2d", ".aŭ3dac", "aŭtorit2a3t", ".avok2a3d", ".az2i3l", "b1l", "b1s2t", "b2ar3b", "b2at", "b2i3l2a3rd", "b2i3t", "b2lek", "b2lok", "b2lov", "b2lu", ".bab2i3l", ".bac2i3l", "bajon2e3t", ".bal2a3d", ".bal2i3s3t", ".band2i3t", "barb2a3r3", ".bat2i3s3t", "batal3an4t", "baz2a3r3", ".baz2i3l", ".be2l", "be2l1a2nim", ".be2l1a2r2t", "be2l1a2sp", ".be3j", ".be3t", "bel3e4g", ".ber2i3l", ".bet2u3l", ".bi2o", ".bi3l", ".bi4t1", "bi4t1o2k", "bi5t2u3m", "bil2d1r", "bil2e3t", "biskv2i3t", "biz2a3r", ".bl2a3t", ".bl4in3d", ".bo2n1", "bo2v3id", ".bo3n2ev", ".boh2e3m", ".bol2e3t", ".bol2i3d", ".bon2e", ".bon3e2du", ".bon3ec", ".bon3eg", ".br2i3d", ".br2i3g", "br2i3g2a3d", ".br2i3ĝ", "br2i3l", ".br2i3t", "br2ul3", ".br4", "bracel2e3t", ".braz2i3l", "brev2e3t", ".brok2a3t", ".bu2ŝ", ".bu3l", ".bu3m", ".buĝ2e3t", "bulg2a3r", "bur2g", "c2i3d", ".ced2i3l", ".cen2t", "cen2t3o2n", "cen2t3o2p", "cen3t2r", ".cez2a3r", ".ci3d2a3r", ".ci3r2i3l", ".ci3s3t", ".ci3t", "cig2a3r", "ciga4r1in2g", "cik2a3d", ".cirkv2i3t", ".civ2i3l", ".civ2i3t", ".ĉa2s", ".ĉe2f1", "ĉi2e2l1", ".ĉi4a3", ".ĉi4e", ".ĉi4o", ".ĉi4u3", ".ĉia4m1", ".ĉie4s1", "ĉinĉ2i3l", ".ĉio4m", "ĉio5manĝ", "ĉj2", "ĉokol2a3d", "d1z", ".dakt2i3l", "daŭ2r", "de2k1o2k", "de2k1u2n", "de2k3o2na", "de2k3o2ne.", "de2k3o2no", "de2k3o2p", ".de2v", ".de3c", "de3ve2n", "de3vo2j", ".deb2e3t", ".deb2i3l", ".def2i3l", "defic2i3t", "delik2a3t", ".dem2e3t", ".di2s3", ".di3g", ".di3g2i3t", "di3rekt", ".di3s4ert", ".di3s4erv", ".di3s4ip", ".di3s4oci", "diab2e3t", "diad2e3m", ".dil2e3m", "dilet2an3t", "din2a3r", "dinam2i3t", "diplom2a3t", "disk1r2et", "disk2on3t", ".dist2i3l", "diver2s3", "diver3s4aspec", "divi3d", "dol2a3r", ".domic2i3l", "dor2m3", "dr2a3t", ".dr2i3l", ".dra4t1", ".du2m1i2r", ".du2on1", ".duk2a3t", "e1", "e2cig", "e2sper", "e2st", "e2vi3dent", "e3e4", "e3m2u3ls", "ea2", ".ed2e3m", ".ed2i3l", ".ef1r2i3t", ".eg2i3d", "ejak2u3l", ".ek1", ".ek1l2um", ".ek1l4a2m", ".ek2ip", ".ek2onom", ".ek2s1", ".ek2ume2n", "ek3s2alt", ".ek3s2ci", ".ek3s2ekv", ".ek3s2ent", ".ek3s2id", "ek3s2ku", ".ek3s2on", ".ek3s2tar", "ek4s3ciz", "ek4s3kur", "ek4s3kuz", ".eka2m", ".ekf4", ".ekma2l1", "ekr2eg", "eksplic2i3t", ".ekste2r1", ".ekz2e3m", ".ekz2i3l", "ekz2i3s3t", ".el1aĉet", ".el1i2r", ".el1uz", ".el2i3t", ".el3v2", "elef2an3t", "elizab2e3t", "emfiz2e3m", ".en1a2m", ".en1e2st", ".en1i2r", ".en1u2z", ".enk2e3t", "epit2e3t", "er2a3r3", ".erm2i3t", ".erud2i3t", ".et2a3t", ".et2i3l", "eŭkl2i3d", ".ev2i3t", "f2a3r", "f2ar3b", "f2i3l2a3ri", "fac2i3l3", "fakult2a3t", ".fal2s3", "fal3s4e3t", ".fal3s4id", "fal3s4tel", "fas2a3d", ".fe3b1l", "fen2e3st3r", "fer2m3", ".fi2ŝ1", ".fi3g", ".fi3l", ".fi4garb", ".fik2s1", "fik2s1i2de", ".fist2u3l", ".fl4", ".flor2i3d", "fo2j", ".fo2r1", ".fo3r2in3t", ".fo3r2u3m", "fon2e3m", ".fon3t", "form2a3t", ".form2e3t", "form2u3l", "formul2a3r", "fr2a3t", ".fr2i3d", ".fr2i3t", ".fr2on3t", "fr4a3mason", ".fra2z1", "fra3z2eo", ".fre2ŝ", "frit2i3l2a3ri", ".fu2ŝ3", ".fu3l", ".fu3m", ".fus2i3l", "g1v", ".gal2an3t", "galin2u3l", "garg2a3r", ".gaz2e3t", ".gen2i3s3t", ".gi3s3t", ".gig2an3t", "git2a3r3", ".gl2i3t", ".gl4", ".gla3t", ".gor2i3l", "gr2a3d", "gr2eg", ".gr2i3l", ".gr4", "gra2n2d1", "graf2e3m", ".graf2i3t", ".gran2a3t", ".gran2i3t", ".gran2u3l", "gran3d2io", ".grat2u3l", ".grav2i3t", ".gru3m", ".gu3m", "ĝ2e3m", ".ĝent2i3l", ".ĝi2s1", ".ĝi4a3", ".halel2u3j", ".haml2et", "har2a3kir", ".har2e3m", ".hel4p1", ".hep2a3t", ".herk2u3l", ".herm2e3t", "hermafrod2i3t", "hez2i3t", "hi3rund", ".hi3s3t", "hiac2in3t", "hibr2i3d", "hierod2u3l", ".hin3d", "homunk2u3l", ".hon3t", "horiz2on3t", ".hu3m", "hum2i3d", "hung2a3r", "ĥlam2i3d", "i1", "i2r", "i3rurg", "i4u3o", "ias2", "ilu3zi", "im2i3t", "in2gig", "in2giĝ", ".in3d4i2g", "in3d4iĝen", ".inc2i3t", "inf2a4n3t", "infin2i3t", "inkogn2i3t", ".ins2i3d", "ins2i3s3t", "ins2u3l", "ins2ul2i3n", "inst2an3t", ".inst2i3g", ".instanb2u3l", "inte3r2es", "inte3r2ez", "inte3r2upt", "inter3v2ju", "interm2i3t", ".intr2i3g", "inv2a3d", ".inv2i3t", "invent2a3r", ".io2m1", "is1la2m3", "iud2", "izob2a3r", "j2ar", "j2u2n", ".jac2in3t", "jerusal2e3m", ".ju3l", ".jub2i3l", "jug2u3l2a3r", "ĵ2e3t", ".ĵak2e3t", ".ĵe4t1", ".ĵu3l", "k1v", "k2an3t", "k2ar3b", "k2n2ar3", "k2s1t2r", "k2v2a4r1", "k2v2an3t", ".ka2ŝ1", ".kab2u3l", "kabin2e3t", ".kad2e3t", "kalend2a3r3", "kalend2u3l", "kalk2u2l1", ".kalo3c2say", "kamar2a3d", ".kamar2i3l", ".kan2a3d", "kan3t2ar2i3d", "kande2l1in2g", "kandid2a3t", "kap2i3l2a3r3", "kapac2i3t", "kapit2u3l", "kaps2u3l", ".kar2a3t", "kastanj2e3t", ".kazem2a3t", ".kel2k", ".ki3l", ".ki3r2i3l", ".ki3s3t", ".ki4a3", ".ki4o", ".ki4u3", "kia4l", "kie2s", ".kin2e3t", "kl2a3r", ".kl4", "kla2v3a4r", "klarn2e3t", ".klim2a3t", "kloz2e3t", "klu3z", "ko2ŝ1m2ar", "ko2t1l2e3t", "koag2u3l", ".kom2a3t", ".kom2e3t", "komis2a3r", ".komit2a3t", "komp2a2t", "komp2a3r", ".komp2i3l", "kompl2e3t", "komprom2i3t", "komput3i4l", "komuni2k1", ".kon3t", ".konf2e3t", ".konf2i3d", ".konf2i3t", "konfr2on3t", "konkord2a3t", "konkr2e3t", "kons2i3l", "kons2i3s3t", ".kons2u3l", "kons2u3m", "konson2an3t", "konst2an3t", ".kop2u3l", "korpusk2u3l", "kors2e3t", "korv2e3t", ".kost2u3m", ".kr2i3s3t", "kr2i3t", ".kr4", ".krav2a3t", ".kred2i3t", ".krik2e3t", "krizal2i3d", ".kro2m1", "kro3m2a3t", "kro3m2ia", "kro3m2io", ".krok2e3t", "krokod2i3l", "krom2o", "kru3z", ".ku2n1", ".ku3l", "ku3n2ikl", "ku3z", ".kuk2u3m", "kulin2a3r", ".kum2u3l", "kv2a3kr", ".kv2i3t", ".kv4", "kvadr2an3t", ".kvadr2i3g", ".kval2i3t", "kvar3o2p", "kvatern2a3r", "kvi2n1", ".kvi3r2i3t", "kvin3o2p", ".kviv2i3t", "kvodlib2e3t", ".kvor2u3m", "l2e3g", "l2ig", "l4s3l", "labi3r2in3t", "lap2i3d2a3r", "laŭ2d2a3t", "laŭ2dind", "laŭ2t1le4g", "le2ĝ", ".le3m", "leŭten2an3t", ".li3s3t", ".li3t", ".li4a3", "li5an", "li5as", ".lib2i3d", "likv2i3d", "limon2a3d", "lin2g2v1uz", ".lin3d", ".liv2i3d", ".liverp2u3l", "lo2n2g1", "lon3g2itud", ".lu3l", ".lu3m", ".luk2u3m", "m2et", "m2i3l", "m4f3k", ".ma2l1", "ma2lb2o2n1", ".ma3l2ic", ".madr2i3d", ".magn2a3t", "magn2e3t", "majorit2a3t", "mak2u3l", "mala2m", "malak2i3t", "malgl2a3t", "malk4", "malno2v1", "malpl2e2j1", "mals4am1", ".malsupre2n1", ".mand2a3t", "manip2u3l", ".mant2i3l", ".margar2i3t", "marion2e3t", ".marm2i3t", "mastod2on3t", "matrik2u3l", "mb2l2", ".me2m1", ".me2z1", ".me3b1l", "me3m2or", ".me3m2uar", "me3z2embri", "me3z2enter", ".me3z2ere", "me3z2u2r", ".mecen2a3t", ".med2i3t", "megal2i3t", "meĥ2a3n2is3m", "mek2a3n2is3m", ".melol2on3t", ".mem3a2", "mer2i3t", ".met2i3l", "mez2alianc", ".mez2o", ".mi3t", ".mi4a3", ".mi4s3", "mi5asm", "mi5aŭ", ".mi5s4al", ".mi5s4ia", ".mi5s4ie", ".mi5s4ii", "mi5s4il", ".mi5s4io", ".mi5s4iu", "migr3a4d", "mil2i4t1", "mil3o2n", "mil3o2p", "minorit2a3t", "mob2i3l", ".mod2u3l", ".mol2a3r", "molek2u3l", "mom2ant", "mon2a3t", ".mon3t", "morb2i3d", "morf2e3m", ".mosk2i3t", ".mot2e3t", ".mu3l", "mu3z", ".mul2a3t", "mul2t1", "mul2t3eg", "mul3t2ipl", "mul3ta", "mul3te.", "mul3to", "mul4t3obl", "mult2e", ".musk2a3t", "n2kv", "n2o3bl", "n2s3t2r", "n4s3l", "najb4a1r", "nap4o5leo", "naŭt2i3l", ".nav2i3g", ".ne2nia3", ".ne3t", ".neb2u3l", ".negl2i3ĝ", ".nei2", ".nema2l1", ".neof2i3t", ".ni4a3", ".no4v", ".nor2d1", "nor2d1a2z", ".norv2e3g", ".nu3l", ".num2i3d", "o1", "o2fic", "o3e", "oa2", "of2i3l", "oi2", "ok2u3l", ".ok3o2n", ".ok3o2p", ".okciden2t1", "okcip2i3t", "okr2a3t", "oks2i3d", ".okt2an3t", "ol2i3t", "oli2v", ".om2a3r", ".om2e3g", ".oml2e3t", "on2d1r", ".opid2u3m", "opos2u3m", "or1k2e3str", ".or2t", ".or5t2ho", "ordin2a3t", ".orien2t1", "orien2t1a2z", ".ort2o3rel", "p1n2", "p2a3per", "p2e3c", "p2et", "p2i3t4eci", "p2lek", ".pa2s", ".pa2ŝ", "pa3sa3ĝ", "pa3ser", ".paĉ2u3l", ".pal2a3t", ".pal2e3str", "palp2i3t", "pamfl2e3t", ".paraz2i3t", "parf2u3m", "parg2e3t", "paro2l3", "partik2u3l", "partik2u3l2a3r", "paskv2i3l", ".pe2r1a2", ".ped2an3t", ".pedik2u3l2ar", "perf2i3d", "pers2i3s3t", "persv2a3d", "pfen2i3g", ".pi3g", "pi3r2a3t", ".pi3r2i3t", "pi3ram2id", ".pi3s3t", "pie2d1i2ng", ".pin2t", ".pin3d", "pl2aĉ", ".pl2e2j1", ".pl2e3t", "pl2i3l2a3rĝ", ".pl4", "pl4at", ".ple2n3", "plebisc2i3t", "pleja2", "plu2m1in2g", ".plu2r1", ".plu3m", ".po2e3m", ".po2e3t", "po2marb", ".po2r", ".po2s2t1", ".po2ŝ", ".po2ŝ2t1", ".pol2a3r", ".pom2a3d", ".pon3t", "pop2u3l2a3r", "portr2e3t", "pos3t2ament", "pos3t2e2n", "pos3t2iljon", "pos3t2u3l", "post2esign", "poŝ3t2ele", "poŝ3t2ranĉ", "poŝ3t2uk", "pr2e3m", "pr2et", ".pr2is3m", ".pr4", "pre2s", "pre2st2i3ĝ", "pre3skrib", "precip2i3t", ".prel2a3t", "prep2a3r", "prestid2i3g2i3t", ".prete2r1", "preter2i3t", "prim2a3r", ".prim2a3t", "priorit2a3t", ".priv2a3t", "prob1l2e4m3", ".prod2i3g", "prof2e3t", "prof2i3t", ".prol2e3t", "prozel2i3t", "ps2i3l", "pterodakt2i3l", ".pu2ŝ", ".pu3l", ".pu3m", ".pup2i3l", ".pust2u3l", "r2d1r", "r2et1aj.", "r2et1ajn.", "r2et1oj.", "r2et1ojn.", "r2et1on.", "r2et3an.", "r2eta.", "r2ete.", "r2eto.", "r2id", "r2k1l", "r2s3f", "r2s3m", "r2s3r", "r2ŝ3j", "r3l2i3g", ".rab2a3t", "rad2a3r", ".rak2e3t", "rak2on3t", "rap2i3d", ".re2f3l2ig", ".re2ĝ", ".re2sp.", ".re2spond", ".re2spublik", ".re2tro", "re3gal", "re3ĝim", "re3ĝust", "referend2u3m", "reg2u2l1", "rehabil2i3t", "rekl4am", ".rem2e3t", ".rem2on3t", "remp2a3r", ".ren2a3", ".renk2on3t", ".res2u3m", "retik2u3l", "rez2i3d", ".rez2i3s3t", "rezult2a3t", "ri2ĉ", "rig2i3d", "ril2a3t", "rip2a3r", ".ris3m", ".rodr2i3g", "rozal4in3d", "rs3l", ".ru3l", ".ruk2u3l", "s1c", "s1f", "s1k", "s1p", "s1t", "s1v", "s2ci", "s2e3m", "s2krib", "s2p2e3c", "s2t2a3r", "sa2ĝ", ".sa2m", "sa2m1ur2b", "sa3m2ar", ".sa3m2u3m", "sa3m2uraj", ".sab2a3t", ".sal2a3t", ".sam1i2de", "sanit2a3r", "sanskr2i3t", "satel2i3t", "scint2i3l", "se2kvinber", ".se2n1", ".se2p3o2n", ".se2p3o2p", ".se2s3o2n", ".se2s3o2p", "sek2s1eksc", "sek2u3l2a3r", "sekr2e3t", "sekund2a3r", "sekva3", ".sen2a3t", "sen2e2skal", "sen2il", ".sen2t2em", ".sen3s4t", ".sene2l1i2r", "sent3emo", ".ser2u3m", "seren2a3d", ".si2n", "si3n2us", "si3rin", ".si4a3", "sibar2i3t", ".sim2u3l", "sin1a2kuz", "sin1o2fer", "sindik2a3t", "sing2u3l2ar", "sinjo2r3", ".sis3m", ".sk2i3s3m", ".sk2i3s3t", ".sk2i3t", ".sk4", "skal2a3r", "skarl2a3t", "skel2e3t", "skra2p1", "skrup2u3l", "skva2m1", ".sof2is3", "sol2i3d", "sol2i3d2a3r", "sold2a3t", "somnamb2u3l", ".son2a3t", ".son2e3t", ".sov2e3t", "sove4t1u2ni", ".sp2i3t", ".sp4", "spag2e3t", "speg2u3l", ".spek2u3l", "spi3r2i3t", "spin2e3t", ".spl2i3t", ".spl4", "spr2i3t", ".spr4", "st2a3t", ".st2i3l", ".st4", "st4a3c2i3", "stab2i3l", "staf2e3t", "stalagm2i3t", "stalakt2i3t", "stenc2i3l", ".stern2u3m", "stigm2a3t", ".stil2e3t", ".stil2i3t", ".stim2u3l", ".str2i3d", ".str2i3g", ".str4", ".stra3t2e3g", "strob2i3l", ".su2b1", ".su2ĉ3i2nf", ".su2d1a2f", ".su2d1a2m", ".su2d1a2zi", ".su2d1aŭ", ".su2d1eŭr", ".su2d1r", ".su3b2i3t", ".su3b2ute", ".su3m", "subt2i3l", ".supe2r1", "surog2a3t", ".sv4", "svah2i3l", "ŝ1m", "ŝ1n", "ŝ1p", "ŝ1t", "ŝ1v", "ŝ2nur", "ŝ2p2ar", "ŝ2pin", "ŝ2t2a3t", "ŝ2veb", "ŝ2vel", "ŝi2p1", ".ŝi4a3", "ŝibol2e3t", ".ŝm2", "ŝp2at", ".ŝte2l1", "ŝv2i3t", "t2e3m", "t5c2h", "ta2g1l2", ".tab2u3l", "tal2a3r", "tal2an3t", "tamar4in3d", ".tand2e3m", "tarant2u3l", "tat2a3r", "te4or2em", "tereb2in3t", ".term2i3t", ".ti3g", ".ti3ran", ".ti4a3", ".ti4e", ".ti4o", ".ti4u3", "tia4l", ".tia4m1", ".tib2e3t", ".tie4s", "tim2i3d", ".tio4m1", ".tok2a3t", "tolst2oj.", "tom2a3t", "tr2e3m", "tr2et", ".tr4", ".tran2s3", "tran3s4ept", "tran3s4i2stor", "tran3s4it", "tran3s4pir", "tran4s5i4tal", "trankv2i3l3", ".trans2i3t", ".trio2p", ".tris2", "troglod2i3t", ".tru3l", ".tru3m", ".tu2t1", "tual2e2t", "tuberk2u3l", "turb2u3l", "u1", "u2e3nask", "u2t2i3l", "u2z", ".ul2u3l", "ultim2a3t", ".un2u3l4e", "universit2a3t", ".unu2a", "unu3a2nim", "uo2", ".uv2u3l", "ŭa2", "ŭe2", "ŭi2", "ŭo2", "ŭu2", "v2a3r", "v2i2d", "v2in3d", "val2i3d", ".van2i3l", "var2m3", ".ve2st2i3ĝ", "veg2e3t", ".vel2a3r", ".vend2e3t", ".vert2i3ĝ", ".vi2c1", ".vi2r1", ".vi2ŝ", ".vi2v1", ".vi3c2ia", ".vi3c2io", ".vi3g2i3l", "vi3r2ulent", ".vi3t", ".vi4a3", ".vi4st2ul", "vi5a4nd", "vi5atik", "vinj2et", "vir2g", "vir2us", "vir3genr", "viz2i3t", "viza2ĝ1", ".vo2j1", ".vo3j2aĝ", "vodev2i3l", "vol2on3t", "vol2u3m", "volat2i3l", "vor2t1", "vort2od", "vort2op", "vulg2a3r", "vulg2a3t", ".warin5g2hi2en", "zen2i3t", "zo2o", "zor2g" } + +SILE.doTexlike([[% +\define[command=tableofcontents:title:eo]{Enhavoj}% +\define[command=book:chapter:pre:eo]{Ĉapitro №}% +]]) + +local function digits(n) + local i, ret = -1 + return function() + i, ret = i + 1, n % 10 + if n > 0 then + n = math.floor(n / 10) + return i, ret + end + end +end + +-- Esperanto name of a number +local eo_string = function (num) + local words = {"unu", "du", "tri", "kvar", "kvin", "ses", "sep", "ok", "naŭ", [0] =""} + local levels = {"mil", "miliono", "miliardo", [0]=""} + local ten = "dek" + local hundred = "cent" + for i=2,8,1 do + table.insert(levels, 2+i, words[i].."iliono") + table.insert(levels, 2+i+1, words[i].."iliardo") + end + -- main loop + local level = false + local function getname(pos, dig) --stateful, but effective. + level = level or (pos % 3 == 0) + if(dig == 0) then return "" end + local dig_name + if(dig == 1 and pos ~= 0) then + dig_name = "" + else + dig_name = words[dig] + end + local name = (pos % 3 == 2 and dig_name .. " " .. hundred .. " " or dig_name .. " ") .. (pos % 3 == 1 and ten .. " " or "") + if(level) then name, level = name .. levels[math.floor(pos / 3)] .. ((dig > 1 and pos > 5) and "j" or "") .. (pos > 5 and " kaj" or "") .. " ", false end + return name + end + + local vword = "" + + for i, v in digits(num) do + vword = getname(i, v) .. vword + end + + vword = vword:gsub(" kaj $", " ") + while vword[#vword] == " " do + vword = vword:sub(1, #vword-1) + end + while vword[1] == " " do + vword = vword:sub(2, #vword) + end + return num == 0 and "nul" or vword +end + +SU.formatNumber.eo = { + string = function (num) + return eo_string(num) + end, + nth = function (num) + return num .. 'a' + end +} +--[[ +SU.debug("eo", eo_string(3333300030)) +SU.debug("eo", eo_string(3000003)) +SU.debug("eo", eo_string(1000000)) +SU.debug("eo", eo_string(1000001)) +--]]