@retorquere/bibtex-parser 7.0.10 → 7.0.12

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/grammar.js CHANGED
@@ -194,18 +194,16 @@ function peg$parse(input, options) {
194
194
  var peg$c15 = "\\]";
195
195
  var peg$c16 = "%";
196
196
  var peg$c17 = "\\\\";
197
- var peg$c18 = "\r";
198
- var peg$c19 = "\n";
199
- var peg$c20 = "newcommand";
200
- var peg$c21 = "url";
201
- var peg$c22 = "href";
202
- var peg$c23 = "\\verb";
203
- var peg$c24 = "begin";
204
- var peg$c25 = "end";
205
- var peg$c26 = "[";
206
- var peg$c27 = "]";
207
- var peg$c28 = "=";
208
- var peg$c29 = "#";
197
+ var peg$c18 = "newcommand";
198
+ var peg$c19 = "url";
199
+ var peg$c20 = "href";
200
+ var peg$c21 = "\\verb";
201
+ var peg$c22 = "begin";
202
+ var peg$c23 = "end";
203
+ var peg$c24 = "[";
204
+ var peg$c25 = "]";
205
+ var peg$c26 = "=";
206
+ var peg$c27 = "#";
209
207
 
210
208
  var peg$r0 = /^[^\n\r]/;
211
209
  var peg$r1 = /^[\n\r]/;
@@ -270,37 +268,35 @@ function peg$parse(input, options) {
270
268
  var peg$e31 = peg$literalExpectation("%", false);
271
269
  var peg$e32 = peg$classExpectation(["\r", "\n"], true, false);
272
270
  var peg$e33 = peg$literalExpectation("\\\\", false);
273
- var peg$e34 = peg$literalExpectation("\r", false);
274
- var peg$e35 = peg$literalExpectation("\n", false);
275
- var peg$e36 = peg$classExpectation(["_", "^"], false, false);
276
- var peg$e37 = peg$classExpectation([["A", "Z"], ["a", "z"], ["0", "9"], "[", "]", "\t", "\r", "\n"], true, false);
277
- var peg$e38 = peg$literalExpectation("newcommand", false);
278
- var peg$e39 = peg$literalExpectation("url", false);
279
- var peg$e40 = peg$literalExpectation("href", false);
280
- var peg$e41 = peg$literalExpectation("\\verb", false);
281
- var peg$e42 = peg$anyExpectation();
282
- var peg$e43 = peg$literalExpectation("begin", false);
283
- var peg$e44 = peg$literalExpectation("end", false);
284
- var peg$e45 = peg$classExpectation([["A", "Z"], ["a", "z"]], false, false);
285
- var peg$e46 = peg$literalExpectation("[", false);
286
- var peg$e47 = peg$classExpectation(["]"], true, false);
287
- var peg$e48 = peg$literalExpectation("]", false);
288
- var peg$e49 = peg$classExpectation([" ", "\t", "^", "_", "$", "{", "}", "\\"], true, false);
289
- var peg$e50 = peg$classExpectation([["a", "z"], ["A", "Z"], "-", "_"], false, false);
290
- var peg$e51 = peg$classExpectation([["a", "z"], ["A", "Z"], ["0", "9"], "-", "&", "_", ":"], false, false);
291
- var peg$e52 = peg$classExpectation(["'", "`", "\"", "=", "~", "^", "."], false, false);
292
- var peg$e53 = peg$classExpectation(["'", "`", "\"", "=", "~", "^", ".", "c", "b", "u", "v", "d", "r", "H", "k"], false, false);
293
- var peg$e54 = peg$literalExpectation("=", false);
294
- var peg$e55 = peg$literalExpectation("#", false);
295
- var peg$e56 = peg$classExpectation(["\r", "\n"], false, false);
296
- var peg$e57 = peg$otherExpectation("Mandatory Horizontal Whitespace");
297
- var peg$e58 = peg$classExpectation([" ", "\t"], false, false);
298
- var peg$e59 = peg$otherExpectation("Optional Horizontal Whitespace");
299
- var peg$e60 = peg$otherExpectation("Mandatory Vertical Whitespace");
300
- var peg$e61 = peg$otherExpectation("Optional Vertical Whitespace");
301
- var peg$e62 = peg$otherExpectation("Mandatory Whitespace");
302
- var peg$e63 = peg$classExpectation([" ", "\t", "\n", "\r"], false, false);
303
- var peg$e64 = peg$otherExpectation("Optional Whitespace");
271
+ var peg$e34 = peg$classExpectation(["_", "^"], false, false);
272
+ var peg$e35 = peg$classExpectation([["A", "Z"], ["a", "z"], ["0", "9"], "[", "]", "\t", "\r", "\n"], true, false);
273
+ var peg$e36 = peg$literalExpectation("newcommand", false);
274
+ var peg$e37 = peg$literalExpectation("url", false);
275
+ var peg$e38 = peg$literalExpectation("href", false);
276
+ var peg$e39 = peg$literalExpectation("\\verb", false);
277
+ var peg$e40 = peg$anyExpectation();
278
+ var peg$e41 = peg$literalExpectation("begin", false);
279
+ var peg$e42 = peg$literalExpectation("end", false);
280
+ var peg$e43 = peg$classExpectation([["A", "Z"], ["a", "z"]], false, false);
281
+ var peg$e44 = peg$literalExpectation("[", false);
282
+ var peg$e45 = peg$classExpectation(["]"], true, false);
283
+ var peg$e46 = peg$literalExpectation("]", false);
284
+ var peg$e47 = peg$classExpectation([" ", "\t", "^", "_", "$", "{", "}", "\\"], true, false);
285
+ var peg$e48 = peg$classExpectation([["a", "z"], ["A", "Z"], "-", "_"], false, false);
286
+ var peg$e49 = peg$classExpectation([["a", "z"], ["A", "Z"], ["0", "9"], "-", "&", "_", ":"], false, false);
287
+ var peg$e50 = peg$classExpectation(["'", "`", "\"", "=", "~", "^", "."], false, false);
288
+ var peg$e51 = peg$classExpectation(["'", "`", "\"", "=", "~", "^", ".", "c", "b", "u", "v", "d", "r", "H", "k"], false, false);
289
+ var peg$e52 = peg$literalExpectation("=", false);
290
+ var peg$e53 = peg$literalExpectation("#", false);
291
+ var peg$e54 = peg$classExpectation(["\r", "\n"], false, false);
292
+ var peg$e55 = peg$otherExpectation("Mandatory Horizontal Whitespace");
293
+ var peg$e56 = peg$classExpectation([" ", "\t"], false, false);
294
+ var peg$e57 = peg$otherExpectation("Optional Horizontal Whitespace");
295
+ var peg$e58 = peg$otherExpectation("Mandatory Vertical Whitespace");
296
+ var peg$e59 = peg$otherExpectation("Optional Vertical Whitespace");
297
+ var peg$e60 = peg$otherExpectation("Mandatory Whitespace");
298
+ var peg$e61 = peg$classExpectation([" ", "\t", "\n", "\r"], false, false);
299
+ var peg$e62 = peg$otherExpectation("Optional Whitespace");
304
300
 
305
301
  var peg$f0 = function(r) {
306
302
  return {
@@ -440,8 +436,8 @@ function peg$parse(input, options) {
440
436
  var peg$f23 = function(v) {
441
437
  return v.reduce((a, b) => a.concat(b), []);
442
438
  };
443
- var peg$f24 = function(v) { return v; };
444
- var peg$f25 = function(v) { return v; };
439
+ var peg$f24 = function(v) { return parBreak(v); };
440
+ var peg$f25 = function(v) { return parBreak(v); };
445
441
  var peg$f26 = function(v) { return v; };
446
442
  var peg$f27 = function(v) { return v; };
447
443
  var peg$f28 = function(v) {
@@ -449,7 +445,7 @@ function peg$parse(input, options) {
449
445
  kind: 'Text',
450
446
  loc: location(),
451
447
  source: text(),
452
- value: normalizeWhitespace(v),
448
+ value: v,
453
449
  mode: math.on ? 'math' : 'text',
454
450
  })
455
451
  };
@@ -458,7 +454,7 @@ function peg$parse(input, options) {
458
454
  kind: 'Text',
459
455
  loc: location(),
460
456
  source: text(),
461
- value: normalizeWhitespace(v),
457
+ value: v,
462
458
  mode: math.on ? 'math' : 'text',
463
459
  })
464
460
  };
@@ -540,6 +536,8 @@ function peg$parse(input, options) {
540
536
  }
541
537
  }
542
538
 
539
+ block.value = parBreak(block.value)
540
+
543
541
  return handle_markup_switches(block)
544
542
  };
545
543
  var peg$f36 = function() { return !math.on };
@@ -575,19 +573,7 @@ function peg$parse(input, options) {
575
573
  },
576
574
  }
577
575
  };
578
- var peg$f42 = function() {
579
- return {
580
- kind: 'RegularCommand',
581
- loc: location(),
582
- source: text(),
583
- command: 'par',
584
- arguments: {
585
- optional: [],
586
- required: [],
587
- },
588
- }
589
- };
590
- var peg$f43 = function(mode, v) {
576
+ var peg$f42 = function(mode, v) {
591
577
  if (v.kind === 'Block') v = v.value
592
578
 
593
579
  return {
@@ -597,7 +583,7 @@ function peg$parse(input, options) {
597
583
  value: v,
598
584
  }
599
585
  };
600
- var peg$f44 = function(mark, chr) {
586
+ var peg$f43 = function(mark, chr) {
601
587
  return {
602
588
  kind: 'DiacriticCommand',
603
589
  loc: location(),
@@ -607,7 +593,7 @@ function peg$parse(input, options) {
607
593
  character: chr[1] || chr[0],
608
594
  }
609
595
  };
610
- var peg$f45 = function(mark, chr) {
596
+ var peg$f44 = function(mark, chr) {
611
597
  return {
612
598
  kind: 'DiacriticCommand',
613
599
  loc: location(),
@@ -617,7 +603,7 @@ function peg$parse(input, options) {
617
603
  character: chr[1] || chr[0],
618
604
  }
619
605
  };
620
- var peg$f46 = function(mark, v) {
606
+ var peg$f45 = function(mark, v) {
621
607
  return {
622
608
  kind: 'RegularCommand',
623
609
  loc: location(),
@@ -629,7 +615,7 @@ function peg$parse(input, options) {
629
615
  },
630
616
  }
631
617
  };
632
- var peg$f47 = function(v) {
618
+ var peg$f46 = function(v) {
633
619
  return {
634
620
  kind: 'SymbolCommand',
635
621
  loc: location(),
@@ -637,8 +623,8 @@ function peg$parse(input, options) {
637
623
  command: v,
638
624
  }
639
625
  };
640
- var peg$f48 = function(cmd, name) { return name.value.length == 1 && name.value[0].kind === 'RegularCommand' };
641
- var peg$f49 = function(cmd, name, optional, def) {
626
+ var peg$f47 = function(cmd, name) { return name.value.length == 1 && name.value[0].kind === 'RegularCommand' };
627
+ var peg$f48 = function(cmd, name, optional, def) {
642
628
  return {
643
629
  kind: 'RegularCommand',
644
630
  loc: location(),
@@ -650,7 +636,7 @@ function peg$parse(input, options) {
650
636
  },
651
637
  }
652
638
  };
653
- var peg$f50 = function(cmd, url) {
639
+ var peg$f49 = function(cmd, url) {
654
640
  // https://github.com/retorquere/zotero-better-bibtex/issues/2617
655
641
  url.value = url.value.replace(/\\([\#%])/g, '$1')
656
642
  return {
@@ -664,7 +650,7 @@ function peg$parse(input, options) {
664
650
  },
665
651
  }
666
652
  };
667
- var peg$f51 = function(cmd, url, label) {
653
+ var peg$f50 = function(cmd, url, label) {
668
654
  // https://github.com/retorquere/zotero-better-bibtex/issues/2617
669
655
  url.value = url.value.replace(/\\([\#%])/g, '$1')
670
656
  return {
@@ -678,9 +664,9 @@ function peg$parse(input, options) {
678
664
  },
679
665
  }
680
666
  };
681
- var peg$f52 = function(delim) { return verbatim.set(delim) };
682
- var peg$f53 = function(delim, v) { return verbatim.set('') };
683
- var peg$f54 = function(delim, v) {
667
+ var peg$f51 = function(delim) { return verbatim.set(delim) };
668
+ var peg$f52 = function(delim, v) { return verbatim.set('') };
669
+ var peg$f53 = function(delim, v) {
684
670
  return basicTextConversions({
685
671
  kind: 'Text',
686
672
  loc: location(),
@@ -689,8 +675,8 @@ function peg$parse(input, options) {
689
675
  mode: 'verbatim',
690
676
  })
691
677
  };
692
- var peg$f55 = function(cmd) { return verbatimCommands.includes(cmd) && (has_arguments[cmd] === 2) };
693
- var peg$f56 = function(cmd, optional, req1, req2) {
678
+ var peg$f54 = function(cmd) { return verbatimCommands.includes(cmd) && (has_arguments[cmd] === 2) };
679
+ var peg$f55 = function(cmd, optional, req1, req2) {
694
680
  return {
695
681
  kind: 'RegularCommand',
696
682
  loc: location(),
@@ -702,8 +688,8 @@ function peg$parse(input, options) {
702
688
  },
703
689
  }
704
690
  };
705
- var peg$f57 = function(cmd) { return verbatimCommands.includes(cmd) && (has_arguments[cmd] === 1) };
706
- var peg$f58 = function(cmd, optional, req) {
691
+ var peg$f56 = function(cmd) { return verbatimCommands.includes(cmd) && (has_arguments[cmd] === 1) };
692
+ var peg$f57 = function(cmd, optional, req) {
707
693
  return {
708
694
  kind: 'RegularCommand',
709
695
  loc: location(),
@@ -715,8 +701,8 @@ function peg$parse(input, options) {
715
701
  },
716
702
  }
717
703
  };
718
- var peg$f59 = function(cmd) { return (has_arguments[cmd] === 2) };
719
- var peg$f60 = function(cmd, optional, req1, req2) {
704
+ var peg$f58 = function(cmd) { return (has_arguments[cmd] === 2) };
705
+ var peg$f59 = function(cmd, optional, req1, req2) {
720
706
  return {
721
707
  kind: 'RegularCommand',
722
708
  loc: location(),
@@ -728,8 +714,8 @@ function peg$parse(input, options) {
728
714
  },
729
715
  }
730
716
  };
731
- var peg$f61 = function(cmd) { return (has_arguments[cmd] === 1) };
732
- var peg$f62 = function(cmd, optional, req) {
717
+ var peg$f60 = function(cmd) { return (has_arguments[cmd] === 1) };
718
+ var peg$f61 = function(cmd, optional, req) {
733
719
  let m
734
720
  if (req.kind === 'Block') {
735
721
  switch (cmd) {
@@ -779,7 +765,7 @@ function peg$parse(input, options) {
779
765
  }
780
766
  }
781
767
  };
782
- var peg$f63 = function(cmd, optional) {
768
+ var peg$f62 = function(cmd, optional) {
783
769
  return {
784
770
  kind: 'RegularCommand',
785
771
  loc: location(),
@@ -791,9 +777,9 @@ function peg$parse(input, options) {
791
777
  }
792
778
  }
793
779
  };
794
- var peg$f64 = function(char) { return char !== verbatim.delim };
795
- var peg$f65 = function(char) { return char };
796
- var peg$f66 = function(char) {
780
+ var peg$f63 = function(char) { return char !== verbatim.delim };
781
+ var peg$f64 = function(char) { return char };
782
+ var peg$f65 = function(char) {
797
783
  return basicTextConversions({
798
784
  kind: 'Text',
799
785
  loc: location(),
@@ -802,7 +788,7 @@ function peg$parse(input, options) {
802
788
  mode: math.on ? 'math' : 'text',
803
789
  })
804
790
  };
805
- var peg$f67 = function(v) {
791
+ var peg$f66 = function(v) {
806
792
  return basicTextConversions({
807
793
  kind: 'Text', // this isn't really correct but I don't need these right now
808
794
  loc: location(),
@@ -811,16 +797,16 @@ function peg$parse(input, options) {
811
797
  mode: math.on ? 'math' : 'text',
812
798
  })
813
799
  };
814
- var peg$f68 = function(v) {
800
+ var peg$f67 = function(v) {
815
801
  return basicTextConversions({
816
802
  kind: 'Text',
817
803
  loc: location(),
818
804
  source: text(),
819
- value: normalizeWhitespace([v]),
805
+ value: normalizeWhitespace(v),
820
806
  mode: math.on ? 'math' : 'text',
821
807
  })
822
808
  };
823
- var peg$f69 = function(v) { return v };
809
+ var peg$f68 = function(v) { return v };
824
810
  var peg$currPos = 0;
825
811
  var peg$savedPos = 0;
826
812
  var peg$posDetailsCache = [{ line: 1, column: 1 }];
@@ -1057,24 +1043,26 @@ function peg$parse(input, options) {
1057
1043
  }
1058
1044
  if (s3 !== peg$FAILED) {
1059
1045
  s4 = peg$parse__h();
1060
- s5 = [];
1046
+ s5 = peg$currPos;
1047
+ s6 = [];
1061
1048
  if (peg$r0.test(input.charAt(peg$currPos))) {
1062
- s6 = input.charAt(peg$currPos);
1049
+ s7 = input.charAt(peg$currPos);
1063
1050
  peg$currPos++;
1064
1051
  } else {
1065
- s6 = peg$FAILED;
1052
+ s7 = peg$FAILED;
1066
1053
  if (peg$silentFails === 0) { peg$fail(peg$e2); }
1067
1054
  }
1068
- while (s6 !== peg$FAILED) {
1069
- s5.push(s6);
1055
+ while (s7 !== peg$FAILED) {
1056
+ s6.push(s7);
1070
1057
  if (peg$r0.test(input.charAt(peg$currPos))) {
1071
- s6 = input.charAt(peg$currPos);
1058
+ s7 = input.charAt(peg$currPos);
1072
1059
  peg$currPos++;
1073
1060
  } else {
1074
- s6 = peg$FAILED;
1061
+ s7 = peg$FAILED;
1075
1062
  if (peg$silentFails === 0) { peg$fail(peg$e2); }
1076
1063
  }
1077
1064
  }
1065
+ s5 = input.substring(s5, peg$currPos);
1078
1066
  s6 = [];
1079
1067
  if (peg$r1.test(input.charAt(peg$currPos))) {
1080
1068
  s7 = input.charAt(peg$currPos);
@@ -1106,37 +1094,43 @@ function peg$parse(input, options) {
1106
1094
  if (s0 === peg$FAILED) {
1107
1095
  s0 = peg$currPos;
1108
1096
  s1 = peg$currPos;
1097
+ s2 = peg$currPos;
1109
1098
  if (peg$r2.test(input.charAt(peg$currPos))) {
1110
- s2 = input.charAt(peg$currPos);
1099
+ s3 = input.charAt(peg$currPos);
1111
1100
  peg$currPos++;
1112
1101
  } else {
1113
- s2 = peg$FAILED;
1102
+ s3 = peg$FAILED;
1114
1103
  if (peg$silentFails === 0) { peg$fail(peg$e4); }
1115
1104
  }
1116
- if (s2 !== peg$FAILED) {
1117
- s3 = [];
1105
+ if (s3 !== peg$FAILED) {
1106
+ s4 = [];
1118
1107
  if (peg$r0.test(input.charAt(peg$currPos))) {
1119
- s4 = input.charAt(peg$currPos);
1108
+ s5 = input.charAt(peg$currPos);
1120
1109
  peg$currPos++;
1121
1110
  } else {
1122
- s4 = peg$FAILED;
1111
+ s5 = peg$FAILED;
1123
1112
  if (peg$silentFails === 0) { peg$fail(peg$e2); }
1124
1113
  }
1125
- while (s4 !== peg$FAILED) {
1126
- s3.push(s4);
1114
+ while (s5 !== peg$FAILED) {
1115
+ s4.push(s5);
1127
1116
  if (peg$r0.test(input.charAt(peg$currPos))) {
1128
- s4 = input.charAt(peg$currPos);
1117
+ s5 = input.charAt(peg$currPos);
1129
1118
  peg$currPos++;
1130
1119
  } else {
1131
- s4 = peg$FAILED;
1120
+ s5 = peg$FAILED;
1132
1121
  if (peg$silentFails === 0) { peg$fail(peg$e2); }
1133
1122
  }
1134
1123
  }
1135
- s2 = [s2, s3];
1136
- s1 = s2;
1124
+ s3 = [s3, s4];
1125
+ s2 = s3;
1137
1126
  } else {
1138
- peg$currPos = s1;
1139
- s1 = peg$FAILED;
1127
+ peg$currPos = s2;
1128
+ s2 = peg$FAILED;
1129
+ }
1130
+ if (s2 !== peg$FAILED) {
1131
+ s1 = input.substring(s1, peg$currPos);
1132
+ } else {
1133
+ s1 = s2;
1140
1134
  }
1141
1135
  if (s1 !== peg$FAILED) {
1142
1136
  s2 = [];
@@ -2210,30 +2204,36 @@ function peg$parse(input, options) {
2210
2204
  }
2211
2205
 
2212
2206
  function peg$parseText() {
2213
- var s0, s1, s2;
2207
+ var s0, s1, s2, s3;
2214
2208
 
2215
2209
  s0 = peg$currPos;
2216
- s1 = [];
2210
+ s1 = peg$currPos;
2211
+ s2 = [];
2217
2212
  if (peg$r10.test(input.charAt(peg$currPos))) {
2218
- s2 = input.charAt(peg$currPos);
2213
+ s3 = input.charAt(peg$currPos);
2219
2214
  peg$currPos++;
2220
2215
  } else {
2221
- s2 = peg$FAILED;
2216
+ s3 = peg$FAILED;
2222
2217
  if (peg$silentFails === 0) { peg$fail(peg$e18); }
2223
2218
  }
2224
- if (s2 !== peg$FAILED) {
2225
- while (s2 !== peg$FAILED) {
2226
- s1.push(s2);
2219
+ if (s3 !== peg$FAILED) {
2220
+ while (s3 !== peg$FAILED) {
2221
+ s2.push(s3);
2227
2222
  if (peg$r10.test(input.charAt(peg$currPos))) {
2228
- s2 = input.charAt(peg$currPos);
2223
+ s3 = input.charAt(peg$currPos);
2229
2224
  peg$currPos++;
2230
2225
  } else {
2231
- s2 = peg$FAILED;
2226
+ s3 = peg$FAILED;
2232
2227
  if (peg$silentFails === 0) { peg$fail(peg$e18); }
2233
2228
  }
2234
2229
  }
2235
2230
  } else {
2236
- s1 = peg$FAILED;
2231
+ s2 = peg$FAILED;
2232
+ }
2233
+ if (s2 !== peg$FAILED) {
2234
+ s1 = input.substring(s1, peg$currPos);
2235
+ } else {
2236
+ s1 = s2;
2237
2237
  }
2238
2238
  if (s1 !== peg$FAILED) {
2239
2239
  peg$savedPos = s0;
@@ -2245,30 +2245,36 @@ function peg$parse(input, options) {
2245
2245
  }
2246
2246
 
2247
2247
  function peg$parseTextNoQuotes() {
2248
- var s0, s1, s2;
2248
+ var s0, s1, s2, s3;
2249
2249
 
2250
2250
  s0 = peg$currPos;
2251
- s1 = [];
2251
+ s1 = peg$currPos;
2252
+ s2 = [];
2252
2253
  if (peg$r11.test(input.charAt(peg$currPos))) {
2253
- s2 = input.charAt(peg$currPos);
2254
+ s3 = input.charAt(peg$currPos);
2254
2255
  peg$currPos++;
2255
2256
  } else {
2256
- s2 = peg$FAILED;
2257
+ s3 = peg$FAILED;
2257
2258
  if (peg$silentFails === 0) { peg$fail(peg$e19); }
2258
2259
  }
2259
- if (s2 !== peg$FAILED) {
2260
- while (s2 !== peg$FAILED) {
2261
- s1.push(s2);
2260
+ if (s3 !== peg$FAILED) {
2261
+ while (s3 !== peg$FAILED) {
2262
+ s2.push(s3);
2262
2263
  if (peg$r11.test(input.charAt(peg$currPos))) {
2263
- s2 = input.charAt(peg$currPos);
2264
+ s3 = input.charAt(peg$currPos);
2264
2265
  peg$currPos++;
2265
2266
  } else {
2266
- s2 = peg$FAILED;
2267
+ s3 = peg$FAILED;
2267
2268
  if (peg$silentFails === 0) { peg$fail(peg$e19); }
2268
2269
  }
2269
2270
  }
2270
2271
  } else {
2271
- s1 = peg$FAILED;
2272
+ s2 = peg$FAILED;
2273
+ }
2274
+ if (s2 !== peg$FAILED) {
2275
+ s1 = input.substring(s1, peg$currPos);
2276
+ } else {
2277
+ s1 = s2;
2272
2278
  }
2273
2279
  if (s1 !== peg$FAILED) {
2274
2280
  peg$savedPos = s0;
@@ -2843,16 +2849,13 @@ function peg$parse(input, options) {
2843
2849
  if (s0 === peg$FAILED) {
2844
2850
  s0 = peg$parseLineBreak();
2845
2851
  if (s0 === peg$FAILED) {
2846
- s0 = peg$parseParBreak();
2852
+ s0 = peg$parseDiacriticCommand();
2847
2853
  if (s0 === peg$FAILED) {
2848
- s0 = peg$parseDiacriticCommand();
2854
+ s0 = peg$parseRegularCommand();
2849
2855
  if (s0 === peg$FAILED) {
2850
- s0 = peg$parseRegularCommand();
2856
+ s0 = peg$parseSymbolCommand();
2851
2857
  if (s0 === peg$FAILED) {
2852
- s0 = peg$parseSymbolCommand();
2853
- if (s0 === peg$FAILED) {
2854
- s0 = peg$parseInvalidCommand();
2855
- }
2858
+ s0 = peg$parseInvalidCommand();
2856
2859
  }
2857
2860
  }
2858
2861
  }
@@ -2886,63 +2889,6 @@ function peg$parse(input, options) {
2886
2889
  return s0;
2887
2890
  }
2888
2891
 
2889
- function peg$parseParBreak() {
2890
- var s0, s1, s2, s3, s4, s5, s6, s7;
2891
-
2892
- s0 = peg$currPos;
2893
- s1 = peg$parse__h();
2894
- if (input.charCodeAt(peg$currPos) === 13) {
2895
- s2 = peg$c18;
2896
- peg$currPos++;
2897
- } else {
2898
- s2 = peg$FAILED;
2899
- if (peg$silentFails === 0) { peg$fail(peg$e34); }
2900
- }
2901
- if (s2 === peg$FAILED) {
2902
- s2 = null;
2903
- }
2904
- if (input.charCodeAt(peg$currPos) === 10) {
2905
- s3 = peg$c19;
2906
- peg$currPos++;
2907
- } else {
2908
- s3 = peg$FAILED;
2909
- if (peg$silentFails === 0) { peg$fail(peg$e35); }
2910
- }
2911
- if (s3 !== peg$FAILED) {
2912
- s4 = peg$parse__h();
2913
- if (input.charCodeAt(peg$currPos) === 13) {
2914
- s5 = peg$c18;
2915
- peg$currPos++;
2916
- } else {
2917
- s5 = peg$FAILED;
2918
- if (peg$silentFails === 0) { peg$fail(peg$e34); }
2919
- }
2920
- if (s5 === peg$FAILED) {
2921
- s5 = null;
2922
- }
2923
- if (input.charCodeAt(peg$currPos) === 10) {
2924
- s6 = peg$c19;
2925
- peg$currPos++;
2926
- } else {
2927
- s6 = peg$FAILED;
2928
- if (peg$silentFails === 0) { peg$fail(peg$e35); }
2929
- }
2930
- if (s6 !== peg$FAILED) {
2931
- s7 = peg$parse__();
2932
- peg$savedPos = s0;
2933
- s0 = peg$f42();
2934
- } else {
2935
- peg$currPos = s0;
2936
- s0 = peg$FAILED;
2937
- }
2938
- } else {
2939
- peg$currPos = s0;
2940
- s0 = peg$FAILED;
2941
- }
2942
-
2943
- return s0;
2944
- }
2945
-
2946
2892
  function peg$parseScriptCommand() {
2947
2893
  var s0, s1, s2, s3;
2948
2894
 
@@ -2952,14 +2898,14 @@ function peg$parse(input, options) {
2952
2898
  peg$currPos++;
2953
2899
  } else {
2954
2900
  s1 = peg$FAILED;
2955
- if (peg$silentFails === 0) { peg$fail(peg$e36); }
2901
+ if (peg$silentFails === 0) { peg$fail(peg$e34); }
2956
2902
  }
2957
2903
  if (s1 !== peg$FAILED) {
2958
2904
  s2 = peg$parse__h();
2959
2905
  s3 = peg$parseArgument();
2960
2906
  if (s3 !== peg$FAILED) {
2961
2907
  peg$savedPos = s0;
2962
- s0 = peg$f43(s1, s3);
2908
+ s0 = peg$f42(s1, s3);
2963
2909
  } else {
2964
2910
  peg$currPos = s0;
2965
2911
  s0 = peg$FAILED;
@@ -3025,7 +2971,7 @@ function peg$parse(input, options) {
3025
2971
  }
3026
2972
  if (s4 !== peg$FAILED) {
3027
2973
  peg$savedPos = s0;
3028
- s0 = peg$f44(s2, s4);
2974
+ s0 = peg$f43(s2, s4);
3029
2975
  } else {
3030
2976
  peg$currPos = s0;
3031
2977
  s0 = peg$FAILED;
@@ -3104,7 +3050,7 @@ function peg$parse(input, options) {
3104
3050
  }
3105
3051
  if (s5 !== peg$FAILED) {
3106
3052
  peg$savedPos = s0;
3107
- s0 = peg$f45(s2, s4);
3053
+ s0 = peg$f44(s2, s4);
3108
3054
  } else {
3109
3055
  peg$currPos = s0;
3110
3056
  s0 = peg$FAILED;
@@ -3157,7 +3103,7 @@ function peg$parse(input, options) {
3157
3103
  s4 = peg$parseRegularValue();
3158
3104
  if (s4 !== peg$FAILED) {
3159
3105
  peg$savedPos = s0;
3160
- s0 = peg$f46(s2, s4);
3106
+ s0 = peg$f45(s2, s4);
3161
3107
  } else {
3162
3108
  peg$currPos = s0;
3163
3109
  s0 = peg$FAILED;
@@ -3198,7 +3144,7 @@ function peg$parse(input, options) {
3198
3144
  peg$currPos++;
3199
3145
  } else {
3200
3146
  s3 = peg$FAILED;
3201
- if (peg$silentFails === 0) { peg$fail(peg$e37); }
3147
+ if (peg$silentFails === 0) { peg$fail(peg$e35); }
3202
3148
  }
3203
3149
  if (s3 !== peg$FAILED) {
3204
3150
  s2 = input.substring(s2, peg$currPos);
@@ -3207,7 +3153,7 @@ function peg$parse(input, options) {
3207
3153
  }
3208
3154
  if (s2 !== peg$FAILED) {
3209
3155
  peg$savedPos = s0;
3210
- s0 = peg$f47(s2);
3156
+ s0 = peg$f46(s2);
3211
3157
  } else {
3212
3158
  peg$currPos = s0;
3213
3159
  s0 = peg$FAILED;
@@ -3232,18 +3178,18 @@ function peg$parse(input, options) {
3232
3178
  if (peg$silentFails === 0) { peg$fail(peg$e25); }
3233
3179
  }
3234
3180
  if (s1 !== peg$FAILED) {
3235
- if (input.substr(peg$currPos, 10) === peg$c20) {
3236
- s2 = peg$c20;
3181
+ if (input.substr(peg$currPos, 10) === peg$c18) {
3182
+ s2 = peg$c18;
3237
3183
  peg$currPos += 10;
3238
3184
  } else {
3239
3185
  s2 = peg$FAILED;
3240
- if (peg$silentFails === 0) { peg$fail(peg$e38); }
3186
+ if (peg$silentFails === 0) { peg$fail(peg$e36); }
3241
3187
  }
3242
3188
  if (s2 !== peg$FAILED) {
3243
3189
  s3 = peg$parseBlock();
3244
3190
  if (s3 !== peg$FAILED) {
3245
3191
  peg$savedPos = peg$currPos;
3246
- s4 = peg$f48(s2, s3);
3192
+ s4 = peg$f47(s2, s3);
3247
3193
  if (s4) {
3248
3194
  s4 = undefined;
3249
3195
  } else {
@@ -3259,7 +3205,7 @@ function peg$parse(input, options) {
3259
3205
  s6 = peg$parseArgument();
3260
3206
  if (s6 !== peg$FAILED) {
3261
3207
  peg$savedPos = s0;
3262
- s0 = peg$f49(s2, s3, s5, s6);
3208
+ s0 = peg$f48(s2, s3, s5, s6);
3263
3209
  } else {
3264
3210
  peg$currPos = s0;
3265
3211
  s0 = peg$FAILED;
@@ -3290,12 +3236,12 @@ function peg$parse(input, options) {
3290
3236
  if (peg$silentFails === 0) { peg$fail(peg$e25); }
3291
3237
  }
3292
3238
  if (s1 !== peg$FAILED) {
3293
- if (input.substr(peg$currPos, 3) === peg$c21) {
3294
- s2 = peg$c21;
3239
+ if (input.substr(peg$currPos, 3) === peg$c19) {
3240
+ s2 = peg$c19;
3295
3241
  peg$currPos += 3;
3296
3242
  } else {
3297
3243
  s2 = peg$FAILED;
3298
- if (peg$silentFails === 0) { peg$fail(peg$e39); }
3244
+ if (peg$silentFails === 0) { peg$fail(peg$e37); }
3299
3245
  }
3300
3246
  if (s2 !== peg$FAILED) {
3301
3247
  s3 = peg$parse__h();
@@ -3319,7 +3265,7 @@ function peg$parse(input, options) {
3319
3265
  s5 = peg$parseVerbatimFieldValue();
3320
3266
  if (s5 !== peg$FAILED) {
3321
3267
  peg$savedPos = s0;
3322
- s0 = peg$f50(s2, s5);
3268
+ s0 = peg$f49(s2, s5);
3323
3269
  } else {
3324
3270
  peg$currPos = s0;
3325
3271
  s0 = peg$FAILED;
@@ -3346,12 +3292,12 @@ function peg$parse(input, options) {
3346
3292
  if (peg$silentFails === 0) { peg$fail(peg$e25); }
3347
3293
  }
3348
3294
  if (s1 !== peg$FAILED) {
3349
- if (input.substr(peg$currPos, 4) === peg$c22) {
3350
- s2 = peg$c22;
3295
+ if (input.substr(peg$currPos, 4) === peg$c20) {
3296
+ s2 = peg$c20;
3351
3297
  peg$currPos += 4;
3352
3298
  } else {
3353
3299
  s2 = peg$FAILED;
3354
- if (peg$silentFails === 0) { peg$fail(peg$e40); }
3300
+ if (peg$silentFails === 0) { peg$fail(peg$e38); }
3355
3301
  }
3356
3302
  if (s2 !== peg$FAILED) {
3357
3303
  s3 = peg$parse__h();
@@ -3377,7 +3323,7 @@ function peg$parse(input, options) {
3377
3323
  s6 = peg$parseArgument();
3378
3324
  if (s6 !== peg$FAILED) {
3379
3325
  peg$savedPos = s0;
3380
- s0 = peg$f51(s2, s5, s6);
3326
+ s0 = peg$f50(s2, s5, s6);
3381
3327
  } else {
3382
3328
  peg$currPos = s0;
3383
3329
  s0 = peg$FAILED;
@@ -3400,12 +3346,12 @@ function peg$parse(input, options) {
3400
3346
  }
3401
3347
  if (s0 === peg$FAILED) {
3402
3348
  s0 = peg$currPos;
3403
- if (input.substr(peg$currPos, 5) === peg$c23) {
3404
- s1 = peg$c23;
3349
+ if (input.substr(peg$currPos, 5) === peg$c21) {
3350
+ s1 = peg$c21;
3405
3351
  peg$currPos += 5;
3406
3352
  } else {
3407
3353
  s1 = peg$FAILED;
3408
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
3354
+ if (peg$silentFails === 0) { peg$fail(peg$e39); }
3409
3355
  }
3410
3356
  if (s1 !== peg$FAILED) {
3411
3357
  if (input.length > peg$currPos) {
@@ -3413,11 +3359,11 @@ function peg$parse(input, options) {
3413
3359
  peg$currPos++;
3414
3360
  } else {
3415
3361
  s2 = peg$FAILED;
3416
- if (peg$silentFails === 0) { peg$fail(peg$e42); }
3362
+ if (peg$silentFails === 0) { peg$fail(peg$e40); }
3417
3363
  }
3418
3364
  if (s2 !== peg$FAILED) {
3419
3365
  peg$savedPos = peg$currPos;
3420
- s3 = peg$f52(s2);
3366
+ s3 = peg$f51(s2);
3421
3367
  if (s3) {
3422
3368
  s3 = undefined;
3423
3369
  } else {
@@ -3435,11 +3381,11 @@ function peg$parse(input, options) {
3435
3381
  peg$currPos++;
3436
3382
  } else {
3437
3383
  s5 = peg$FAILED;
3438
- if (peg$silentFails === 0) { peg$fail(peg$e42); }
3384
+ if (peg$silentFails === 0) { peg$fail(peg$e40); }
3439
3385
  }
3440
3386
  if (s5 !== peg$FAILED) {
3441
3387
  peg$savedPos = peg$currPos;
3442
- s6 = peg$f53(s2, s4);
3388
+ s6 = peg$f52(s2, s4);
3443
3389
  if (s6) {
3444
3390
  s6 = undefined;
3445
3391
  } else {
@@ -3447,7 +3393,7 @@ function peg$parse(input, options) {
3447
3393
  }
3448
3394
  if (s6 !== peg$FAILED) {
3449
3395
  peg$savedPos = s0;
3450
- s0 = peg$f54(s2, s4);
3396
+ s0 = peg$f53(s2, s4);
3451
3397
  } else {
3452
3398
  peg$currPos = s0;
3453
3399
  s0 = peg$FAILED;
@@ -3480,12 +3426,12 @@ function peg$parse(input, options) {
3480
3426
  if (s1 !== peg$FAILED) {
3481
3427
  s2 = peg$currPos;
3482
3428
  peg$silentFails++;
3483
- if (input.substr(peg$currPos, 5) === peg$c24) {
3484
- s3 = peg$c24;
3429
+ if (input.substr(peg$currPos, 5) === peg$c22) {
3430
+ s3 = peg$c22;
3485
3431
  peg$currPos += 5;
3486
3432
  } else {
3487
3433
  s3 = peg$FAILED;
3488
- if (peg$silentFails === 0) { peg$fail(peg$e43); }
3434
+ if (peg$silentFails === 0) { peg$fail(peg$e41); }
3489
3435
  }
3490
3436
  peg$silentFails--;
3491
3437
  if (s3 === peg$FAILED) {
@@ -3497,12 +3443,12 @@ function peg$parse(input, options) {
3497
3443
  if (s2 !== peg$FAILED) {
3498
3444
  s3 = peg$currPos;
3499
3445
  peg$silentFails++;
3500
- if (input.substr(peg$currPos, 3) === peg$c25) {
3501
- s4 = peg$c25;
3446
+ if (input.substr(peg$currPos, 3) === peg$c23) {
3447
+ s4 = peg$c23;
3502
3448
  peg$currPos += 3;
3503
3449
  } else {
3504
3450
  s4 = peg$FAILED;
3505
- if (peg$silentFails === 0) { peg$fail(peg$e44); }
3451
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
3506
3452
  }
3507
3453
  peg$silentFails--;
3508
3454
  if (s4 === peg$FAILED) {
@@ -3519,7 +3465,7 @@ function peg$parse(input, options) {
3519
3465
  peg$currPos++;
3520
3466
  } else {
3521
3467
  s6 = peg$FAILED;
3522
- if (peg$silentFails === 0) { peg$fail(peg$e45); }
3468
+ if (peg$silentFails === 0) { peg$fail(peg$e43); }
3523
3469
  }
3524
3470
  if (s6 !== peg$FAILED) {
3525
3471
  while (s6 !== peg$FAILED) {
@@ -3529,7 +3475,7 @@ function peg$parse(input, options) {
3529
3475
  peg$currPos++;
3530
3476
  } else {
3531
3477
  s6 = peg$FAILED;
3532
- if (peg$silentFails === 0) { peg$fail(peg$e45); }
3478
+ if (peg$silentFails === 0) { peg$fail(peg$e43); }
3533
3479
  }
3534
3480
  }
3535
3481
  } else {
@@ -3542,7 +3488,7 @@ function peg$parse(input, options) {
3542
3488
  }
3543
3489
  if (s4 !== peg$FAILED) {
3544
3490
  peg$savedPos = peg$currPos;
3545
- s5 = peg$f55(s4);
3491
+ s5 = peg$f54(s4);
3546
3492
  if (s5) {
3547
3493
  s5 = undefined;
3548
3494
  } else {
@@ -3578,7 +3524,7 @@ function peg$parse(input, options) {
3578
3524
  s10 = peg$parseVerbatimFieldValue();
3579
3525
  if (s10 !== peg$FAILED) {
3580
3526
  peg$savedPos = s0;
3581
- s0 = peg$f56(s4, s6, s9, s10);
3527
+ s0 = peg$f55(s4, s6, s9, s10);
3582
3528
  } else {
3583
3529
  peg$currPos = s0;
3584
3530
  s0 = peg$FAILED;
@@ -3623,12 +3569,12 @@ function peg$parse(input, options) {
3623
3569
  if (s1 !== peg$FAILED) {
3624
3570
  s2 = peg$currPos;
3625
3571
  peg$silentFails++;
3626
- if (input.substr(peg$currPos, 5) === peg$c24) {
3627
- s3 = peg$c24;
3572
+ if (input.substr(peg$currPos, 5) === peg$c22) {
3573
+ s3 = peg$c22;
3628
3574
  peg$currPos += 5;
3629
3575
  } else {
3630
3576
  s3 = peg$FAILED;
3631
- if (peg$silentFails === 0) { peg$fail(peg$e43); }
3577
+ if (peg$silentFails === 0) { peg$fail(peg$e41); }
3632
3578
  }
3633
3579
  peg$silentFails--;
3634
3580
  if (s3 === peg$FAILED) {
@@ -3640,12 +3586,12 @@ function peg$parse(input, options) {
3640
3586
  if (s2 !== peg$FAILED) {
3641
3587
  s3 = peg$currPos;
3642
3588
  peg$silentFails++;
3643
- if (input.substr(peg$currPos, 3) === peg$c25) {
3644
- s4 = peg$c25;
3589
+ if (input.substr(peg$currPos, 3) === peg$c23) {
3590
+ s4 = peg$c23;
3645
3591
  peg$currPos += 3;
3646
3592
  } else {
3647
3593
  s4 = peg$FAILED;
3648
- if (peg$silentFails === 0) { peg$fail(peg$e44); }
3594
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
3649
3595
  }
3650
3596
  peg$silentFails--;
3651
3597
  if (s4 === peg$FAILED) {
@@ -3662,7 +3608,7 @@ function peg$parse(input, options) {
3662
3608
  peg$currPos++;
3663
3609
  } else {
3664
3610
  s6 = peg$FAILED;
3665
- if (peg$silentFails === 0) { peg$fail(peg$e45); }
3611
+ if (peg$silentFails === 0) { peg$fail(peg$e43); }
3666
3612
  }
3667
3613
  if (s6 !== peg$FAILED) {
3668
3614
  while (s6 !== peg$FAILED) {
@@ -3672,7 +3618,7 @@ function peg$parse(input, options) {
3672
3618
  peg$currPos++;
3673
3619
  } else {
3674
3620
  s6 = peg$FAILED;
3675
- if (peg$silentFails === 0) { peg$fail(peg$e45); }
3621
+ if (peg$silentFails === 0) { peg$fail(peg$e43); }
3676
3622
  }
3677
3623
  }
3678
3624
  } else {
@@ -3685,7 +3631,7 @@ function peg$parse(input, options) {
3685
3631
  }
3686
3632
  if (s4 !== peg$FAILED) {
3687
3633
  peg$savedPos = peg$currPos;
3688
- s5 = peg$f57(s4);
3634
+ s5 = peg$f56(s4);
3689
3635
  if (s5) {
3690
3636
  s5 = undefined;
3691
3637
  } else {
@@ -3719,7 +3665,7 @@ function peg$parse(input, options) {
3719
3665
  s9 = peg$parseVerbatimFieldValue();
3720
3666
  if (s9 !== peg$FAILED) {
3721
3667
  peg$savedPos = s0;
3722
- s0 = peg$f58(s4, s6, s9);
3668
+ s0 = peg$f57(s4, s6, s9);
3723
3669
  } else {
3724
3670
  peg$currPos = s0;
3725
3671
  s0 = peg$FAILED;
@@ -3760,12 +3706,12 @@ function peg$parse(input, options) {
3760
3706
  if (s1 !== peg$FAILED) {
3761
3707
  s2 = peg$currPos;
3762
3708
  peg$silentFails++;
3763
- if (input.substr(peg$currPos, 5) === peg$c24) {
3764
- s3 = peg$c24;
3709
+ if (input.substr(peg$currPos, 5) === peg$c22) {
3710
+ s3 = peg$c22;
3765
3711
  peg$currPos += 5;
3766
3712
  } else {
3767
3713
  s3 = peg$FAILED;
3768
- if (peg$silentFails === 0) { peg$fail(peg$e43); }
3714
+ if (peg$silentFails === 0) { peg$fail(peg$e41); }
3769
3715
  }
3770
3716
  peg$silentFails--;
3771
3717
  if (s3 === peg$FAILED) {
@@ -3777,12 +3723,12 @@ function peg$parse(input, options) {
3777
3723
  if (s2 !== peg$FAILED) {
3778
3724
  s3 = peg$currPos;
3779
3725
  peg$silentFails++;
3780
- if (input.substr(peg$currPos, 3) === peg$c25) {
3781
- s4 = peg$c25;
3726
+ if (input.substr(peg$currPos, 3) === peg$c23) {
3727
+ s4 = peg$c23;
3782
3728
  peg$currPos += 3;
3783
3729
  } else {
3784
3730
  s4 = peg$FAILED;
3785
- if (peg$silentFails === 0) { peg$fail(peg$e44); }
3731
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
3786
3732
  }
3787
3733
  peg$silentFails--;
3788
3734
  if (s4 === peg$FAILED) {
@@ -3799,7 +3745,7 @@ function peg$parse(input, options) {
3799
3745
  peg$currPos++;
3800
3746
  } else {
3801
3747
  s6 = peg$FAILED;
3802
- if (peg$silentFails === 0) { peg$fail(peg$e45); }
3748
+ if (peg$silentFails === 0) { peg$fail(peg$e43); }
3803
3749
  }
3804
3750
  if (s6 !== peg$FAILED) {
3805
3751
  while (s6 !== peg$FAILED) {
@@ -3809,7 +3755,7 @@ function peg$parse(input, options) {
3809
3755
  peg$currPos++;
3810
3756
  } else {
3811
3757
  s6 = peg$FAILED;
3812
- if (peg$silentFails === 0) { peg$fail(peg$e45); }
3758
+ if (peg$silentFails === 0) { peg$fail(peg$e43); }
3813
3759
  }
3814
3760
  }
3815
3761
  } else {
@@ -3822,7 +3768,7 @@ function peg$parse(input, options) {
3822
3768
  }
3823
3769
  if (s4 !== peg$FAILED) {
3824
3770
  peg$savedPos = peg$currPos;
3825
- s5 = peg$f59(s4);
3771
+ s5 = peg$f58(s4);
3826
3772
  if (s5) {
3827
3773
  s5 = undefined;
3828
3774
  } else {
@@ -3841,7 +3787,7 @@ function peg$parse(input, options) {
3841
3787
  s9 = peg$parseArgument();
3842
3788
  if (s9 !== peg$FAILED) {
3843
3789
  peg$savedPos = s0;
3844
- s0 = peg$f60(s4, s6, s8, s9);
3790
+ s0 = peg$f59(s4, s6, s8, s9);
3845
3791
  } else {
3846
3792
  peg$currPos = s0;
3847
3793
  s0 = peg$FAILED;
@@ -3882,12 +3828,12 @@ function peg$parse(input, options) {
3882
3828
  if (s1 !== peg$FAILED) {
3883
3829
  s2 = peg$currPos;
3884
3830
  peg$silentFails++;
3885
- if (input.substr(peg$currPos, 5) === peg$c24) {
3886
- s3 = peg$c24;
3831
+ if (input.substr(peg$currPos, 5) === peg$c22) {
3832
+ s3 = peg$c22;
3887
3833
  peg$currPos += 5;
3888
3834
  } else {
3889
3835
  s3 = peg$FAILED;
3890
- if (peg$silentFails === 0) { peg$fail(peg$e43); }
3836
+ if (peg$silentFails === 0) { peg$fail(peg$e41); }
3891
3837
  }
3892
3838
  peg$silentFails--;
3893
3839
  if (s3 === peg$FAILED) {
@@ -3899,12 +3845,12 @@ function peg$parse(input, options) {
3899
3845
  if (s2 !== peg$FAILED) {
3900
3846
  s3 = peg$currPos;
3901
3847
  peg$silentFails++;
3902
- if (input.substr(peg$currPos, 3) === peg$c25) {
3903
- s4 = peg$c25;
3848
+ if (input.substr(peg$currPos, 3) === peg$c23) {
3849
+ s4 = peg$c23;
3904
3850
  peg$currPos += 3;
3905
3851
  } else {
3906
3852
  s4 = peg$FAILED;
3907
- if (peg$silentFails === 0) { peg$fail(peg$e44); }
3853
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
3908
3854
  }
3909
3855
  peg$silentFails--;
3910
3856
  if (s4 === peg$FAILED) {
@@ -3921,7 +3867,7 @@ function peg$parse(input, options) {
3921
3867
  peg$currPos++;
3922
3868
  } else {
3923
3869
  s6 = peg$FAILED;
3924
- if (peg$silentFails === 0) { peg$fail(peg$e45); }
3870
+ if (peg$silentFails === 0) { peg$fail(peg$e43); }
3925
3871
  }
3926
3872
  if (s6 !== peg$FAILED) {
3927
3873
  while (s6 !== peg$FAILED) {
@@ -3931,7 +3877,7 @@ function peg$parse(input, options) {
3931
3877
  peg$currPos++;
3932
3878
  } else {
3933
3879
  s6 = peg$FAILED;
3934
- if (peg$silentFails === 0) { peg$fail(peg$e45); }
3880
+ if (peg$silentFails === 0) { peg$fail(peg$e43); }
3935
3881
  }
3936
3882
  }
3937
3883
  } else {
@@ -3944,7 +3890,7 @@ function peg$parse(input, options) {
3944
3890
  }
3945
3891
  if (s4 !== peg$FAILED) {
3946
3892
  peg$savedPos = peg$currPos;
3947
- s5 = peg$f61(s4);
3893
+ s5 = peg$f60(s4);
3948
3894
  if (s5) {
3949
3895
  s5 = undefined;
3950
3896
  } else {
@@ -3961,7 +3907,7 @@ function peg$parse(input, options) {
3961
3907
  s8 = peg$parseArgument();
3962
3908
  if (s8 !== peg$FAILED) {
3963
3909
  peg$savedPos = s0;
3964
- s0 = peg$f62(s4, s6, s8);
3910
+ s0 = peg$f61(s4, s6, s8);
3965
3911
  } else {
3966
3912
  peg$currPos = s0;
3967
3913
  s0 = peg$FAILED;
@@ -3998,12 +3944,12 @@ function peg$parse(input, options) {
3998
3944
  if (s1 !== peg$FAILED) {
3999
3945
  s2 = peg$currPos;
4000
3946
  peg$silentFails++;
4001
- if (input.substr(peg$currPos, 5) === peg$c24) {
4002
- s3 = peg$c24;
3947
+ if (input.substr(peg$currPos, 5) === peg$c22) {
3948
+ s3 = peg$c22;
4003
3949
  peg$currPos += 5;
4004
3950
  } else {
4005
3951
  s3 = peg$FAILED;
4006
- if (peg$silentFails === 0) { peg$fail(peg$e43); }
3952
+ if (peg$silentFails === 0) { peg$fail(peg$e41); }
4007
3953
  }
4008
3954
  peg$silentFails--;
4009
3955
  if (s3 === peg$FAILED) {
@@ -4015,12 +3961,12 @@ function peg$parse(input, options) {
4015
3961
  if (s2 !== peg$FAILED) {
4016
3962
  s3 = peg$currPos;
4017
3963
  peg$silentFails++;
4018
- if (input.substr(peg$currPos, 3) === peg$c25) {
4019
- s4 = peg$c25;
3964
+ if (input.substr(peg$currPos, 3) === peg$c23) {
3965
+ s4 = peg$c23;
4020
3966
  peg$currPos += 3;
4021
3967
  } else {
4022
3968
  s4 = peg$FAILED;
4023
- if (peg$silentFails === 0) { peg$fail(peg$e44); }
3969
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
4024
3970
  }
4025
3971
  peg$silentFails--;
4026
3972
  if (s4 === peg$FAILED) {
@@ -4037,7 +3983,7 @@ function peg$parse(input, options) {
4037
3983
  peg$currPos++;
4038
3984
  } else {
4039
3985
  s6 = peg$FAILED;
4040
- if (peg$silentFails === 0) { peg$fail(peg$e45); }
3986
+ if (peg$silentFails === 0) { peg$fail(peg$e43); }
4041
3987
  }
4042
3988
  if (s6 !== peg$FAILED) {
4043
3989
  while (s6 !== peg$FAILED) {
@@ -4047,7 +3993,7 @@ function peg$parse(input, options) {
4047
3993
  peg$currPos++;
4048
3994
  } else {
4049
3995
  s6 = peg$FAILED;
4050
- if (peg$silentFails === 0) { peg$fail(peg$e45); }
3996
+ if (peg$silentFails === 0) { peg$fail(peg$e43); }
4051
3997
  }
4052
3998
  }
4053
3999
  } else {
@@ -4067,7 +4013,7 @@ function peg$parse(input, options) {
4067
4013
  }
4068
4014
  s6 = peg$parse__();
4069
4015
  peg$savedPos = s0;
4070
- s0 = peg$f63(s4, s5);
4016
+ s0 = peg$f62(s4, s5);
4071
4017
  } else {
4072
4018
  peg$currPos = s0;
4073
4019
  s0 = peg$FAILED;
@@ -4105,11 +4051,11 @@ function peg$parse(input, options) {
4105
4051
  peg$currPos++;
4106
4052
  } else {
4107
4053
  s1 = peg$FAILED;
4108
- if (peg$silentFails === 0) { peg$fail(peg$e42); }
4054
+ if (peg$silentFails === 0) { peg$fail(peg$e40); }
4109
4055
  }
4110
4056
  if (s1 !== peg$FAILED) {
4111
4057
  peg$savedPos = peg$currPos;
4112
- s2 = peg$f64(s1);
4058
+ s2 = peg$f63(s1);
4113
4059
  if (s2) {
4114
4060
  s2 = undefined;
4115
4061
  } else {
@@ -4117,7 +4063,7 @@ function peg$parse(input, options) {
4117
4063
  }
4118
4064
  if (s2 !== peg$FAILED) {
4119
4065
  peg$savedPos = s0;
4120
- s0 = peg$f65(s1);
4066
+ s0 = peg$f64(s1);
4121
4067
  } else {
4122
4068
  peg$currPos = s0;
4123
4069
  s0 = peg$FAILED;
@@ -4144,12 +4090,12 @@ function peg$parse(input, options) {
4144
4090
  if (s1 !== peg$FAILED) {
4145
4091
  s2 = peg$currPos;
4146
4092
  peg$silentFails++;
4147
- if (input.substr(peg$currPos, 5) === peg$c24) {
4148
- s3 = peg$c24;
4093
+ if (input.substr(peg$currPos, 5) === peg$c22) {
4094
+ s3 = peg$c22;
4149
4095
  peg$currPos += 5;
4150
4096
  } else {
4151
4097
  s3 = peg$FAILED;
4152
- if (peg$silentFails === 0) { peg$fail(peg$e43); }
4098
+ if (peg$silentFails === 0) { peg$fail(peg$e41); }
4153
4099
  }
4154
4100
  peg$silentFails--;
4155
4101
  if (s3 === peg$FAILED) {
@@ -4161,12 +4107,12 @@ function peg$parse(input, options) {
4161
4107
  if (s2 !== peg$FAILED) {
4162
4108
  s3 = peg$currPos;
4163
4109
  peg$silentFails++;
4164
- if (input.substr(peg$currPos, 3) === peg$c25) {
4165
- s4 = peg$c25;
4110
+ if (input.substr(peg$currPos, 3) === peg$c23) {
4111
+ s4 = peg$c23;
4166
4112
  peg$currPos += 3;
4167
4113
  } else {
4168
4114
  s4 = peg$FAILED;
4169
- if (peg$silentFails === 0) { peg$fail(peg$e44); }
4115
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
4170
4116
  }
4171
4117
  peg$silentFails--;
4172
4118
  if (s4 === peg$FAILED) {
@@ -4186,7 +4132,7 @@ function peg$parse(input, options) {
4186
4132
  if (s4 !== peg$FAILED) {
4187
4133
  s5 = peg$parse__();
4188
4134
  peg$savedPos = s0;
4189
- s0 = peg$f66(s4);
4135
+ s0 = peg$f65(s4);
4190
4136
  } else {
4191
4137
  peg$currPos = s0;
4192
4138
  s0 = peg$FAILED;
@@ -4212,11 +4158,11 @@ function peg$parse(input, options) {
4212
4158
 
4213
4159
  s0 = peg$currPos;
4214
4160
  if (input.charCodeAt(peg$currPos) === 91) {
4215
- s1 = peg$c26;
4161
+ s1 = peg$c24;
4216
4162
  peg$currPos++;
4217
4163
  } else {
4218
4164
  s1 = peg$FAILED;
4219
- if (peg$silentFails === 0) { peg$fail(peg$e46); }
4165
+ if (peg$silentFails === 0) { peg$fail(peg$e44); }
4220
4166
  }
4221
4167
  if (s1 !== peg$FAILED) {
4222
4168
  s2 = peg$parse__h();
@@ -4227,7 +4173,7 @@ function peg$parse(input, options) {
4227
4173
  peg$currPos++;
4228
4174
  } else {
4229
4175
  s5 = peg$FAILED;
4230
- if (peg$silentFails === 0) { peg$fail(peg$e47); }
4176
+ if (peg$silentFails === 0) { peg$fail(peg$e45); }
4231
4177
  }
4232
4178
  if (s5 !== peg$FAILED) {
4233
4179
  while (s5 !== peg$FAILED) {
@@ -4237,7 +4183,7 @@ function peg$parse(input, options) {
4237
4183
  peg$currPos++;
4238
4184
  } else {
4239
4185
  s5 = peg$FAILED;
4240
- if (peg$silentFails === 0) { peg$fail(peg$e47); }
4186
+ if (peg$silentFails === 0) { peg$fail(peg$e45); }
4241
4187
  }
4242
4188
  }
4243
4189
  } else {
@@ -4251,15 +4197,15 @@ function peg$parse(input, options) {
4251
4197
  if (s3 !== peg$FAILED) {
4252
4198
  s4 = peg$parse__h();
4253
4199
  if (input.charCodeAt(peg$currPos) === 93) {
4254
- s5 = peg$c27;
4200
+ s5 = peg$c25;
4255
4201
  peg$currPos++;
4256
4202
  } else {
4257
4203
  s5 = peg$FAILED;
4258
- if (peg$silentFails === 0) { peg$fail(peg$e48); }
4204
+ if (peg$silentFails === 0) { peg$fail(peg$e46); }
4259
4205
  }
4260
4206
  if (s5 !== peg$FAILED) {
4261
4207
  peg$savedPos = s0;
4262
- s0 = peg$f67(s3);
4208
+ s0 = peg$f66(s3);
4263
4209
  } else {
4264
4210
  peg$currPos = s0;
4265
4211
  s0 = peg$FAILED;
@@ -4286,11 +4232,11 @@ function peg$parse(input, options) {
4286
4232
  peg$currPos++;
4287
4233
  } else {
4288
4234
  s2 = peg$FAILED;
4289
- if (peg$silentFails === 0) { peg$fail(peg$e49); }
4235
+ if (peg$silentFails === 0) { peg$fail(peg$e47); }
4290
4236
  }
4291
4237
  if (s2 !== peg$FAILED) {
4292
4238
  peg$savedPos = s0;
4293
- s0 = peg$f68(s2);
4239
+ s0 = peg$f67(s2);
4294
4240
  } else {
4295
4241
  peg$currPos = s0;
4296
4242
  s0 = peg$FAILED;
@@ -4304,7 +4250,7 @@ function peg$parse(input, options) {
4304
4250
  }
4305
4251
  if (s2 !== peg$FAILED) {
4306
4252
  peg$savedPos = s0;
4307
- s0 = peg$f69(s2);
4253
+ s0 = peg$f68(s2);
4308
4254
  } else {
4309
4255
  peg$currPos = s0;
4310
4256
  s0 = peg$FAILED;
@@ -4324,7 +4270,7 @@ function peg$parse(input, options) {
4324
4270
  peg$currPos++;
4325
4271
  } else {
4326
4272
  s2 = peg$FAILED;
4327
- if (peg$silentFails === 0) { peg$fail(peg$e50); }
4273
+ if (peg$silentFails === 0) { peg$fail(peg$e48); }
4328
4274
  }
4329
4275
  if (s2 !== peg$FAILED) {
4330
4276
  s3 = [];
@@ -4333,7 +4279,7 @@ function peg$parse(input, options) {
4333
4279
  peg$currPos++;
4334
4280
  } else {
4335
4281
  s4 = peg$FAILED;
4336
- if (peg$silentFails === 0) { peg$fail(peg$e51); }
4282
+ if (peg$silentFails === 0) { peg$fail(peg$e49); }
4337
4283
  }
4338
4284
  while (s4 !== peg$FAILED) {
4339
4285
  s3.push(s4);
@@ -4342,7 +4288,7 @@ function peg$parse(input, options) {
4342
4288
  peg$currPos++;
4343
4289
  } else {
4344
4290
  s4 = peg$FAILED;
4345
- if (peg$silentFails === 0) { peg$fail(peg$e51); }
4291
+ if (peg$silentFails === 0) { peg$fail(peg$e49); }
4346
4292
  }
4347
4293
  }
4348
4294
  s2 = [s2, s3];
@@ -4368,7 +4314,7 @@ function peg$parse(input, options) {
4368
4314
  peg$currPos++;
4369
4315
  } else {
4370
4316
  s0 = peg$FAILED;
4371
- if (peg$silentFails === 0) { peg$fail(peg$e52); }
4317
+ if (peg$silentFails === 0) { peg$fail(peg$e50); }
4372
4318
  }
4373
4319
 
4374
4320
  return s0;
@@ -4382,7 +4328,7 @@ function peg$parse(input, options) {
4382
4328
  peg$currPos++;
4383
4329
  } else {
4384
4330
  s0 = peg$FAILED;
4385
- if (peg$silentFails === 0) { peg$fail(peg$e53); }
4331
+ if (peg$silentFails === 0) { peg$fail(peg$e51); }
4386
4332
  }
4387
4333
 
4388
4334
  return s0;
@@ -4394,11 +4340,11 @@ function peg$parse(input, options) {
4394
4340
  s0 = peg$currPos;
4395
4341
  s1 = peg$parse__();
4396
4342
  if (input.charCodeAt(peg$currPos) === 61) {
4397
- s2 = peg$c28;
4343
+ s2 = peg$c26;
4398
4344
  peg$currPos++;
4399
4345
  } else {
4400
4346
  s2 = peg$FAILED;
4401
- if (peg$silentFails === 0) { peg$fail(peg$e54); }
4347
+ if (peg$silentFails === 0) { peg$fail(peg$e52); }
4402
4348
  }
4403
4349
  if (s2 !== peg$FAILED) {
4404
4350
  s3 = peg$parse__();
@@ -4438,11 +4384,11 @@ function peg$parse(input, options) {
4438
4384
  s0 = peg$currPos;
4439
4385
  s1 = peg$parse__();
4440
4386
  if (input.charCodeAt(peg$currPos) === 35) {
4441
- s2 = peg$c29;
4387
+ s2 = peg$c27;
4442
4388
  peg$currPos++;
4443
4389
  } else {
4444
4390
  s2 = peg$FAILED;
4445
- if (peg$silentFails === 0) { peg$fail(peg$e55); }
4391
+ if (peg$silentFails === 0) { peg$fail(peg$e53); }
4446
4392
  }
4447
4393
  if (s2 !== peg$FAILED) {
4448
4394
  s3 = peg$parse__();
@@ -4464,7 +4410,7 @@ function peg$parse(input, options) {
4464
4410
  peg$currPos++;
4465
4411
  } else {
4466
4412
  s0 = peg$FAILED;
4467
- if (peg$silentFails === 0) { peg$fail(peg$e56); }
4413
+ if (peg$silentFails === 0) { peg$fail(peg$e54); }
4468
4414
  }
4469
4415
 
4470
4416
  return s0;
@@ -4480,7 +4426,7 @@ function peg$parse(input, options) {
4480
4426
  peg$currPos++;
4481
4427
  } else {
4482
4428
  s1 = peg$FAILED;
4483
- if (peg$silentFails === 0) { peg$fail(peg$e58); }
4429
+ if (peg$silentFails === 0) { peg$fail(peg$e56); }
4484
4430
  }
4485
4431
  if (s1 !== peg$FAILED) {
4486
4432
  while (s1 !== peg$FAILED) {
@@ -4490,7 +4436,7 @@ function peg$parse(input, options) {
4490
4436
  peg$currPos++;
4491
4437
  } else {
4492
4438
  s1 = peg$FAILED;
4493
- if (peg$silentFails === 0) { peg$fail(peg$e58); }
4439
+ if (peg$silentFails === 0) { peg$fail(peg$e56); }
4494
4440
  }
4495
4441
  }
4496
4442
  } else {
@@ -4499,7 +4445,7 @@ function peg$parse(input, options) {
4499
4445
  peg$silentFails--;
4500
4446
  if (s0 === peg$FAILED) {
4501
4447
  s1 = peg$FAILED;
4502
- if (peg$silentFails === 0) { peg$fail(peg$e57); }
4448
+ if (peg$silentFails === 0) { peg$fail(peg$e55); }
4503
4449
  }
4504
4450
 
4505
4451
  return s0;
@@ -4515,7 +4461,7 @@ function peg$parse(input, options) {
4515
4461
  peg$currPos++;
4516
4462
  } else {
4517
4463
  s1 = peg$FAILED;
4518
- if (peg$silentFails === 0) { peg$fail(peg$e58); }
4464
+ if (peg$silentFails === 0) { peg$fail(peg$e56); }
4519
4465
  }
4520
4466
  while (s1 !== peg$FAILED) {
4521
4467
  s0.push(s1);
@@ -4524,12 +4470,12 @@ function peg$parse(input, options) {
4524
4470
  peg$currPos++;
4525
4471
  } else {
4526
4472
  s1 = peg$FAILED;
4527
- if (peg$silentFails === 0) { peg$fail(peg$e58); }
4473
+ if (peg$silentFails === 0) { peg$fail(peg$e56); }
4528
4474
  }
4529
4475
  }
4530
4476
  peg$silentFails--;
4531
4477
  s1 = peg$FAILED;
4532
- if (peg$silentFails === 0) { peg$fail(peg$e59); }
4478
+ if (peg$silentFails === 0) { peg$fail(peg$e57); }
4533
4479
 
4534
4480
  return s0;
4535
4481
  }
@@ -4544,7 +4490,7 @@ function peg$parse(input, options) {
4544
4490
  peg$currPos++;
4545
4491
  } else {
4546
4492
  s1 = peg$FAILED;
4547
- if (peg$silentFails === 0) { peg$fail(peg$e56); }
4493
+ if (peg$silentFails === 0) { peg$fail(peg$e54); }
4548
4494
  }
4549
4495
  if (s1 !== peg$FAILED) {
4550
4496
  while (s1 !== peg$FAILED) {
@@ -4554,7 +4500,7 @@ function peg$parse(input, options) {
4554
4500
  peg$currPos++;
4555
4501
  } else {
4556
4502
  s1 = peg$FAILED;
4557
- if (peg$silentFails === 0) { peg$fail(peg$e56); }
4503
+ if (peg$silentFails === 0) { peg$fail(peg$e54); }
4558
4504
  }
4559
4505
  }
4560
4506
  } else {
@@ -4563,7 +4509,7 @@ function peg$parse(input, options) {
4563
4509
  peg$silentFails--;
4564
4510
  if (s0 === peg$FAILED) {
4565
4511
  s1 = peg$FAILED;
4566
- if (peg$silentFails === 0) { peg$fail(peg$e60); }
4512
+ if (peg$silentFails === 0) { peg$fail(peg$e58); }
4567
4513
  }
4568
4514
 
4569
4515
  return s0;
@@ -4579,7 +4525,7 @@ function peg$parse(input, options) {
4579
4525
  peg$currPos++;
4580
4526
  } else {
4581
4527
  s1 = peg$FAILED;
4582
- if (peg$silentFails === 0) { peg$fail(peg$e56); }
4528
+ if (peg$silentFails === 0) { peg$fail(peg$e54); }
4583
4529
  }
4584
4530
  while (s1 !== peg$FAILED) {
4585
4531
  s0.push(s1);
@@ -4588,12 +4534,12 @@ function peg$parse(input, options) {
4588
4534
  peg$currPos++;
4589
4535
  } else {
4590
4536
  s1 = peg$FAILED;
4591
- if (peg$silentFails === 0) { peg$fail(peg$e56); }
4537
+ if (peg$silentFails === 0) { peg$fail(peg$e54); }
4592
4538
  }
4593
4539
  }
4594
4540
  peg$silentFails--;
4595
4541
  s1 = peg$FAILED;
4596
- if (peg$silentFails === 0) { peg$fail(peg$e61); }
4542
+ if (peg$silentFails === 0) { peg$fail(peg$e59); }
4597
4543
 
4598
4544
  return s0;
4599
4545
  }
@@ -4608,7 +4554,7 @@ function peg$parse(input, options) {
4608
4554
  peg$currPos++;
4609
4555
  } else {
4610
4556
  s1 = peg$FAILED;
4611
- if (peg$silentFails === 0) { peg$fail(peg$e63); }
4557
+ if (peg$silentFails === 0) { peg$fail(peg$e61); }
4612
4558
  }
4613
4559
  if (s1 !== peg$FAILED) {
4614
4560
  while (s1 !== peg$FAILED) {
@@ -4618,7 +4564,7 @@ function peg$parse(input, options) {
4618
4564
  peg$currPos++;
4619
4565
  } else {
4620
4566
  s1 = peg$FAILED;
4621
- if (peg$silentFails === 0) { peg$fail(peg$e63); }
4567
+ if (peg$silentFails === 0) { peg$fail(peg$e61); }
4622
4568
  }
4623
4569
  }
4624
4570
  } else {
@@ -4627,7 +4573,7 @@ function peg$parse(input, options) {
4627
4573
  peg$silentFails--;
4628
4574
  if (s0 === peg$FAILED) {
4629
4575
  s1 = peg$FAILED;
4630
- if (peg$silentFails === 0) { peg$fail(peg$e62); }
4576
+ if (peg$silentFails === 0) { peg$fail(peg$e60); }
4631
4577
  }
4632
4578
 
4633
4579
  return s0;
@@ -4643,7 +4589,7 @@ function peg$parse(input, options) {
4643
4589
  peg$currPos++;
4644
4590
  } else {
4645
4591
  s1 = peg$FAILED;
4646
- if (peg$silentFails === 0) { peg$fail(peg$e63); }
4592
+ if (peg$silentFails === 0) { peg$fail(peg$e61); }
4647
4593
  }
4648
4594
  while (s1 !== peg$FAILED) {
4649
4595
  s0.push(s1);
@@ -4652,12 +4598,12 @@ function peg$parse(input, options) {
4652
4598
  peg$currPos++;
4653
4599
  } else {
4654
4600
  s1 = peg$FAILED;
4655
- if (peg$silentFails === 0) { peg$fail(peg$e63); }
4601
+ if (peg$silentFails === 0) { peg$fail(peg$e61); }
4656
4602
  }
4657
4603
  }
4658
4604
  peg$silentFails--;
4659
4605
  s1 = peg$FAILED;
4660
- if (peg$silentFails === 0) { peg$fail(peg$e64); }
4606
+ if (peg$silentFails === 0) { peg$fail(peg$e62); }
4661
4607
 
4662
4608
  return s0;
4663
4609
  }
@@ -4713,19 +4659,8 @@ function peg$parse(input, options) {
4713
4659
  return verbatimFields.find(p => (typeof p === 'string') ? name === p : name.match(p))
4714
4660
  }
4715
4661
 
4716
- function normalizeWhitespace(textArr) {
4717
- if (typeof textArr === 'string') textArr = Array.from(textArr)
4718
-
4719
- return textArr.reduce((prev, curr) => {
4720
- if (/\s/.test(curr)) {
4721
- if (/\s/.test(prev[prev.length - 1])) {
4722
- return prev;
4723
- } else {
4724
- return prev + ' ';
4725
- }
4726
- }
4727
- return prev + curr;
4728
- }, '');
4662
+ function normalizeWhitespace(t) {
4663
+ return t.replace(/\r/g, '').replace(/[ \t\n]+/g, ' ')
4729
4664
  }
4730
4665
 
4731
4666
  const has_arguments = {
@@ -4917,6 +4852,34 @@ function peg$parse(input, options) {
4917
4852
  return block
4918
4853
  }
4919
4854
 
4855
+ function parBreak(nodes) {
4856
+ const broken = []
4857
+ for (const node of nodes) {
4858
+ if (node.kind !== 'Text') {
4859
+ broken.push(node)
4860
+ }
4861
+ else {
4862
+ node.value.split(/([ \t\r]*\n[ \t\r]*\n[ \t\r\n]*|[ \t\r\n]*\u2029[ \t\r\n]*)/).forEach((par, i) => {
4863
+ if (i % 2 == 0) {
4864
+ broken.push(basicTextConversions({...node, value: normalizeWhitespace(par)}))
4865
+ }
4866
+ else {
4867
+ broken.push({
4868
+ ...node,
4869
+ kind: 'RegularCommand',
4870
+ command: 'par',
4871
+ arguments: {
4872
+ optional: [],
4873
+ required: [],
4874
+ },
4875
+ })
4876
+ }
4877
+ })
4878
+ }
4879
+ }
4880
+ return broken
4881
+ }
4882
+
4920
4883
  peg$result = peg$startRuleFunction();
4921
4884
 
4922
4885
  if (peg$result !== peg$FAILED && peg$currPos === input.length) {