taraskevizer 1.3.4 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -44,6 +44,7 @@ Alphabet of output text:
44
44
  0 = cyrillic
45
45
  1 = latin
46
46
  2 = arabic
47
+ 3 = greek
47
48
  ```
48
49
 
49
50
  ### j
@@ -178,6 +179,7 @@ $ tarask "планета"
178
179
  # Alpabet
179
180
  --latin (-l)
180
181
  --arabic (-a)
182
+ --greek (-gr)
181
183
  # When to replace і(i) by й(j) after vowels
182
184
  --jrandom (-jr)
183
185
  --jalways (-ja)
package/bin/index.js CHANGED
@@ -40,6 +40,12 @@ const optionDict = [
40
40
  stgs.abc = 2;
41
41
  },
42
42
  ],
43
+ [
44
+ ['--greek', '-gr'],
45
+ () => {
46
+ stgs.abc = 3;
47
+ },
48
+ ],
43
49
  [
44
50
  ['--jrandom', '-jr'],
45
51
  () => {
package/dist/index.cjs CHANGED
@@ -28,7 +28,270 @@ __export(src_exports, {
28
28
  });
29
29
  module.exports = __toCommonJS(src_exports);
30
30
 
31
- // src/dict.ts
31
+ // src/dict/latin.ts
32
+ var latinLetters = [
33
+ ["je", /(?<=[аеёіоуыэюяьʼ| ]\(?)е/],
34
+ ["jo", /(?<=[аеёіоуыэюяьʼ| ]\(?)ё/],
35
+ ["ju", /(?<=[аеёіоуыэюяьʼ| ]\(?)ю/],
36
+ ["ja", /(?<=[аеёіоуыэюяьʼ| ]\(?)я/],
37
+ ["", /ʼ/],
38
+ ["ć", /ць/],
39
+ ["ź", /зь/],
40
+ ["ś", /сь/],
41
+ ["ń", /нь/],
42
+ ["l", /ль/],
43
+ ["a", /а/],
44
+ ["b", /б/],
45
+ ["v", /в/],
46
+ ["h", /г/],
47
+ ["g", /ґ/],
48
+ ["d", /д/],
49
+ ["ie", /е/],
50
+ ["io", /ё/],
51
+ ["ž", /ж/],
52
+ ["z", /з/],
53
+ ["i", /і/],
54
+ ["j", /й/],
55
+ ["k", /к/],
56
+ ["ł", /л/],
57
+ ["m", /м/],
58
+ ["n", /н/],
59
+ ["o", /о/],
60
+ ["p", /п/],
61
+ ["r", /р/],
62
+ ["s", /с/],
63
+ ["t", /т/],
64
+ ["u", /у/],
65
+ ["ŭ", /ў/],
66
+ ["f", /ф/],
67
+ ["ch", /х/],
68
+ ["c", /ц/],
69
+ ["č", /ч/],
70
+ ["š", /ш/],
71
+ ["y", /ы/],
72
+ ["e", /э/],
73
+ ["iu", /ю/],
74
+ ["ia", /я/],
75
+ ["l$1", /[łl]i([eoua])/],
76
+ ["li", /łi/]
77
+ ];
78
+ var latinLettersUpperCase = [
79
+ [" Je", / Е(?= *\p{Ll})/u],
80
+ [" Jo", / Ё(?= *\p{Ll})/u],
81
+ [" Ju", / Ю(?= *\p{Ll})/u],
82
+ [" Ja", / Я(?= *\p{Ll})/u],
83
+ ["JE", /(?<=[АЕЁІОУЫЭЮЯЬʼ| ]\(?)Е/],
84
+ ["JO", /(?<=[АЕЁІОУЫЭЮЯЬʼ| ]\(?)Ё/],
85
+ ["JU", /(?<=[АЕЁІОУЫЭЮЯЬʼ| ]\(?)Ю/],
86
+ ["JA", /(?<=[АЕЁІОУЫЭЮЯЬʼ| ]\(?)Я/],
87
+ ["IE", /Е/],
88
+ ["IO", /Ё/],
89
+ ["IU", /Ю/],
90
+ ["IA", /Я/],
91
+ ["Ć", /Ц[Ьь]/],
92
+ ["Ź", /З[Ьь]/],
93
+ ["Ś", /С[Ьь]/],
94
+ ["Ń", /Н[Ьь]/],
95
+ ["L", /Л[Ьь]/],
96
+ ["A", /А/],
97
+ ["B", /Б/],
98
+ ["V", /В/],
99
+ ["H", /Г/],
100
+ ["G", /Ґ/],
101
+ ["D", /Д/],
102
+ ["Ž", /Ж/],
103
+ ["Z", /З/],
104
+ ["I", /І/],
105
+ ["J", /Й/],
106
+ ["K", /К/],
107
+ ["Ł", /Л/],
108
+ ["M", /М/],
109
+ ["N", /Н/],
110
+ ["O", /О/],
111
+ ["P", /П/],
112
+ ["R", /Р/],
113
+ ["S", /С/],
114
+ ["T", /Т/],
115
+ ["U", /У/],
116
+ ["Ŭ", /Ў/],
117
+ ["F", /Ф/],
118
+ [" Ch", / Х(?=[\p{Ll} ])/u],
119
+ ["CH", /Х/],
120
+ ["C", /Ц/],
121
+ ["Č", /Ч/],
122
+ ["Š", /Ш/],
123
+ ["Y", /Ы/],
124
+ ["E", /Э/],
125
+ ["L$1", /[ŁL][Ii]([AEOUaeou])/],
126
+ ["Li", /Łi/],
127
+ ["LI", /ŁI/]
128
+ ];
129
+
130
+ // src/dict/greek.ts
131
+ var greekLetters = [
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
+ var greekLettersUpperCase = [
169
+ [" Μπ", / Б(?= *\p{Ll})/u],
170
+ [" Γκ", / Ґ(?= *\p{Ll})/u],
171
+ [" Υο", / Ё(?= *\p{Ll})/u],
172
+ [" Υϋ", / Ю(?= *\p{Ll})/u],
173
+ [" Υα", / Я(?= *\p{Ll})/u],
174
+ [" Τσ̌", / Ч(?= *\p{Ll})/u],
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
+ var thWords = [
212
+ ["θει", /тэі(?=зм|ст)/],
213
+ [" αναθεμ", / анатэм/],
214
+ [" αρθα", / арта(?=графі|д[ао]кс|эпі)/],
215
+ [" αρίθμετ", / арытмэт/],
216
+ [" αθεν", / атэн/],
217
+ [" καλιθε", / калітэ/],
218
+ [" καθεδ", / катэд(?=\(?а?р)/],
219
+ [" μαθεματί", / матэматы/],
220
+ [" μιθ", / міт(?=[ауы]|оляг| )/],
221
+ [" μεθ", / мэт(?=[ао]д)/],
222
+ [" πιθαγορ", / пітагор/],
223
+ [" ρίθμ", / ры[тф]м/],
224
+ [" θεαδοσ", / тэадос/],
225
+ [" θεαρεμ", / тэарэм/],
226
+ [" θεατ", / тэат(?=ар |р)/],
227
+ [" θεμ", / тэм(?=[аеуы])/],
228
+ [" Θε", / тэ(?=[ао]р|салёнік|сал)/],
229
+ ["θεσ", /тэс(?=\S*алёнік)/],
230
+ ["Θερμα", /тэрма/],
231
+ [" εΘερ", / этэр/]
232
+ ];
233
+
234
+ // src/dict/arabic.ts
235
+ var soft = "ْ(?=[еёіюяь])";
236
+ var presoft = "([تزكثࢮбвгджзйклмнпрстфхцчшў])ْ?(ّ?)";
237
+ var rawArabLetters = [
238
+ [" لا", / л[ая]/],
239
+ ["ـلا", /л[ая]/],
240
+ ["$1ّ", /([бвгджзйклмнпрстфхцчшў]|д[зж])\1/],
241
+ // падваеньне зычнага, шадда
242
+ ["$1ْ", /([бвгджзйклмнпрстфхцчшў])/],
243
+ // няма галоснага, сукун
244
+ ["اа", /а/],
245
+ // а, аліф
246
+ [" ا", / (?=[еэыуо])/],
247
+ // першая галосная, аліф
248
+ ["ࢮ", "дْз" + soft],
249
+ ["ز", "з" + soft],
250
+ ["ك", "к" + soft],
251
+ ["ث", "с" + soft],
252
+ ["ت", "т" + soft],
253
+ ["ы", /([تزكث])і/],
254
+ // $2 - шадда
255
+ ["$1$2َ", presoft + "[аяэе]"],
256
+ ["$1$2ِ", presoft + "[іы]"],
257
+ [" اِ ", / і /],
258
+ ["$1$2ُ", presoft + "[оёую]"],
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
+ // src/dict/index.ts
32
295
  var els1 = [];
33
296
  els1[0] = "сканд|ванад|рубід|род|ірыд|рэзэрфорд|";
34
297
  els1[1] = "стронц|бар|цэр|лютэц|самар| тор|амэрыц|кальц|кюр|дармштат|лівэрмор|натр";
@@ -799,7 +1062,7 @@ var rawWordlist = [
799
1062
  ["псых", /псіх(?=[аіо])/],
800
1063
  ["пілёт", /пілот/],
801
1064
  ["пілята", /пілата(?=[вж])/],
802
- ["пітаґор", /піфагор/],
1065
+ ["пітагор", /піфагор/],
803
1066
  /* Р */
804
1067
  ["райх", /рэйх/],
805
1068
  ["ра(сі|се)", /расі(?=[ійюя] |йс)/],
@@ -818,7 +1081,6 @@ var rawWordlist = [
818
1081
  ["рэклям", /рэклам/],
819
1082
  ["рэмэйк", /рэмейк/],
820
1083
  /* С */
821
- [" тэсалёнік", / (?:фе)?сал[ао]нік/],
822
1084
  ["сакрысты", /сакрысці/],
823
1085
  ["салён", /салон/],
824
1086
  [" самэр", / самер/],
@@ -1314,9 +1576,14 @@ var rawWordlist = [
1314
1576
  ["сьц(ей|яў) ", /сцей /],
1315
1577
  [" $1асьцей ", / (г|(?:най)?ч)асьц\(ей\)\(яў\) /],
1316
1578
  /* а > у */
1317
- ["$<au>у ", /(?<au>абед| дон|енск|[іы]зм|завод|інстытут| канал|крым|(?:кле|пола|слу)цк|лёндан|мадрыд| рым)а /],
1318
- ["$<au>(а|у) ", /(?<au>бэрлін|нясвіж|парыж)а /],
1579
+ ["$1у ", /(абед| дон|енск|[іы]зм|завод|інстытут| канал|крым|(?:кле|пола|слу)цк|лёндан|мадрыд| рым)а /],
1580
+ ["$1(а|у) ", /(бэрлін|нясвіж|парыж)а /],
1319
1581
  ["дунаю ", /дуная /],
1582
+ /* Грэцкія назовы */
1583
+ [" (тэс|с)алёнік", / фесалёнік/],
1584
+ [" (с|тэс)алёнік", / салёнік/],
1585
+ [" тэ", / фе(?=адос|сал)/],
1586
+ [" тэ", / фэ(?=рмапілы)/],
1320
1587
  /* Дэлетувізацыя */
1321
1588
  ["($&|аўкштота)", /аўкштай(?:ці|ты)я/],
1322
1589
  ["($&|аўкштоты|аўкштоце)", /аўкштай(?:ці|ты)і/],
@@ -1791,161 +2058,6 @@ var gwords = [
1791
2058
  // 'шваґер'
1792
2059
  "энэрґ"
1793
2060
  ].reverse();
1794
- var latinLetters = [
1795
- ["je", /(?<=[аеёіоуыэюяьʼ| ]\(?)е/],
1796
- ["jo", /(?<=[аеёіоуыэюяьʼ| ]\(?)ё/],
1797
- ["ju", /(?<=[аеёіоуыэюяьʼ| ]\(?)ю/],
1798
- ["ja", /(?<=[аеёіоуыэюяьʼ| ]\(?)я/],
1799
- ["", /ʼ/],
1800
- ["ć", /ць/],
1801
- ["ź", /зь/],
1802
- ["ś", /сь/],
1803
- ["ń", /нь/],
1804
- ["l", /ль/],
1805
- ["a", /а/],
1806
- ["b", /б/],
1807
- ["v", /в/],
1808
- ["h", /г/],
1809
- ["g", /ґ/],
1810
- ["d", /д/],
1811
- ["ie", /е/],
1812
- ["io", /ё/],
1813
- ["ž", /ж/],
1814
- ["z", /з/],
1815
- ["i", /і/],
1816
- ["j", /й/],
1817
- ["k", /к/],
1818
- ["ł", /л/],
1819
- ["m", /м/],
1820
- ["n", /н/],
1821
- ["o", /о/],
1822
- ["p", /п/],
1823
- ["r", /р/],
1824
- ["s", /с/],
1825
- ["t", /т/],
1826
- ["u", /у/],
1827
- ["ŭ", /ў/],
1828
- ["f", /ф/],
1829
- ["ch", /х/],
1830
- ["c", /ц/],
1831
- ["č", /ч/],
1832
- ["š", /ш/],
1833
- ["y", /ы/],
1834
- ["e", /э/],
1835
- ["iu", /ю/],
1836
- ["ia", /я/],
1837
- ["l$1", /[łl]i([eoua])/],
1838
- ["li", /łi/]
1839
- ];
1840
- var latinLettersUpperCase = [
1841
- [" Je", / Е(?= *\p{Ll})/u],
1842
- [" Jo", / Ё(?= *\p{Ll})/u],
1843
- [" Ju", / Ю(?= *\p{Ll})/u],
1844
- [" Ja", / Я(?= *\p{Ll})/u],
1845
- ["JE", /(?<=[АЕЁІОУЫЭЮЯЬʼ| ]\(?)Е/],
1846
- ["JO", /(?<=[АЕЁІОУЫЭЮЯЬʼ| ]\(?)Ё/],
1847
- ["JU", /(?<=[АЕЁІОУЫЭЮЯЬʼ| ]\(?)Ю/],
1848
- ["JA", /(?<=[АЕЁІОУЫЭЮЯЬʼ| ]\(?)Я/],
1849
- ["IE", /Е/],
1850
- ["IO", /Ё/],
1851
- ["IU", /Ю/],
1852
- ["IA", /Я/],
1853
- ["Ć", /Ц[Ьь]/],
1854
- ["Ź", /З[Ьь]/],
1855
- ["Ś", /С[Ьь]/],
1856
- ["Ń", /Н[Ьь]/],
1857
- ["L", /Л[Ьь]/],
1858
- ["A", /А/],
1859
- ["B", /Б/],
1860
- ["V", /В/],
1861
- ["H", /Г/],
1862
- ["G", /Ґ/],
1863
- ["D", /Д/],
1864
- ["Ž", /Ж/],
1865
- ["Z", /З/],
1866
- ["I", /І/],
1867
- ["J", /Й/],
1868
- ["K", /К/],
1869
- ["Ł", /Л/],
1870
- ["M", /М/],
1871
- ["N", /Н/],
1872
- ["O", /О/],
1873
- ["P", /П/],
1874
- ["R", /Р/],
1875
- ["S", /С/],
1876
- ["T", /Т/],
1877
- ["U", /У/],
1878
- ["Ŭ", /Ў/],
1879
- ["F", /Ф/],
1880
- [" Ch", / Х(?=[\p{Ll} ])/u],
1881
- ["CH", /Х/],
1882
- ["C", /Ц/],
1883
- ["Č", /Ч/],
1884
- ["Š", /Ш/],
1885
- ["Y", /Ы/],
1886
- ["E", /Э/],
1887
- ["L$1", /[ŁL][Ii]([AEOUaeou])/],
1888
- ["Li", /Łi/],
1889
- ["LI", /ŁI/]
1890
- ];
1891
- var soft = "ْ(?=[еёіюяь])";
1892
- var presoft = "([تزكثࢮбвгджзйклмнпрстфхцчшў])ْ?(ّ?)";
1893
- var rawArabLetters = [
1894
- [" لا", / л[ая]/],
1895
- ["ـلا", /л[ая]/],
1896
- ["$1ّ", /([бвгджзйклмнпрстфхцчшў]|д[зж])\1/],
1897
- // падваеньне зычнага, шадда
1898
- ["$1ْ", /([бвгджзйклмнпрстфхцчшў])/],
1899
- // няма галоснага, сукун
1900
- ["اа", /а/],
1901
- // а, аліф
1902
- [" ا", / (?=[еэыуо])/],
1903
- // першая галосная, аліф
1904
- ["ࢮ", "дْз" + soft],
1905
- ["ز", "з" + soft],
1906
- ["ك", "к" + soft],
1907
- ["ث", "с" + soft],
1908
- ["ت", "т" + soft],
1909
- ["ы", /([تزكث])і/],
1910
- // $2 - шадда
1911
- ["$1$2َ", presoft + "[аяэе]"],
1912
- ["$1$2ِ", presoft + "[іы]"],
1913
- [" اِ ", / і /],
1914
- ["$1$2ُ", presoft + "[оёую]"],
1915
- ["ع", /ʼ/],
1916
- ["", /ь/],
1917
- // ['', /[ьʼ]/],
1918
- ["يَ", /[яе]/],
1919
- ["يِ", /і/],
1920
- ["يُ", /[ёю]/],
1921
- ["َ", /[аэ]/],
1922
- ["ِ", /[ыі]/],
1923
- ["ُ", /[оу]/],
1924
- ["ب", /б/],
1925
- ["و", /[вў]/],
1926
- ["ه", /г/],
1927
- ["غ", /ґ/],
1928
- ["ج", /дْж/],
1929
- ["د", /д/],
1930
- ["ژ", /ж/],
1931
- ["ض", /з/],
1932
- ["ي", /й/],
1933
- ["ق", /к/],
1934
- ["ل", /л/],
1935
- ["م", /м/],
1936
- ["ن", /н/],
1937
- ["پ", /п/],
1938
- ["ر", /р/],
1939
- ["ص", /с/],
1940
- ["ط", /т/],
1941
- ["ف", /ф/],
1942
- ["ح", /х/],
1943
- ["ࢯ", /ц/],
1944
- ["چ", /ч/],
1945
- ["ش", /ш/],
1946
- ["،", /\,/],
1947
- ["؟", /\?/]
1948
- ];
1949
2061
  var gobj = {
1950
2062
  "г": "ґ",
1951
2063
  "Г": "Ґ",
@@ -1963,10 +2075,10 @@ var arr = [
1963
2075
  for (const [raw, obj] of arr)
1964
2076
  for (const [result, pattern] of raw)
1965
2077
  obj.push([result, RegExp(pattern, "g")]);
1966
- for (const obj of [latinLetters, latinLettersUpperCase])
1967
- for (const key in obj) {
1968
- const [result, pattern] = obj[key];
1969
- obj.push([result, RegExp(pattern, "g" + pattern.flags)]);
2078
+ for (const obj of [latinLetters, latinLettersUpperCase, greekLetters, greekLettersUpperCase, thWords])
2079
+ for (let i = 0; i < obj.length; i++) {
2080
+ const item = obj[i];
2081
+ item[1] = RegExp(item[1], "g" + item[1].flags);
1970
2082
  }
1971
2083
  for (const word of gwords)
1972
2084
  wordlist.push([word, RegExp(word.replace(/ґ/g, "г"), "g")]);
@@ -1977,15 +2089,17 @@ var NOFIX_CHAR = "
1977
2089
  var NOFIX_REGEX = new RegExp(NOFIX_CHAR, "g");
1978
2090
  var OPTIONAL_WORDS_REGEX = /\(.*?\)/g;
1979
2091
  var G_REGEX = /[Ґґ]/g;
1980
- var ALPHABET = { CYRILLIC: 0, LATIN: 1, ARABIC: 2 };
2092
+ var ALPHABET = { CYRILLIC: 0, LATIN: 1, ARABIC: 2, GREEK: 3 };
1981
2093
  var J = { NEVER: 0, RANDOM: 1, ALWAYS: 2 };
1982
2094
  var VARIATION = { NO: 0, FIRST: 1, ALL: 2 };
1983
2095
  var letters = {
1984
2096
  [ALPHABET.LATIN]: latinLetters,
1985
- [ALPHABET.ARABIC]: arabLetters
2097
+ [ALPHABET.ARABIC]: arabLetters,
2098
+ [ALPHABET.GREEK]: greekLetters
1986
2099
  };
1987
2100
  var lettersUpperCase = {
1988
- [ALPHABET.LATIN]: latinLettersUpperCase
2101
+ [ALPHABET.LATIN]: latinLettersUpperCase,
2102
+ [ALPHABET.GREEK]: greekLettersUpperCase
1989
2103
  };
1990
2104
  var additionalReplacements = {
1991
2105
  [ALPHABET.CYRILLIC]: [
@@ -1996,7 +2110,8 @@ var additionalReplacements = {
1996
2110
  ["$1U", /([AEIOUY])<tarF>Ŭ<\/tarF>/g],
1997
2111
  [" U", / <tarF>Ŭ<\/tarF>(?=\p{Lu})/gu]
1998
2112
  ],
1999
- [ALPHABET.ARABIC]: []
2113
+ [ALPHABET.ARABIC]: [],
2114
+ [ALPHABET.GREEK]: []
2000
2115
  };
2001
2116
  var tagApplications = {
2002
2117
  html: {
@@ -2031,6 +2146,8 @@ var taraskSync = (text, options) => {
2031
2146
  text = toTarask(text.toLowerCase());
2032
2147
  if (j)
2033
2148
  text = replaceIbyJ(text, j === J.ALWAYS);
2149
+ if (abc === ALPHABET.GREEK)
2150
+ text = replaceWithDict(text, thWords);
2034
2151
  text = replaceWithDict(text, letters[abc]);
2035
2152
  splitted = text.split(" ");
2036
2153
  if (abc !== ALPHABET.ARABIC)
package/dist/index.d.ts CHANGED
@@ -2,7 +2,7 @@ type Promisify<T> = T extends (...args: infer TArgs) => infer TReturn ? (...args
2
2
  type DeepPartial<T> = T extends object ? {
3
3
  [P in keyof T]?: DeepPartial<T[P]>;
4
4
  } : T;
5
- type Alphabet = 0 | 1 | 2;
5
+ type Alphabet = 0 | 1 | 2 | 3;
6
6
  type J$1 = 0 | 1 | 2;
7
7
  type Variation = 0 | 1 | 2;
8
8
  type NonHtmlOptions = {
@@ -35,6 +35,7 @@ declare const ALPHABET: {
35
35
  CYRILLIC: number;
36
36
  LATIN: number;
37
37
  ARABIC: number;
38
+ GREEK: number;
38
39
  };
39
40
  declare const J: {
40
41
  NEVER: number;
package/dist/index.js CHANGED
@@ -1,4 +1,267 @@
1
- // src/dict.ts
1
+ // src/dict/latin.ts
2
+ var latinLetters = [
3
+ ["je", /(?<=[аеёіоуыэюяьʼ| ]\(?)е/],
4
+ ["jo", /(?<=[аеёіоуыэюяьʼ| ]\(?)ё/],
5
+ ["ju", /(?<=[аеёіоуыэюяьʼ| ]\(?)ю/],
6
+ ["ja", /(?<=[аеёіоуыэюяьʼ| ]\(?)я/],
7
+ ["", /ʼ/],
8
+ ["ć", /ць/],
9
+ ["ź", /зь/],
10
+ ["ś", /сь/],
11
+ ["ń", /нь/],
12
+ ["l", /ль/],
13
+ ["a", /а/],
14
+ ["b", /б/],
15
+ ["v", /в/],
16
+ ["h", /г/],
17
+ ["g", /ґ/],
18
+ ["d", /д/],
19
+ ["ie", /е/],
20
+ ["io", /ё/],
21
+ ["ž", /ж/],
22
+ ["z", /з/],
23
+ ["i", /і/],
24
+ ["j", /й/],
25
+ ["k", /к/],
26
+ ["ł", /л/],
27
+ ["m", /м/],
28
+ ["n", /н/],
29
+ ["o", /о/],
30
+ ["p", /п/],
31
+ ["r", /р/],
32
+ ["s", /с/],
33
+ ["t", /т/],
34
+ ["u", /у/],
35
+ ["ŭ", /ў/],
36
+ ["f", /ф/],
37
+ ["ch", /х/],
38
+ ["c", /ц/],
39
+ ["č", /ч/],
40
+ ["š", /ш/],
41
+ ["y", /ы/],
42
+ ["e", /э/],
43
+ ["iu", /ю/],
44
+ ["ia", /я/],
45
+ ["l$1", /[łl]i([eoua])/],
46
+ ["li", /łi/]
47
+ ];
48
+ var latinLettersUpperCase = [
49
+ [" Je", / Е(?= *\p{Ll})/u],
50
+ [" Jo", / Ё(?= *\p{Ll})/u],
51
+ [" Ju", / Ю(?= *\p{Ll})/u],
52
+ [" Ja", / Я(?= *\p{Ll})/u],
53
+ ["JE", /(?<=[АЕЁІОУЫЭЮЯЬʼ| ]\(?)Е/],
54
+ ["JO", /(?<=[АЕЁІОУЫЭЮЯЬʼ| ]\(?)Ё/],
55
+ ["JU", /(?<=[АЕЁІОУЫЭЮЯЬʼ| ]\(?)Ю/],
56
+ ["JA", /(?<=[АЕЁІОУЫЭЮЯЬʼ| ]\(?)Я/],
57
+ ["IE", /Е/],
58
+ ["IO", /Ё/],
59
+ ["IU", /Ю/],
60
+ ["IA", /Я/],
61
+ ["Ć", /Ц[Ьь]/],
62
+ ["Ź", /З[Ьь]/],
63
+ ["Ś", /С[Ьь]/],
64
+ ["Ń", /Н[Ьь]/],
65
+ ["L", /Л[Ьь]/],
66
+ ["A", /А/],
67
+ ["B", /Б/],
68
+ ["V", /В/],
69
+ ["H", /Г/],
70
+ ["G", /Ґ/],
71
+ ["D", /Д/],
72
+ ["Ž", /Ж/],
73
+ ["Z", /З/],
74
+ ["I", /І/],
75
+ ["J", /Й/],
76
+ ["K", /К/],
77
+ ["Ł", /Л/],
78
+ ["M", /М/],
79
+ ["N", /Н/],
80
+ ["O", /О/],
81
+ ["P", /П/],
82
+ ["R", /Р/],
83
+ ["S", /С/],
84
+ ["T", /Т/],
85
+ ["U", /У/],
86
+ ["Ŭ", /Ў/],
87
+ ["F", /Ф/],
88
+ [" Ch", / Х(?=[\p{Ll} ])/u],
89
+ ["CH", /Х/],
90
+ ["C", /Ц/],
91
+ ["Č", /Ч/],
92
+ ["Š", /Ш/],
93
+ ["Y", /Ы/],
94
+ ["E", /Э/],
95
+ ["L$1", /[ŁL][Ii]([AEOUaeou])/],
96
+ ["Li", /Łi/],
97
+ ["LI", /ŁI/]
98
+ ];
99
+
100
+ // src/dict/greek.ts
101
+ var greekLetters = [
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
+ var greekLettersUpperCase = [
139
+ [" Μπ", / Б(?= *\p{Ll})/u],
140
+ [" Γκ", / Ґ(?= *\p{Ll})/u],
141
+ [" Υο", / Ё(?= *\p{Ll})/u],
142
+ [" Υϋ", / Ю(?= *\p{Ll})/u],
143
+ [" Υα", / Я(?= *\p{Ll})/u],
144
+ [" Τσ̌", / Ч(?= *\p{Ll})/u],
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
+ var thWords = [
182
+ ["θει", /тэі(?=зм|ст)/],
183
+ [" αναθεμ", / анатэм/],
184
+ [" αρθα", / арта(?=графі|д[ао]кс|эпі)/],
185
+ [" αρίθμετ", / арытмэт/],
186
+ [" αθεν", / атэн/],
187
+ [" καλιθε", / калітэ/],
188
+ [" καθεδ", / катэд(?=\(?а?р)/],
189
+ [" μαθεματί", / матэматы/],
190
+ [" μιθ", / міт(?=[ауы]|оляг| )/],
191
+ [" μεθ", / мэт(?=[ао]д)/],
192
+ [" πιθαγορ", / пітагор/],
193
+ [" ρίθμ", / ры[тф]м/],
194
+ [" θεαδοσ", / тэадос/],
195
+ [" θεαρεμ", / тэарэм/],
196
+ [" θεατ", / тэат(?=ар |р)/],
197
+ [" θεμ", / тэм(?=[аеуы])/],
198
+ [" Θε", / тэ(?=[ао]р|салёнік|сал)/],
199
+ ["θεσ", /тэс(?=\S*алёнік)/],
200
+ ["Θερμα", /тэрма/],
201
+ [" εΘερ", / этэр/]
202
+ ];
203
+
204
+ // src/dict/arabic.ts
205
+ var soft = "ْ(?=[еёіюяь])";
206
+ var presoft = "([تزكثࢮбвгджзйклмнпрстфхцчшў])ْ?(ّ?)";
207
+ var rawArabLetters = [
208
+ [" لا", / л[ая]/],
209
+ ["ـلا", /л[ая]/],
210
+ ["$1ّ", /([бвгджзйклмнпрстфхцчшў]|д[зж])\1/],
211
+ // падваеньне зычнага, шадда
212
+ ["$1ْ", /([бвгджзйклмнпрстфхцчшў])/],
213
+ // няма галоснага, сукун
214
+ ["اа", /а/],
215
+ // а, аліф
216
+ [" ا", / (?=[еэыуо])/],
217
+ // першая галосная, аліф
218
+ ["ࢮ", "дْз" + soft],
219
+ ["ز", "з" + soft],
220
+ ["ك", "к" + soft],
221
+ ["ث", "с" + soft],
222
+ ["ت", "т" + soft],
223
+ ["ы", /([تزكث])і/],
224
+ // $2 - шадда
225
+ ["$1$2َ", presoft + "[аяэе]"],
226
+ ["$1$2ِ", presoft + "[іы]"],
227
+ [" اِ ", / і /],
228
+ ["$1$2ُ", presoft + "[оёую]"],
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
+ // src/dict/index.ts
2
265
  var els1 = [];
3
266
  els1[0] = "сканд|ванад|рубід|род|ірыд|рэзэрфорд|";
4
267
  els1[1] = "стронц|бар|цэр|лютэц|самар| тор|амэрыц|кальц|кюр|дармштат|лівэрмор|натр";
@@ -769,7 +1032,7 @@ var rawWordlist = [
769
1032
  ["псых", /псіх(?=[аіо])/],
770
1033
  ["пілёт", /пілот/],
771
1034
  ["пілята", /пілата(?=[вж])/],
772
- ["пітаґор", /піфагор/],
1035
+ ["пітагор", /піфагор/],
773
1036
  /* Р */
774
1037
  ["райх", /рэйх/],
775
1038
  ["ра(сі|се)", /расі(?=[ійюя] |йс)/],
@@ -788,7 +1051,6 @@ var rawWordlist = [
788
1051
  ["рэклям", /рэклам/],
789
1052
  ["рэмэйк", /рэмейк/],
790
1053
  /* С */
791
- [" тэсалёнік", / (?:фе)?сал[ао]нік/],
792
1054
  ["сакрысты", /сакрысці/],
793
1055
  ["салён", /салон/],
794
1056
  [" самэр", / самер/],
@@ -1284,9 +1546,14 @@ var rawWordlist = [
1284
1546
  ["сьц(ей|яў) ", /сцей /],
1285
1547
  [" $1асьцей ", / (г|(?:най)?ч)асьц\(ей\)\(яў\) /],
1286
1548
  /* а > у */
1287
- ["$<au>у ", /(?<au>абед| дон|енск|[іы]зм|завод|інстытут| канал|крым|(?:кле|пола|слу)цк|лёндан|мадрыд| рым)а /],
1288
- ["$<au>(а|у) ", /(?<au>бэрлін|нясвіж|парыж)а /],
1549
+ ["$1у ", /(абед| дон|енск|[іы]зм|завод|інстытут| канал|крым|(?:кле|пола|слу)цк|лёндан|мадрыд| рым)а /],
1550
+ ["$1(а|у) ", /(бэрлін|нясвіж|парыж)а /],
1289
1551
  ["дунаю ", /дуная /],
1552
+ /* Грэцкія назовы */
1553
+ [" (тэс|с)алёнік", / фесалёнік/],
1554
+ [" (с|тэс)алёнік", / салёнік/],
1555
+ [" тэ", / фе(?=адос|сал)/],
1556
+ [" тэ", / фэ(?=рмапілы)/],
1290
1557
  /* Дэлетувізацыя */
1291
1558
  ["($&|аўкштота)", /аўкштай(?:ці|ты)я/],
1292
1559
  ["($&|аўкштоты|аўкштоце)", /аўкштай(?:ці|ты)і/],
@@ -1761,161 +2028,6 @@ var gwords = [
1761
2028
  // 'шваґер'
1762
2029
  "энэрґ"
1763
2030
  ].reverse();
1764
- var latinLetters = [
1765
- ["je", /(?<=[аеёіоуыэюяьʼ| ]\(?)е/],
1766
- ["jo", /(?<=[аеёіоуыэюяьʼ| ]\(?)ё/],
1767
- ["ju", /(?<=[аеёіоуыэюяьʼ| ]\(?)ю/],
1768
- ["ja", /(?<=[аеёіоуыэюяьʼ| ]\(?)я/],
1769
- ["", /ʼ/],
1770
- ["ć", /ць/],
1771
- ["ź", /зь/],
1772
- ["ś", /сь/],
1773
- ["ń", /нь/],
1774
- ["l", /ль/],
1775
- ["a", /а/],
1776
- ["b", /б/],
1777
- ["v", /в/],
1778
- ["h", /г/],
1779
- ["g", /ґ/],
1780
- ["d", /д/],
1781
- ["ie", /е/],
1782
- ["io", /ё/],
1783
- ["ž", /ж/],
1784
- ["z", /з/],
1785
- ["i", /і/],
1786
- ["j", /й/],
1787
- ["k", /к/],
1788
- ["ł", /л/],
1789
- ["m", /м/],
1790
- ["n", /н/],
1791
- ["o", /о/],
1792
- ["p", /п/],
1793
- ["r", /р/],
1794
- ["s", /с/],
1795
- ["t", /т/],
1796
- ["u", /у/],
1797
- ["ŭ", /ў/],
1798
- ["f", /ф/],
1799
- ["ch", /х/],
1800
- ["c", /ц/],
1801
- ["č", /ч/],
1802
- ["š", /ш/],
1803
- ["y", /ы/],
1804
- ["e", /э/],
1805
- ["iu", /ю/],
1806
- ["ia", /я/],
1807
- ["l$1", /[łl]i([eoua])/],
1808
- ["li", /łi/]
1809
- ];
1810
- var latinLettersUpperCase = [
1811
- [" Je", / Е(?= *\p{Ll})/u],
1812
- [" Jo", / Ё(?= *\p{Ll})/u],
1813
- [" Ju", / Ю(?= *\p{Ll})/u],
1814
- [" Ja", / Я(?= *\p{Ll})/u],
1815
- ["JE", /(?<=[АЕЁІОУЫЭЮЯЬʼ| ]\(?)Е/],
1816
- ["JO", /(?<=[АЕЁІОУЫЭЮЯЬʼ| ]\(?)Ё/],
1817
- ["JU", /(?<=[АЕЁІОУЫЭЮЯЬʼ| ]\(?)Ю/],
1818
- ["JA", /(?<=[АЕЁІОУЫЭЮЯЬʼ| ]\(?)Я/],
1819
- ["IE", /Е/],
1820
- ["IO", /Ё/],
1821
- ["IU", /Ю/],
1822
- ["IA", /Я/],
1823
- ["Ć", /Ц[Ьь]/],
1824
- ["Ź", /З[Ьь]/],
1825
- ["Ś", /С[Ьь]/],
1826
- ["Ń", /Н[Ьь]/],
1827
- ["L", /Л[Ьь]/],
1828
- ["A", /А/],
1829
- ["B", /Б/],
1830
- ["V", /В/],
1831
- ["H", /Г/],
1832
- ["G", /Ґ/],
1833
- ["D", /Д/],
1834
- ["Ž", /Ж/],
1835
- ["Z", /З/],
1836
- ["I", /І/],
1837
- ["J", /Й/],
1838
- ["K", /К/],
1839
- ["Ł", /Л/],
1840
- ["M", /М/],
1841
- ["N", /Н/],
1842
- ["O", /О/],
1843
- ["P", /П/],
1844
- ["R", /Р/],
1845
- ["S", /С/],
1846
- ["T", /Т/],
1847
- ["U", /У/],
1848
- ["Ŭ", /Ў/],
1849
- ["F", /Ф/],
1850
- [" Ch", / Х(?=[\p{Ll} ])/u],
1851
- ["CH", /Х/],
1852
- ["C", /Ц/],
1853
- ["Č", /Ч/],
1854
- ["Š", /Ш/],
1855
- ["Y", /Ы/],
1856
- ["E", /Э/],
1857
- ["L$1", /[ŁL][Ii]([AEOUaeou])/],
1858
- ["Li", /Łi/],
1859
- ["LI", /ŁI/]
1860
- ];
1861
- var soft = "ْ(?=[еёіюяь])";
1862
- var presoft = "([تزكثࢮбвгджзйклмнпрстфхцчшў])ْ?(ّ?)";
1863
- var rawArabLetters = [
1864
- [" لا", / л[ая]/],
1865
- ["ـلا", /л[ая]/],
1866
- ["$1ّ", /([бвгджзйклмнпрстфхцчшў]|д[зж])\1/],
1867
- // падваеньне зычнага, шадда
1868
- ["$1ْ", /([бвгджзйклмнпрстфхцчшў])/],
1869
- // няма галоснага, сукун
1870
- ["اа", /а/],
1871
- // а, аліф
1872
- [" ا", / (?=[еэыуо])/],
1873
- // першая галосная, аліф
1874
- ["ࢮ", "дْз" + soft],
1875
- ["ز", "з" + soft],
1876
- ["ك", "к" + soft],
1877
- ["ث", "с" + soft],
1878
- ["ت", "т" + soft],
1879
- ["ы", /([تزكث])і/],
1880
- // $2 - шадда
1881
- ["$1$2َ", presoft + "[аяэе]"],
1882
- ["$1$2ِ", presoft + "[іы]"],
1883
- [" اِ ", / і /],
1884
- ["$1$2ُ", presoft + "[оёую]"],
1885
- ["ع", /ʼ/],
1886
- ["", /ь/],
1887
- // ['', /[ьʼ]/],
1888
- ["يَ", /[яе]/],
1889
- ["يِ", /і/],
1890
- ["يُ", /[ёю]/],
1891
- ["َ", /[аэ]/],
1892
- ["ِ", /[ыі]/],
1893
- ["ُ", /[оу]/],
1894
- ["ب", /б/],
1895
- ["و", /[вў]/],
1896
- ["ه", /г/],
1897
- ["غ", /ґ/],
1898
- ["ج", /дْж/],
1899
- ["د", /д/],
1900
- ["ژ", /ж/],
1901
- ["ض", /з/],
1902
- ["ي", /й/],
1903
- ["ق", /к/],
1904
- ["ل", /л/],
1905
- ["م", /м/],
1906
- ["ن", /н/],
1907
- ["پ", /п/],
1908
- ["ر", /р/],
1909
- ["ص", /с/],
1910
- ["ط", /т/],
1911
- ["ف", /ф/],
1912
- ["ح", /х/],
1913
- ["ࢯ", /ц/],
1914
- ["چ", /ч/],
1915
- ["ش", /ш/],
1916
- ["،", /\,/],
1917
- ["؟", /\?/]
1918
- ];
1919
2031
  var gobj = {
1920
2032
  "г": "ґ",
1921
2033
  "Г": "Ґ",
@@ -1933,10 +2045,10 @@ var arr = [
1933
2045
  for (const [raw, obj] of arr)
1934
2046
  for (const [result, pattern] of raw)
1935
2047
  obj.push([result, RegExp(pattern, "g")]);
1936
- for (const obj of [latinLetters, latinLettersUpperCase])
1937
- for (const key in obj) {
1938
- const [result, pattern] = obj[key];
1939
- obj.push([result, RegExp(pattern, "g" + pattern.flags)]);
2048
+ for (const obj of [latinLetters, latinLettersUpperCase, greekLetters, greekLettersUpperCase, thWords])
2049
+ for (let i = 0; i < obj.length; i++) {
2050
+ const item = obj[i];
2051
+ item[1] = RegExp(item[1], "g" + item[1].flags);
1940
2052
  }
1941
2053
  for (const word of gwords)
1942
2054
  wordlist.push([word, RegExp(word.replace(/ґ/g, "г"), "g")]);
@@ -1947,15 +2059,17 @@ var NOFIX_CHAR = "
1947
2059
  var NOFIX_REGEX = new RegExp(NOFIX_CHAR, "g");
1948
2060
  var OPTIONAL_WORDS_REGEX = /\(.*?\)/g;
1949
2061
  var G_REGEX = /[Ґґ]/g;
1950
- var ALPHABET = { CYRILLIC: 0, LATIN: 1, ARABIC: 2 };
2062
+ var ALPHABET = { CYRILLIC: 0, LATIN: 1, ARABIC: 2, GREEK: 3 };
1951
2063
  var J = { NEVER: 0, RANDOM: 1, ALWAYS: 2 };
1952
2064
  var VARIATION = { NO: 0, FIRST: 1, ALL: 2 };
1953
2065
  var letters = {
1954
2066
  [ALPHABET.LATIN]: latinLetters,
1955
- [ALPHABET.ARABIC]: arabLetters
2067
+ [ALPHABET.ARABIC]: arabLetters,
2068
+ [ALPHABET.GREEK]: greekLetters
1956
2069
  };
1957
2070
  var lettersUpperCase = {
1958
- [ALPHABET.LATIN]: latinLettersUpperCase
2071
+ [ALPHABET.LATIN]: latinLettersUpperCase,
2072
+ [ALPHABET.GREEK]: greekLettersUpperCase
1959
2073
  };
1960
2074
  var additionalReplacements = {
1961
2075
  [ALPHABET.CYRILLIC]: [
@@ -1966,7 +2080,8 @@ var additionalReplacements = {
1966
2080
  ["$1U", /([AEIOUY])<tarF>Ŭ<\/tarF>/g],
1967
2081
  [" U", / <tarF>Ŭ<\/tarF>(?=\p{Lu})/gu]
1968
2082
  ],
1969
- [ALPHABET.ARABIC]: []
2083
+ [ALPHABET.ARABIC]: [],
2084
+ [ALPHABET.GREEK]: []
1970
2085
  };
1971
2086
  var tagApplications = {
1972
2087
  html: {
@@ -2001,6 +2116,8 @@ var taraskSync = (text, options) => {
2001
2116
  text = toTarask(text.toLowerCase());
2002
2117
  if (j)
2003
2118
  text = replaceIbyJ(text, j === J.ALWAYS);
2119
+ if (abc === ALPHABET.GREEK)
2120
+ text = replaceWithDict(text, thWords);
2004
2121
  text = replaceWithDict(text, letters[abc]);
2005
2122
  splitted = text.split(" ");
2006
2123
  if (abc !== ALPHABET.ARABIC)
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "taraskevizer",
3
3
  "author": "GooseOb",
4
4
  "license": "MIT",
5
- "version": "1.3.4",
5
+ "version": "1.4.0",
6
6
  "private": false,
7
7
  "homepage": "https://gooseob.github.io/taraskevizatar/",
8
8
  "main": "dist/index.js",