taraskevizer 6.1.17 → 6.1.19

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/bin.js CHANGED
@@ -7,7 +7,7 @@ const printWithPrefix = (msg) => {
7
7
  process.argv.splice(0, 2);
8
8
  const checkForOptions = (options) => process.argv[0] && options.includes(process.argv[0].toLowerCase());
9
9
  if (checkForOptions(["-v", "--version"])) {
10
- printWithPrefix("6.1.17");
10
+ printWithPrefix("6.1.19");
11
11
  process.exit(0);
12
12
  }
13
13
  if (checkForOptions(["-h", "--help"])) {
package/dist/index.cjs CHANGED
@@ -327,7 +327,7 @@ var chemicalElements2 = [
327
327
  ];
328
328
  chemicalElements2[1] = chemicalElements2[0] + "|айнштайн|мендзялев|сыборг|гас|флеров";
329
329
  var chemicalElements3 = " гал|бэрыл|тул|бэркл|набэл";
330
- var ia = (word, words) => ` ${word} (?=\\(?(?:[бвгджзйклмнпстфцчшў]*[оё]|${words.replace(/\(/g, "(?:")}|i(?:${iwords})))`;
330
+ var ia = (word, words) => ` ${word}(?= \\(?(?:[бвгджзйклмнпстфцчшў]*[оё]|${words.replace(/\(/g, "(?:")}|i(?:${iwords})))`;
331
331
  var gwords = [
332
332
  " ґб ",
333
333
  "ґг",
@@ -1796,7 +1796,7 @@ var wordlist = dictFrom.raw([
1796
1796
  ўвод
1797
1797
  ўс[еёя]
1798
1798
  фарб(а(ў|мі)?|у|ы)?
1799
- ян `)), " ня "],
1799
+ ян `)), " ня"],
1800
1800
  /* без > бяз */
1801
1801
  [ia("без", toOneLine(`(вы)?(клад[ау]
1802
1802
  мела
@@ -1833,7 +1833,7 @@ var wordlist = dictFrom.raw([
1833
1833
  ўс[еёя]
1834
1834
  фарб(аў|ы)?
1835
1835
  цукр[ау]
1836
- ян`)), " бяз "],
1836
+ ян`)), " бяз"],
1837
1837
  /* іс */
1838
1838
  [/(\S)([іы]) (аа|ба|генэ|кры|тэ)зіс /, "$1($2|ая) $3(зіс|за) "],
1839
1839
  [/ага (аа|ба|генэ|кры|тэ)зіс[ау] /, "(ага|ай) $1(зісу|зы) "],
@@ -2222,16 +2222,18 @@ var resolveSpecialSyntax = (text, noFixArr, leftAngleBracket, convertAlphavet, d
2222
2222
  char = currentPart[1];
2223
2223
  currentPart = currentPart.slice(2);
2224
2224
  }
2225
- let toAddToResult = NOFIX_CHAR;
2225
+ let toAddToResult;
2226
2226
  switch (char) {
2227
2227
  case ".":
2228
+ toAddToResult = NOFIX_CHAR;
2228
2229
  noFixArr.push(currentPart);
2229
2230
  break;
2230
2231
  case ",":
2231
2232
  toAddToResult = leftAngleBracket + currentPart + ">";
2232
2233
  break;
2233
2234
  default:
2234
- noFixArr.push("<" + (abc ? "" : char) + currentPart + ">");
2235
+ toAddToResult = leftAngleBracket + NOFIX_CHAR;
2236
+ noFixArr.push((abc ? "" : char) + currentPart + ">");
2235
2237
  }
2236
2238
  result += toAddToResult + escapeCapsIfNeeded(part.slice(1));
2237
2239
  currentPart = "";
@@ -2244,9 +2246,8 @@ var resolveSpecialSyntax = (text, noFixArr, leftAngleBracket, convertAlphavet, d
2244
2246
  };
2245
2247
 
2246
2248
  // src/tarask.ts
2247
- var afterJoin = (text) => text.replace(/&nbsp;/g, " ").replace(new RegExp(" (\\p{P}|\\p{S}|\\d|&#40) ", "gu"), "$1");
2248
- var join = (textArr) => afterJoin(textArr.join(" "));
2249
- var finalize = (text, newLine) => text.replace(/ \t /g, " ").replace(/ \n /g, newLine).trim();
2249
+ var afterJoin = (text) => text.replace(/&nbsp;/g, " ").replace(new RegExp(" (\\p{P}|\\p{S}|\\d+|&#40) ", "gu"), "$1");
2250
+ var finalize = (text, newLine) => text.replace(/\n/g, newLine).trim();
2250
2251
  var restoreParentheses = (text) => text.replace(/&#40/g, "(");
2251
2252
  var wordlistPlusNoSoften = wordlist.concat(noSoften);
2252
2253
  var Taraskevizer = class {
@@ -2263,6 +2264,10 @@ var Taraskevizer = class {
2263
2264
  ansiColors: false,
2264
2265
  variations: VARIATION.ALL
2265
2266
  };
2267
+ spaces = [];
2268
+ restoreSpaces(text) {
2269
+ return text.replace(/ /g, () => this.spaces.shift());
2270
+ }
2266
2271
  constructor(options) {
2267
2272
  if (!options)
2268
2273
  return;
@@ -2281,7 +2286,7 @@ var Taraskevizer = class {
2281
2286
  );
2282
2287
  if (this.nonHtml.ansiColors)
2283
2288
  highlightDiff(splitted, splittedOrig, isCyrillic, wrapInColorOf.fix);
2284
- text = join(splitted);
2289
+ text = afterJoin(this.restoreSpaces(splitted.join(" ")));
2285
2290
  if (isCyrillic && (this.nonHtml.h || this.nonHtml.ansiColors))
2286
2291
  text = replaceG(
2287
2292
  text,
@@ -2304,7 +2309,7 @@ var Taraskevizer = class {
2304
2309
  this.prepare(text, noFixArr, "&lt;")
2305
2310
  );
2306
2311
  highlightDiff(splitted, splittedOrig, isCyrillic, wrapInTag.fix);
2307
- text = join(splitted);
2312
+ text = afterJoin(this.restoreSpaces(splitted.join(" ")));
2308
2313
  if (isCyrillic)
2309
2314
  text = replaceG(
2310
2315
  text,
@@ -2319,9 +2324,8 @@ var Taraskevizer = class {
2319
2324
  );
2320
2325
  }
2321
2326
  prepare(text, noFixArr, LEFT_ANGLE_BRACKET, doEscapeCapitalized = this.general.doEscapeCapitalized) {
2322
- text = ` ${text.trim()} `.replace(//g, "");
2323
- return resolveSpecialSyntax(
2324
- text,
2327
+ text = resolveSpecialSyntax(
2328
+ ` ${text.trim()} `.replace(//g, ""),
2325
2329
  noFixArr,
2326
2330
  LEFT_ANGLE_BRACKET,
2327
2331
  (abcOnlyText) => restoreCase(
@@ -2332,7 +2336,12 @@ var Taraskevizer = class {
2332
2336
  abcOnlyText.split(" ")
2333
2337
  ).join(" "),
2334
2338
  doEscapeCapitalized
2335
- ).replace(/г'(?![еёіюя])/g, "ґ").replace(/ - /g, " — ").replace(new RegExp("([\\n\\t]|\\p{P}|\\p{S}|\\d)", "gu"), " $1 ").replace(/ ['`’] (?=\S)/g, "ʼ").replace(/\(/g, "&#40");
2339
+ ).replace(/г'(?![еёіюя])/g, "ґ").replace(/ - /g, " — ").replace(new RegExp("(\\p{P}|\\p{S}|\\d+)", "gu"), " $1 ").replace(/ ['`’] (?=\S)/g, "ʼ").replace(/\(/g, "&#40");
2340
+ text = text.replace(/\s+/g, (match) => {
2341
+ this.spaces.push(match);
2342
+ return " ";
2343
+ });
2344
+ return text;
2336
2345
  }
2337
2346
  convertAlphabetOnly(text) {
2338
2347
  const noFixArr = [];
@@ -2341,9 +2350,11 @@ var Taraskevizer = class {
2341
2350
  restoreParentheses(
2342
2351
  applyNoFix(
2343
2352
  noFixArr,
2344
- convertAlphabet(
2345
- this.prepare(text, noFixArr, "<", false),
2346
- this.general.abc
2353
+ this.restoreSpaces(
2354
+ convertAlphabet(
2355
+ this.prepare(text, noFixArr, "<", false),
2356
+ this.general.abc
2357
+ )
2347
2358
  )
2348
2359
  )
2349
2360
  )
package/dist/index.d.ts CHANGED
@@ -51,6 +51,8 @@ declare class Taraskevizer {
51
51
  ansiColors: boolean;
52
52
  variations: Variation;
53
53
  };
54
+ private spaces;
55
+ restoreSpaces(text: string): string;
54
56
  constructor(options?: DeepPartialReadonly<{
55
57
  general: TaraskOptions;
56
58
  html: HtmlOptions;
package/dist/index.js CHANGED
@@ -302,7 +302,7 @@ var chemicalElements2 = [
302
302
  ];
303
303
  chemicalElements2[1] = chemicalElements2[0] + "|айнштайн|мендзялев|сыборг|гас|флеров";
304
304
  var chemicalElements3 = " гал|бэрыл|тул|бэркл|набэл";
305
- var ia = (word, words) => ` ${word} (?=\\(?(?:[бвгджзйклмнпстфцчшў]*[оё]|${words.replace(/\(/g, "(?:")}|i(?:${iwords})))`;
305
+ var ia = (word, words) => ` ${word}(?= \\(?(?:[бвгджзйклмнпстфцчшў]*[оё]|${words.replace(/\(/g, "(?:")}|i(?:${iwords})))`;
306
306
  var gwords = [
307
307
  " ґб ",
308
308
  "ґг",
@@ -1771,7 +1771,7 @@ var wordlist = dictFrom.raw([
1771
1771
  ўвод
1772
1772
  ўс[еёя]
1773
1773
  фарб(а(ў|мі)?|у|ы)?
1774
- ян `)), " ня "],
1774
+ ян `)), " ня"],
1775
1775
  /* без > бяз */
1776
1776
  [ia("без", toOneLine(`(вы)?(клад[ау]
1777
1777
  мела
@@ -1808,7 +1808,7 @@ var wordlist = dictFrom.raw([
1808
1808
  ўс[еёя]
1809
1809
  фарб(аў|ы)?
1810
1810
  цукр[ау]
1811
- ян`)), " бяз "],
1811
+ ян`)), " бяз"],
1812
1812
  /* іс */
1813
1813
  [/(\S)([іы]) (аа|ба|генэ|кры|тэ)зіс /, "$1($2|ая) $3(зіс|за) "],
1814
1814
  [/ага (аа|ба|генэ|кры|тэ)зіс[ау] /, "(ага|ай) $1(зісу|зы) "],
@@ -2197,16 +2197,18 @@ var resolveSpecialSyntax = (text, noFixArr, leftAngleBracket, convertAlphavet, d
2197
2197
  char = currentPart[1];
2198
2198
  currentPart = currentPart.slice(2);
2199
2199
  }
2200
- let toAddToResult = NOFIX_CHAR;
2200
+ let toAddToResult;
2201
2201
  switch (char) {
2202
2202
  case ".":
2203
+ toAddToResult = NOFIX_CHAR;
2203
2204
  noFixArr.push(currentPart);
2204
2205
  break;
2205
2206
  case ",":
2206
2207
  toAddToResult = leftAngleBracket + currentPart + ">";
2207
2208
  break;
2208
2209
  default:
2209
- noFixArr.push("<" + (abc ? "" : char) + currentPart + ">");
2210
+ toAddToResult = leftAngleBracket + NOFIX_CHAR;
2211
+ noFixArr.push((abc ? "" : char) + currentPart + ">");
2210
2212
  }
2211
2213
  result += toAddToResult + escapeCapsIfNeeded(part.slice(1));
2212
2214
  currentPart = "";
@@ -2219,9 +2221,8 @@ var resolveSpecialSyntax = (text, noFixArr, leftAngleBracket, convertAlphavet, d
2219
2221
  };
2220
2222
 
2221
2223
  // src/tarask.ts
2222
- var afterJoin = (text) => text.replace(/&nbsp;/g, " ").replace(new RegExp(" (\\p{P}|\\p{S}|\\d|&#40) ", "gu"), "$1");
2223
- var join = (textArr) => afterJoin(textArr.join(" "));
2224
- var finalize = (text, newLine) => text.replace(/ \t /g, " ").replace(/ \n /g, newLine).trim();
2224
+ var afterJoin = (text) => text.replace(/&nbsp;/g, " ").replace(new RegExp(" (\\p{P}|\\p{S}|\\d+|&#40) ", "gu"), "$1");
2225
+ var finalize = (text, newLine) => text.replace(/\n/g, newLine).trim();
2225
2226
  var restoreParentheses = (text) => text.replace(/&#40/g, "(");
2226
2227
  var wordlistPlusNoSoften = wordlist.concat(noSoften);
2227
2228
  var Taraskevizer = class {
@@ -2238,6 +2239,10 @@ var Taraskevizer = class {
2238
2239
  ansiColors: false,
2239
2240
  variations: VARIATION.ALL
2240
2241
  };
2242
+ spaces = [];
2243
+ restoreSpaces(text) {
2244
+ return text.replace(/ /g, () => this.spaces.shift());
2245
+ }
2241
2246
  constructor(options) {
2242
2247
  if (!options)
2243
2248
  return;
@@ -2256,7 +2261,7 @@ var Taraskevizer = class {
2256
2261
  );
2257
2262
  if (this.nonHtml.ansiColors)
2258
2263
  highlightDiff(splitted, splittedOrig, isCyrillic, wrapInColorOf.fix);
2259
- text = join(splitted);
2264
+ text = afterJoin(this.restoreSpaces(splitted.join(" ")));
2260
2265
  if (isCyrillic && (this.nonHtml.h || this.nonHtml.ansiColors))
2261
2266
  text = replaceG(
2262
2267
  text,
@@ -2279,7 +2284,7 @@ var Taraskevizer = class {
2279
2284
  this.prepare(text, noFixArr, "&lt;")
2280
2285
  );
2281
2286
  highlightDiff(splitted, splittedOrig, isCyrillic, wrapInTag.fix);
2282
- text = join(splitted);
2287
+ text = afterJoin(this.restoreSpaces(splitted.join(" ")));
2283
2288
  if (isCyrillic)
2284
2289
  text = replaceG(
2285
2290
  text,
@@ -2294,9 +2299,8 @@ var Taraskevizer = class {
2294
2299
  );
2295
2300
  }
2296
2301
  prepare(text, noFixArr, LEFT_ANGLE_BRACKET, doEscapeCapitalized = this.general.doEscapeCapitalized) {
2297
- text = ` ${text.trim()} `.replace(//g, "");
2298
- return resolveSpecialSyntax(
2299
- text,
2302
+ text = resolveSpecialSyntax(
2303
+ ` ${text.trim()} `.replace(//g, ""),
2300
2304
  noFixArr,
2301
2305
  LEFT_ANGLE_BRACKET,
2302
2306
  (abcOnlyText) => restoreCase(
@@ -2307,7 +2311,12 @@ var Taraskevizer = class {
2307
2311
  abcOnlyText.split(" ")
2308
2312
  ).join(" "),
2309
2313
  doEscapeCapitalized
2310
- ).replace(/г'(?![еёіюя])/g, "ґ").replace(/ - /g, " — ").replace(new RegExp("([\\n\\t]|\\p{P}|\\p{S}|\\d)", "gu"), " $1 ").replace(/ ['`’] (?=\S)/g, "ʼ").replace(/\(/g, "&#40");
2314
+ ).replace(/г'(?![еёіюя])/g, "ґ").replace(/ - /g, " — ").replace(new RegExp("(\\p{P}|\\p{S}|\\d+)", "gu"), " $1 ").replace(/ ['`’] (?=\S)/g, "ʼ").replace(/\(/g, "&#40");
2315
+ text = text.replace(/\s+/g, (match) => {
2316
+ this.spaces.push(match);
2317
+ return " ";
2318
+ });
2319
+ return text;
2311
2320
  }
2312
2321
  convertAlphabetOnly(text) {
2313
2322
  const noFixArr = [];
@@ -2316,9 +2325,11 @@ var Taraskevizer = class {
2316
2325
  restoreParentheses(
2317
2326
  applyNoFix(
2318
2327
  noFixArr,
2319
- convertAlphabet(
2320
- this.prepare(text, noFixArr, "<", false),
2321
- this.general.abc
2328
+ this.restoreSpaces(
2329
+ convertAlphabet(
2330
+ this.prepare(text, noFixArr, "<", false),
2331
+ this.general.abc
2332
+ )
2322
2333
  )
2323
2334
  )
2324
2335
  )
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "taraskevizer",
3
- "version": "6.1.17",
3
+ "version": "6.1.19",
4
4
  "author": "GooseOb",
5
5
  "repository": {
6
6
  "type": "git",