taraskevizer 6.0.6 → 6.0.8
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/dist/index.cjs +147 -139
- package/dist/index.d.ts +7 -2
- package/dist/index.js +147 -139
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -29,8 +29,25 @@ __export(src_exports, {
|
|
|
29
29
|
});
|
|
30
30
|
module.exports = __toCommonJS(src_exports);
|
|
31
31
|
|
|
32
|
-
// src/dict/
|
|
32
|
+
// src/dict/lib.ts
|
|
33
|
+
var dictFrom = {
|
|
34
|
+
raw: (dict) => {
|
|
35
|
+
for (const item of dict)
|
|
36
|
+
item[0] = RegExp(
|
|
37
|
+
item[0],
|
|
38
|
+
item[0] instanceof RegExp ? item[0].flags + "g" : "g"
|
|
39
|
+
);
|
|
40
|
+
return dict;
|
|
41
|
+
},
|
|
42
|
+
nonGlobal: (dict) => {
|
|
43
|
+
for (const item of dict)
|
|
44
|
+
item[0] = RegExp(item[0], "g" + item[0].flags);
|
|
45
|
+
return dict;
|
|
46
|
+
}
|
|
47
|
+
};
|
|
33
48
|
var toOneLine = (str) => str.replace(/\n/g, "|");
|
|
49
|
+
|
|
50
|
+
// src/dict/iwords.ts
|
|
34
51
|
var iwords = toOneLine(`біс
|
|
35
52
|
бсэн
|
|
36
53
|
в[аеоы]
|
|
@@ -141,7 +158,7 @@ var common = {
|
|
|
141
158
|
[/[łl]i([eoua])/, "l$1"],
|
|
142
159
|
[/łi/, "li"]
|
|
143
160
|
]
|
|
144
|
-
],
|
|
161
|
+
].map(dictFrom.nonGlobal),
|
|
145
162
|
upper: [
|
|
146
163
|
[
|
|
147
164
|
[new RegExp(" Е(?=[ \\p{P}\\d]*\\p{Lu}?\\p{Ll})", "u"), " Je"],
|
|
@@ -198,15 +215,15 @@ var common = {
|
|
|
198
215
|
[/Łi/, "Li"],
|
|
199
216
|
[/ŁI/, "LI"]
|
|
200
217
|
]
|
|
201
|
-
]
|
|
218
|
+
].map(dictFrom.nonGlobal)
|
|
202
219
|
};
|
|
203
|
-
var
|
|
220
|
+
var latinLettersLowerCase = [
|
|
204
221
|
...common.lower[0],
|
|
205
|
-
[
|
|
222
|
+
[/ʼі/g, "ji"],
|
|
206
223
|
...common.lower[1]
|
|
207
224
|
];
|
|
208
225
|
var latinLettersUpperCase = common.upper.flat();
|
|
209
|
-
var
|
|
226
|
+
var latinLettersLowerCaseJi = dictFrom.raw([
|
|
210
227
|
[/(?<=[аеёіоуыэюяАЕЁІОУЫЭЮЯ] )і Ў/, "j U"],
|
|
211
228
|
[/(?<=[аеёіоуыэюяАЕЁІОУЫЭЮЯ] )і ў/, "j u"],
|
|
212
229
|
[/(?<=[аеёіоуыэюяАЕЁІОУЫЭЮЯ] )і /, "j "],
|
|
@@ -215,24 +232,25 @@ var rawLatinLettersJi = [
|
|
|
215
232
|
[/(?<=[аеёіоуыэюяАЕЁІОУЫЭЮЯ] )І /, "J "],
|
|
216
233
|
[` і(?=${iwords})`, " ji"],
|
|
217
234
|
[` І(?=${iwords})`, " Ji"],
|
|
218
|
-
[` І(?=${iwords.toUpperCase()})`, " JI"]
|
|
235
|
+
[` І(?=${iwords.toUpperCase()})`, " JI"]
|
|
236
|
+
]).concat([
|
|
219
237
|
...common.lower[0],
|
|
220
|
-
[/(?<=[eouaаеёіоуыэюяʼАЕЁІОУЫЭЮЯЬ] *)
|
|
238
|
+
[/(?<=[eouaаеёіоуыэюяʼАЕЁІОУЫЭЮЯЬ] *)і/g, "ji"],
|
|
221
239
|
...common.lower[1]
|
|
222
|
-
];
|
|
223
|
-
var
|
|
240
|
+
]);
|
|
241
|
+
var latinLettersUpperCaseJi = [
|
|
224
242
|
...common.upper[0],
|
|
225
|
-
[new RegExp("(?<=[eoua] *)І(?=[ \\p{P}\\d]*\\p{Lu}?\\p{Ll})", "
|
|
243
|
+
[new RegExp("(?<=[eoua] *)І(?=[ \\p{P}\\d]*\\p{Lu}?\\p{Ll})", "gu"), "Ji"],
|
|
226
244
|
...common.upper[1],
|
|
227
|
-
[/(?<=[AOEUАЕЁІОУЎЫЭЮЯ][( ]*)
|
|
245
|
+
[/(?<=[AOEUАЕЁІОУЎЫЭЮЯ][( ]*)І/g, "JI"],
|
|
228
246
|
...common.upper[2],
|
|
229
|
-
[/ JIŁ
|
|
247
|
+
[/ JIŁ -/g, " IŁ -"]
|
|
230
248
|
];
|
|
231
249
|
|
|
232
250
|
// src/dict/arabic.ts
|
|
233
251
|
var soft = "ْ(?=[еёіюяь])";
|
|
234
252
|
var presoft = "([تزكثࢮбвгджзйклмнпрстфхцчшў])ْ?(ّ?)";
|
|
235
|
-
var
|
|
253
|
+
var arabLetters = dictFrom.raw([
|
|
236
254
|
[/ л[ая]/, " لا"],
|
|
237
255
|
[/л[ая]/, "ـلا"],
|
|
238
256
|
// падваеньне зычнага, шадда
|
|
@@ -287,9 +305,17 @@ var rawArabLetters = [
|
|
|
287
305
|
[/ш/, "ش"],
|
|
288
306
|
[/,/, "،"],
|
|
289
307
|
[/\?/, "؟"]
|
|
290
|
-
];
|
|
308
|
+
]);
|
|
291
309
|
|
|
292
|
-
// src/dict/
|
|
310
|
+
// src/dict/gobj.ts
|
|
311
|
+
var gobj = {
|
|
312
|
+
г: "ґ",
|
|
313
|
+
Г: "Ґ",
|
|
314
|
+
ґ: "г",
|
|
315
|
+
Ґ: "Г"
|
|
316
|
+
};
|
|
317
|
+
|
|
318
|
+
// src/dict/wordlist.ts
|
|
293
319
|
var chemicalElements1 = [
|
|
294
320
|
"сканд|ванад|рубід|род|ірыд|рэзэрфорд",
|
|
295
321
|
"стронц|бар|цэр|лютэц|самар| тор|амэрыц|кальц|кюр|дармштат|лівэрмор|натр"
|
|
@@ -302,7 +328,93 @@ var chemicalElements2 = [
|
|
|
302
328
|
chemicalElements2[1] = chemicalElements2[0] + "|айнштайн|мендзялев|сыборг|гас|флеров";
|
|
303
329
|
var chemicalElements3 = " гал|бэрыл|тул|бэркл|набэл";
|
|
304
330
|
var ia = (word, words) => ` ${word} (?=\\(?(?:[бвгджзйклмнпстфцчшў]*[оё]|${words.replace(/\(/g, "(?:")}|i(?:${iwords})))`;
|
|
305
|
-
var
|
|
331
|
+
var gwords = [
|
|
332
|
+
" ґб ",
|
|
333
|
+
"ґг",
|
|
334
|
+
"абрызґл",
|
|
335
|
+
" аґюст",
|
|
336
|
+
"анґол",
|
|
337
|
+
"арґаніз",
|
|
338
|
+
"арлінґтан",
|
|
339
|
+
"арыґінал",
|
|
340
|
+
" аўґс",
|
|
341
|
+
"аўґуст",
|
|
342
|
+
"аґрэст",
|
|
343
|
+
" біґ ",
|
|
344
|
+
" бразґ",
|
|
345
|
+
"буґацці",
|
|
346
|
+
"бурґ",
|
|
347
|
+
"вашынґт",
|
|
348
|
+
"возґр",
|
|
349
|
+
"вэдзґа",
|
|
350
|
+
" гааґ",
|
|
351
|
+
" ґабрыел",
|
|
352
|
+
" ґазэт",
|
|
353
|
+
" ґаксон",
|
|
354
|
+
" ґалац",
|
|
355
|
+
" ґалґоф",
|
|
356
|
+
" ґалер",
|
|
357
|
+
" ґаліле",
|
|
358
|
+
" ґальґот",
|
|
359
|
+
" ґамбі",
|
|
360
|
+
" ґарант",
|
|
361
|
+
" ґарсэт",
|
|
362
|
+
"ґарыбальдзі",
|
|
363
|
+
" ґаўс",
|
|
364
|
+
" ґаян",
|
|
365
|
+
"ґвалт",
|
|
366
|
+
// ' ґелер',
|
|
367
|
+
// ' ґент',
|
|
368
|
+
" ґётэ ",
|
|
369
|
+
" ґзымс",
|
|
370
|
+
" ґіём",
|
|
371
|
+
" ґітлін",
|
|
372
|
+
" ґлазґа ",
|
|
373
|
+
" ґліцэрын",
|
|
374
|
+
" ґлясар",
|
|
375
|
+
" ґонт",
|
|
376
|
+
" ґот",
|
|
377
|
+
" ґоцц",
|
|
378
|
+
" ґрадус",
|
|
379
|
+
"ґранд",
|
|
380
|
+
"ґрунт",
|
|
381
|
+
" ґрэйвэз",
|
|
382
|
+
"ґрэнобл",
|
|
383
|
+
"ґрэнлянд",
|
|
384
|
+
" ґузік",
|
|
385
|
+
" ґуст ",
|
|
386
|
+
" ґэлап",
|
|
387
|
+
" ґэры ",
|
|
388
|
+
" ґяд",
|
|
389
|
+
" ґяндж",
|
|
390
|
+
" джамалунґм",
|
|
391
|
+
" джґа",
|
|
392
|
+
" ірвінґ",
|
|
393
|
+
" іґнар",
|
|
394
|
+
" інтэґр",
|
|
395
|
+
" калеґ",
|
|
396
|
+
" кіплінґ",
|
|
397
|
+
"леґенд",
|
|
398
|
+
" лонґ",
|
|
399
|
+
" лэнґлі ",
|
|
400
|
+
" мазґ",
|
|
401
|
+
" мэґі ",
|
|
402
|
+
" мяґі ",
|
|
403
|
+
// 'нінґен',
|
|
404
|
+
" ніяґар",
|
|
405
|
+
"пінґвін",
|
|
406
|
+
"плявузґ",
|
|
407
|
+
"праґрам",
|
|
408
|
+
" розґ",
|
|
409
|
+
" ролінґ",
|
|
410
|
+
" рэдынґ",
|
|
411
|
+
" сіґітас",
|
|
412
|
+
" сійґ",
|
|
413
|
+
"райхстаґ",
|
|
414
|
+
" уґанд",
|
|
415
|
+
" цуґл"
|
|
416
|
+
].reverse().map((word) => [RegExp(word.replace(/ґ/g, "г"), "g"), word]);
|
|
417
|
+
var wordlist = dictFrom.raw([
|
|
306
418
|
/* А */
|
|
307
419
|
[/аахен/, "аахэн"],
|
|
308
420
|
[/абанен(?=[тц])/, "абанэн"],
|
|
@@ -1878,12 +1990,14 @@ var rawWordlist = [
|
|
|
1878
1990
|
[/ яблынь /, " яблын(ь|яў) "],
|
|
1879
1991
|
[/ расей /, " расе(й|яў) "],
|
|
1880
1992
|
[//, ""]
|
|
1881
|
-
];
|
|
1882
|
-
|
|
1993
|
+
]).concat(gwords);
|
|
1994
|
+
|
|
1995
|
+
// src/dict/softening.ts
|
|
1996
|
+
var noSoften = dictFrom.nonGlobal([
|
|
1883
1997
|
[/масфільм/, "масфільм"],
|
|
1884
1998
|
[/пэндзлік/, "пэндзлік"]
|
|
1885
|
-
];
|
|
1886
|
-
var
|
|
1999
|
+
]);
|
|
2000
|
+
var softeners = dictFrom.raw([
|
|
1887
2001
|
[/([лнц])\1(?=[еёіюяь])/, "$1ь$1"],
|
|
1888
2002
|
[/(\S\S)дз?дз(?=[еёіюяь])/, "$1дзьдз"],
|
|
1889
2003
|
[/адзьдз([ея])л/, "аддз$1л"],
|
|
@@ -1892,121 +2006,12 @@ var rawsofteners = [
|
|
|
1892
2006
|
[/з(?=([бвзлмнц]|дз)[еёіюяь])/, "зь"],
|
|
1893
2007
|
[/с(?=[бвлмнпсфц][еёіюяь])/, "сь"],
|
|
1894
2008
|
[/ц(?=[вм][еёіюяь])/, "ць"],
|
|
1895
|
-
[
|
|
2009
|
+
[
|
|
2010
|
+
`( (?:б[ея]|пра|цера)?з) (?=\\(?)(?=[еёюяь]|([бвзйлмнпстфц]|дз)[еёіюяь]|імі? |іх(?:ні)?|і(?:${iwords}))`,
|
|
2011
|
+
"$1ь "
|
|
2012
|
+
],
|
|
1896
2013
|
[/([сз])ʼ(?=[яюеё])/, "$1ь"]
|
|
1897
|
-
];
|
|
1898
|
-
var gwords = [
|
|
1899
|
-
" ґб ",
|
|
1900
|
-
"ґг",
|
|
1901
|
-
"абрызґл",
|
|
1902
|
-
" аґюст",
|
|
1903
|
-
"анґол",
|
|
1904
|
-
"арґаніз",
|
|
1905
|
-
"арлінґтан",
|
|
1906
|
-
"арыґінал",
|
|
1907
|
-
" аўґс",
|
|
1908
|
-
"аўґуст",
|
|
1909
|
-
"аґрэст",
|
|
1910
|
-
" біґ ",
|
|
1911
|
-
" бразґ",
|
|
1912
|
-
"буґацці",
|
|
1913
|
-
"бурґ",
|
|
1914
|
-
"вашынґт",
|
|
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
|
-
"ґрэнобл",
|
|
1950
|
-
"ґрэнлянд",
|
|
1951
|
-
" ґузік",
|
|
1952
|
-
" ґуст ",
|
|
1953
|
-
" ґэлап",
|
|
1954
|
-
" ґэры ",
|
|
1955
|
-
" ґяд",
|
|
1956
|
-
" ґяндж",
|
|
1957
|
-
" джамалунґм",
|
|
1958
|
-
" джґа",
|
|
1959
|
-
" ірвінґ",
|
|
1960
|
-
" іґнар",
|
|
1961
|
-
" інтэґр",
|
|
1962
|
-
" калеґ",
|
|
1963
|
-
" кіплінґ",
|
|
1964
|
-
"леґенд",
|
|
1965
|
-
" лонґ",
|
|
1966
|
-
" лэнґлі ",
|
|
1967
|
-
" мазґ",
|
|
1968
|
-
" мэґі ",
|
|
1969
|
-
" мяґі ",
|
|
1970
|
-
// 'нінґен',
|
|
1971
|
-
" ніяґар",
|
|
1972
|
-
"пінґвін",
|
|
1973
|
-
"плявузґ",
|
|
1974
|
-
"праґрам",
|
|
1975
|
-
" розґ",
|
|
1976
|
-
" ролінґ",
|
|
1977
|
-
" рэдынґ",
|
|
1978
|
-
" сіґітас",
|
|
1979
|
-
" сійґ",
|
|
1980
|
-
"райхстаґ",
|
|
1981
|
-
" уґанд",
|
|
1982
|
-
" цуґл"
|
|
1983
|
-
].reverse();
|
|
1984
|
-
var gobj = {
|
|
1985
|
-
"г": "ґ",
|
|
1986
|
-
"Г": "Ґ",
|
|
1987
|
-
"ґ": "г",
|
|
1988
|
-
"Ґ": "Г"
|
|
1989
|
-
};
|
|
1990
|
-
var wordlist = [];
|
|
1991
|
-
var softeners = [];
|
|
1992
|
-
var arabLetters = [];
|
|
1993
|
-
var latinLettersJi = [];
|
|
1994
|
-
var latinLettersUpperCaseJi = [];
|
|
1995
|
-
var arr = [
|
|
1996
|
-
[rawWordlist, wordlist],
|
|
1997
|
-
[rawsofteners, softeners],
|
|
1998
|
-
[rawArabLetters, arabLetters],
|
|
1999
|
-
[rawLatinLettersJi, latinLettersJi],
|
|
2000
|
-
[rawLatinLettersUpperCaseJi, latinLettersUpperCaseJi]
|
|
2001
|
-
];
|
|
2002
|
-
for (const [raw, obj] of arr)
|
|
2003
|
-
for (const [pattern, result] of raw)
|
|
2004
|
-
obj.push([RegExp(pattern, pattern instanceof RegExp ? pattern.flags + "g" : "g"), result]);
|
|
2005
|
-
for (const obj of [latinLetters, latinLettersUpperCase, noSoften])
|
|
2006
|
-
for (const item of obj)
|
|
2007
|
-
item[0] = RegExp(item[0], "g" + item[0].flags);
|
|
2008
|
-
for (const word of gwords)
|
|
2009
|
-
wordlist.push([RegExp(word.replace(/ґ/g, "г"), "g"), word]);
|
|
2014
|
+
]);
|
|
2010
2015
|
|
|
2011
2016
|
// src/tarask.ts
|
|
2012
2017
|
var isUpperCase = (str) => str === str.toUpperCase();
|
|
@@ -2037,9 +2042,9 @@ var VARIATION = {
|
|
|
2037
2042
|
ALL: 2
|
|
2038
2043
|
};
|
|
2039
2044
|
var letters = {
|
|
2040
|
-
[ALPHABET.LATIN]:
|
|
2045
|
+
[ALPHABET.LATIN]: latinLettersLowerCase,
|
|
2041
2046
|
[ALPHABET.ARABIC]: arabLetters,
|
|
2042
|
-
[ALPHABET.LATIN_JI]:
|
|
2047
|
+
[ALPHABET.LATIN_JI]: latinLettersLowerCaseJi
|
|
2043
2048
|
};
|
|
2044
2049
|
var lettersUpperCase = {
|
|
2045
2050
|
[ALPHABET.LATIN]: latinLettersUpperCase,
|
|
@@ -2067,7 +2072,7 @@ var afterTarask = [
|
|
|
2067
2072
|
($0, $1, $2) => /([ая]ў|ну)$/.test($2) ? $1 + "ь і" + $2 : $0
|
|
2068
2073
|
]
|
|
2069
2074
|
];
|
|
2070
|
-
var applyNoFix = (
|
|
2075
|
+
var applyNoFix = (arr, text) => arr.length ? text.replace(NOFIX_REGEX, () => arr.shift()) : text;
|
|
2071
2076
|
var afterJoin = (text) => text.replace(/ /g, " ").replace(new RegExp(" (\\p{P}|\\p{S}|\\d|() ", "gu"), "$1");
|
|
2072
2077
|
var join = (textArr) => afterJoin(textArr.join(" "));
|
|
2073
2078
|
var finalize = (text, newLine) => text.replace(/ \t /g, " ").replace(/ \n /g, newLine).trim();
|
|
@@ -2175,7 +2180,10 @@ var __tarask__ = {
|
|
|
2175
2180
|
wordlist,
|
|
2176
2181
|
softeners,
|
|
2177
2182
|
replaceWithDict,
|
|
2178
|
-
afterTarask
|
|
2183
|
+
afterTarask,
|
|
2184
|
+
noSoften,
|
|
2185
|
+
latinLettersLowerCaseJi,
|
|
2186
|
+
latinLettersUpperCaseJi
|
|
2179
2187
|
};
|
|
2180
2188
|
var convertAlphabet = (text, abc) => replaceWithDict(replaceWithDict(text, letters[abc]), lettersUpperCase[abc]);
|
|
2181
2189
|
var restoreBraces = (text) => text.replace(/(/g, "(");
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
type Dict<T = RegExp> = readonly (readonly [T, string])[];
|
|
2
|
+
type WritableDict<T = RegExp> = [T, string][];
|
|
3
|
+
|
|
1
4
|
type ModifyObjectType<T, TResultObj> = T extends object ? T extends (...args: any[]) => any ? T : TResultObj : T;
|
|
2
5
|
type DeepPartialReadonly<T> = ModifyObjectType<T, {
|
|
3
6
|
readonly [P in keyof T]?: DeepPartialReadonly<T[P]>;
|
|
@@ -18,7 +21,6 @@ type NonHtmlOptions = {
|
|
|
18
21
|
type HtmlOptions = {
|
|
19
22
|
g: boolean;
|
|
20
23
|
};
|
|
21
|
-
type Dict<T = RegExp> = readonly (readonly [T, string])[];
|
|
22
24
|
type ExtendedDict = readonly (readonly [
|
|
23
25
|
RegExp,
|
|
24
26
|
string | ((...substrings: string[]) => string)
|
|
@@ -41,10 +43,13 @@ declare const VARIATION: {
|
|
|
41
43
|
readonly ALL: 2;
|
|
42
44
|
};
|
|
43
45
|
declare const __tarask__: {
|
|
44
|
-
readonly wordlist:
|
|
46
|
+
readonly wordlist: (readonly [RegExp, string])[];
|
|
45
47
|
readonly softeners: Dict;
|
|
46
48
|
readonly replaceWithDict: (text: string, dict?: ExtendedDict) => string;
|
|
47
49
|
readonly afterTarask: ExtendedDict;
|
|
50
|
+
readonly noSoften: WritableDict;
|
|
51
|
+
readonly latinLettersLowerCaseJi: (readonly [RegExp, string])[];
|
|
52
|
+
readonly latinLettersUpperCaseJi: [RegExp, string][];
|
|
48
53
|
};
|
|
49
54
|
declare class Taraskevizer {
|
|
50
55
|
general: {
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
|
-
// src/dict/
|
|
1
|
+
// src/dict/lib.ts
|
|
2
|
+
var dictFrom = {
|
|
3
|
+
raw: (dict) => {
|
|
4
|
+
for (const item of dict)
|
|
5
|
+
item[0] = RegExp(
|
|
6
|
+
item[0],
|
|
7
|
+
item[0] instanceof RegExp ? item[0].flags + "g" : "g"
|
|
8
|
+
);
|
|
9
|
+
return dict;
|
|
10
|
+
},
|
|
11
|
+
nonGlobal: (dict) => {
|
|
12
|
+
for (const item of dict)
|
|
13
|
+
item[0] = RegExp(item[0], "g" + item[0].flags);
|
|
14
|
+
return dict;
|
|
15
|
+
}
|
|
16
|
+
};
|
|
2
17
|
var toOneLine = (str) => str.replace(/\n/g, "|");
|
|
18
|
+
|
|
19
|
+
// src/dict/iwords.ts
|
|
3
20
|
var iwords = toOneLine(`біс
|
|
4
21
|
бсэн
|
|
5
22
|
в[аеоы]
|
|
@@ -110,7 +127,7 @@ var common = {
|
|
|
110
127
|
[/[łl]i([eoua])/, "l$1"],
|
|
111
128
|
[/łi/, "li"]
|
|
112
129
|
]
|
|
113
|
-
],
|
|
130
|
+
].map(dictFrom.nonGlobal),
|
|
114
131
|
upper: [
|
|
115
132
|
[
|
|
116
133
|
[new RegExp(" Е(?=[ \\p{P}\\d]*\\p{Lu}?\\p{Ll})", "u"), " Je"],
|
|
@@ -167,15 +184,15 @@ var common = {
|
|
|
167
184
|
[/Łi/, "Li"],
|
|
168
185
|
[/ŁI/, "LI"]
|
|
169
186
|
]
|
|
170
|
-
]
|
|
187
|
+
].map(dictFrom.nonGlobal)
|
|
171
188
|
};
|
|
172
|
-
var
|
|
189
|
+
var latinLettersLowerCase = [
|
|
173
190
|
...common.lower[0],
|
|
174
|
-
[
|
|
191
|
+
[/ʼі/g, "ji"],
|
|
175
192
|
...common.lower[1]
|
|
176
193
|
];
|
|
177
194
|
var latinLettersUpperCase = common.upper.flat();
|
|
178
|
-
var
|
|
195
|
+
var latinLettersLowerCaseJi = dictFrom.raw([
|
|
179
196
|
[/(?<=[аеёіоуыэюяАЕЁІОУЫЭЮЯ] )і Ў/, "j U"],
|
|
180
197
|
[/(?<=[аеёіоуыэюяАЕЁІОУЫЭЮЯ] )і ў/, "j u"],
|
|
181
198
|
[/(?<=[аеёіоуыэюяАЕЁІОУЫЭЮЯ] )і /, "j "],
|
|
@@ -184,24 +201,25 @@ var rawLatinLettersJi = [
|
|
|
184
201
|
[/(?<=[аеёіоуыэюяАЕЁІОУЫЭЮЯ] )І /, "J "],
|
|
185
202
|
[` і(?=${iwords})`, " ji"],
|
|
186
203
|
[` І(?=${iwords})`, " Ji"],
|
|
187
|
-
[` І(?=${iwords.toUpperCase()})`, " JI"]
|
|
204
|
+
[` І(?=${iwords.toUpperCase()})`, " JI"]
|
|
205
|
+
]).concat([
|
|
188
206
|
...common.lower[0],
|
|
189
|
-
[/(?<=[eouaаеёіоуыэюяʼАЕЁІОУЫЭЮЯЬ] *)
|
|
207
|
+
[/(?<=[eouaаеёіоуыэюяʼАЕЁІОУЫЭЮЯЬ] *)і/g, "ji"],
|
|
190
208
|
...common.lower[1]
|
|
191
|
-
];
|
|
192
|
-
var
|
|
209
|
+
]);
|
|
210
|
+
var latinLettersUpperCaseJi = [
|
|
193
211
|
...common.upper[0],
|
|
194
|
-
[new RegExp("(?<=[eoua] *)І(?=[ \\p{P}\\d]*\\p{Lu}?\\p{Ll})", "
|
|
212
|
+
[new RegExp("(?<=[eoua] *)І(?=[ \\p{P}\\d]*\\p{Lu}?\\p{Ll})", "gu"), "Ji"],
|
|
195
213
|
...common.upper[1],
|
|
196
|
-
[/(?<=[AOEUАЕЁІОУЎЫЭЮЯ][( ]*)
|
|
214
|
+
[/(?<=[AOEUАЕЁІОУЎЫЭЮЯ][( ]*)І/g, "JI"],
|
|
197
215
|
...common.upper[2],
|
|
198
|
-
[/ JIŁ
|
|
216
|
+
[/ JIŁ -/g, " IŁ -"]
|
|
199
217
|
];
|
|
200
218
|
|
|
201
219
|
// src/dict/arabic.ts
|
|
202
220
|
var soft = "ْ(?=[еёіюяь])";
|
|
203
221
|
var presoft = "([تزكثࢮбвгджзйклмнпрстфхцчшў])ْ?(ّ?)";
|
|
204
|
-
var
|
|
222
|
+
var arabLetters = dictFrom.raw([
|
|
205
223
|
[/ л[ая]/, " لا"],
|
|
206
224
|
[/л[ая]/, "ـلا"],
|
|
207
225
|
// падваеньне зычнага, шадда
|
|
@@ -256,9 +274,17 @@ var rawArabLetters = [
|
|
|
256
274
|
[/ш/, "ش"],
|
|
257
275
|
[/,/, "،"],
|
|
258
276
|
[/\?/, "؟"]
|
|
259
|
-
];
|
|
277
|
+
]);
|
|
260
278
|
|
|
261
|
-
// src/dict/
|
|
279
|
+
// src/dict/gobj.ts
|
|
280
|
+
var gobj = {
|
|
281
|
+
г: "ґ",
|
|
282
|
+
Г: "Ґ",
|
|
283
|
+
ґ: "г",
|
|
284
|
+
Ґ: "Г"
|
|
285
|
+
};
|
|
286
|
+
|
|
287
|
+
// src/dict/wordlist.ts
|
|
262
288
|
var chemicalElements1 = [
|
|
263
289
|
"сканд|ванад|рубід|род|ірыд|рэзэрфорд",
|
|
264
290
|
"стронц|бар|цэр|лютэц|самар| тор|амэрыц|кальц|кюр|дармштат|лівэрмор|натр"
|
|
@@ -271,7 +297,93 @@ var chemicalElements2 = [
|
|
|
271
297
|
chemicalElements2[1] = chemicalElements2[0] + "|айнштайн|мендзялев|сыборг|гас|флеров";
|
|
272
298
|
var chemicalElements3 = " гал|бэрыл|тул|бэркл|набэл";
|
|
273
299
|
var ia = (word, words) => ` ${word} (?=\\(?(?:[бвгджзйклмнпстфцчшў]*[оё]|${words.replace(/\(/g, "(?:")}|i(?:${iwords})))`;
|
|
274
|
-
var
|
|
300
|
+
var gwords = [
|
|
301
|
+
" ґб ",
|
|
302
|
+
"ґг",
|
|
303
|
+
"абрызґл",
|
|
304
|
+
" аґюст",
|
|
305
|
+
"анґол",
|
|
306
|
+
"арґаніз",
|
|
307
|
+
"арлінґтан",
|
|
308
|
+
"арыґінал",
|
|
309
|
+
" аўґс",
|
|
310
|
+
"аўґуст",
|
|
311
|
+
"аґрэст",
|
|
312
|
+
" біґ ",
|
|
313
|
+
" бразґ",
|
|
314
|
+
"буґацці",
|
|
315
|
+
"бурґ",
|
|
316
|
+
"вашынґт",
|
|
317
|
+
"возґр",
|
|
318
|
+
"вэдзґа",
|
|
319
|
+
" гааґ",
|
|
320
|
+
" ґабрыел",
|
|
321
|
+
" ґазэт",
|
|
322
|
+
" ґаксон",
|
|
323
|
+
" ґалац",
|
|
324
|
+
" ґалґоф",
|
|
325
|
+
" ґалер",
|
|
326
|
+
" ґаліле",
|
|
327
|
+
" ґальґот",
|
|
328
|
+
" ґамбі",
|
|
329
|
+
" ґарант",
|
|
330
|
+
" ґарсэт",
|
|
331
|
+
"ґарыбальдзі",
|
|
332
|
+
" ґаўс",
|
|
333
|
+
" ґаян",
|
|
334
|
+
"ґвалт",
|
|
335
|
+
// ' ґелер',
|
|
336
|
+
// ' ґент',
|
|
337
|
+
" ґётэ ",
|
|
338
|
+
" ґзымс",
|
|
339
|
+
" ґіём",
|
|
340
|
+
" ґітлін",
|
|
341
|
+
" ґлазґа ",
|
|
342
|
+
" ґліцэрын",
|
|
343
|
+
" ґлясар",
|
|
344
|
+
" ґонт",
|
|
345
|
+
" ґот",
|
|
346
|
+
" ґоцц",
|
|
347
|
+
" ґрадус",
|
|
348
|
+
"ґранд",
|
|
349
|
+
"ґрунт",
|
|
350
|
+
" ґрэйвэз",
|
|
351
|
+
"ґрэнобл",
|
|
352
|
+
"ґрэнлянд",
|
|
353
|
+
" ґузік",
|
|
354
|
+
" ґуст ",
|
|
355
|
+
" ґэлап",
|
|
356
|
+
" ґэры ",
|
|
357
|
+
" ґяд",
|
|
358
|
+
" ґяндж",
|
|
359
|
+
" джамалунґм",
|
|
360
|
+
" джґа",
|
|
361
|
+
" ірвінґ",
|
|
362
|
+
" іґнар",
|
|
363
|
+
" інтэґр",
|
|
364
|
+
" калеґ",
|
|
365
|
+
" кіплінґ",
|
|
366
|
+
"леґенд",
|
|
367
|
+
" лонґ",
|
|
368
|
+
" лэнґлі ",
|
|
369
|
+
" мазґ",
|
|
370
|
+
" мэґі ",
|
|
371
|
+
" мяґі ",
|
|
372
|
+
// 'нінґен',
|
|
373
|
+
" ніяґар",
|
|
374
|
+
"пінґвін",
|
|
375
|
+
"плявузґ",
|
|
376
|
+
"праґрам",
|
|
377
|
+
" розґ",
|
|
378
|
+
" ролінґ",
|
|
379
|
+
" рэдынґ",
|
|
380
|
+
" сіґітас",
|
|
381
|
+
" сійґ",
|
|
382
|
+
"райхстаґ",
|
|
383
|
+
" уґанд",
|
|
384
|
+
" цуґл"
|
|
385
|
+
].reverse().map((word) => [RegExp(word.replace(/ґ/g, "г"), "g"), word]);
|
|
386
|
+
var wordlist = dictFrom.raw([
|
|
275
387
|
/* А */
|
|
276
388
|
[/аахен/, "аахэн"],
|
|
277
389
|
[/абанен(?=[тц])/, "абанэн"],
|
|
@@ -1847,12 +1959,14 @@ var rawWordlist = [
|
|
|
1847
1959
|
[/ яблынь /, " яблын(ь|яў) "],
|
|
1848
1960
|
[/ расей /, " расе(й|яў) "],
|
|
1849
1961
|
[//, ""]
|
|
1850
|
-
];
|
|
1851
|
-
|
|
1962
|
+
]).concat(gwords);
|
|
1963
|
+
|
|
1964
|
+
// src/dict/softening.ts
|
|
1965
|
+
var noSoften = dictFrom.nonGlobal([
|
|
1852
1966
|
[/масфільм/, "масфільм"],
|
|
1853
1967
|
[/пэндзлік/, "пэндзлік"]
|
|
1854
|
-
];
|
|
1855
|
-
var
|
|
1968
|
+
]);
|
|
1969
|
+
var softeners = dictFrom.raw([
|
|
1856
1970
|
[/([лнц])\1(?=[еёіюяь])/, "$1ь$1"],
|
|
1857
1971
|
[/(\S\S)дз?дз(?=[еёіюяь])/, "$1дзьдз"],
|
|
1858
1972
|
[/адзьдз([ея])л/, "аддз$1л"],
|
|
@@ -1861,121 +1975,12 @@ var rawsofteners = [
|
|
|
1861
1975
|
[/з(?=([бвзлмнц]|дз)[еёіюяь])/, "зь"],
|
|
1862
1976
|
[/с(?=[бвлмнпсфц][еёіюяь])/, "сь"],
|
|
1863
1977
|
[/ц(?=[вм][еёіюяь])/, "ць"],
|
|
1864
|
-
[
|
|
1978
|
+
[
|
|
1979
|
+
`( (?:б[ея]|пра|цера)?з) (?=\\(?)(?=[еёюяь]|([бвзйлмнпстфц]|дз)[еёіюяь]|імі? |іх(?:ні)?|і(?:${iwords}))`,
|
|
1980
|
+
"$1ь "
|
|
1981
|
+
],
|
|
1865
1982
|
[/([сз])ʼ(?=[яюеё])/, "$1ь"]
|
|
1866
|
-
];
|
|
1867
|
-
var gwords = [
|
|
1868
|
-
" ґб ",
|
|
1869
|
-
"ґг",
|
|
1870
|
-
"абрызґл",
|
|
1871
|
-
" аґюст",
|
|
1872
|
-
"анґол",
|
|
1873
|
-
"арґаніз",
|
|
1874
|
-
"арлінґтан",
|
|
1875
|
-
"арыґінал",
|
|
1876
|
-
" аўґс",
|
|
1877
|
-
"аўґуст",
|
|
1878
|
-
"аґрэст",
|
|
1879
|
-
" біґ ",
|
|
1880
|
-
" бразґ",
|
|
1881
|
-
"буґацці",
|
|
1882
|
-
"бурґ",
|
|
1883
|
-
"вашынґт",
|
|
1884
|
-
"возґр",
|
|
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
|
-
"ґрэнлянд",
|
|
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
|
-
"райхстаґ",
|
|
1950
|
-
" уґанд",
|
|
1951
|
-
" цуґл"
|
|
1952
|
-
].reverse();
|
|
1953
|
-
var gobj = {
|
|
1954
|
-
"г": "ґ",
|
|
1955
|
-
"Г": "Ґ",
|
|
1956
|
-
"ґ": "г",
|
|
1957
|
-
"Ґ": "Г"
|
|
1958
|
-
};
|
|
1959
|
-
var wordlist = [];
|
|
1960
|
-
var softeners = [];
|
|
1961
|
-
var arabLetters = [];
|
|
1962
|
-
var latinLettersJi = [];
|
|
1963
|
-
var latinLettersUpperCaseJi = [];
|
|
1964
|
-
var arr = [
|
|
1965
|
-
[rawWordlist, wordlist],
|
|
1966
|
-
[rawsofteners, softeners],
|
|
1967
|
-
[rawArabLetters, arabLetters],
|
|
1968
|
-
[rawLatinLettersJi, latinLettersJi],
|
|
1969
|
-
[rawLatinLettersUpperCaseJi, latinLettersUpperCaseJi]
|
|
1970
|
-
];
|
|
1971
|
-
for (const [raw, obj] of arr)
|
|
1972
|
-
for (const [pattern, result] of raw)
|
|
1973
|
-
obj.push([RegExp(pattern, pattern instanceof RegExp ? pattern.flags + "g" : "g"), result]);
|
|
1974
|
-
for (const obj of [latinLetters, latinLettersUpperCase, noSoften])
|
|
1975
|
-
for (const item of obj)
|
|
1976
|
-
item[0] = RegExp(item[0], "g" + item[0].flags);
|
|
1977
|
-
for (const word of gwords)
|
|
1978
|
-
wordlist.push([RegExp(word.replace(/ґ/g, "г"), "g"), word]);
|
|
1983
|
+
]);
|
|
1979
1984
|
|
|
1980
1985
|
// src/tarask.ts
|
|
1981
1986
|
var isUpperCase = (str) => str === str.toUpperCase();
|
|
@@ -2006,9 +2011,9 @@ var VARIATION = {
|
|
|
2006
2011
|
ALL: 2
|
|
2007
2012
|
};
|
|
2008
2013
|
var letters = {
|
|
2009
|
-
[ALPHABET.LATIN]:
|
|
2014
|
+
[ALPHABET.LATIN]: latinLettersLowerCase,
|
|
2010
2015
|
[ALPHABET.ARABIC]: arabLetters,
|
|
2011
|
-
[ALPHABET.LATIN_JI]:
|
|
2016
|
+
[ALPHABET.LATIN_JI]: latinLettersLowerCaseJi
|
|
2012
2017
|
};
|
|
2013
2018
|
var lettersUpperCase = {
|
|
2014
2019
|
[ALPHABET.LATIN]: latinLettersUpperCase,
|
|
@@ -2036,7 +2041,7 @@ var afterTarask = [
|
|
|
2036
2041
|
($0, $1, $2) => /([ая]ў|ну)$/.test($2) ? $1 + "ь і" + $2 : $0
|
|
2037
2042
|
]
|
|
2038
2043
|
];
|
|
2039
|
-
var applyNoFix = (
|
|
2044
|
+
var applyNoFix = (arr, text) => arr.length ? text.replace(NOFIX_REGEX, () => arr.shift()) : text;
|
|
2040
2045
|
var afterJoin = (text) => text.replace(/ /g, " ").replace(new RegExp(" (\\p{P}|\\p{S}|\\d|() ", "gu"), "$1");
|
|
2041
2046
|
var join = (textArr) => afterJoin(textArr.join(" "));
|
|
2042
2047
|
var finalize = (text, newLine) => text.replace(/ \t /g, " ").replace(/ \n /g, newLine).trim();
|
|
@@ -2144,7 +2149,10 @@ var __tarask__ = {
|
|
|
2144
2149
|
wordlist,
|
|
2145
2150
|
softeners,
|
|
2146
2151
|
replaceWithDict,
|
|
2147
|
-
afterTarask
|
|
2152
|
+
afterTarask,
|
|
2153
|
+
noSoften,
|
|
2154
|
+
latinLettersLowerCaseJi,
|
|
2155
|
+
latinLettersUpperCaseJi
|
|
2148
2156
|
};
|
|
2149
2157
|
var convertAlphabet = (text, abc) => replaceWithDict(replaceWithDict(text, letters[abc]), lettersUpperCase[abc]);
|
|
2150
2158
|
var restoreBraces = (text) => text.replace(/(/g, "(");
|