@codingame/monaco-editor-wrapper 3.4.1 → 3.4.2

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 (48) hide show
  1. package/dist/{HTML (Eex).js → HTML (Eex)2.js} +0 -0
  2. package/dist/atd.js +90 -94
  3. package/dist/atd2.js +94 -90
  4. package/dist/css.worker.js +1 -1
  5. package/dist/d.js +3157 -84
  6. package/dist/d2.js +84 -3157
  7. package/dist/dart.js +510 -83
  8. package/dist/dart2.js +83 -510
  9. package/dist/diet.js +740 -82
  10. package/dist/diet2.js +82 -740
  11. package/dist/dml.js +155 -76
  12. package/dist/dml2.js +76 -155
  13. package/dist/dune-project.js +469 -53
  14. package/dist/dune-project2.js +53 -469
  15. package/dist/dune-workspace.js +287 -54
  16. package/dist/dune-workspace2.js +54 -287
  17. package/dist/dune.js +2948 -51
  18. package/dist/dune2.js +51 -2948
  19. package/dist/elixir.js +2335 -63
  20. package/dist/elixir2.js +63 -2335
  21. package/dist/features/cssContribution.js +1 -4
  22. package/dist/features/extensionConfigurations.js +24 -122
  23. package/dist/features/htmlContribution.js +4 -18
  24. package/dist/features/jsonContribution.js +1 -8
  25. package/dist/features/typescriptContribution.js +4 -8
  26. package/dist/{html (eex)2.js → html (eex).js} +0 -0
  27. package/dist/html.worker.js +1 -1
  28. package/dist/index.js +2178 -1355
  29. package/dist/index2.js +1354 -2186
  30. package/dist/json.worker.js +1 -1
  31. package/dist/main.js +270 -1417
  32. package/dist/ocaml.interface.js +273 -95
  33. package/dist/ocaml.interface2.js +95 -273
  34. package/dist/ocaml.js +884 -95
  35. package/dist/ocaml2.js +95 -884
  36. package/dist/r.js +657 -81
  37. package/dist/r2.js +81 -657
  38. package/dist/sdl.js +150 -78
  39. package/dist/sdl2.js +78 -150
  40. package/dist/solidity.js +1172 -56
  41. package/dist/solidity2.js +56 -1172
  42. package/dist/ts.worker.js +1 -1
  43. package/dist/vim.js +8 -8
  44. package/dist/vue-sugarss.js +390 -54
  45. package/dist/vue-sugarss2.js +54 -390
  46. package/dist/worker.js +1 -3
  47. package/package.json +29 -26
  48. package/stats.html +44 -34
package/dist/dune.js CHANGED
@@ -1,65 +1,2962 @@
1
- var comments = {
2
- lineComment: ";"
3
- };
4
- var brackets = [
5
- [
6
- "{",
7
- "}"
8
- ],
9
- [
10
- "[",
11
- "]"
12
- ],
13
- [
14
- "(",
15
- ")"
16
- ]
1
+ var name = "dune";
2
+ var scopeName = "source.dune";
3
+ var fileTypes = [
4
+ "dune"
17
5
  ];
18
- var autoClosingPairs = [
6
+ var patterns = [
19
7
  {
20
- open: "{",
21
- close: "}"
8
+ include: "#stanzas"
22
9
  },
23
10
  {
24
- open: "[",
25
- close: "]"
11
+ include: "#general"
12
+ }
13
+ ];
14
+ var repository = {
15
+ stanzas: {
16
+ patterns: [
17
+ {
18
+ comment: "jbuild_version",
19
+ begin: "\\([[:space:]]*(jbuild_version)\\b",
20
+ end: "\\)",
21
+ beginCaptures: {
22
+ "1": {
23
+ name: "keyword.language.dune"
24
+ }
25
+ },
26
+ contentName: "constant.language.dune",
27
+ patterns: [
28
+ {
29
+ include: "#general"
30
+ }
31
+ ]
32
+ },
33
+ {
34
+ comment: "library",
35
+ begin: "\\([[:space:]]*(library)\\b",
36
+ end: "\\)",
37
+ beginCaptures: {
38
+ "1": {
39
+ name: "keyword.language.dune"
40
+ }
41
+ },
42
+ patterns: [
43
+ {
44
+ include: "#library"
45
+ },
46
+ {
47
+ include: "#general"
48
+ }
49
+ ]
50
+ },
51
+ {
52
+ comment: "foreign_library",
53
+ begin: "\\([[:space:]]*(foreign_library)\\b",
54
+ end: "\\)",
55
+ beginCaptures: {
56
+ "1": {
57
+ name: "keyword.language.dune"
58
+ }
59
+ },
60
+ patterns: [
61
+ {
62
+ comment: "names",
63
+ begin: "\\([[:space:]]*(names)\\b",
64
+ end: "\\)",
65
+ beginCaptures: {
66
+ "1": {
67
+ name: "keyword.language.dune"
68
+ }
69
+ },
70
+ contentName: "variable.declaration.other.dune",
71
+ patterns: [
72
+ {
73
+ include: "#general"
74
+ }
75
+ ]
76
+ },
77
+ {
78
+ comment: "archive_name/language/include_dir",
79
+ begin: "\\([[:space:]]*(archive_name|language|include_dir)\\b",
80
+ end: "\\)",
81
+ beginCaptures: {
82
+ "1": {
83
+ name: "keyword.language.dune"
84
+ }
85
+ },
86
+ patterns: [
87
+ {
88
+ include: "#general"
89
+ }
90
+ ]
91
+ },
92
+ {
93
+ include: "#general"
94
+ }
95
+ ]
96
+ },
97
+ {
98
+ comment: "deprecated_library_name",
99
+ begin: "\\([[:space:]]*(deprecated_library_name)\\b",
100
+ end: "\\)",
101
+ beginCaptures: {
102
+ "1": {
103
+ name: "keyword.language.dune"
104
+ }
105
+ },
106
+ patterns: [
107
+ {
108
+ comment: "old_public_name/new_public_name",
109
+ begin: "\\([[:space:]]*(old_public_name|new_public_name)\\b",
110
+ end: "\\)",
111
+ beginCaptures: {
112
+ "1": {
113
+ name: "keyword.language.dune"
114
+ }
115
+ },
116
+ contentName: "variable.declaration.other.dune",
117
+ patterns: [
118
+ {
119
+ include: "#general"
120
+ }
121
+ ]
122
+ }
123
+ ]
124
+ },
125
+ {
126
+ comment: "executable",
127
+ begin: "\\([[:space:]]*(executable)\\b",
128
+ end: "\\)",
129
+ beginCaptures: {
130
+ "1": {
131
+ name: "keyword.language.dune"
132
+ }
133
+ },
134
+ patterns: [
135
+ {
136
+ include: "#library"
137
+ },
138
+ {
139
+ include: "#general"
140
+ }
141
+ ]
142
+ },
143
+ {
144
+ comment: "executables",
145
+ begin: "\\([[:space:]]*(executables)\\b",
146
+ end: "\\)",
147
+ beginCaptures: {
148
+ "1": {
149
+ name: "keyword.language.dune"
150
+ }
151
+ },
152
+ patterns: [
153
+ {
154
+ comment: "executables/names",
155
+ begin: "\\([[:space:]]*(names|public_names)\\b",
156
+ end: "\\)",
157
+ beginCaptures: {
158
+ "1": {
159
+ name: "keyword.language.dune"
160
+ }
161
+ },
162
+ contentName: "variable.other.declaration.dune",
163
+ patterns: [
164
+ {
165
+ include: "#general"
166
+ }
167
+ ]
168
+ },
169
+ {
170
+ include: "#library"
171
+ },
172
+ {
173
+ include: "#general"
174
+ }
175
+ ]
176
+ },
177
+ {
178
+ comment: "rule",
179
+ begin: "\\([[:space:]]*(rule)\\b",
180
+ end: "\\)",
181
+ beginCaptures: {
182
+ "1": {
183
+ name: "keyword.language.dune"
184
+ }
185
+ },
186
+ patterns: [
187
+ {
188
+ comment: "rule/target/targets",
189
+ begin: "\\([[:space:]]*(target|targets)\\b",
190
+ end: "\\)",
191
+ beginCaptures: {
192
+ "1": {
193
+ name: "keyword.language.dune"
194
+ }
195
+ },
196
+ patterns: [
197
+ {
198
+ include: "#general"
199
+ }
200
+ ]
201
+ },
202
+ {
203
+ comment: "rule/deps",
204
+ begin: "\\([[:space:]]*(deps)\\b",
205
+ end: "\\)",
206
+ beginCaptures: {
207
+ "1": {
208
+ name: "keyword.language.dune"
209
+ }
210
+ },
211
+ patterns: [
212
+ {
213
+ include: "#dependencies"
214
+ },
215
+ {
216
+ include: "#general"
217
+ }
218
+ ]
219
+ },
220
+ {
221
+ comment: "rule/action",
222
+ begin: "\\([[:space:]]*(action)\\b",
223
+ end: "\\)",
224
+ beginCaptures: {
225
+ "1": {
226
+ name: "keyword.language.dune"
227
+ }
228
+ },
229
+ patterns: [
230
+ {
231
+ include: "#action"
232
+ },
233
+ {
234
+ include: "#general"
235
+ }
236
+ ]
237
+ },
238
+ {
239
+ comment: "rule/mode",
240
+ begin: "\\([[:space:]]*(mode)\\b",
241
+ end: "\\)",
242
+ beginCaptures: {
243
+ "1": {
244
+ name: "keyword.language.dune"
245
+ }
246
+ },
247
+ patterns: [
248
+ {
249
+ comment: "mode/standard/fallback",
250
+ begin: "\\([[:space:]]*(standard|fallback)\\b",
251
+ end: "\\)",
252
+ beginCaptures: {
253
+ "1": {
254
+ name: "keyword.language.dune"
255
+ }
256
+ },
257
+ patterns: [
258
+ {
259
+ include: "#general"
260
+ }
261
+ ]
262
+ },
263
+ {
264
+ comment: "mode/promote",
265
+ begin: "\\([[:space:]]*(promote)\\b",
266
+ end: "\\)",
267
+ beginCaptures: {
268
+ "1": {
269
+ name: "keyword.language.dune"
270
+ }
271
+ },
272
+ patterns: [
273
+ {
274
+ comment: "promote/until_clean/into/only",
275
+ begin: "\\([[:space:]]*(until_clean|into|only)\\b",
276
+ end: "\\)",
277
+ beginCaptures: {
278
+ "1": {
279
+ name: "keyword.language.dune"
280
+ }
281
+ },
282
+ patterns: [
283
+ {
284
+ include: "#general"
285
+ }
286
+ ]
287
+ },
288
+ {
289
+ comment: "promote/only",
290
+ begin: "\\([[:space:]]*(only)\\b",
291
+ end: "\\)",
292
+ beginCaptures: {
293
+ "1": {
294
+ name: "keyword.language.dune"
295
+ }
296
+ },
297
+ patterns: [
298
+ {
299
+ include: "#predicate_language"
300
+ },
301
+ {
302
+ include: "#general"
303
+ }
304
+ ]
305
+ }
306
+ ]
307
+ },
308
+ {
309
+ include: "#general"
310
+ }
311
+ ]
312
+ },
313
+ {
314
+ comment: "rule/fallback",
315
+ begin: "\\([[:space:]]*(fallback)\\b",
316
+ end: "\\)",
317
+ beginCaptures: {
318
+ "1": {
319
+ name: "keyword.language.dune"
320
+ }
321
+ },
322
+ patterns: [
323
+ {
324
+ include: "#general"
325
+ }
326
+ ]
327
+ },
328
+ {
329
+ comment: "rule/locks",
330
+ begin: "\\([[:space:]]*(locks)\\b",
331
+ end: "\\)",
332
+ beginCaptures: {
333
+ "1": {
334
+ name: "keyword.language.dune"
335
+ }
336
+ },
337
+ patterns: [
338
+ {
339
+ include: "#general"
340
+ }
341
+ ]
342
+ },
343
+ {
344
+ comment: "rule/alias",
345
+ begin: "\\([[:space:]]*(alias)\\b",
346
+ end: "\\)",
347
+ beginCaptures: {
348
+ "1": {
349
+ name: "keyword.language.dune"
350
+ }
351
+ },
352
+ patterns: [
353
+ {
354
+ include: "#general"
355
+ }
356
+ ]
357
+ },
358
+ {
359
+ comment: "rule/package",
360
+ begin: "\\([[:space:]]*(package)\\b",
361
+ end: "\\)",
362
+ beginCaptures: {
363
+ "1": {
364
+ name: "keyword.language.dune"
365
+ }
366
+ },
367
+ contentName: "variable.declaration.other.dune",
368
+ patterns: [
369
+ {
370
+ include: "#general"
371
+ }
372
+ ]
373
+ },
374
+ {
375
+ comment: "rule/enabled_if",
376
+ begin: "\\([[:space:]]*(enabled_if)\\b",
377
+ end: "\\)",
378
+ beginCaptures: {
379
+ "1": {
380
+ name: "keyword.language.dune"
381
+ }
382
+ },
383
+ patterns: [
384
+ {
385
+ include: "#general"
386
+ }
387
+ ]
388
+ },
389
+ {
390
+ include: "#action"
391
+ },
392
+ {
393
+ include: "#general"
394
+ }
395
+ ]
396
+ },
397
+ {
398
+ comment: "ocamllex",
399
+ begin: "\\([[:space:]]*(ocamllex)\\b",
400
+ end: "\\)",
401
+ beginCaptures: {
402
+ "1": {
403
+ name: "keyword.language.dune"
404
+ }
405
+ },
406
+ patterns: [
407
+ {
408
+ comment: "modules/mode",
409
+ begin: "\\([[:space:]]*(modules|mode)\\b",
410
+ end: "\\)",
411
+ beginCaptures: {
412
+ "1": {
413
+ name: "keyword.language.dune"
414
+ }
415
+ },
416
+ patterns: [
417
+ {
418
+ include: "#general"
419
+ }
420
+ ]
421
+ },
422
+ {
423
+ include: "#general"
424
+ }
425
+ ]
426
+ },
427
+ {
428
+ comment: "ocamlyacc",
429
+ begin: "\\([[:space:]]*(ocamlyacc)\\b",
430
+ end: "\\)",
431
+ beginCaptures: {
432
+ "1": {
433
+ name: "keyword.language.dune"
434
+ }
435
+ },
436
+ patterns: [
437
+ {
438
+ comment: "modules/mode",
439
+ begin: "\\([[:space:]]*(modules|mode)\\b",
440
+ end: "\\)",
441
+ beginCaptures: {
442
+ "1": {
443
+ name: "keyword.language.dune"
444
+ }
445
+ },
446
+ patterns: [
447
+ {
448
+ include: "#general"
449
+ }
450
+ ]
451
+ },
452
+ {
453
+ include: "#general"
454
+ }
455
+ ]
456
+ },
457
+ {
458
+ comment: "menhir",
459
+ begin: "\\([[:space:]]*(menhir)\\b",
460
+ end: "\\)",
461
+ beginCaptures: {
462
+ "1": {
463
+ name: "keyword.language.dune"
464
+ }
465
+ },
466
+ patterns: [
467
+ {
468
+ comment: "modules/merge_into/flags/infer",
469
+ begin: "\\([[:space:]]*(modules|merge_into|flags|infer)\\b",
470
+ end: "\\)",
471
+ beginCaptures: {
472
+ "1": {
473
+ name: "keyword.language.dune"
474
+ }
475
+ },
476
+ patterns: [
477
+ {
478
+ include: "#general"
479
+ }
480
+ ]
481
+ },
482
+ {
483
+ include: "#general"
484
+ }
485
+ ]
486
+ },
487
+ {
488
+ comment: "cinaps",
489
+ begin: "\\([[:space:]]*(cinaps)\\b",
490
+ end: "\\)",
491
+ beginCaptures: {
492
+ "1": {
493
+ name: "keyword.language.dune"
494
+ }
495
+ },
496
+ patterns: [
497
+ {
498
+ comment: "files/libraries",
499
+ begin: "\\([[:space:]]*(files|libraries)\\b",
500
+ end: "\\)",
501
+ beginCaptures: {
502
+ "1": {
503
+ name: "keyword.language.dune"
504
+ }
505
+ },
506
+ patterns: [
507
+ {
508
+ include: "#general"
509
+ }
510
+ ]
511
+ },
512
+ {
513
+ include: "#general"
514
+ }
515
+ ]
516
+ },
517
+ {
518
+ comment: "documentation",
519
+ begin: "\\([[:space:]]*(documentation)\\b",
520
+ end: "\\)",
521
+ beginCaptures: {
522
+ "1": {
523
+ name: "keyword.language.dune"
524
+ }
525
+ },
526
+ patterns: [
527
+ {
528
+ comment: "package",
529
+ begin: "\\([[:space:]]*(package)\\b",
530
+ end: "\\)",
531
+ beginCaptures: {
532
+ "1": {
533
+ name: "keyword.language.dune"
534
+ }
535
+ },
536
+ contentName: "variable.declaration.other.dune",
537
+ patterns: [
538
+ {
539
+ include: "#general"
540
+ }
541
+ ]
542
+ },
543
+ {
544
+ comment: "mld_files",
545
+ begin: "\\([[:space:]]*(mld_files)\\b",
546
+ end: "\\)",
547
+ beginCaptures: {
548
+ "1": {
549
+ name: "keyword.language.dune"
550
+ }
551
+ },
552
+ patterns: [
553
+ {
554
+ include: "#general"
555
+ }
556
+ ]
557
+ }
558
+ ]
559
+ },
560
+ {
561
+ comment: "alias",
562
+ begin: "\\([[:space:]]*(alias)\\b",
563
+ end: "\\)",
564
+ beginCaptures: {
565
+ "1": {
566
+ name: "keyword.language.dune"
567
+ }
568
+ },
569
+ patterns: [
570
+ {
571
+ comment: "name",
572
+ begin: "\\([[:space:]]*(name)\\b",
573
+ end: "\\)",
574
+ beginCaptures: {
575
+ "1": {
576
+ name: "keyword.language.dune"
577
+ }
578
+ },
579
+ contentName: "variable.declaration.other.dune",
580
+ patterns: [
581
+ {
582
+ include: "#general"
583
+ }
584
+ ]
585
+ },
586
+ {
587
+ comment: "action",
588
+ begin: "\\([[:space:]]*(action)\\b",
589
+ end: "\\)",
590
+ beginCaptures: {
591
+ "1": {
592
+ name: "keyword.language.dune"
593
+ }
594
+ },
595
+ patterns: [
596
+ {
597
+ include: "#action"
598
+ },
599
+ {
600
+ include: "#general"
601
+ }
602
+ ]
603
+ },
604
+ {
605
+ comment: "package",
606
+ begin: "\\([[:space:]]*(package)\\b",
607
+ end: "\\)",
608
+ beginCaptures: {
609
+ "1": {
610
+ name: "keyword.language.dune"
611
+ }
612
+ },
613
+ contentName: "variable.declaration.other.dune",
614
+ patterns: [
615
+ {
616
+ include: "#general"
617
+ }
618
+ ]
619
+ },
620
+ {
621
+ comment: "enabled_if",
622
+ begin: "\\([[:space:]]*(enabled_if)\\b",
623
+ end: "\\)",
624
+ beginCaptures: {
625
+ "1": {
626
+ name: "keyword.language.dune"
627
+ }
628
+ },
629
+ patterns: [
630
+ {
631
+ include: "#action"
632
+ },
633
+ {
634
+ include: "#general"
635
+ }
636
+ ]
637
+ },
638
+ {
639
+ comment: "deps",
640
+ begin: "\\([[:space:]]*(deps)\\b",
641
+ end: "\\)",
642
+ beginCaptures: {
643
+ "1": {
644
+ name: "keyword.language.dune"
645
+ }
646
+ },
647
+ patterns: [
648
+ {
649
+ include: "#dependencies"
650
+ },
651
+ {
652
+ include: "#general"
653
+ }
654
+ ]
655
+ },
656
+ {
657
+ comment: "locks",
658
+ begin: "\\([[:space:]]*(locks)\\b",
659
+ end: "\\)",
660
+ beginCaptures: {
661
+ "1": {
662
+ name: "keyword.language.dune"
663
+ }
664
+ },
665
+ patterns: [
666
+ {
667
+ include: "#general"
668
+ }
669
+ ]
670
+ },
671
+ {
672
+ include: "#general"
673
+ }
674
+ ]
675
+ },
676
+ {
677
+ comment: "install",
678
+ begin: "\\([[:space:]]*(install)\\b",
679
+ end: "\\)",
680
+ beginCaptures: {
681
+ "1": {
682
+ name: "keyword.language.dune"
683
+ }
684
+ },
685
+ patterns: [
686
+ {
687
+ comment: "install/lib/lib_root/libexec/libexec_root",
688
+ begin: "\\([[:space:]]*(lib|lib_root|libexec|libexec_root)\\b",
689
+ end: "\\)",
690
+ beginCaptures: {
691
+ "1": {
692
+ name: "keyword.language.dune"
693
+ }
694
+ },
695
+ patterns: [
696
+ {
697
+ include: "#general"
698
+ }
699
+ ]
700
+ },
701
+ {
702
+ comment: "install/bin/sbin/toplevel/share/share_root",
703
+ begin: "\\([[:space:]]*(bin|sbin|toplevel|share|share_root)\\b",
704
+ end: "\\)",
705
+ beginCaptures: {
706
+ "1": {
707
+ name: "keyword.language.dune"
708
+ }
709
+ },
710
+ patterns: [
711
+ {
712
+ include: "#general"
713
+ }
714
+ ]
715
+ },
716
+ {
717
+ comment: "install/etc/doc/stublibs/man/misc/site/files",
718
+ begin: "\\([[:space:]]*(etc|doc|stublibs|man|misc|site|files)\\b",
719
+ end: "\\)",
720
+ beginCaptures: {
721
+ "1": {
722
+ name: "keyword.language.dune"
723
+ }
724
+ },
725
+ patterns: [
726
+ {
727
+ include: "#general"
728
+ }
729
+ ]
730
+ },
731
+ {
732
+ include: "#general"
733
+ }
734
+ ]
735
+ },
736
+ {
737
+ comment: "copy_files/copy_files#",
738
+ begin: "\\([[:space:]]*(copy_files|copy_files#)\\b",
739
+ end: "\\)",
740
+ beginCaptures: {
741
+ "1": {
742
+ name: "keyword.language.dune"
743
+ }
744
+ },
745
+ patterns: [
746
+ {
747
+ comment: "files/alias/mode",
748
+ begin: "\\([[:space:]]*(files|alias|mode)\\b",
749
+ end: "\\)",
750
+ beginCaptures: {
751
+ "1": {
752
+ name: "keyword.language.dune"
753
+ }
754
+ },
755
+ patterns: [
756
+ {
757
+ include: "#general"
758
+ }
759
+ ]
760
+ },
761
+ {
762
+ comment: "mode",
763
+ begin: "\\([[:space:]]*(mode)\\b",
764
+ end: "\\)",
765
+ beginCaptures: {
766
+ "1": {
767
+ name: "keyword.language.dune"
768
+ }
769
+ },
770
+ patterns: [
771
+ {
772
+ include: "#general"
773
+ }
774
+ ]
775
+ },
776
+ {
777
+ comment: "enabled_if",
778
+ begin: "\\([[:space:]]*(enabled_if)\\b",
779
+ end: "\\)",
780
+ beginCaptures: {
781
+ "1": {
782
+ name: "keyword.language.dune"
783
+ }
784
+ },
785
+ patterns: [
786
+ {
787
+ include: "#general"
788
+ }
789
+ ]
790
+ }
791
+ ]
792
+ },
793
+ {
794
+ comment: "env",
795
+ begin: "\\([[:space:]]*(env)\\b",
796
+ end: "\\)",
797
+ beginCaptures: {
798
+ "1": {
799
+ name: "keyword.language.dune"
800
+ }
801
+ },
802
+ patterns: [
803
+ {
804
+ comment: "profile name",
805
+ begin: "\\([[:space:]]*([a-zA-Z0-9]+)\\b",
806
+ end: "\\)",
807
+ beginCaptures: {
808
+ "1": {
809
+ name: "variable.declaration.other.dune"
810
+ }
811
+ },
812
+ patterns: [
813
+ {
814
+ comment: "env/flags",
815
+ begin: "\\([[:space:]]*(flags)\\b",
816
+ end: "\\)",
817
+ beginCaptures: {
818
+ "1": {
819
+ name: "keyword.language.dune"
820
+ }
821
+ },
822
+ patterns: [
823
+ {
824
+ include: "#general"
825
+ }
826
+ ]
827
+ },
828
+ {
829
+ comment: "env/ocamlc_flags/ocamlopt_flags/c_flags/cxx_flags/menhir_flags",
830
+ begin: "\\([[:space:]]*(ocamlc_flags|ocamlopt_flags|c_flags|cxx_flags|menhir_flags)\\b",
831
+ end: "\\)",
832
+ beginCaptures: {
833
+ "1": {
834
+ name: "keyword.language.dune"
835
+ }
836
+ },
837
+ patterns: [
838
+ {
839
+ include: "#general"
840
+ }
841
+ ]
842
+ },
843
+ {
844
+ comment: "env-vars",
845
+ begin: "\\([[:space:]]*(env-vars)\\b",
846
+ end: "\\)",
847
+ beginCaptures: {
848
+ "1": {
849
+ name: "keyword.language.dune"
850
+ }
851
+ },
852
+ contentName: "variable.declaration.other.dune",
853
+ patterns: [
854
+ {
855
+ include: "#general"
856
+ }
857
+ ]
858
+ },
859
+ {
860
+ comment: "env/binaries",
861
+ begin: "\\([[:space:]]*(binaries)\\b",
862
+ end: "\\)",
863
+ beginCaptures: {
864
+ "1": {
865
+ name: "keyword.language.dune"
866
+ }
867
+ },
868
+ patterns: [
869
+ {
870
+ include: "#general"
871
+ }
872
+ ]
873
+ },
874
+ {
875
+ comment: "env/inline_tests/odoc",
876
+ begin: "\\([[:space:]]*(inline_tests|odoc)\\b",
877
+ end: "\\)",
878
+ beginCaptures: {
879
+ "1": {
880
+ name: "keyword.language.dune"
881
+ }
882
+ },
883
+ patterns: [
884
+ {
885
+ include: "#general"
886
+ }
887
+ ]
888
+ },
889
+ {
890
+ comment: "env/coq",
891
+ begin: "\\([[:space:]]*(coq)\\b",
892
+ end: "\\)",
893
+ beginCaptures: {
894
+ "1": {
895
+ name: "keyword.language.dune"
896
+ }
897
+ },
898
+ patterns: [
899
+ {
900
+ comment: "coq/flags",
901
+ begin: "\\([[:space:]]*(flags)\\b",
902
+ end: "\\)",
903
+ beginCaptures: {
904
+ "1": {
905
+ name: "keyword.language.dune"
906
+ }
907
+ },
908
+ patterns: [
909
+ {
910
+ include: "#general"
911
+ }
912
+ ]
913
+ },
914
+ {
915
+ include: "#general"
916
+ }
917
+ ]
918
+ },
919
+ {
920
+ comment: "env/formatting",
921
+ begin: "\\([[:space:]]*(formatting)\\b",
922
+ end: "\\)",
923
+ beginCaptures: {
924
+ "1": {
925
+ name: "keyword.language.dune"
926
+ }
927
+ },
928
+ patterns: [
929
+ {
930
+ comment: "enabled_for",
931
+ begin: "\\([[:space:]]*(enabled_for)\\b",
932
+ end: "\\)",
933
+ beginCaptures: {
934
+ "1": {
935
+ name: "keyword.language.dune"
936
+ }
937
+ },
938
+ patterns: [
939
+ {
940
+ include: "#general"
941
+ }
942
+ ]
943
+ },
944
+ {
945
+ include: "#general"
946
+ }
947
+ ]
948
+ },
949
+ {
950
+ include: "#general"
951
+ }
952
+ ]
953
+ },
954
+ {
955
+ include: "#general"
956
+ }
957
+ ]
958
+ },
959
+ {
960
+ comment: "include",
961
+ begin: "\\([[:space:]]*(include)\\b",
962
+ end: "\\)",
963
+ beginCaptures: {
964
+ "1": {
965
+ name: "keyword.language.dune"
966
+ }
967
+ },
968
+ patterns: [
969
+ {
970
+ include: "#general"
971
+ }
972
+ ]
973
+ },
974
+ {
975
+ comment: "test",
976
+ begin: "\\([[:space:]]*(test)\\b",
977
+ end: "\\)",
978
+ beginCaptures: {
979
+ "1": {
980
+ name: "keyword.language.dune"
981
+ }
982
+ },
983
+ patterns: [
984
+ {
985
+ comment: "action",
986
+ begin: "\\([[:space:]]*(action)\\b",
987
+ end: "\\)",
988
+ beginCaptures: {
989
+ "1": {
990
+ name: "keyword.language.dune"
991
+ }
992
+ },
993
+ patterns: [
994
+ {
995
+ include: "#action"
996
+ },
997
+ {
998
+ include: "#general"
999
+ }
1000
+ ]
1001
+ },
1002
+ {
1003
+ include: "#library"
1004
+ },
1005
+ {
1006
+ include: "#general"
1007
+ }
1008
+ ]
1009
+ },
1010
+ {
1011
+ comment: "tests",
1012
+ begin: "\\([[:space:]]*(tests)\\b",
1013
+ end: "\\)",
1014
+ beginCaptures: {
1015
+ "1": {
1016
+ name: "keyword.language.dune"
1017
+ }
1018
+ },
1019
+ patterns: [
1020
+ {
1021
+ comment: "names",
1022
+ begin: "\\([[:space:]]*(names)\\b",
1023
+ end: "\\)",
1024
+ beginCaptures: {
1025
+ "1": {
1026
+ name: "keyword.language.dune"
1027
+ }
1028
+ },
1029
+ contentName: "variable.declaration.other.dune",
1030
+ patterns: [
1031
+ {
1032
+ include: "#general"
1033
+ }
1034
+ ]
1035
+ },
1036
+ {
1037
+ comment: "action",
1038
+ begin: "\\([[:space:]]*(action)\\b",
1039
+ end: "\\)",
1040
+ beginCaptures: {
1041
+ "1": {
1042
+ name: "keyword.language.dune"
1043
+ }
1044
+ },
1045
+ patterns: [
1046
+ {
1047
+ include: "#action"
1048
+ },
1049
+ {
1050
+ include: "#general"
1051
+ }
1052
+ ]
1053
+ },
1054
+ {
1055
+ include: "#library"
1056
+ },
1057
+ {
1058
+ include: "#general"
1059
+ }
1060
+ ]
1061
+ },
1062
+ {
1063
+ comment: "dirs",
1064
+ begin: "\\([[:space:]]*(dirs)\\b",
1065
+ end: "\\)",
1066
+ beginCaptures: {
1067
+ "1": {
1068
+ name: "keyword.language.dune"
1069
+ }
1070
+ },
1071
+ patterns: [
1072
+ {
1073
+ include: "#general"
1074
+ }
1075
+ ]
1076
+ },
1077
+ {
1078
+ comment: "data_only_dirs",
1079
+ begin: "\\([[:space:]]*(data_only_dirs)\\b",
1080
+ end: "\\)",
1081
+ beginCaptures: {
1082
+ "1": {
1083
+ name: "keyword.language.dune"
1084
+ }
1085
+ },
1086
+ patterns: [
1087
+ {
1088
+ include: "#general"
1089
+ }
1090
+ ]
1091
+ },
1092
+ {
1093
+ comment: "ignored_subdirs",
1094
+ begin: "\\([[:space:]]*(ignored_subdirs)\\b",
1095
+ end: "\\)",
1096
+ beginCaptures: {
1097
+ "1": {
1098
+ name: "keyword.language.dune"
1099
+ }
1100
+ },
1101
+ patterns: [
1102
+ {
1103
+ include: "#general"
1104
+ }
1105
+ ]
1106
+ },
1107
+ {
1108
+ comment: "vendored_dirs",
1109
+ begin: "\\([[:space:]]*(vendored_dirs)\\b",
1110
+ end: "\\)",
1111
+ beginCaptures: {
1112
+ "1": {
1113
+ name: "keyword.language.dune"
1114
+ }
1115
+ },
1116
+ patterns: [
1117
+ {
1118
+ include: "#general"
1119
+ }
1120
+ ]
1121
+ },
1122
+ {
1123
+ comment: "include_subdirs",
1124
+ begin: "\\([[:space:]]*(include_subdirs)\\b",
1125
+ end: "\\)",
1126
+ beginCaptures: {
1127
+ "1": {
1128
+ name: "keyword.language.dune"
1129
+ }
1130
+ },
1131
+ patterns: [
1132
+ {
1133
+ comment: "lib",
1134
+ begin: "\\([[:space:]]*(lib)\\b",
1135
+ end: "\\)",
1136
+ beginCaptures: {
1137
+ "1": {
1138
+ name: "keyword.language.dune"
1139
+ }
1140
+ },
1141
+ patterns: [
1142
+ {
1143
+ include: "#general"
1144
+ }
1145
+ ]
1146
+ },
1147
+ {
1148
+ include: "#general"
1149
+ }
1150
+ ]
1151
+ },
1152
+ {
1153
+ comment: "toplevel",
1154
+ begin: "\\([[:space:]]*(toplevel)\\b",
1155
+ end: "\\)",
1156
+ beginCaptures: {
1157
+ "1": {
1158
+ name: "keyword.language.dune"
1159
+ }
1160
+ },
1161
+ patterns: [
1162
+ {
1163
+ comment: "name",
1164
+ begin: "\\([[:space:]]*(name)\\b",
1165
+ end: "\\)",
1166
+ beginCaptures: {
1167
+ "1": {
1168
+ name: "keyword.language.dune"
1169
+ }
1170
+ },
1171
+ contentName: "variable.declaration.other.dune",
1172
+ patterns: [
1173
+ {
1174
+ include: "#general"
1175
+ }
1176
+ ]
1177
+ },
1178
+ {
1179
+ comment: "preprocess",
1180
+ begin: "\\([[:space:]]*(preprocess)\\b",
1181
+ end: "\\)",
1182
+ beginCaptures: {
1183
+ "1": {
1184
+ name: "keyword.language.dune"
1185
+ }
1186
+ },
1187
+ patterns: [
1188
+ {
1189
+ include: "#preprocessing_specs"
1190
+ },
1191
+ {
1192
+ include: "#general"
1193
+ }
1194
+ ]
1195
+ },
1196
+ {
1197
+ comment: "libraries",
1198
+ begin: "\\([[:space:]]*(libraries)\\b",
1199
+ end: "\\)",
1200
+ beginCaptures: {
1201
+ "1": {
1202
+ name: "keyword.language.dune"
1203
+ }
1204
+ },
1205
+ patterns: [
1206
+ {
1207
+ include: "#general"
1208
+ }
1209
+ ]
1210
+ },
1211
+ {
1212
+ include: "#general"
1213
+ }
1214
+ ]
1215
+ },
1216
+ {
1217
+ comment: "subdir",
1218
+ begin: "\\([[:space:]]*(subdir)\\b",
1219
+ end: "\\)",
1220
+ beginCaptures: {
1221
+ "1": {
1222
+ name: "keyword.language.dune"
1223
+ }
1224
+ },
1225
+ patterns: [
1226
+ {
1227
+ include: "$self"
1228
+ },
1229
+ {
1230
+ include: "#general"
1231
+ }
1232
+ ]
1233
+ },
1234
+ {
1235
+ comment: "using",
1236
+ begin: "\\([[:space:]]*(using)\\b",
1237
+ end: "\\)",
1238
+ beginCaptures: {
1239
+ "1": {
1240
+ name: "keyword.language.dune"
1241
+ }
1242
+ },
1243
+ patterns: [
1244
+ {
1245
+ include: "#general"
1246
+ }
1247
+ ]
1248
+ },
1249
+ {
1250
+ comment: "coq.theory",
1251
+ begin: "\\([[:space:]]*(coq.theory)\\b",
1252
+ end: "\\)",
1253
+ beginCaptures: {
1254
+ "1": {
1255
+ name: "keyword.language.dune"
1256
+ }
1257
+ },
1258
+ patterns: [
1259
+ {
1260
+ comment: "name/package",
1261
+ begin: "\\([[:space:]]*(name|package)\\b",
1262
+ end: "\\)",
1263
+ beginCaptures: {
1264
+ "1": {
1265
+ name: "keyword.language.dune"
1266
+ }
1267
+ },
1268
+ contentName: "variable.declaration.other.dune",
1269
+ patterns: [
1270
+ {
1271
+ include: "#general"
1272
+ }
1273
+ ]
1274
+ },
1275
+ {
1276
+ comment: "synopsis/modules/libraries/flags/mode/theories",
1277
+ begin: "\\([[:space:]]*(synopsis|modules|libraries|flags|mode|theories)\\b",
1278
+ end: "\\)",
1279
+ beginCaptures: {
1280
+ "1": {
1281
+ name: "keyword.language.dune"
1282
+ }
1283
+ },
1284
+ patterns: [
1285
+ {
1286
+ include: "#general"
1287
+ }
1288
+ ]
1289
+ },
1290
+ {
1291
+ include: "#general"
1292
+ }
1293
+ ]
1294
+ },
1295
+ {
1296
+ comment: "coq.pp",
1297
+ begin: "\\([[:space:]]*(coq.pp)\\b",
1298
+ end: "\\)",
1299
+ beginCaptures: {
1300
+ "1": {
1301
+ name: "keyword.language.dune"
1302
+ }
1303
+ },
1304
+ patterns: [
1305
+ {
1306
+ comment: "modules",
1307
+ begin: "\\([[:space:]]*(modules)\\b",
1308
+ end: "\\)",
1309
+ beginCaptures: {
1310
+ "1": {
1311
+ name: "keyword.language.dune"
1312
+ }
1313
+ },
1314
+ patterns: [
1315
+ {
1316
+ include: "#general"
1317
+ }
1318
+ ]
1319
+ },
1320
+ {
1321
+ include: "#general"
1322
+ }
1323
+ ]
1324
+ },
1325
+ {
1326
+ comment: "coq.extraction",
1327
+ begin: "\\([[:space:]]*(coq.extraction)\\b",
1328
+ end: "\\)",
1329
+ beginCaptures: {
1330
+ "1": {
1331
+ name: "keyword.language.dune"
1332
+ }
1333
+ },
1334
+ patterns: [
1335
+ {
1336
+ comment: "prelude/extracted_modules/libraries/flags/theories/mode/public_name",
1337
+ begin: "\\([[:space:]]*(prelude|extracted_modules|libraries|flags|theories|mode|public_name)\\b",
1338
+ end: "\\)",
1339
+ beginCaptures: {
1340
+ "1": {
1341
+ name: "keyword.language.dune"
1342
+ }
1343
+ },
1344
+ patterns: [
1345
+ {
1346
+ include: "#general"
1347
+ }
1348
+ ]
1349
+ },
1350
+ {
1351
+ include: "#general"
1352
+ }
1353
+ ]
1354
+ },
1355
+ {
1356
+ comment: "mdx",
1357
+ begin: "\\([[:space:]]*(mdx)\\b",
1358
+ end: "\\)",
1359
+ beginCaptures: {
1360
+ "1": {
1361
+ name: "keyword.language.dune"
1362
+ }
1363
+ },
1364
+ patterns: [
1365
+ {
1366
+ comment: "packages",
1367
+ begin: "\\([[:space:]]*(packages)\\b",
1368
+ end: "\\)",
1369
+ beginCaptures: {
1370
+ "1": {
1371
+ name: "keyword.language.dune"
1372
+ }
1373
+ },
1374
+ contentName: "variable.declaration.other.dune",
1375
+ patterns: [
1376
+ {
1377
+ include: "#general"
1378
+ }
1379
+ ]
1380
+ },
1381
+ {
1382
+ comment: "files/preludes",
1383
+ begin: "\\([[:space:]]*(files|preludes)\\b",
1384
+ end: "\\)",
1385
+ beginCaptures: {
1386
+ "1": {
1387
+ name: "keyword.language.dune"
1388
+ }
1389
+ },
1390
+ patterns: [
1391
+ {
1392
+ include: "#general"
1393
+ }
1394
+ ]
1395
+ },
1396
+ {
1397
+ include: "#general"
1398
+ }
1399
+ ]
1400
+ },
1401
+ {
1402
+ comment: "plugin",
1403
+ begin: "\\([[:space:]]*(plugin)\\b",
1404
+ end: "\\)",
1405
+ beginCaptures: {
1406
+ "1": {
1407
+ name: "keyword.language.dune"
1408
+ }
1409
+ },
1410
+ patterns: [
1411
+ {
1412
+ comment: "name/package",
1413
+ begin: "\\([[:space:]]*(name|package)\\b",
1414
+ end: "\\)",
1415
+ beginCaptures: {
1416
+ "1": {
1417
+ name: "keyword.language.dune"
1418
+ }
1419
+ },
1420
+ contentName: "variable.declaration.other.dune",
1421
+ patterns: [
1422
+ {
1423
+ include: "#general"
1424
+ }
1425
+ ]
1426
+ },
1427
+ {
1428
+ comment: "libraries/optional",
1429
+ begin: "\\([[:space:]]*(libraries|optional)\\b",
1430
+ end: "\\)",
1431
+ beginCaptures: {
1432
+ "1": {
1433
+ name: "keyword.language.dune"
1434
+ }
1435
+ },
1436
+ patterns: [
1437
+ {
1438
+ include: "#general"
1439
+ }
1440
+ ]
1441
+ },
1442
+ {
1443
+ comment: "site",
1444
+ begin: "\\([[:space:]]*(site)\\b",
1445
+ end: "\\)",
1446
+ beginCaptures: {
1447
+ "1": {
1448
+ name: "keyword.language.dune"
1449
+ }
1450
+ },
1451
+ patterns: [
1452
+ {
1453
+ comment: "package",
1454
+ begin: "\\([[:space:]]*(package)\\b",
1455
+ end: "\\)",
1456
+ beginCaptures: {
1457
+ "1": {
1458
+ name: "keyword.language.dune"
1459
+ }
1460
+ },
1461
+ contentName: "variable.declaration.other.dune",
1462
+ patterns: [
1463
+ {
1464
+ include: "#general"
1465
+ }
1466
+ ]
1467
+ },
1468
+ {
1469
+ include: "#general"
1470
+ }
1471
+ ]
1472
+ },
1473
+ {
1474
+ include: "#general"
1475
+ }
1476
+ ]
1477
+ },
1478
+ {
1479
+ comment: "generate_sites_module",
1480
+ begin: "\\([[:space:]]*(generate_sites_module)\\b",
1481
+ end: "\\)",
1482
+ beginCaptures: {
1483
+ "1": {
1484
+ name: "keyword.language.dune"
1485
+ }
1486
+ },
1487
+ patterns: [
1488
+ {
1489
+ comment: "module",
1490
+ begin: "\\([[:space:]]*(module)\\b",
1491
+ end: "\\)",
1492
+ beginCaptures: {
1493
+ "1": {
1494
+ name: "keyword.language.dune"
1495
+ }
1496
+ },
1497
+ patterns: [
1498
+ {
1499
+ include: "#general"
1500
+ }
1501
+ ]
1502
+ },
1503
+ {
1504
+ comment: "sourceroot",
1505
+ begin: "\\([[:space:]]*(sourceroot)\\b",
1506
+ end: "\\)",
1507
+ beginCaptures: {
1508
+ "1": {
1509
+ name: "keyword.language.dune"
1510
+ }
1511
+ },
1512
+ patterns: [
1513
+ {
1514
+ include: "#general"
1515
+ }
1516
+ ]
1517
+ },
1518
+ {
1519
+ comment: "relocatable",
1520
+ begin: "\\([[:space:]]*(relocatable)\\b",
1521
+ end: "\\)",
1522
+ beginCaptures: {
1523
+ "1": {
1524
+ name: "keyword.language.dune"
1525
+ }
1526
+ },
1527
+ patterns: [
1528
+ {
1529
+ include: "#general"
1530
+ }
1531
+ ]
1532
+ },
1533
+ {
1534
+ comment: "sites",
1535
+ begin: "\\([[:space:]]*(sites)\\b",
1536
+ end: "\\)",
1537
+ beginCaptures: {
1538
+ "1": {
1539
+ name: "keyword.language.dune"
1540
+ }
1541
+ },
1542
+ patterns: [
1543
+ {
1544
+ include: "#general"
1545
+ }
1546
+ ]
1547
+ },
1548
+ {
1549
+ comment: "plugins",
1550
+ begin: "\\([[:space:]]*(plugins)\\b",
1551
+ end: "\\)",
1552
+ beginCaptures: {
1553
+ "1": {
1554
+ name: "keyword.language.dune"
1555
+ }
1556
+ },
1557
+ patterns: [
1558
+ {
1559
+ comment: "package",
1560
+ begin: "\\([[:space:]]*(package)\\b",
1561
+ end: "\\)",
1562
+ beginCaptures: {
1563
+ "1": {
1564
+ name: "keyword.language.dune"
1565
+ }
1566
+ },
1567
+ contentName: "variable.declaration.other.dune",
1568
+ patterns: [
1569
+ {
1570
+ include: "#general"
1571
+ }
1572
+ ]
1573
+ },
1574
+ {
1575
+ include: "#general"
1576
+ }
1577
+ ]
1578
+ },
1579
+ {
1580
+ include: "#general"
1581
+ }
1582
+ ]
1583
+ },
1584
+ {
1585
+ include: "#general"
1586
+ }
1587
+ ]
26
1588
  },
27
- {
28
- open: "(",
29
- close: ")"
1589
+ dependencies: {
1590
+ patterns: [
1591
+ {
1592
+ comment: "dependencies/file",
1593
+ begin: "\\([[:space:]]*(file)\\b",
1594
+ end: "\\)",
1595
+ beginCaptures: {
1596
+ "1": {
1597
+ name: "keyword.language.dune"
1598
+ }
1599
+ },
1600
+ patterns: [
1601
+ {
1602
+ include: "#general"
1603
+ }
1604
+ ]
1605
+ },
1606
+ {
1607
+ comment: "dependencies/alias",
1608
+ begin: "\\([[:space:]]*(alias)\\b",
1609
+ end: "\\)",
1610
+ beginCaptures: {
1611
+ "1": {
1612
+ name: "keyword.language.dune"
1613
+ }
1614
+ },
1615
+ patterns: [
1616
+ {
1617
+ include: "#general"
1618
+ }
1619
+ ]
1620
+ },
1621
+ {
1622
+ comment: "dependencies/alias_rec",
1623
+ begin: "\\([[:space:]]*(alias_rec)\\b",
1624
+ end: "\\)",
1625
+ beginCaptures: {
1626
+ "1": {
1627
+ name: "keyword.language.dune"
1628
+ }
1629
+ },
1630
+ patterns: [
1631
+ {
1632
+ include: "#general"
1633
+ }
1634
+ ]
1635
+ },
1636
+ {
1637
+ comment: "dependencies/glob_files",
1638
+ begin: "\\([[:space:]]*(glob_files)\\b",
1639
+ end: "\\)",
1640
+ beginCaptures: {
1641
+ "1": {
1642
+ name: "keyword.language.dune"
1643
+ }
1644
+ },
1645
+ patterns: [
1646
+ {
1647
+ include: "#general"
1648
+ }
1649
+ ]
1650
+ },
1651
+ {
1652
+ comment: "dependencies/source_tree",
1653
+ begin: "\\([[:space:]]*(source_tree)\\b",
1654
+ end: "\\)",
1655
+ beginCaptures: {
1656
+ "1": {
1657
+ name: "keyword.language.dune"
1658
+ }
1659
+ },
1660
+ patterns: [
1661
+ {
1662
+ include: "#general"
1663
+ }
1664
+ ]
1665
+ },
1666
+ {
1667
+ comment: "dependencies/universe",
1668
+ begin: "\\([[:space:]]*(universe)\\b",
1669
+ end: "\\)",
1670
+ beginCaptures: {
1671
+ "1": {
1672
+ name: "keyword.language.dune"
1673
+ }
1674
+ },
1675
+ patterns: [
1676
+ {
1677
+ include: "#general"
1678
+ }
1679
+ ]
1680
+ },
1681
+ {
1682
+ comment: "dependencies/package",
1683
+ begin: "\\([[:space:]]*(package)\\b",
1684
+ end: "\\)",
1685
+ beginCaptures: {
1686
+ "1": {
1687
+ name: "keyword.language.dune"
1688
+ }
1689
+ },
1690
+ contentName: "variable.declaration.other.dune",
1691
+ patterns: [
1692
+ {
1693
+ include: "#general"
1694
+ }
1695
+ ]
1696
+ },
1697
+ {
1698
+ comment: "dependencies/env_var",
1699
+ begin: "\\([[:space:]]*(env_var)\\b",
1700
+ end: "\\)",
1701
+ beginCaptures: {
1702
+ "1": {
1703
+ name: "keyword.language.dune"
1704
+ }
1705
+ },
1706
+ patterns: [
1707
+ {
1708
+ include: "#general"
1709
+ }
1710
+ ]
1711
+ },
1712
+ {
1713
+ comment: "dependencies/sandbox",
1714
+ begin: "\\([[:space:]]*(sandbox)\\b",
1715
+ end: "\\)",
1716
+ beginCaptures: {
1717
+ "1": {
1718
+ name: "keyword.language.dune"
1719
+ }
1720
+ },
1721
+ patterns: [
1722
+ {
1723
+ comment: "dependencies/sandbox/config",
1724
+ match: "\\b(always|none|preserve_file_kind)\\b",
1725
+ name: "constant.language.dune"
1726
+ },
1727
+ {
1728
+ include: "#general"
1729
+ }
1730
+ ]
1731
+ },
1732
+ {
1733
+ include: "#general"
1734
+ }
1735
+ ]
30
1736
  },
31
- {
32
- open: "\"",
33
- close: "\"",
34
- notIn: [
35
- "string",
36
- "comment"
1737
+ action: {
1738
+ patterns: [
1739
+ {
1740
+ comment: "with-stdout-to/with-stdin-from/with-stderr-to/with-outputs-to",
1741
+ begin: "\\([[:space:]]*(with-stdout-to|with-stdin-from|with-stderr-to|with-outputs-to)\\b",
1742
+ end: "\\)",
1743
+ beginCaptures: {
1744
+ "1": {
1745
+ name: "entity.name.function.action.dune"
1746
+ }
1747
+ },
1748
+ patterns: [
1749
+ {
1750
+ include: "#action"
1751
+ },
1752
+ {
1753
+ include: "#general"
1754
+ }
1755
+ ]
1756
+ },
1757
+ {
1758
+ comment: "ignore-stdout-to/ignore-stderr-to/ignore-outputs-to",
1759
+ begin: "\\([[:space:]]*(ignore-stdout-to|ignore-stderr-to|ignore-outputs-to)\\b",
1760
+ end: "\\)",
1761
+ beginCaptures: {
1762
+ "1": {
1763
+ name: "entity.name.function.action.dune"
1764
+ }
1765
+ },
1766
+ patterns: [
1767
+ {
1768
+ include: "#action"
1769
+ },
1770
+ {
1771
+ include: "#general"
1772
+ }
1773
+ ]
1774
+ },
1775
+ {
1776
+ comment: "run/dynamic_run",
1777
+ begin: "\\([[:space:]]*(run|dynamic_run)\\b",
1778
+ end: "\\)",
1779
+ beginCaptures: {
1780
+ "1": {
1781
+ name: "entity.name.function.action.dune"
1782
+ }
1783
+ },
1784
+ patterns: [
1785
+ {
1786
+ include: "#action"
1787
+ },
1788
+ {
1789
+ include: "#general"
1790
+ }
1791
+ ]
1792
+ },
1793
+ {
1794
+ comment: "with-accepted-exit-codes",
1795
+ begin: "\\([[:space:]]*(with-accepted-exit-codes)\\b",
1796
+ end: "\\)",
1797
+ beginCaptures: {
1798
+ "1": {
1799
+ name: "entity.name.function.action.dune"
1800
+ }
1801
+ },
1802
+ patterns: [
1803
+ {
1804
+ include: "#action"
1805
+ },
1806
+ {
1807
+ include: "#general"
1808
+ }
1809
+ ]
1810
+ },
1811
+ {
1812
+ comment: "chdir/setenv",
1813
+ begin: "\\([[:space:]]*(chdir|setenv)\\b",
1814
+ end: "\\)",
1815
+ beginCaptures: {
1816
+ "1": {
1817
+ name: "entity.name.function.action.dune"
1818
+ }
1819
+ },
1820
+ patterns: [
1821
+ {
1822
+ include: "#action"
1823
+ },
1824
+ {
1825
+ include: "#general"
1826
+ }
1827
+ ]
1828
+ },
1829
+ {
1830
+ comment: "progn/echo/write-file/cat/copy/copy#",
1831
+ begin: "\\([[:space:]]*(progn|echo|write-file|cat|copy|copy\\#)\\b",
1832
+ end: "\\)",
1833
+ beginCaptures: {
1834
+ "1": {
1835
+ name: "entity.name.function.action.dune"
1836
+ }
1837
+ },
1838
+ patterns: [
1839
+ {
1840
+ include: "#action"
1841
+ },
1842
+ {
1843
+ include: "#general"
1844
+ }
1845
+ ]
1846
+ },
1847
+ {
1848
+ comment: "system/bash/diff/diff?/cmp/no-infer",
1849
+ begin: "\\([[:space:]]*(system|bash|diff|diff\\?|cmp|no-infer)\\b",
1850
+ end: "\\)",
1851
+ beginCaptures: {
1852
+ "1": {
1853
+ name: "entity.name.function.action.dune"
1854
+ }
1855
+ },
1856
+ patterns: [
1857
+ {
1858
+ include: "#action"
1859
+ },
1860
+ {
1861
+ include: "#general"
1862
+ }
1863
+ ]
1864
+ },
1865
+ {
1866
+ comment: "pipe-stdout/pipe-stderr/pipe-outputs",
1867
+ begin: "\\([[:space:]]*(pipe-stdout|pipe-stderr|pipe-outputs)\\b",
1868
+ end: "\\)",
1869
+ beginCaptures: {
1870
+ "1": {
1871
+ name: "entity.name.function.action.dune"
1872
+ }
1873
+ },
1874
+ patterns: [
1875
+ {
1876
+ include: "#action"
1877
+ },
1878
+ {
1879
+ include: "#general"
1880
+ }
1881
+ ]
1882
+ },
1883
+ {
1884
+ include: "#general"
1885
+ }
37
1886
  ]
38
- }
39
- ];
40
- var surroundingPairs = [
41
- {
42
- open: "[",
43
- close: "]"
44
1887
  },
45
- {
46
- open: "(",
47
- close: ")"
1888
+ library: {
1889
+ patterns: [
1890
+ {
1891
+ comment: "name/public_name/package",
1892
+ begin: "\\([[:space:]]*(name|public_name|package)\\b",
1893
+ end: "\\)",
1894
+ beginCaptures: {
1895
+ "1": {
1896
+ name: "keyword.language.dune"
1897
+ }
1898
+ },
1899
+ contentName: "variable.other.declaration.dune",
1900
+ patterns: [
1901
+ {
1902
+ include: "#general"
1903
+ }
1904
+ ]
1905
+ },
1906
+ {
1907
+ comment: "synopsis",
1908
+ begin: "\\([[:space:]]*(synopsis)\\b",
1909
+ end: "\\)",
1910
+ beginCaptures: {
1911
+ "1": {
1912
+ name: "keyword.language.dune"
1913
+ }
1914
+ },
1915
+ patterns: [
1916
+ {
1917
+ include: "#general"
1918
+ }
1919
+ ]
1920
+ },
1921
+ {
1922
+ comment: "modules",
1923
+ begin: "\\([[:space:]]*(modules)\\b",
1924
+ end: "\\)",
1925
+ beginCaptures: {
1926
+ "1": {
1927
+ name: "keyword.language.dune"
1928
+ }
1929
+ },
1930
+ patterns: [
1931
+ {
1932
+ include: "#general"
1933
+ }
1934
+ ]
1935
+ },
1936
+ {
1937
+ comment: "libraries",
1938
+ begin: "\\([[:space:]]*(libraries)\\b",
1939
+ end: "\\)",
1940
+ beginCaptures: {
1941
+ "1": {
1942
+ name: "keyword.language.dune"
1943
+ }
1944
+ },
1945
+ patterns: [
1946
+ {
1947
+ include: "#general"
1948
+ },
1949
+ {
1950
+ include: "#library_dependencies"
1951
+ }
1952
+ ]
1953
+ },
1954
+ {
1955
+ comment: "self_build_stubs_archive",
1956
+ begin: "\\([[:space:]]*(self_build_stubs_archive)\\b",
1957
+ end: "\\)",
1958
+ beginCaptures: {
1959
+ "1": {
1960
+ name: "keyword.language.dune"
1961
+ }
1962
+ },
1963
+ patterns: [
1964
+ {
1965
+ include: "#general"
1966
+ }
1967
+ ]
1968
+ },
1969
+ {
1970
+ comment: "library_flags",
1971
+ begin: "\\([[:space:]]*(library_flags)\\b",
1972
+ end: "\\)",
1973
+ beginCaptures: {
1974
+ "1": {
1975
+ name: "keyword.language.dune"
1976
+ }
1977
+ },
1978
+ patterns: [
1979
+ {
1980
+ include: "#general"
1981
+ }
1982
+ ]
1983
+ },
1984
+ {
1985
+ comment: "wrapped",
1986
+ begin: "\\([[:space:]]*(wrapped)\\b",
1987
+ end: "\\)",
1988
+ beginCaptures: {
1989
+ "1": {
1990
+ name: "keyword.language.dune"
1991
+ }
1992
+ },
1993
+ patterns: [
1994
+ {
1995
+ comment: "transition",
1996
+ begin: "\\([[:space:]]*(transition)\\b",
1997
+ end: "\\)",
1998
+ beginCaptures: {
1999
+ "1": {
2000
+ name: "keyword.language.dune"
2001
+ }
2002
+ },
2003
+ patterns: [
2004
+ {
2005
+ include: "#general"
2006
+ }
2007
+ ]
2008
+ },
2009
+ {
2010
+ include: "#general"
2011
+ }
2012
+ ]
2013
+ },
2014
+ {
2015
+ comment: "preprocess",
2016
+ begin: "\\([[:space:]]*(preprocess)\\b",
2017
+ end: "\\)",
2018
+ beginCaptures: {
2019
+ "1": {
2020
+ name: "keyword.language.dune"
2021
+ }
2022
+ },
2023
+ patterns: [
2024
+ {
2025
+ include: "#preprocessing_specs"
2026
+ },
2027
+ {
2028
+ include: "#general"
2029
+ }
2030
+ ]
2031
+ },
2032
+ {
2033
+ comment: "preprocessor_deps",
2034
+ begin: "\\([[:space:]]*(preprocessor_deps)\\b",
2035
+ end: "\\)",
2036
+ beginCaptures: {
2037
+ "1": {
2038
+ name: "keyword.language.dune"
2039
+ }
2040
+ },
2041
+ patterns: [
2042
+ {
2043
+ include: "#dependencies"
2044
+ },
2045
+ {
2046
+ include: "#general"
2047
+ }
2048
+ ]
2049
+ },
2050
+ {
2051
+ comment: "deps",
2052
+ begin: "\\([[:space:]]*(deps)\\b",
2053
+ end: "\\)",
2054
+ beginCaptures: {
2055
+ "1": {
2056
+ name: "keyword.language.dune"
2057
+ }
2058
+ },
2059
+ patterns: [
2060
+ {
2061
+ include: "#general"
2062
+ }
2063
+ ]
2064
+ },
2065
+ {
2066
+ comment: "optional",
2067
+ begin: "\\([[:space:]]*(optional)\\b",
2068
+ end: "\\)",
2069
+ beginCaptures: {
2070
+ "1": {
2071
+ name: "keyword.language.dune"
2072
+ }
2073
+ }
2074
+ },
2075
+ {
2076
+ comment: "foreign_archives",
2077
+ begin: "\\([[:space:]]*(foreign_archives)\\b",
2078
+ end: "\\)",
2079
+ contentName: "variable.declaration.other.dune",
2080
+ beginCaptures: {
2081
+ "1": {
2082
+ name: "keyword.language.dune"
2083
+ }
2084
+ },
2085
+ patterns: [
2086
+ {
2087
+ include: "#general"
2088
+ }
2089
+ ]
2090
+ },
2091
+ {
2092
+ comment: "foreign_stubs",
2093
+ begin: "\\([[:space:]]*(foreign_stubs)\\b",
2094
+ end: "\\)",
2095
+ beginCaptures: {
2096
+ "1": {
2097
+ name: "keyword.language.dune"
2098
+ }
2099
+ },
2100
+ patterns: [
2101
+ {
2102
+ comment: "names",
2103
+ begin: "\\([[:space:]]*(names)\\b",
2104
+ end: "\\)",
2105
+ beginCaptures: {
2106
+ "1": {
2107
+ name: "keyword.language.dune"
2108
+ }
2109
+ },
2110
+ contentName: "variable.declaration.other.dune",
2111
+ patterns: [
2112
+ {
2113
+ include: "#general"
2114
+ }
2115
+ ]
2116
+ },
2117
+ {
2118
+ comment: "language",
2119
+ begin: "\\([[:space:]]*(language)\\b",
2120
+ end: "\\)",
2121
+ beginCaptures: {
2122
+ "1": {
2123
+ name: "keyword.language.dune"
2124
+ }
2125
+ },
2126
+ patterns: [
2127
+ {
2128
+ comment: "c/cxx",
2129
+ begin: "\\([[:space:]]*(c|cxx)\\b",
2130
+ end: "\\)",
2131
+ beginCaptures: {
2132
+ "1": {
2133
+ name: "keyword.language.dune"
2134
+ }
2135
+ },
2136
+ patterns: [
2137
+ {
2138
+ include: "#general"
2139
+ }
2140
+ ]
2141
+ },
2142
+ {
2143
+ include: "#general"
2144
+ }
2145
+ ]
2146
+ },
2147
+ {
2148
+ comment: "flags",
2149
+ begin: "\\b\\([[:space:]]*(flags)\\b",
2150
+ end: "\\)",
2151
+ beginCaptures: {
2152
+ "1": {
2153
+ name: "keyword.language.dune"
2154
+ }
2155
+ },
2156
+ patterns: [
2157
+ {
2158
+ comment: "c_flags/cxx_flags",
2159
+ begin: "\\([[:space:]]*(c_flags|cxx_flags)\\b",
2160
+ end: "\\)",
2161
+ beginCaptures: {
2162
+ "1": {
2163
+ name: "keyword.language.dune"
2164
+ }
2165
+ },
2166
+ patterns: [
2167
+ {
2168
+ include: "#general"
2169
+ }
2170
+ ]
2171
+ },
2172
+ {
2173
+ comment: "include_dirs",
2174
+ begin: "\\([[:space:]]*(include_dirs)\\b",
2175
+ end: "\\)",
2176
+ beginCaptures: {
2177
+ "1": {
2178
+ name: "keyword.language.dune"
2179
+ }
2180
+ },
2181
+ patterns: [
2182
+ {
2183
+ include: "#general"
2184
+ }
2185
+ ]
2186
+ },
2187
+ {
2188
+ comment: "extra_deps",
2189
+ begin: "\\([[:space:]]*(extra_deps)\\b",
2190
+ end: "\\)",
2191
+ beginCaptures: {
2192
+ "1": {
2193
+ name: "keyword.language.dune"
2194
+ }
2195
+ },
2196
+ patterns: [
2197
+ {
2198
+ include: "#general"
2199
+ }
2200
+ ]
2201
+ },
2202
+ {
2203
+ include: "#general"
2204
+ }
2205
+ ]
2206
+ }
2207
+ ]
2208
+ },
2209
+ {
2210
+ comment: "c_names/c_flags/cxx_names/cxx_flags/install_c_headers",
2211
+ begin: "\\([[:space:]]*(c_names|c_flags|cxx_names|cxx_flags|install_c_headers)\\b",
2212
+ end: "\\)",
2213
+ beginCaptures: {
2214
+ "1": {
2215
+ name: "keyword.language.dune"
2216
+ }
2217
+ },
2218
+ patterns: [
2219
+ {
2220
+ include: "#general"
2221
+ }
2222
+ ]
2223
+ },
2224
+ {
2225
+ comment: "modes",
2226
+ begin: "\\([[:space:]]*(modes)\\b",
2227
+ end: "\\)",
2228
+ beginCaptures: {
2229
+ "1": {
2230
+ name: "keyword.language.dune"
2231
+ }
2232
+ },
2233
+ patterns: [
2234
+ {
2235
+ comment: "byte/native/best",
2236
+ begin: "\\([[:space:]]*(byte|native|best)\\b",
2237
+ end: "\\)",
2238
+ beginCaptures: {
2239
+ "1": {
2240
+ name: "variable.other.declaration.dune"
2241
+ }
2242
+ },
2243
+ patterns: [
2244
+ {
2245
+ include: "#general"
2246
+ }
2247
+ ]
2248
+ },
2249
+ {
2250
+ include: "#general"
2251
+ }
2252
+ ]
2253
+ },
2254
+ {
2255
+ comment: "no_dynlink",
2256
+ begin: "\\([[:space:]]*(no_dynlink)\\b",
2257
+ end: "\\)",
2258
+ beginCaptures: {
2259
+ "1": {
2260
+ name: "keyword.language.dune"
2261
+ }
2262
+ },
2263
+ patterns: [
2264
+ {
2265
+ include: "#general"
2266
+ }
2267
+ ]
2268
+ },
2269
+ {
2270
+ comment: "kind",
2271
+ begin: "\\([[:space:]]*(kind)\\b",
2272
+ end: "\\)",
2273
+ beginCaptures: {
2274
+ "1": {
2275
+ name: "keyword.language.dune"
2276
+ }
2277
+ },
2278
+ patterns: [
2279
+ {
2280
+ comment: "normal/ppx_rewriter/ppx_deriver/cookies",
2281
+ begin: "\\([[:space:]]*(normal|ppx_rewriter|ppx_deriver|cookies)\\b",
2282
+ end: "\\)",
2283
+ beginCaptures: {
2284
+ "1": {
2285
+ name: "variable.other.declaration.dune"
2286
+ }
2287
+ },
2288
+ patterns: [
2289
+ {
2290
+ include: "#general"
2291
+ }
2292
+ ]
2293
+ },
2294
+ {
2295
+ include: "#general"
2296
+ }
2297
+ ]
2298
+ },
2299
+ {
2300
+ comment: "ppx_runtime_libraries",
2301
+ begin: "\\([[:space:]]*(ppx_runtime_libraries)\\b",
2302
+ end: "\\)",
2303
+ beginCaptures: {
2304
+ "1": {
2305
+ name: "keyword.language.dune"
2306
+ }
2307
+ },
2308
+ patterns: [
2309
+ {
2310
+ include: "#general"
2311
+ }
2312
+ ]
2313
+ },
2314
+ {
2315
+ comment: "virtual_deps",
2316
+ begin: "\\([[:space:]]*(virtual_deps)\\b",
2317
+ end: "\\)",
2318
+ beginCaptures: {
2319
+ "1": {
2320
+ name: "keyword.language.dune"
2321
+ }
2322
+ },
2323
+ patterns: [
2324
+ {
2325
+ include: "#general"
2326
+ }
2327
+ ]
2328
+ },
2329
+ {
2330
+ comment: "flags",
2331
+ begin: "\\([[:space:]]*(flags)\\b",
2332
+ end: "\\)",
2333
+ beginCaptures: {
2334
+ "1": {
2335
+ name: "keyword.language.dune"
2336
+ }
2337
+ },
2338
+ patterns: [
2339
+ {
2340
+ include: "#general"
2341
+ }
2342
+ ]
2343
+ },
2344
+ {
2345
+ comment: "private_modules",
2346
+ begin: "\\([[:space:]]*(private_modules)\\b",
2347
+ end: "\\)",
2348
+ beginCaptures: {
2349
+ "1": {
2350
+ name: "keyword.language.dune"
2351
+ }
2352
+ },
2353
+ patterns: [
2354
+ {
2355
+ include: "#general"
2356
+ }
2357
+ ]
2358
+ },
2359
+ {
2360
+ comment: "allow_overlapping_dependencies",
2361
+ begin: "\\([[:space:]]*(allow_overlapping_dependencies)\\b",
2362
+ end: "\\)",
2363
+ beginCaptures: {
2364
+ "1": {
2365
+ name: "keyword.language.dune"
2366
+ }
2367
+ },
2368
+ patterns: [
2369
+ {
2370
+ include: "#general"
2371
+ }
2372
+ ]
2373
+ },
2374
+ {
2375
+ comment: "enabled_if",
2376
+ begin: "\\([[:space:]]*(enabled_if)\\b",
2377
+ end: "\\)",
2378
+ beginCaptures: {
2379
+ "1": {
2380
+ name: "keyword.language.dune"
2381
+ }
2382
+ },
2383
+ patterns: [
2384
+ {
2385
+ include: "#general"
2386
+ }
2387
+ ]
2388
+ },
2389
+ {
2390
+ comment: "js_of_ocaml",
2391
+ begin: "\\([[:space:]]*(js_of_ocaml)\\b",
2392
+ end: "\\)",
2393
+ beginCaptures: {
2394
+ "1": {
2395
+ name: "keyword.language.dune"
2396
+ }
2397
+ },
2398
+ patterns: [
2399
+ {
2400
+ comment: "javascript_files/flags",
2401
+ begin: "\\([[:space:]]*(javascript_files|flags)\\b",
2402
+ end: "\\)",
2403
+ beginCaptures: {
2404
+ "1": {
2405
+ name: "keyword.language.dune"
2406
+ }
2407
+ },
2408
+ patterns: [
2409
+ {
2410
+ include: "#general"
2411
+ }
2412
+ ]
2413
+ },
2414
+ {
2415
+ include: "#general"
2416
+ }
2417
+ ]
2418
+ },
2419
+ {
2420
+ comment: "inline_tests",
2421
+ begin: "\\([[:space:]]*(inline_tests)\\b",
2422
+ end: "\\)",
2423
+ beginCaptures: {
2424
+ "1": {
2425
+ name: "keyword.language.dune"
2426
+ }
2427
+ },
2428
+ patterns: [
2429
+ {
2430
+ comment: "executable",
2431
+ begin: "\\([[:space:]]*(executable)\\b",
2432
+ end: "\\)",
2433
+ beginCaptures: {
2434
+ "1": {
2435
+ name: "keyword.language.dune"
2436
+ }
2437
+ },
2438
+ patterns: [
2439
+ {
2440
+ comment: "flags",
2441
+ begin: "\\([[:space:]]*(flags)\\b",
2442
+ end: "\\)",
2443
+ beginCaptures: {
2444
+ "1": {
2445
+ name: "keyword.language.dune"
2446
+ }
2447
+ },
2448
+ patterns: [
2449
+ {
2450
+ include: "#general"
2451
+ }
2452
+ ]
2453
+ },
2454
+ {
2455
+ include: "#general"
2456
+ }
2457
+ ]
2458
+ },
2459
+ {
2460
+ comment: "preprocess",
2461
+ begin: "\\([[:space:]]*(preprocess)\\b",
2462
+ end: "\\)",
2463
+ beginCaptures: {
2464
+ "1": {
2465
+ name: "keyword.language.dune"
2466
+ }
2467
+ },
2468
+ patterns: [
2469
+ {
2470
+ include: "#preprocessing_specs"
2471
+ },
2472
+ {
2473
+ include: "#general"
2474
+ }
2475
+ ]
2476
+ },
2477
+ {
2478
+ comment: "backend/flags/libraries",
2479
+ begin: "\\([[:space:]]*(backend|flags|libraries)\\b",
2480
+ end: "\\)",
2481
+ beginCaptures: {
2482
+ "1": {
2483
+ name: "keyword.language.dune"
2484
+ }
2485
+ },
2486
+ patterns: [
2487
+ {
2488
+ comment: "flags",
2489
+ begin: "\\([[:space:]]*(flags)\\b",
2490
+ end: "\\)",
2491
+ beginCaptures: {
2492
+ "1": {
2493
+ name: "keyword.language.dune"
2494
+ }
2495
+ },
2496
+ patterns: [
2497
+ {
2498
+ include: "#general"
2499
+ }
2500
+ ]
2501
+ },
2502
+ {
2503
+ include: "#general"
2504
+ }
2505
+ ]
2506
+ },
2507
+ {
2508
+ include: "#general"
2509
+ }
2510
+ ]
2511
+ },
2512
+ {
2513
+ comment: "root_module",
2514
+ begin: "\\([[:space:]]*(root_module)\\b",
2515
+ end: "\\)",
2516
+ beginCaptures: {
2517
+ "1": {
2518
+ name: "keyword.language.dune"
2519
+ }
2520
+ },
2521
+ patterns: [
2522
+ {
2523
+ include: "#general"
2524
+ }
2525
+ ]
2526
+ },
2527
+ {
2528
+ comment: "ocamlopt_flags",
2529
+ begin: "\\([[:space:]]*(ocamlopt_flags)\\b",
2530
+ end: "\\)",
2531
+ beginCaptures: {
2532
+ "1": {
2533
+ name: "keyword.language.dune"
2534
+ }
2535
+ },
2536
+ patterns: [
2537
+ {
2538
+ include: "#general"
2539
+ }
2540
+ ]
2541
+ },
2542
+ {
2543
+ comment: "ocamlc_flags",
2544
+ begin: "\\([[:space:]]*(ocamlc_flags)\\b",
2545
+ end: "\\)",
2546
+ beginCaptures: {
2547
+ "1": {
2548
+ name: "keyword.language.dune"
2549
+ }
2550
+ },
2551
+ patterns: [
2552
+ {
2553
+ include: "#general"
2554
+ }
2555
+ ]
2556
+ },
2557
+ {
2558
+ comment: "c_library_flags/library_flags",
2559
+ begin: "\\([[:space:]]*(c_library_flags|library_flags)\\b",
2560
+ end: "\\)",
2561
+ beginCaptures: {
2562
+ "1": {
2563
+ name: "keyword.language.dune"
2564
+ }
2565
+ },
2566
+ patterns: [
2567
+ {
2568
+ include: "#general"
2569
+ }
2570
+ ]
2571
+ },
2572
+ {
2573
+ comment: "modules_without_implementation",
2574
+ begin: "\\([[:space:]]*(modules_without_implementation|)\\b",
2575
+ end: "\\)",
2576
+ beginCaptures: {
2577
+ "1": {
2578
+ name: "keyword.language.dune"
2579
+ }
2580
+ },
2581
+ patterns: [
2582
+ {
2583
+ include: "#general"
2584
+ }
2585
+ ]
2586
+ },
2587
+ {
2588
+ include: "#general"
2589
+ }
2590
+ ]
48
2591
  },
49
- {
50
- open: "\"",
51
- close: "\""
2592
+ library_dependencies: {
2593
+ patterns: [
2594
+ {
2595
+ comment: "alternative_dependencies",
2596
+ patterns: [
2597
+ {
2598
+ comment: "select/from",
2599
+ match: "\\b(select|from)\\b",
2600
+ name: "constant.language.dune",
2601
+ contentName: "variable.declaration.other.dune",
2602
+ patterns: [
2603
+ {
2604
+ include: "#general"
2605
+ }
2606
+ ]
2607
+ },
2608
+ {
2609
+ include: "#general"
2610
+ }
2611
+ ]
2612
+ },
2613
+ {
2614
+ comment: "re-exported_dependencies",
2615
+ patterns: [
2616
+ {
2617
+ comment: "re-export",
2618
+ begin: "\\([[:space:]]*(re-export)\\b",
2619
+ end: "\\)",
2620
+ beginCaptures: {
2621
+ "1": {
2622
+ name: "keyword.language.dune"
2623
+ }
2624
+ },
2625
+ patterns: [
2626
+ {
2627
+ include: "#library"
2628
+ },
2629
+ {
2630
+ include: "#general"
2631
+ }
2632
+ ]
2633
+ },
2634
+ {
2635
+ include: "#general"
2636
+ }
2637
+ ]
2638
+ },
2639
+ {
2640
+ include: "#general"
2641
+ }
2642
+ ]
2643
+ },
2644
+ preprocessing_specs: {
2645
+ patterns: [
2646
+ {
2647
+ comment: "preprocess/no_preprocessing",
2648
+ match: "\\b(no_preprocessing)\\b",
2649
+ name: "constant.language.dune",
2650
+ patterns: [
2651
+ {
2652
+ include: "#general"
2653
+ }
2654
+ ]
2655
+ },
2656
+ {
2657
+ comment: "preprocess/future_syntax",
2658
+ match: "\\b(future_syntax)\\b",
2659
+ name: "constant.language.dune",
2660
+ patterns: [
2661
+ {
2662
+ include: "#general"
2663
+ }
2664
+ ]
2665
+ },
2666
+ {
2667
+ comment: "pps",
2668
+ begin: "\\([[:space:]]*(pps)\\b",
2669
+ end: "\\)",
2670
+ beginCaptures: {
2671
+ "1": {
2672
+ name: "keyword.language.dune"
2673
+ }
2674
+ },
2675
+ patterns: [
2676
+ {
2677
+ include: "#general"
2678
+ }
2679
+ ]
2680
+ },
2681
+ {
2682
+ comment: "action",
2683
+ begin: "\\([[:space:]]*(action)\\b",
2684
+ end: "\\)",
2685
+ beginCaptures: {
2686
+ "1": {
2687
+ name: "keyword.language.dune"
2688
+ }
2689
+ },
2690
+ patterns: [
2691
+ {
2692
+ include: "#action"
2693
+ },
2694
+ {
2695
+ include: "#general"
2696
+ }
2697
+ ]
2698
+ },
2699
+ {
2700
+ comment: "staged_pps",
2701
+ begin: "\\([[:space:]]*(staged_pps)\\b",
2702
+ end: "\\)",
2703
+ beginCaptures: {
2704
+ "1": {
2705
+ name: "keyword.language.dune"
2706
+ }
2707
+ },
2708
+ patterns: [
2709
+ {
2710
+ include: "#general"
2711
+ }
2712
+ ]
2713
+ }
2714
+ ]
2715
+ },
2716
+ general: {
2717
+ patterns: [
2718
+ {
2719
+ name: "comment.line.dune",
2720
+ begin: ";",
2721
+ end: "$"
2722
+ },
2723
+ {
2724
+ name: "string.quoted.line.dune",
2725
+ begin: "\"\\\\\\|",
2726
+ end: "$",
2727
+ patterns: [
2728
+ {
2729
+ include: "#escape-characters"
2730
+ }
2731
+ ]
2732
+ },
2733
+ {
2734
+ name: "string.quoted.line.dune",
2735
+ begin: "\"\\\\>",
2736
+ end: "$"
2737
+ },
2738
+ {
2739
+ name: "string.quoted.double.dune",
2740
+ begin: "\"",
2741
+ end: "\"",
2742
+ patterns: [
2743
+ {
2744
+ include: "#escape-characters"
2745
+ }
2746
+ ]
2747
+ },
2748
+ {
2749
+ comment: "symbol",
2750
+ name: "entity.name.function.action.dune",
2751
+ match: "(:[[:alpha:]-]+)\\b"
2752
+ },
2753
+ {
2754
+ comment: "number or version",
2755
+ name: "constant.numeric.dune",
2756
+ match: "\\b([[:digit:]](\\.[[:digit:]]+)+)\\b"
2757
+ },
2758
+ {
2759
+ comment: "true or false",
2760
+ name: "constant.language.dune",
2761
+ match: "\\b(true|false)\\b"
2762
+ },
2763
+ {
2764
+ comment: "variable",
2765
+ begin: "%\\{",
2766
+ end: "\\}",
2767
+ beginCaptures: [
2768
+ {
2769
+ name: "keyword.operator.dune"
2770
+ }
2771
+ ],
2772
+ endCaptures: [
2773
+ {
2774
+ name: "keyword.operator.dune"
2775
+ }
2776
+ ],
2777
+ patterns: [
2778
+ {
2779
+ include: "#variables"
2780
+ }
2781
+ ]
2782
+ },
2783
+ {
2784
+ comment: "boolean/predicate language",
2785
+ begin: "\\([[:space:]]*(=|<>|>=|<=|<|>)",
2786
+ end: "\\)",
2787
+ beginCaptures: {
2788
+ "1": {
2789
+ name: "keyword.operator.dune"
2790
+ }
2791
+ },
2792
+ patterns: [
2793
+ {
2794
+ include: "#general"
2795
+ }
2796
+ ]
2797
+ },
2798
+ {
2799
+ comment: "boolean/predicate language",
2800
+ begin: "\\([[:space:]]*(and|or|not)\\b",
2801
+ end: "\\)",
2802
+ beginCaptures: {
2803
+ "1": {
2804
+ name: "entity.name.function.action.dune"
2805
+ }
2806
+ },
2807
+ patterns: [
2808
+ {
2809
+ include: "#general"
2810
+ }
2811
+ ]
2812
+ },
2813
+ {
2814
+ comment: "ordered set language",
2815
+ begin: "\\(",
2816
+ end: "\\)",
2817
+ patterns: [
2818
+ {
2819
+ name: "keyword.operator.dune",
2820
+ match: "/"
2821
+ },
2822
+ {
2823
+ include: "#general"
2824
+ }
2825
+ ]
2826
+ }
2827
+ ],
2828
+ repository: {
2829
+ "escape-characters": {
2830
+ patterns: [
2831
+ {
2832
+ comment: "escaped newline",
2833
+ name: "constant.character.escape.dune",
2834
+ match: "\\\\$"
2835
+ },
2836
+ {
2837
+ comment: "escaped character",
2838
+ name: "constant.character.escape.dune",
2839
+ match: "\\\\(n|r|b|t|\\\\|\")"
2840
+ },
2841
+ {
2842
+ comment: "character from decimal ASCII code",
2843
+ name: "constant.character.escape.dune",
2844
+ match: "\\\\[[:digit:]]{3}"
2845
+ },
2846
+ {
2847
+ comment: "character from hexadecimal ASCII code",
2848
+ name: "constant.character.escape.dune",
2849
+ match: "\\\\x[[:xdigit:]]{2}"
2850
+ },
2851
+ {
2852
+ comment: "escaped variable",
2853
+ begin: "(\\%\\{)",
2854
+ end: "(\\})",
2855
+ beginCaptures: [
2856
+ {
2857
+ name: "constant.character.escape.dune"
2858
+ }
2859
+ ],
2860
+ endCaptures: [
2861
+ {
2862
+ name: "constant.character.escape.dune"
2863
+ }
2864
+ ],
2865
+ patterns: [
2866
+ {
2867
+ include: "#variables"
2868
+ }
2869
+ ]
2870
+ }
2871
+ ]
2872
+ },
2873
+ variables: {
2874
+ patterns: [
2875
+ {
2876
+ name: "keyword.operator.variable.dune",
2877
+ match: ":"
2878
+ },
2879
+ {
2880
+ name: "keyword.operator.variable.dune",
2881
+ match: "="
2882
+ },
2883
+ {
2884
+ name: "constant.language.variable.action.dune",
2885
+ match: "\\^"
2886
+ },
2887
+ {
2888
+ name: "constant.language.variable.dune",
2889
+ match: "(?<=\\{)(project_root|workspace_root|profile|context_name)(?=\\})"
2890
+ },
2891
+ {
2892
+ name: "constant.language.variable.dune",
2893
+ match: "(?<=\\{)(CC|CXX)(?=\\})"
2894
+ },
2895
+ {
2896
+ name: "constant.language.variable.dune",
2897
+ match: "(?<=\\{)(ocaml_bin|ocaml|ocamlc|ocamlopt|ocaml_version|ocaml_where)(?=\\})"
2898
+ },
2899
+ {
2900
+ name: "constant.language.variable.dune",
2901
+ match: "(?<=\\{)(ext_obj|ext_asm|ext_lib|ext_dll|ext_exe|ext_plugin)(?=\\})"
2902
+ },
2903
+ {
2904
+ name: "constant.language.variable.dune",
2905
+ match: "(?<=\\{)(arch_sixtyfour|architecture|os_type|model|system)(?=\\})"
2906
+ },
2907
+ {
2908
+ name: "constant.language.variable.action.dune",
2909
+ match: "(?<=\\{)(target|targets|deps)(?=\\})"
2910
+ },
2911
+ {
2912
+ name: "constant.language.variable.dune",
2913
+ match: "(?<=\\{)(null)(?=\\})"
2914
+ },
2915
+ {
2916
+ name: "constant.language.variable.dune",
2917
+ match: "(?<=\\{)(ignoring_promoted_rule)(?=\\})"
2918
+ },
2919
+ {
2920
+ name: "constant.language.variable.dune",
2921
+ match: "(?<=\\{)(ocaml-config)(?=:)"
2922
+ },
2923
+ {
2924
+ name: "constant.language.variable.dune",
2925
+ match: "(?<=\\{)(env)(?=:)"
2926
+ },
2927
+ {
2928
+ name: "constant.language.variable.dune",
2929
+ match: "(?<=\\{)(version)(?=:)"
2930
+ },
2931
+ {
2932
+ name: "constant.language.variable.dune",
2933
+ match: "(?<=\\{)(cmo|cmi|cma|cmx|cmxa)(?=:)"
2934
+ },
2935
+ {
2936
+ name: "constant.language.variable.action.dune",
2937
+ match: "(?<=\\{)(dep|exe|bin|bin-available|lib|lib-private|libexec|libexec-private|lib-available)(?=:)"
2938
+ },
2939
+ {
2940
+ name: "constant.language.variable.action.dune",
2941
+ match: "(?<=\\{)(read|read-lines|read-strings)(?=:)"
2942
+ }
2943
+ ]
2944
+ }
2945
+ }
52
2946
  }
53
- ];
54
- var wordPattern = {
55
- pattern: "[A-Za-z_'`][A-Za-z_'.0-9]*"
56
2947
  };
2948
+ var information_for_contributors = [
2949
+ "This file has been converted from https://github.com/ocamllabs/vscode-ocaml-platform/blob/master/",
2950
+ "If you want to provide a fix or improvement, please create a pull request against the original repository.",
2951
+ "Once accepted there, we are happy to receive an update request."
2952
+ ];
57
2953
  var dune = {
58
- comments: comments,
59
- brackets: brackets,
60
- autoClosingPairs: autoClosingPairs,
61
- surroundingPairs: surroundingPairs,
62
- wordPattern: wordPattern
2954
+ name: name,
2955
+ scopeName: scopeName,
2956
+ fileTypes: fileTypes,
2957
+ patterns: patterns,
2958
+ repository: repository,
2959
+ information_for_contributors: information_for_contributors
63
2960
  };
64
2961
 
65
- export { autoClosingPairs, brackets, comments, dune as default, surroundingPairs, wordPattern };
2962
+ export { dune as default, fileTypes, information_for_contributors, name, patterns, repository, scopeName };