monoprint-linux-x64-gnu 0.0.0-stage → 0.1.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 (68) hide show
  1. package/LICENSE +176 -0
  2. package/README.md +2 -2
  3. package/THIRD_PARTY_NOTICES.md +24 -0
  4. package/assets/editor/sources.json +584 -0
  5. package/assets/fonts/commit-mono-OFL.txt +92 -0
  6. package/assets/fonts/fallback/NOTICE.txt +43 -0
  7. package/assets/fonts/fallback/manifest.json +170 -0
  8. package/assets/fonts/fallback/noto-cjk-OFL.txt +92 -0
  9. package/assets/fonts/fallback/noto-emoji-OFL.txt +92 -0
  10. package/assets/fonts/fallback/noto-fonts-OFL.txt +94 -0
  11. package/assets/fonts/fira-code-OFL.txt +93 -0
  12. package/assets/fonts/geist-mono-OFL.txt +93 -0
  13. package/assets/fonts/google-sans-code-OFL.txt +93 -0
  14. package/assets/fonts/ibm-plex-mono-OFL.txt +93 -0
  15. package/assets/fonts/inter-OFL.txt +93 -0
  16. package/assets/fonts/jetbrains-mono-OFL.txt +93 -0
  17. package/assets/fonts/manifest.json +92 -0
  18. package/assets/fonts/roboto-mono-OFL.txt +93 -0
  19. package/assets/fonts/source-code-pro-OFL.txt +93 -0
  20. package/assets/fonts/space-mono-OFL.txt +93 -0
  21. package/assets/grammar-provenance.json +101 -0
  22. package/docs/font-fallback.md +126 -0
  23. package/docs/grammar-licenses.md +48 -0
  24. package/licenses/editor-themes-NOTICE.txt +487 -0
  25. package/licenses/editor-themes-provenance.json +449 -0
  26. package/licenses/giallo-EUPL-1.2.txt +287 -0
  27. package/licenses/grammar-license-evidence.json +1112 -0
  28. package/licenses/grammar-policy.json +3206 -0
  29. package/licenses/grammar-sources/README.md +8 -0
  30. package/licenses/grammar-sources/bird2.json +1476 -0
  31. package/licenses/grammar-sources/bird2.upstream.json +1480 -0
  32. package/licenses/grammar-sources/hcl.json +757 -0
  33. package/licenses/grammar-sources/hcl.upstream.json +791 -0
  34. package/licenses/grammar-sources/terraform.json +781 -0
  35. package/licenses/grammar-sources/terraform.upstream.json +816 -0
  36. package/licenses/grammars-LICENSE.txt +22 -0
  37. package/licenses/grammars-NOTICE.txt +8139 -0
  38. package/licenses/legacy-frames-MIT.txt +21 -0
  39. package/licenses/legacy-frames-provenance.json +12 -0
  40. package/licenses/node/MPL-2.0.txt +373 -0
  41. package/licenses/node/napi-LICENSE.txt +43 -0
  42. package/licenses/node/upstream.json +45 -0
  43. package/licenses/pierre-highlights-LICENSE.txt +189 -0
  44. package/licenses/pierre-highlights-NOTICE.md +7 -0
  45. package/licenses/rust-dependencies.json +2141 -0
  46. package/licenses/rust-dependency-notices.txt +31994 -0
  47. package/licenses/sources/README.md +3 -0
  48. package/licenses/sources/cssparser-0.37.0.crate +0 -0
  49. package/licenses/sources/cssparser-macros-0.7.1.crate +0 -0
  50. package/licenses/sources/dtoa-short-0.3.5.crate +0 -0
  51. package/licenses/sources/giallo-0.5.2.crate +0 -0
  52. package/licenses/sources/selectors-0.40.0.crate +0 -0
  53. package/licenses/upstream/bitcode_derive-LICENSE-MIT.txt +9 -0
  54. package/licenses/upstream/manifest.json +64 -0
  55. package/licenses/upstream/taffy-LICENSE.md.txt +25 -0
  56. package/licenses/upstream/takumi-LICENSE-APACHE.txt +202 -0
  57. package/licenses/upstream/takumi-LICENSE-MIT.txt +21 -0
  58. package/licenses/upstream/takumi-core-LICENSE-APACHE.txt +202 -0
  59. package/licenses/upstream/takumi-core-LICENSE-MIT.txt +21 -0
  60. package/licenses/upstream/wuff-LICENSE.txt +20 -0
  61. package/monoprint.linux-x64-gnu.node +4 -0
  62. package/package.json +28 -4
  63. package/vendor/takumi-raster/LICENSE-APACHE +202 -0
  64. package/vendor/takumi-raster/LICENSE-MIT +21 -0
  65. package/vendor/takumi-raster/PATCHES.md +73 -0
  66. package/vendor/takumi-svg/LICENSE-APACHE +202 -0
  67. package/vendor/takumi-svg/LICENSE-MIT +21 -0
  68. package/vendor/takumi-svg/PATCHES.md +26 -0
@@ -0,0 +1,757 @@
1
+ {
2
+ "displayName": "HashiCorp HCL",
3
+ "fileTypes": [
4
+ "hcl"
5
+ ],
6
+ "name": "hcl",
7
+ "patterns": [
8
+ {
9
+ "include": "#comments"
10
+ },
11
+ {
12
+ "include": "#attribute_definition"
13
+ },
14
+ {
15
+ "include": "#block"
16
+ },
17
+ {
18
+ "include": "#expressions"
19
+ }
20
+ ],
21
+ "repository": {
22
+ "attribute_access": {
23
+ "begin": "\\.(?!\\*)",
24
+ "beginCaptures": {
25
+ "0": {
26
+ "name": "keyword.operator.accessor.hcl"
27
+ }
28
+ },
29
+ "end": "\\p{alpha}[-\\w]*|\\d*",
30
+ "endCaptures": {
31
+ "0": {
32
+ "patterns": [
33
+ {
34
+ "match": "(?!null|false|true)\\p{alpha}[-\\w]*",
35
+ "name": "variable.other.member.hcl"
36
+ },
37
+ {
38
+ "match": "\\d+",
39
+ "name": "constant.numeric.integer.hcl"
40
+ }
41
+ ]
42
+ }
43
+ }
44
+ },
45
+ "attribute_definition": {
46
+ "captures": {
47
+ "1": {
48
+ "name": "punctuation.section.parens.begin.hcl"
49
+ },
50
+ "2": {
51
+ "name": "variable.other.readwrite.hcl"
52
+ },
53
+ "3": {
54
+ "name": "punctuation.section.parens.end.hcl"
55
+ },
56
+ "4": {
57
+ "name": "keyword.operator.assignment.hcl"
58
+ }
59
+ },
60
+ "match": "(\\()?\\b((?!(?:null|false|true)\\b)\\p{alpha}[-_[:alnum:]]*)(\\))?\\s*(=(?![=>]))\\s*",
61
+ "name": "variable.declaration.hcl"
62
+ },
63
+ "attribute_splat": {
64
+ "begin": "\\.",
65
+ "beginCaptures": {
66
+ "0": {
67
+ "name": "keyword.operator.accessor.hcl"
68
+ }
69
+ },
70
+ "end": "\\*",
71
+ "endCaptures": {
72
+ "0": {
73
+ "name": "keyword.operator.splat.hcl"
74
+ }
75
+ }
76
+ },
77
+ "block": {
78
+ "begin": "(\\w[-\\w]*)(([^\\n\\r\\S]+(\\w[-_\\w]*|\"[^\\n\\r\"]*\"))*)[^\\n\\r\\S]*(\\{)",
79
+ "beginCaptures": {
80
+ "1": {
81
+ "patterns": [
82
+ {
83
+ "match": "\\b(?!null|false|true)\\p{alpha}[-_[:alnum:]]*\\b",
84
+ "name": "entity.name.type.hcl"
85
+ }
86
+ ]
87
+ },
88
+ "2": {
89
+ "patterns": [
90
+ {
91
+ "match": "\"[^\\n\\r\"]*\"",
92
+ "name": "variable.other.enummember.hcl"
93
+ },
94
+ {
95
+ "match": "\\p{alpha}[-_[:alnum:]]*",
96
+ "name": "variable.other.enummember.hcl"
97
+ }
98
+ ]
99
+ },
100
+ "5": {
101
+ "name": "punctuation.section.block.begin.hcl"
102
+ }
103
+ },
104
+ "end": "}",
105
+ "endCaptures": {
106
+ "0": {
107
+ "name": "punctuation.section.block.end.hcl"
108
+ }
109
+ },
110
+ "name": "meta.block.hcl",
111
+ "patterns": [
112
+ {
113
+ "include": "#comments"
114
+ },
115
+ {
116
+ "include": "#attribute_definition"
117
+ },
118
+ {
119
+ "include": "#expressions"
120
+ },
121
+ {
122
+ "include": "#block"
123
+ }
124
+ ]
125
+ },
126
+ "block_inline_comments": {
127
+ "begin": "/\\*",
128
+ "captures": {
129
+ "0": {
130
+ "name": "punctuation.definition.comment.hcl"
131
+ }
132
+ },
133
+ "end": "\\*/",
134
+ "name": "comment.block.hcl"
135
+ },
136
+ "brackets": {
137
+ "begin": "\\[",
138
+ "beginCaptures": {
139
+ "0": {
140
+ "name": "punctuation.section.brackets.begin.hcl"
141
+ }
142
+ },
143
+ "end": "]",
144
+ "endCaptures": {
145
+ "0": {
146
+ "name": "punctuation.section.brackets.end.hcl"
147
+ }
148
+ },
149
+ "patterns": [
150
+ {
151
+ "match": "\\*",
152
+ "name": "keyword.operator.splat.hcl"
153
+ },
154
+ {
155
+ "include": "#comma"
156
+ },
157
+ {
158
+ "include": "#comments"
159
+ },
160
+ {
161
+ "include": "#inline_for_expression"
162
+ },
163
+ {
164
+ "include": "#inline_if_expression"
165
+ },
166
+ {
167
+ "include": "#expressions"
168
+ },
169
+ {
170
+ "include": "#local_identifiers"
171
+ }
172
+ ]
173
+ },
174
+ "char_escapes": {
175
+ "match": "\\\\(?:[\"\\\\nrt]|u(\\h{8}|\\h{4}))",
176
+ "name": "constant.character.escape.hcl"
177
+ },
178
+ "comma": {
179
+ "match": ",",
180
+ "name": "punctuation.separator.hcl"
181
+ },
182
+ "comments": {
183
+ "patterns": [
184
+ {
185
+ "include": "#hash_line_comments"
186
+ },
187
+ {
188
+ "include": "#double_slash_line_comments"
189
+ },
190
+ {
191
+ "include": "#block_inline_comments"
192
+ }
193
+ ]
194
+ },
195
+ "double_slash_line_comments": {
196
+ "begin": "//",
197
+ "captures": {
198
+ "0": {
199
+ "name": "punctuation.definition.comment.hcl"
200
+ }
201
+ },
202
+ "end": "$\\n?",
203
+ "name": "comment.line.double-slash.hcl"
204
+ },
205
+ "expressions": {
206
+ "patterns": [
207
+ {
208
+ "include": "#literal_values"
209
+ },
210
+ {
211
+ "include": "#operators"
212
+ },
213
+ {
214
+ "include": "#tuple_for_expression"
215
+ },
216
+ {
217
+ "include": "#object_for_expression"
218
+ },
219
+ {
220
+ "include": "#brackets"
221
+ },
222
+ {
223
+ "include": "#objects"
224
+ },
225
+ {
226
+ "include": "#attribute_access"
227
+ },
228
+ {
229
+ "include": "#attribute_splat"
230
+ },
231
+ {
232
+ "include": "#functions"
233
+ },
234
+ {
235
+ "include": "#parens"
236
+ }
237
+ ]
238
+ },
239
+ "for_expression_body": {
240
+ "patterns": [
241
+ {
242
+ "match": "\\bin\\b",
243
+ "name": "keyword.operator.word.hcl"
244
+ },
245
+ {
246
+ "match": "\\bif\\b",
247
+ "name": "keyword.control.conditional.hcl"
248
+ },
249
+ {
250
+ "match": ":",
251
+ "name": "keyword.operator.hcl"
252
+ },
253
+ {
254
+ "include": "#expressions"
255
+ },
256
+ {
257
+ "include": "#comments"
258
+ },
259
+ {
260
+ "include": "#comma"
261
+ },
262
+ {
263
+ "include": "#local_identifiers"
264
+ }
265
+ ]
266
+ },
267
+ "functions": {
268
+ "begin": "([-:\\w]+)(\\()",
269
+ "beginCaptures": {
270
+ "1": {
271
+ "patterns": [
272
+ {
273
+ "match": "\\b\\p{alpha}[-_\\w]*::(\\p{alpha}[-_\\w]*::)?\\p{alpha}[-_\\w]*\\b",
274
+ "name": "support.function.namespaced.hcl"
275
+ },
276
+ {
277
+ "match": "\\b\\p{alpha}[-_\\w]*\\b",
278
+ "name": "support.function.builtin.hcl"
279
+ }
280
+ ]
281
+ },
282
+ "2": {
283
+ "name": "punctuation.section.parens.begin.hcl"
284
+ }
285
+ },
286
+ "end": "\\)",
287
+ "endCaptures": {
288
+ "0": {
289
+ "name": "punctuation.section.parens.end.hcl"
290
+ }
291
+ },
292
+ "name": "meta.function-call.hcl",
293
+ "patterns": [
294
+ {
295
+ "include": "#comments"
296
+ },
297
+ {
298
+ "include": "#expressions"
299
+ },
300
+ {
301
+ "include": "#comma"
302
+ }
303
+ ]
304
+ },
305
+ "hash_line_comments": {
306
+ "begin": "#",
307
+ "captures": {
308
+ "0": {
309
+ "name": "punctuation.definition.comment.hcl"
310
+ }
311
+ },
312
+ "end": "$\\n?",
313
+ "name": "comment.line.number-sign.hcl"
314
+ },
315
+ "hcl_type_keywords": {
316
+ "match": "\\b(any|string|number|bool|list|set|map|tuple|object)\\b",
317
+ "name": "storage.type.hcl"
318
+ },
319
+ "heredoc": {
320
+ "begin": "(<<-?)\\s*(\\w+)\\s*$",
321
+ "beginCaptures": {
322
+ "1": {
323
+ "name": "keyword.operator.heredoc.hcl"
324
+ },
325
+ "2": {
326
+ "name": "keyword.control.heredoc.hcl"
327
+ }
328
+ },
329
+ "end": "^\\s*\\2\\s*$",
330
+ "endCaptures": {
331
+ "0": {
332
+ "name": "keyword.control.heredoc.hcl"
333
+ }
334
+ },
335
+ "name": "string.unquoted.heredoc.hcl",
336
+ "patterns": [
337
+ {
338
+ "include": "#string_interpolation"
339
+ }
340
+ ]
341
+ },
342
+ "inline_for_expression": {
343
+ "captures": {
344
+ "1": {
345
+ "name": "keyword.control.hcl"
346
+ },
347
+ "2": {
348
+ "patterns": [
349
+ {
350
+ "match": "=>",
351
+ "name": "storage.type.function.hcl"
352
+ },
353
+ {
354
+ "include": "#for_expression_body"
355
+ }
356
+ ]
357
+ }
358
+ },
359
+ "match": "(for)\\b(.*)\\n"
360
+ },
361
+ "inline_if_expression": {
362
+ "begin": "(if)\\b",
363
+ "beginCaptures": {
364
+ "1": {
365
+ "name": "keyword.control.conditional.hcl"
366
+ }
367
+ },
368
+ "end": "\\n",
369
+ "patterns": [
370
+ {
371
+ "include": "#expressions"
372
+ },
373
+ {
374
+ "include": "#comments"
375
+ },
376
+ {
377
+ "include": "#comma"
378
+ },
379
+ {
380
+ "include": "#local_identifiers"
381
+ }
382
+ ]
383
+ },
384
+ "language_constants": {
385
+ "match": "\\b(true|false|null)\\b",
386
+ "name": "constant.language.hcl"
387
+ },
388
+ "literal_values": {
389
+ "patterns": [
390
+ {
391
+ "include": "#numeric_literals"
392
+ },
393
+ {
394
+ "include": "#language_constants"
395
+ },
396
+ {
397
+ "include": "#string_literals"
398
+ },
399
+ {
400
+ "include": "#heredoc"
401
+ },
402
+ {
403
+ "include": "#hcl_type_keywords"
404
+ }
405
+ ]
406
+ },
407
+ "local_identifiers": {
408
+ "match": "\\b(?!null|false|true)\\p{alpha}[-_[:alnum:]]*\\b",
409
+ "name": "variable.other.readwrite.hcl"
410
+ },
411
+ "numeric_literals": {
412
+ "patterns": [
413
+ {
414
+ "captures": {
415
+ "1": {
416
+ "name": "punctuation.separator.exponent.hcl"
417
+ }
418
+ },
419
+ "match": "\\b\\d+([Ee][-+]?)\\d+\\b",
420
+ "name": "constant.numeric.float.hcl"
421
+ },
422
+ {
423
+ "captures": {
424
+ "1": {
425
+ "name": "punctuation.separator.decimal.hcl"
426
+ },
427
+ "2": {
428
+ "name": "punctuation.separator.exponent.hcl"
429
+ }
430
+ },
431
+ "match": "\\b\\d+(\\.)\\d+(?:([Ee][-+]?)\\d+)?\\b",
432
+ "name": "constant.numeric.float.hcl"
433
+ },
434
+ {
435
+ "match": "\\b\\d+\\b",
436
+ "name": "constant.numeric.integer.hcl"
437
+ }
438
+ ]
439
+ },
440
+ "object_for_expression": {
441
+ "begin": "(\\{)\\s?(for)\\b",
442
+ "beginCaptures": {
443
+ "1": {
444
+ "name": "punctuation.section.braces.begin.hcl"
445
+ },
446
+ "2": {
447
+ "name": "keyword.control.hcl"
448
+ }
449
+ },
450
+ "end": "}",
451
+ "endCaptures": {
452
+ "0": {
453
+ "name": "punctuation.section.braces.end.hcl"
454
+ }
455
+ },
456
+ "patterns": [
457
+ {
458
+ "match": "=>",
459
+ "name": "storage.type.function.hcl"
460
+ },
461
+ {
462
+ "include": "#for_expression_body"
463
+ }
464
+ ]
465
+ },
466
+ "object_key_values": {
467
+ "patterns": [
468
+ {
469
+ "include": "#comments"
470
+ },
471
+ {
472
+ "include": "#literal_values"
473
+ },
474
+ {
475
+ "include": "#operators"
476
+ },
477
+ {
478
+ "include": "#tuple_for_expression"
479
+ },
480
+ {
481
+ "include": "#object_for_expression"
482
+ },
483
+ {
484
+ "include": "#heredoc"
485
+ },
486
+ {
487
+ "include": "#functions"
488
+ }
489
+ ]
490
+ },
491
+ "objects": {
492
+ "begin": "\\{",
493
+ "beginCaptures": {
494
+ "0": {
495
+ "name": "punctuation.section.braces.begin.hcl"
496
+ }
497
+ },
498
+ "end": "}",
499
+ "endCaptures": {
500
+ "0": {
501
+ "name": "punctuation.section.braces.end.hcl"
502
+ }
503
+ },
504
+ "name": "meta.braces.hcl",
505
+ "patterns": [
506
+ {
507
+ "include": "#comments"
508
+ },
509
+ {
510
+ "include": "#objects"
511
+ },
512
+ {
513
+ "include": "#inline_for_expression"
514
+ },
515
+ {
516
+ "include": "#inline_if_expression"
517
+ },
518
+ {
519
+ "captures": {
520
+ "1": {
521
+ "name": "meta.mapping.key.hcl variable.other.readwrite.hcl"
522
+ },
523
+ "2": {
524
+ "name": "keyword.operator.assignment.hcl"
525
+ }
526
+ },
527
+ "match": "\\b((?!null|false|true)\\p{alpha}[-_[:alnum:]]*)\\s*(=(?!=))\\s*"
528
+ },
529
+ {
530
+ "captures": {
531
+ "1": {
532
+ "name": "meta.mapping.key.hcl string.quoted.double.hcl"
533
+ },
534
+ "2": {
535
+ "name": "punctuation.definition.string.begin.hcl"
536
+ },
537
+ "3": {
538
+ "name": "punctuation.definition.string.end.hcl"
539
+ },
540
+ "4": {
541
+ "name": "keyword.operator.hcl"
542
+ }
543
+ },
544
+ "match": "^\\s*((\").*(\"))\\s*(=)\\s*"
545
+ },
546
+ {
547
+ "begin": "^\\s*\\(",
548
+ "beginCaptures": {
549
+ "0": {
550
+ "name": "punctuation.section.parens.begin.hcl"
551
+ }
552
+ },
553
+ "end": "(\\))\\s*([:=])\\s*",
554
+ "endCaptures": {
555
+ "1": {
556
+ "name": "punctuation.section.parens.end.hcl"
557
+ },
558
+ "2": {
559
+ "name": "keyword.operator.hcl"
560
+ }
561
+ },
562
+ "name": "meta.mapping.key.hcl",
563
+ "patterns": [
564
+ {
565
+ "include": "#attribute_access"
566
+ },
567
+ {
568
+ "include": "#attribute_splat"
569
+ }
570
+ ]
571
+ },
572
+ {
573
+ "include": "#object_key_values"
574
+ }
575
+ ]
576
+ },
577
+ "operators": {
578
+ "patterns": [
579
+ {
580
+ "match": ">=",
581
+ "name": "keyword.operator.hcl"
582
+ },
583
+ {
584
+ "match": "<=",
585
+ "name": "keyword.operator.hcl"
586
+ },
587
+ {
588
+ "match": "==",
589
+ "name": "keyword.operator.hcl"
590
+ },
591
+ {
592
+ "match": "!=",
593
+ "name": "keyword.operator.hcl"
594
+ },
595
+ {
596
+ "match": "\\+",
597
+ "name": "keyword.operator.arithmetic.hcl"
598
+ },
599
+ {
600
+ "match": "-",
601
+ "name": "keyword.operator.arithmetic.hcl"
602
+ },
603
+ {
604
+ "match": "\\*",
605
+ "name": "keyword.operator.arithmetic.hcl"
606
+ },
607
+ {
608
+ "match": "/",
609
+ "name": "keyword.operator.arithmetic.hcl"
610
+ },
611
+ {
612
+ "match": "%",
613
+ "name": "keyword.operator.arithmetic.hcl"
614
+ },
615
+ {
616
+ "match": "&&",
617
+ "name": "keyword.operator.logical.hcl"
618
+ },
619
+ {
620
+ "match": "\\|\\|",
621
+ "name": "keyword.operator.logical.hcl"
622
+ },
623
+ {
624
+ "match": "!",
625
+ "name": "keyword.operator.logical.hcl"
626
+ },
627
+ {
628
+ "match": ">",
629
+ "name": "keyword.operator.hcl"
630
+ },
631
+ {
632
+ "match": "<",
633
+ "name": "keyword.operator.hcl"
634
+ },
635
+ {
636
+ "match": "\\?",
637
+ "name": "keyword.operator.hcl"
638
+ },
639
+ {
640
+ "match": "\\.\\.\\.",
641
+ "name": "keyword.operator.hcl"
642
+ },
643
+ {
644
+ "match": ":",
645
+ "name": "keyword.operator.hcl"
646
+ },
647
+ {
648
+ "match": "=>",
649
+ "name": "keyword.operator.hcl"
650
+ }
651
+ ]
652
+ },
653
+ "parens": {
654
+ "begin": "\\(",
655
+ "beginCaptures": {
656
+ "0": {
657
+ "name": "punctuation.section.parens.begin.hcl"
658
+ }
659
+ },
660
+ "end": "\\)",
661
+ "endCaptures": {
662
+ "0": {
663
+ "name": "punctuation.section.parens.end.hcl"
664
+ }
665
+ },
666
+ "patterns": [
667
+ {
668
+ "include": "#comments"
669
+ },
670
+ {
671
+ "include": "#expressions"
672
+ }
673
+ ]
674
+ },
675
+ "string_interpolation": {
676
+ "begin": "(?<![$%])([$%]\\{)",
677
+ "beginCaptures": {
678
+ "1": {
679
+ "name": "keyword.other.interpolation.begin.hcl"
680
+ }
681
+ },
682
+ "end": "}",
683
+ "endCaptures": {
684
+ "0": {
685
+ "name": "keyword.other.interpolation.end.hcl"
686
+ }
687
+ },
688
+ "name": "meta.interpolation.hcl",
689
+ "patterns": [
690
+ {
691
+ "match": "~\\s",
692
+ "name": "keyword.operator.template.left.trim.hcl"
693
+ },
694
+ {
695
+ "match": "\\s~",
696
+ "name": "keyword.operator.template.right.trim.hcl"
697
+ },
698
+ {
699
+ "match": "\\b(if|else|endif|for|in|endfor)\\b",
700
+ "name": "keyword.control.hcl"
701
+ },
702
+ {
703
+ "include": "#expressions"
704
+ },
705
+ {
706
+ "include": "#local_identifiers"
707
+ }
708
+ ]
709
+ },
710
+ "string_literals": {
711
+ "begin": "\"",
712
+ "beginCaptures": {
713
+ "0": {
714
+ "name": "punctuation.definition.string.begin.hcl"
715
+ }
716
+ },
717
+ "end": "\"",
718
+ "endCaptures": {
719
+ "0": {
720
+ "name": "punctuation.definition.string.end.hcl"
721
+ }
722
+ },
723
+ "name": "string.quoted.double.hcl",
724
+ "patterns": [
725
+ {
726
+ "include": "#string_interpolation"
727
+ },
728
+ {
729
+ "include": "#char_escapes"
730
+ }
731
+ ]
732
+ },
733
+ "tuple_for_expression": {
734
+ "begin": "(\\[)\\s?(for)\\b",
735
+ "beginCaptures": {
736
+ "1": {
737
+ "name": "punctuation.section.brackets.begin.hcl"
738
+ },
739
+ "2": {
740
+ "name": "keyword.control.hcl"
741
+ }
742
+ },
743
+ "end": "]",
744
+ "endCaptures": {
745
+ "0": {
746
+ "name": "punctuation.section.brackets.end.hcl"
747
+ }
748
+ },
749
+ "patterns": [
750
+ {
751
+ "include": "#for_expression_body"
752
+ }
753
+ ]
754
+ }
755
+ },
756
+ "scopeName": "source.hcl"
757
+ }