@bablr/cli 0.9.0 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/bin/index.js +18 -16
  2. package/lib/syntax.js +14 -9
  3. package/package.json +10 -10
package/bin/index.js CHANGED
@@ -53,23 +53,25 @@ const options = {
53
53
 
54
54
  const language = await import(options.language);
55
55
 
56
- const matcher = buildEmbeddedMatcher(
57
- buildPropertyMatcher(
58
- null,
59
- null,
60
- buildBasicNodeMatcher(
61
- buildOpenNodeMatcher(
62
- buildNodeFlags({
63
- hasGap: options.gaps,
64
- fragment: options.fragment,
65
- token: options.token,
66
- cover: options.cover,
67
- }),
68
- options.production,
56
+ const matcher = options.production
57
+ ? buildEmbeddedMatcher(
58
+ buildPropertyMatcher(
59
+ null,
60
+ null,
61
+ buildBasicNodeMatcher(
62
+ buildOpenNodeMatcher(
63
+ buildNodeFlags({
64
+ hasGap: options.gaps,
65
+ fragment: options.fragment,
66
+ token: options.token,
67
+ cover: options.cover,
68
+ }),
69
+ options.production,
70
+ ),
71
+ ),
69
72
  ),
70
- ),
71
- ),
72
- );
73
+ )
74
+ : language.defaultMatcher;
73
75
 
74
76
  const logStderr = (...args) => {
75
77
  process.stderr.write(args.join(' ') + '\n');
package/lib/syntax.js CHANGED
@@ -54,7 +54,7 @@ function* __higlightStrategy(tags) {
54
54
 
55
55
  if (
56
56
  tagType === Symbol.for('LiteralTag') ||
57
- (tagType === Symbol.for('String') && currentRef.name === 'intrinsicValue')
57
+ (tagType === Symbol.for('String') && currentRef.name === 'literalValue')
58
58
  ) {
59
59
  if (tagType === Symbol.for('LiteralTag') || currentType === Symbol.for('OpenNodeTag')) {
60
60
  yield buildAnsiPushEffect('bold green');
@@ -67,6 +67,12 @@ function* __higlightStrategy(tags) {
67
67
  yield buildAnsiPushEffect('bold orange');
68
68
  } else if (tagType === Symbol.for('EscapeSequence')) {
69
69
  yield buildAnsiPushEffect('bold cyan');
70
+ } else if (tagType === Symbol.for('Punctuator')) {
71
+ if (currentType === Symbol.for('ReferenceTag')) {
72
+ yield buildAnsiPushEffect('bold gray');
73
+ } else {
74
+ yield buildAnsiPushEffect();
75
+ }
70
76
  } else if (tagType === Symbol.for('Identifier')) {
71
77
  if (currentType === Symbol.for('ReferenceTag')) {
72
78
  yield buildAnsiPushEffect('bold gray');
@@ -97,20 +103,19 @@ function* __higlightStrategy(tags) {
97
103
  currentRef = tag.value;
98
104
  }
99
105
 
100
- if (tag.type === CloseNodeTag) {
101
- types = types.pop();
102
- yield buildAnsiPopEffect();
103
- }
104
-
105
106
  if (tag.type === LiteralTag) {
106
107
  yield buildWriteEffect(tag.value);
107
- } else if (tag.type === OpenNodeTag && tag.value.intrinsicValue) {
108
- yield buildWriteEffect(tag.value.intrinsicValue);
109
- yield buildAnsiPopEffect();
108
+ } else if (tag.type === OpenNodeTag && tag.value.literalValue) {
109
+ yield buildWriteEffect(tag.value.literalValue);
110
110
  }
111
111
 
112
112
  yield tag;
113
113
 
114
+ if (tag.type === CloseNodeTag || (tag.type === OpenNodeTag && tag.value.selfClosing)) {
115
+ types = types.pop();
116
+ yield buildAnsiPopEffect();
117
+ }
118
+
114
119
  co.advance();
115
120
  }
116
121
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bablr/cli",
3
3
  "description": "CLI for running BABLR parsers",
4
- "version": "0.9.0",
4
+ "version": "0.10.0",
5
5
  "author": "Conrad Buck<conartist6@gmail.com>",
6
6
  "type": "module",
7
7
  "files": [
@@ -17,16 +17,16 @@
17
17
  },
18
18
  "sideEffects": false,
19
19
  "dependencies": {
20
- "@bablr/agast-helpers": "0.8.0",
21
- "@bablr/agast-vm-helpers": "0.8.0",
22
- "@bablr/io-vm-node": "0.7.0",
23
- "@bablr/boot": "0.9.0",
20
+ "@bablr/agast-helpers": "0.9.0",
21
+ "@bablr/agast-vm-helpers": "0.9.0",
22
+ "@bablr/io-vm-node": "0.8.0",
23
+ "@bablr/boot": "0.10.0",
24
24
  "@bablr/coroutine": "0.1.0",
25
- "@bablr/helpers": "0.23.0",
26
- "@bablr/language-en-cstml": "0.10.0",
27
- "@bablr/language-en-bablr-cli-verbose-output": "0.8.0",
28
- "@iter-tools/imm-stack": "1.1.0",
29
- "bablr": "0.9.0",
25
+ "@bablr/helpers": "0.24.0",
26
+ "@bablr/language-en-cstml": "0.11.0",
27
+ "@bablr/language-en-bablr-cli-verbose-output": "0.9.0",
28
+ "@iter-tools/imm-stack": "1.2.0",
29
+ "bablr": "0.10.0",
30
30
  "color-support": "1.1.3",
31
31
  "commander": "^12.0.0"
32
32
  },