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,781 @@
1
+ {
2
+ "displayName": "Terraform",
3
+ "fileTypes": [
4
+ "tf",
5
+ "tfvars"
6
+ ],
7
+ "name": "terraform",
8
+ "patterns": [
9
+ {
10
+ "include": "#comments"
11
+ },
12
+ {
13
+ "include": "#attribute_definition"
14
+ },
15
+ {
16
+ "include": "#block"
17
+ },
18
+ {
19
+ "include": "#expressions"
20
+ }
21
+ ],
22
+ "repository": {
23
+ "attribute_access": {
24
+ "begin": "\\.(?!\\*)",
25
+ "beginCaptures": {
26
+ "0": {
27
+ "name": "keyword.operator.accessor.hcl"
28
+ }
29
+ },
30
+ "end": "\\p{alpha}[-\\w]*|\\d*",
31
+ "endCaptures": {
32
+ "0": {
33
+ "patterns": [
34
+ {
35
+ "match": "(?!null|false|true)\\p{alpha}[-\\w]*",
36
+ "name": "variable.other.member.hcl"
37
+ },
38
+ {
39
+ "match": "\\d+",
40
+ "name": "constant.numeric.integer.hcl"
41
+ }
42
+ ]
43
+ }
44
+ }
45
+ },
46
+ "attribute_definition": {
47
+ "captures": {
48
+ "1": {
49
+ "name": "punctuation.section.parens.begin.hcl"
50
+ },
51
+ "2": {
52
+ "name": "variable.other.readwrite.hcl"
53
+ },
54
+ "3": {
55
+ "name": "punctuation.section.parens.end.hcl"
56
+ },
57
+ "4": {
58
+ "name": "keyword.operator.assignment.hcl"
59
+ }
60
+ },
61
+ "match": "(\\()?\\b((?!(?:null|false|true)\\b)\\p{alpha}[-_[:alnum:]]*)(\\))?\\s*(=(?![=>]))\\s*",
62
+ "name": "variable.declaration.hcl"
63
+ },
64
+ "attribute_splat": {
65
+ "begin": "\\.",
66
+ "beginCaptures": {
67
+ "0": {
68
+ "name": "keyword.operator.accessor.hcl"
69
+ }
70
+ },
71
+ "end": "\\*",
72
+ "endCaptures": {
73
+ "0": {
74
+ "name": "keyword.operator.splat.hcl"
75
+ }
76
+ }
77
+ },
78
+ "block": {
79
+ "begin": "(\\w[-\\w]*)([-\"\\s\\w]*)(\\{)",
80
+ "beginCaptures": {
81
+ "1": {
82
+ "patterns": [
83
+ {
84
+ "match": "\\bdata|check|import|locals|module|output|provider|resource|terraform|variable\\b",
85
+ "name": "entity.name.type.terraform"
86
+ },
87
+ {
88
+ "match": "\\b(?!null|false|true)\\p{alpha}[-_[:alnum:]]*\\b",
89
+ "name": "entity.name.type.hcl"
90
+ }
91
+ ]
92
+ },
93
+ "2": {
94
+ "patterns": [
95
+ {
96
+ "match": "[-\"\\w]+",
97
+ "name": "variable.other.enummember.hcl"
98
+ }
99
+ ]
100
+ },
101
+ "3": {
102
+ "name": "punctuation.section.block.begin.hcl"
103
+ },
104
+ "5": {
105
+ "name": "punctuation.section.block.begin.hcl"
106
+ }
107
+ },
108
+ "end": "}",
109
+ "endCaptures": {
110
+ "0": {
111
+ "name": "punctuation.section.block.end.hcl"
112
+ }
113
+ },
114
+ "name": "meta.block.hcl",
115
+ "patterns": [
116
+ {
117
+ "include": "#comments"
118
+ },
119
+ {
120
+ "include": "#attribute_definition"
121
+ },
122
+ {
123
+ "include": "#block"
124
+ },
125
+ {
126
+ "include": "#expressions"
127
+ }
128
+ ]
129
+ },
130
+ "block_inline_comments": {
131
+ "begin": "/\\*",
132
+ "captures": {
133
+ "0": {
134
+ "name": "punctuation.definition.comment.hcl"
135
+ }
136
+ },
137
+ "end": "\\*/",
138
+ "name": "comment.block.hcl"
139
+ },
140
+ "brackets": {
141
+ "begin": "\\[",
142
+ "beginCaptures": {
143
+ "0": {
144
+ "name": "punctuation.section.brackets.begin.hcl"
145
+ }
146
+ },
147
+ "end": "]",
148
+ "endCaptures": {
149
+ "0": {
150
+ "name": "punctuation.section.brackets.end.hcl"
151
+ }
152
+ },
153
+ "patterns": [
154
+ {
155
+ "match": "\\*",
156
+ "name": "keyword.operator.splat.hcl"
157
+ },
158
+ {
159
+ "include": "#comma"
160
+ },
161
+ {
162
+ "include": "#comments"
163
+ },
164
+ {
165
+ "include": "#inline_for_expression"
166
+ },
167
+ {
168
+ "include": "#inline_if_expression"
169
+ },
170
+ {
171
+ "include": "#expressions"
172
+ },
173
+ {
174
+ "include": "#local_identifiers"
175
+ }
176
+ ]
177
+ },
178
+ "char_escapes": {
179
+ "match": "\\\\(?:[\"\\\\nrt]|u(\\h{8}|\\h{4}))",
180
+ "name": "constant.character.escape.hcl"
181
+ },
182
+ "comma": {
183
+ "match": ",",
184
+ "name": "punctuation.separator.hcl"
185
+ },
186
+ "comments": {
187
+ "patterns": [
188
+ {
189
+ "include": "#hash_line_comments"
190
+ },
191
+ {
192
+ "include": "#double_slash_line_comments"
193
+ },
194
+ {
195
+ "include": "#block_inline_comments"
196
+ }
197
+ ]
198
+ },
199
+ "double_slash_line_comments": {
200
+ "begin": "//",
201
+ "captures": {
202
+ "0": {
203
+ "name": "punctuation.definition.comment.hcl"
204
+ }
205
+ },
206
+ "end": "$\\n?",
207
+ "name": "comment.line.double-slash.hcl"
208
+ },
209
+ "expressions": {
210
+ "patterns": [
211
+ {
212
+ "include": "#literal_values"
213
+ },
214
+ {
215
+ "include": "#operators"
216
+ },
217
+ {
218
+ "include": "#tuple_for_expression"
219
+ },
220
+ {
221
+ "include": "#object_for_expression"
222
+ },
223
+ {
224
+ "include": "#brackets"
225
+ },
226
+ {
227
+ "include": "#objects"
228
+ },
229
+ {
230
+ "include": "#attribute_access"
231
+ },
232
+ {
233
+ "include": "#attribute_splat"
234
+ },
235
+ {
236
+ "include": "#functions"
237
+ },
238
+ {
239
+ "include": "#parens"
240
+ }
241
+ ]
242
+ },
243
+ "for_expression_body": {
244
+ "patterns": [
245
+ {
246
+ "match": "\\bin\\b",
247
+ "name": "keyword.operator.word.hcl"
248
+ },
249
+ {
250
+ "match": "\\bif\\b",
251
+ "name": "keyword.control.conditional.hcl"
252
+ },
253
+ {
254
+ "match": ":",
255
+ "name": "keyword.operator.hcl"
256
+ },
257
+ {
258
+ "include": "#expressions"
259
+ },
260
+ {
261
+ "include": "#comments"
262
+ },
263
+ {
264
+ "include": "#comma"
265
+ },
266
+ {
267
+ "include": "#local_identifiers"
268
+ }
269
+ ]
270
+ },
271
+ "functions": {
272
+ "begin": "([-:\\w]+)(\\()",
273
+ "beginCaptures": {
274
+ "1": {
275
+ "patterns": [
276
+ {
277
+ "match": "\\b(core::)?(abs|abspath|alltrue|anytrue|base64decode|base64encode|base64gzip|base64sha256|base64sha512|basename|bcrypt|can|ceil|chomp|chunklist|cidrhost|cidrnetmask|cidrsubnets??|coalesce|coalescelist|compact|concat|contains|csvdecode|dirname|distinct|element|endswith|file|filebase64|filebase64sha256|filebase64sha512|fileexists|filemd5|fileset|filesha1|filesha256|filesha512|flatten|floor|format|formatdate|formatlist|indent|index|join|jsondecode|jsonencode|keys|length|log|lookup|lower|matchkeys|max|md5|merge|min|nonsensitive|one|parseint|pathexpand|plantimestamp|pow|range|regex|regexall|replace|reverse|rsadecrypt|sensitive|setintersection|setproduct|setsubtract|setunion|sha1|sha256|sha512|signum|slice|sort|split|startswith|strcontains|strrev|substr|sum|templatefile|textdecodebase64|textencodebase64|timeadd|timecmp|timestamp|title|tobool|tolist|tomap|tonumber|toset|tostring|transpose|trim|trimprefix|trimspace|trimsuffix|try|upper|urlencode|uuid|uuidv5|values|yamldecode|yamlencode|zipmap)\\b",
278
+ "name": "support.function.builtin.terraform"
279
+ },
280
+ {
281
+ "match": "\\bprovider::\\p{alpha}[-_\\w]*::\\p{alpha}[-_\\w]*\\b",
282
+ "name": "support.function.provider.terraform"
283
+ }
284
+ ]
285
+ },
286
+ "2": {
287
+ "name": "punctuation.section.parens.begin.hcl"
288
+ }
289
+ },
290
+ "end": "\\)",
291
+ "endCaptures": {
292
+ "0": {
293
+ "name": "punctuation.section.parens.end.hcl"
294
+ }
295
+ },
296
+ "name": "meta.function-call.hcl",
297
+ "patterns": [
298
+ {
299
+ "include": "#comments"
300
+ },
301
+ {
302
+ "include": "#expressions"
303
+ },
304
+ {
305
+ "include": "#comma"
306
+ }
307
+ ]
308
+ },
309
+ "hash_line_comments": {
310
+ "begin": "#",
311
+ "captures": {
312
+ "0": {
313
+ "name": "punctuation.definition.comment.hcl"
314
+ }
315
+ },
316
+ "end": "$\\n?",
317
+ "name": "comment.line.number-sign.hcl"
318
+ },
319
+ "hcl_type_keywords": {
320
+ "match": "\\b(any|string|number|bool|list|set|map|tuple|object)\\b",
321
+ "name": "storage.type.hcl"
322
+ },
323
+ "heredoc": {
324
+ "begin": "(<<-?)\\s*(\\w+)\\s*$",
325
+ "beginCaptures": {
326
+ "1": {
327
+ "name": "keyword.operator.heredoc.hcl"
328
+ },
329
+ "2": {
330
+ "name": "keyword.control.heredoc.hcl"
331
+ }
332
+ },
333
+ "end": "^\\s*\\2\\s*$",
334
+ "endCaptures": {
335
+ "0": {
336
+ "name": "keyword.control.heredoc.hcl"
337
+ }
338
+ },
339
+ "name": "string.unquoted.heredoc.hcl",
340
+ "patterns": [
341
+ {
342
+ "include": "#string_interpolation"
343
+ }
344
+ ]
345
+ },
346
+ "inline_for_expression": {
347
+ "captures": {
348
+ "1": {
349
+ "name": "keyword.control.hcl"
350
+ },
351
+ "2": {
352
+ "patterns": [
353
+ {
354
+ "match": "=>",
355
+ "name": "storage.type.function.hcl"
356
+ },
357
+ {
358
+ "include": "#for_expression_body"
359
+ }
360
+ ]
361
+ }
362
+ },
363
+ "match": "(for)\\b(.*)\\n"
364
+ },
365
+ "inline_if_expression": {
366
+ "begin": "(if)\\b",
367
+ "beginCaptures": {
368
+ "1": {
369
+ "name": "keyword.control.conditional.hcl"
370
+ }
371
+ },
372
+ "end": "\\n",
373
+ "patterns": [
374
+ {
375
+ "include": "#expressions"
376
+ },
377
+ {
378
+ "include": "#comments"
379
+ },
380
+ {
381
+ "include": "#comma"
382
+ },
383
+ {
384
+ "include": "#local_identifiers"
385
+ }
386
+ ]
387
+ },
388
+ "language_constants": {
389
+ "match": "\\b(true|false|null)\\b",
390
+ "name": "constant.language.hcl"
391
+ },
392
+ "literal_values": {
393
+ "patterns": [
394
+ {
395
+ "include": "#numeric_literals"
396
+ },
397
+ {
398
+ "include": "#language_constants"
399
+ },
400
+ {
401
+ "include": "#string_literals"
402
+ },
403
+ {
404
+ "include": "#heredoc"
405
+ },
406
+ {
407
+ "include": "#hcl_type_keywords"
408
+ },
409
+ {
410
+ "include": "#named_value_references"
411
+ }
412
+ ]
413
+ },
414
+ "local_identifiers": {
415
+ "match": "\\b(?!null|false|true)\\p{alpha}[-_[:alnum:]]*\\b",
416
+ "name": "variable.other.readwrite.hcl"
417
+ },
418
+ "named_value_references": {
419
+ "match": "\\b(var|local|module|data|path|terraform)\\b",
420
+ "name": "variable.other.readwrite.terraform"
421
+ },
422
+ "numeric_literals": {
423
+ "patterns": [
424
+ {
425
+ "captures": {
426
+ "1": {
427
+ "name": "punctuation.separator.exponent.hcl"
428
+ }
429
+ },
430
+ "match": "\\b\\d+([Ee][-+]?)\\d+\\b",
431
+ "name": "constant.numeric.float.hcl"
432
+ },
433
+ {
434
+ "captures": {
435
+ "1": {
436
+ "name": "punctuation.separator.decimal.hcl"
437
+ },
438
+ "2": {
439
+ "name": "punctuation.separator.exponent.hcl"
440
+ }
441
+ },
442
+ "match": "\\b\\d+(\\.)\\d+(?:([Ee][-+]?)\\d+)?\\b",
443
+ "name": "constant.numeric.float.hcl"
444
+ },
445
+ {
446
+ "match": "\\b\\d+\\b",
447
+ "name": "constant.numeric.integer.hcl"
448
+ }
449
+ ]
450
+ },
451
+ "object_for_expression": {
452
+ "begin": "(\\{)\\s?(for)\\b",
453
+ "beginCaptures": {
454
+ "1": {
455
+ "name": "punctuation.section.braces.begin.hcl"
456
+ },
457
+ "2": {
458
+ "name": "keyword.control.hcl"
459
+ }
460
+ },
461
+ "end": "}",
462
+ "endCaptures": {
463
+ "0": {
464
+ "name": "punctuation.section.braces.end.hcl"
465
+ }
466
+ },
467
+ "patterns": [
468
+ {
469
+ "match": "=>",
470
+ "name": "storage.type.function.hcl"
471
+ },
472
+ {
473
+ "include": "#for_expression_body"
474
+ }
475
+ ]
476
+ },
477
+ "object_key_values": {
478
+ "patterns": [
479
+ {
480
+ "include": "#comments"
481
+ },
482
+ {
483
+ "include": "#literal_values"
484
+ },
485
+ {
486
+ "include": "#operators"
487
+ },
488
+ {
489
+ "include": "#tuple_for_expression"
490
+ },
491
+ {
492
+ "include": "#object_for_expression"
493
+ },
494
+ {
495
+ "include": "#heredoc"
496
+ },
497
+ {
498
+ "include": "#functions"
499
+ }
500
+ ]
501
+ },
502
+ "objects": {
503
+ "begin": "\\{",
504
+ "beginCaptures": {
505
+ "0": {
506
+ "name": "punctuation.section.braces.begin.hcl"
507
+ }
508
+ },
509
+ "end": "}",
510
+ "endCaptures": {
511
+ "0": {
512
+ "name": "punctuation.section.braces.end.hcl"
513
+ }
514
+ },
515
+ "name": "meta.braces.hcl",
516
+ "patterns": [
517
+ {
518
+ "include": "#comments"
519
+ },
520
+ {
521
+ "include": "#objects"
522
+ },
523
+ {
524
+ "include": "#inline_for_expression"
525
+ },
526
+ {
527
+ "include": "#inline_if_expression"
528
+ },
529
+ {
530
+ "captures": {
531
+ "1": {
532
+ "name": "meta.mapping.key.hcl variable.other.readwrite.hcl"
533
+ },
534
+ "2": {
535
+ "name": "keyword.operator.assignment.hcl",
536
+ "patterns": [
537
+ {
538
+ "match": "=>",
539
+ "name": "storage.type.function.hcl"
540
+ }
541
+ ]
542
+ }
543
+ },
544
+ "match": "\\b((?!null|false|true)\\p{alpha}[-_[:alnum:]]*)\\s*(=>?)\\s*"
545
+ },
546
+ {
547
+ "captures": {
548
+ "0": {
549
+ "patterns": [
550
+ {
551
+ "include": "#named_value_references"
552
+ }
553
+ ]
554
+ },
555
+ "1": {
556
+ "name": "meta.mapping.key.hcl string.quoted.double.hcl"
557
+ },
558
+ "2": {
559
+ "name": "punctuation.definition.string.begin.hcl"
560
+ },
561
+ "3": {
562
+ "name": "punctuation.definition.string.end.hcl"
563
+ },
564
+ "4": {
565
+ "name": "keyword.operator.hcl"
566
+ }
567
+ },
568
+ "match": "\\b((\").*(\"))\\s*(=)\\s*"
569
+ },
570
+ {
571
+ "begin": "^\\s*\\(",
572
+ "beginCaptures": {
573
+ "0": {
574
+ "name": "punctuation.section.parens.begin.hcl"
575
+ }
576
+ },
577
+ "end": "(\\))\\s*([:=])\\s*",
578
+ "endCaptures": {
579
+ "1": {
580
+ "name": "punctuation.section.parens.end.hcl"
581
+ },
582
+ "2": {
583
+ "name": "keyword.operator.hcl"
584
+ }
585
+ },
586
+ "name": "meta.mapping.key.hcl",
587
+ "patterns": [
588
+ {
589
+ "include": "#named_value_references"
590
+ },
591
+ {
592
+ "include": "#attribute_access"
593
+ }
594
+ ]
595
+ },
596
+ {
597
+ "include": "#object_key_values"
598
+ }
599
+ ]
600
+ },
601
+ "operators": {
602
+ "patterns": [
603
+ {
604
+ "match": ">=",
605
+ "name": "keyword.operator.hcl"
606
+ },
607
+ {
608
+ "match": "<=",
609
+ "name": "keyword.operator.hcl"
610
+ },
611
+ {
612
+ "match": "==",
613
+ "name": "keyword.operator.hcl"
614
+ },
615
+ {
616
+ "match": "!=",
617
+ "name": "keyword.operator.hcl"
618
+ },
619
+ {
620
+ "match": "\\+",
621
+ "name": "keyword.operator.arithmetic.hcl"
622
+ },
623
+ {
624
+ "match": "-",
625
+ "name": "keyword.operator.arithmetic.hcl"
626
+ },
627
+ {
628
+ "match": "\\*",
629
+ "name": "keyword.operator.arithmetic.hcl"
630
+ },
631
+ {
632
+ "match": "/",
633
+ "name": "keyword.operator.arithmetic.hcl"
634
+ },
635
+ {
636
+ "match": "%",
637
+ "name": "keyword.operator.arithmetic.hcl"
638
+ },
639
+ {
640
+ "match": "&&",
641
+ "name": "keyword.operator.logical.hcl"
642
+ },
643
+ {
644
+ "match": "\\|\\|",
645
+ "name": "keyword.operator.logical.hcl"
646
+ },
647
+ {
648
+ "match": "!",
649
+ "name": "keyword.operator.logical.hcl"
650
+ },
651
+ {
652
+ "match": ">",
653
+ "name": "keyword.operator.hcl"
654
+ },
655
+ {
656
+ "match": "<",
657
+ "name": "keyword.operator.hcl"
658
+ },
659
+ {
660
+ "match": "\\?",
661
+ "name": "keyword.operator.hcl"
662
+ },
663
+ {
664
+ "match": "\\.\\.\\.",
665
+ "name": "keyword.operator.hcl"
666
+ },
667
+ {
668
+ "match": ":",
669
+ "name": "keyword.operator.hcl"
670
+ },
671
+ {
672
+ "match": "=>",
673
+ "name": "keyword.operator.hcl"
674
+ }
675
+ ]
676
+ },
677
+ "parens": {
678
+ "begin": "\\(",
679
+ "beginCaptures": {
680
+ "0": {
681
+ "name": "punctuation.section.parens.begin.hcl"
682
+ }
683
+ },
684
+ "end": "\\)",
685
+ "endCaptures": {
686
+ "0": {
687
+ "name": "punctuation.section.parens.end.hcl"
688
+ }
689
+ },
690
+ "patterns": [
691
+ {
692
+ "include": "#comments"
693
+ },
694
+ {
695
+ "include": "#expressions"
696
+ }
697
+ ]
698
+ },
699
+ "string_interpolation": {
700
+ "begin": "(?<![$%])([$%]\\{)",
701
+ "beginCaptures": {
702
+ "1": {
703
+ "name": "keyword.other.interpolation.begin.hcl"
704
+ }
705
+ },
706
+ "end": "}",
707
+ "endCaptures": {
708
+ "0": {
709
+ "name": "keyword.other.interpolation.end.hcl"
710
+ }
711
+ },
712
+ "name": "meta.interpolation.hcl",
713
+ "patterns": [
714
+ {
715
+ "match": "~\\s",
716
+ "name": "keyword.operator.template.left.trim.hcl"
717
+ },
718
+ {
719
+ "match": "\\s~",
720
+ "name": "keyword.operator.template.right.trim.hcl"
721
+ },
722
+ {
723
+ "match": "\\b(if|else|endif|for|in|endfor)\\b",
724
+ "name": "keyword.control.hcl"
725
+ },
726
+ {
727
+ "include": "#expressions"
728
+ },
729
+ {
730
+ "include": "#local_identifiers"
731
+ }
732
+ ]
733
+ },
734
+ "string_literals": {
735
+ "begin": "\"",
736
+ "beginCaptures": {
737
+ "0": {
738
+ "name": "punctuation.definition.string.begin.hcl"
739
+ }
740
+ },
741
+ "end": "\"",
742
+ "endCaptures": {
743
+ "0": {
744
+ "name": "punctuation.definition.string.end.hcl"
745
+ }
746
+ },
747
+ "name": "string.quoted.double.hcl",
748
+ "patterns": [
749
+ {
750
+ "include": "#string_interpolation"
751
+ },
752
+ {
753
+ "include": "#char_escapes"
754
+ }
755
+ ]
756
+ },
757
+ "tuple_for_expression": {
758
+ "begin": "(\\[)\\s?(for)\\b",
759
+ "beginCaptures": {
760
+ "1": {
761
+ "name": "punctuation.section.brackets.begin.hcl"
762
+ },
763
+ "2": {
764
+ "name": "keyword.control.hcl"
765
+ }
766
+ },
767
+ "end": "]",
768
+ "endCaptures": {
769
+ "0": {
770
+ "name": "punctuation.section.brackets.end.hcl"
771
+ }
772
+ },
773
+ "patterns": [
774
+ {
775
+ "include": "#for_expression_body"
776
+ }
777
+ ]
778
+ }
779
+ },
780
+ "scopeName": "source.hcl.terraform"
781
+ }