github-linguist 7.5.1 → 7.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (81) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/annotation.liquidhaskell.haskell.json +122 -24
  3. data/grammars/etc.json +7 -0
  4. data/grammars/hint.haskell.json +122 -24
  5. data/grammars/hint.message.haskell.json +122 -24
  6. data/grammars/hint.type.haskell.json +122 -24
  7. data/grammars/injections.etc.json +48 -10
  8. data/grammars/source.abnf.json +180 -353
  9. data/grammars/source.ballerina.json +205 -50
  10. data/grammars/source.bnf.json +191 -0
  11. data/grammars/source.cabal.json +1 -1
  12. data/grammars/source.ditroff.desc.json +1 -1
  13. data/grammars/source.ebnf.json +157 -147
  14. data/grammars/source.editorconfig.json +30 -5
  15. data/grammars/source.emacs.lisp.json +4 -4
  16. data/grammars/source.gremlin.json +200 -0
  17. data/grammars/source.haproxy-config.json +65 -13
  18. data/grammars/source.haskell.json +122 -24
  19. data/grammars/source.hql.json +1 -1
  20. data/grammars/source.hsig.json +122 -24
  21. data/grammars/source.hx.json +5 -5
  22. data/grammars/source.hxml.json +4 -4
  23. data/grammars/source.ideal.json +4 -4
  24. data/grammars/source.igor.json +325 -0
  25. data/grammars/source.jlex.json +322 -0
  26. data/grammars/source.julia.json +132 -1
  27. data/grammars/source.lean.json +103 -54
  28. data/grammars/source.lex.json +232 -0
  29. data/grammars/source.lex.regexp.json +269 -0
  30. data/grammars/source.logos.json +1 -1
  31. data/grammars/source.meson.json +1 -1
  32. data/grammars/source.mlir.json +389 -0
  33. data/grammars/source.nanorc.json +3 -0
  34. data/grammars/source.pic.json +19 -19
  35. data/grammars/source.plist.json +336 -0
  36. data/grammars/source.powershell.json +2 -2
  37. data/grammars/source.purescript.json +2 -2
  38. data/grammars/source.rascal.json +1 -0
  39. data/grammars/source.regexp.extended.json +544 -6
  40. data/grammars/source.regexp.json +408 -31
  41. data/grammars/source.renpy.json +3 -1
  42. data/grammars/source.scala.json +199 -97
  43. data/grammars/source.smpl.json +314 -0
  44. data/grammars/source.solidity.json +1 -1
  45. data/grammars/source.sourcepawn.json +654 -0
  46. data/grammars/source.sqf.json +5 -1
  47. data/grammars/source.swift.json +56 -11
  48. data/grammars/source.sy.json +800 -0
  49. data/grammars/source.ts.json +64 -47
  50. data/grammars/source.tsx.json +65 -48
  51. data/grammars/source.v.json +1184 -0
  52. data/grammars/source.viml.json +31 -31
  53. data/grammars/source.wollok.json +1 -1
  54. data/grammars/source.xojo.json +2 -2
  55. data/grammars/source.yacc.json +626 -0
  56. data/grammars/source.yara.json +1 -1
  57. data/grammars/source.yasnippet.json +15 -25
  58. data/grammars/source.zeek.json +4 -4
  59. data/grammars/source.zig.json +594 -195
  60. data/grammars/text.eml.basic.json +19 -6
  61. data/grammars/text.html.php.blade.json +3 -3
  62. data/grammars/text.plain.json +18 -0
  63. data/grammars/text.roff.json +926 -437
  64. data/grammars/text.runoff.json +3 -3
  65. data/grammars/text.tex.latex.haskell.json +122 -24
  66. data/grammars/text.texinfo.json +1525 -0
  67. data/grammars/text.xml.plist.json +664 -0
  68. data/grammars/text.xml.svg.json +556 -0
  69. data/grammars/version +1 -1
  70. data/lib/linguist.rb +3 -1
  71. data/lib/linguist/VERSION +1 -1
  72. data/lib/linguist/generated.rb +62 -17
  73. data/lib/linguist/heuristics.yml +13 -0
  74. data/lib/linguist/language.rb +1 -11
  75. data/lib/linguist/languages.json +1 -1
  76. data/lib/linguist/languages.yml +179 -19
  77. data/lib/linguist/samples.json +2778 -732
  78. data/lib/linguist/strategy/manpage.rb +42 -0
  79. metadata +22 -5
  80. data/grammars/source.bison.json +0 -55
  81. data/grammars/source.sp.json +0 -113
@@ -40,19 +40,11 @@
40
40
  }
41
41
  ],
42
42
  "repository": {
43
- "SymbolicStringLiteral": {
44
- "patterns": [
45
- {
46
- "name": "string.symbolic.ballerina",
47
- "match": "\\'[a-zA-z_][a-zA-z_0-9]*"
48
- }
49
- ]
50
- },
51
43
  "annotationAttachment": {
52
44
  "patterns": [
53
45
  {
54
46
  "name": "storage.type.annotation.ballerina",
55
- "match": "@((?:(?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\")):)?(?:(?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\"))"
47
+ "match": "@((?:(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)):)?(?:(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+))"
56
48
  }
57
49
  ]
58
50
  },
@@ -159,7 +151,7 @@
159
151
  "patterns": [
160
152
  {
161
153
  "name": "entity.name.function.ballerina",
162
- "match": "((?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\"))\\s*(?=\\()"
154
+ "match": "((?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+))\\s*(?=\\()"
163
155
  }
164
156
  ]
165
157
  },
@@ -213,22 +205,22 @@
213
205
  "include": "#strings"
214
206
  },
215
207
  {
216
- "include": "#maps"
208
+ "include": "#comment"
217
209
  },
218
210
  {
219
- "include": "#paranthesised"
211
+ "match": "(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)"
220
212
  },
221
213
  {
222
- "include": "#paranthesisedBracket"
214
+ "include": "#maps"
223
215
  },
224
216
  {
225
- "include": "#SymbolicStringLiteral"
217
+ "include": "#paranthesised"
226
218
  },
227
219
  {
228
- "include": "#numbers"
220
+ "include": "#paranthesisedBracket"
229
221
  },
230
222
  {
231
- "include": "#comment"
223
+ "include": "#numbers"
232
224
  }
233
225
  ]
234
226
  },
@@ -254,7 +246,7 @@
254
246
  },
255
247
  {
256
248
  "name": "storage.type.ballerina",
257
- "match": "\\b((?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\"))\\b"
249
+ "match": "\\b((?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+))\\b"
258
250
  }
259
251
  ],
260
252
  "beginCaptures": {
@@ -370,6 +362,24 @@
370
362
  }
371
363
  ]
372
364
  },
365
+ "errorDestructure": {
366
+ "patterns": [
367
+ {
368
+ "begin": "error",
369
+ "end": "(?==\u003e)",
370
+ "patterns": [
371
+ {
372
+ "include": "#code"
373
+ }
374
+ ],
375
+ "beginCaptures": {
376
+ "0": {
377
+ "name": "storage.type.ballerina"
378
+ }
379
+ }
380
+ }
381
+ ]
382
+ },
373
383
  "functionDefinition": {
374
384
  "patterns": [
375
385
  {
@@ -413,7 +423,7 @@
413
423
  "patterns": [
414
424
  {
415
425
  "name": "entity.name.function.ballerina",
416
- "match": "(?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\")"
426
+ "match": "(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)"
417
427
  }
418
428
  ]
419
429
  },
@@ -423,6 +433,16 @@
423
433
  "begin": "\\(",
424
434
  "end": "\\)",
425
435
  "patterns": [
436
+ {
437
+ "name": "keyword",
438
+ "match": "public"
439
+ },
440
+ {
441
+ "include": "#annotationAttachment"
442
+ },
443
+ {
444
+ "include": "#recordLiteral"
445
+ },
426
446
  {
427
447
  "include": "#parameter"
428
448
  },
@@ -453,7 +473,7 @@
453
473
  "patterns": [
454
474
  {
455
475
  "begin": "\\breturns\\b",
456
- "end": "(?=\\{|;)",
476
+ "end": "(?=\\{|;|,)",
457
477
  "patterns": [
458
478
  {
459
479
  "include": "#record"
@@ -463,7 +483,7 @@
463
483
  },
464
484
  {
465
485
  "name": "storage.type.ballerina",
466
- "match": "(?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\")"
486
+ "match": "(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)"
467
487
  },
468
488
  {
469
489
  "include": "#comment"
@@ -482,6 +502,115 @@
482
502
  }
483
503
  ]
484
504
  },
505
+ "functionType": {
506
+ "patterns": [
507
+ {
508
+ "begin": "\\bfunction\\b",
509
+ "end": "(?=\\,)|(?=\\|)|(?=\\:)|(?==\u003e)|(?=\\))|(?=\\])",
510
+ "patterns": [
511
+ {
512
+ "include": "#comment"
513
+ },
514
+ {
515
+ "include": "#functionTypeParamList"
516
+ },
517
+ {
518
+ "include": "#functionTypeReturns"
519
+ }
520
+ ],
521
+ "beginCaptures": {
522
+ "0": {
523
+ "name": "keyword.ballerina"
524
+ }
525
+ }
526
+ }
527
+ ]
528
+ },
529
+ "functionTypeParamList": {
530
+ "patterns": [
531
+ {
532
+ "begin": "\\(",
533
+ "end": "\\)",
534
+ "patterns": [
535
+ {
536
+ "name": "keyword",
537
+ "match": "public"
538
+ },
539
+ {
540
+ "include": "#annotationAttachment"
541
+ },
542
+ {
543
+ "include": "#recordLiteral"
544
+ },
545
+ {
546
+ "include": "#record"
547
+ },
548
+ {
549
+ "include": "#objectDec"
550
+ },
551
+ {
552
+ "include": "#functionType"
553
+ },
554
+ {
555
+ "include": "#constrainType"
556
+ },
557
+ {
558
+ "include": "#parameterTuple"
559
+ },
560
+ {
561
+ "include": "#functionTypeType"
562
+ },
563
+ {
564
+ "include": "#comment"
565
+ }
566
+ ],
567
+ "beginCaptures": {
568
+ "0": {
569
+ "name": "delimiter.parenthesis"
570
+ }
571
+ },
572
+ "endCaptures": {
573
+ "0": {
574
+ "name": "delimiter.parenthesis"
575
+ }
576
+ }
577
+ }
578
+ ]
579
+ },
580
+ "functionTypeReturns": {
581
+ "patterns": [
582
+ {
583
+ "begin": "\\breturns\\b",
584
+ "end": "(?=\\,)",
585
+ "patterns": [
586
+ {
587
+ "include": "#parameter"
588
+ },
589
+ {
590
+ "include": "#comment"
591
+ }
592
+ ],
593
+ "beginCaptures": {
594
+ "0": {
595
+ "name": "keyword"
596
+ }
597
+ }
598
+ }
599
+ ]
600
+ },
601
+ "functionTypeType": {
602
+ "patterns": [
603
+ {
604
+ "begin": "(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)",
605
+ "end": "(?:\\,)|(?:\\|)|(?=\\])|(?=\\))",
606
+ "beginCaptures": {
607
+ "0": {
608
+ "name": "storage.type.ballerina"
609
+ }
610
+ }
611
+ }
612
+ ]
613
+ },
485
614
  "keywords": {
486
615
  "patterns": [
487
616
  {
@@ -490,7 +619,7 @@
490
619
  },
491
620
  {
492
621
  "name": "keyword.other.ballerina",
493
- "match": "\\b(import|version|public|private|attach|as|native|documentation|lock|new|record|limit|ascending|descending|check|checkpanic|start|done|untaint|onretry|oncommit|onabort|scope|compensate|compensation|primarykey|channel|abstract|extern|final|listener|remote|client|is|__init)\\b"
622
+ "match": "\\b(import|version|public|private|attach|as|native|handle|documentation|lock|new|record|limit|ascending|descending|check|checkpanic|panic|trap|start|done|untainted|tainted|onretry|oncommit|onabort|scope|compensate|compensation|primarykey|channel|abstract|extern|final|listener|remote|client|is|__init)\\b"
494
623
  },
495
624
  {
496
625
  "name": "keyword.other.siddhi.ballerina",
@@ -558,9 +687,12 @@
558
687
  "begin": "var",
559
688
  "end": "(?==\u003e)",
560
689
  "patterns": [
690
+ {
691
+ "include": "#errorDestructure"
692
+ },
561
693
  {
562
694
  "name": "variable.parameter.ballerina",
563
- "match": "(?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\")"
695
+ "match": "(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)"
564
696
  }
565
697
  ],
566
698
  "beginCaptures": {
@@ -665,7 +797,7 @@
665
797
  "mdDocumentationParamDescription": {
666
798
  "patterns": [
667
799
  {
668
- "begin": "(#)(?: ?)(\\+)(?: *)((?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\"))?(?: *)(-)?(.*)",
800
+ "begin": "(#)(?: ?)(\\+)(?: *)((?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+))?(?: *)(-)?(.*)",
669
801
  "end": "(?=[^#\\r\\n]|(?:# ?\\+))",
670
802
  "patterns": [
671
803
  {
@@ -683,10 +815,10 @@
683
815
  "3": {
684
816
  "name": "variable.parameter.ballerina"
685
817
  },
686
- "5": {
818
+ "4": {
687
819
  "name": "keyword.ballerina"
688
820
  },
689
- "6": {
821
+ "5": {
690
822
  "name": "comment.mddocs.paramdesc.ballerina"
691
823
  }
692
824
  }
@@ -755,13 +887,13 @@
755
887
  "match": "(public|private|extern|resource|remote)"
756
888
  },
757
889
  {
758
- "include": "#variableDefInline"
890
+ "include": "#comment"
759
891
  },
760
892
  {
761
- "include": "#variableDef"
893
+ "include": "#variableDefInline"
762
894
  },
763
895
  {
764
- "include": "#comment"
896
+ "include": "#variableDef"
765
897
  },
766
898
  {
767
899
  "include": "#code"
@@ -843,7 +975,7 @@
843
975
  },
844
976
  {
845
977
  "name": "variable.parameter.ballerina",
846
- "match": "\\b((?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\"))\\b"
978
+ "match": "\\b((?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+))\\b"
847
979
  }
848
980
  ],
849
981
  "beginCaptures": {
@@ -900,8 +1032,8 @@
900
1032
  "parameter": {
901
1033
  "patterns": [
902
1034
  {
903
- "begin": "((?=record|object)|(?:(?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\")))",
904
- "end": "(?:\\,)|(?:\\|)|(?:\\:)|(?==\u003e)|(?=\\))",
1035
+ "begin": "((?=record|object|function)|(?:(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)))",
1036
+ "end": "(?:\\,)|(?:\\|)|(?:\\:)|(?==\u003e)|(?=\\))|(?=\\])",
905
1037
  "patterns": [
906
1038
  {
907
1039
  "include": "#record"
@@ -909,6 +1041,9 @@
909
1041
  {
910
1042
  "include": "#objectDec"
911
1043
  },
1044
+ {
1045
+ "include": "#functionType"
1046
+ },
912
1047
  {
913
1048
  "include": "#constrainType"
914
1049
  },
@@ -923,7 +1058,7 @@
923
1058
  },
924
1059
  {
925
1060
  "name": "variable.parameter.ballerina",
926
- "match": "(?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\")"
1061
+ "match": "(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)"
927
1062
  }
928
1063
  ],
929
1064
  "beginCaptures": {
@@ -937,7 +1072,7 @@
937
1072
  "parameterTuple": {
938
1073
  "patterns": [
939
1074
  {
940
- "begin": "\\(",
1075
+ "begin": "\\[",
941
1076
  "end": "(?=\\,)|(?=\\|)|(?=\\:)|(?==\u003e)|(?=\\))",
942
1077
  "patterns": [
943
1078
  {
@@ -947,10 +1082,13 @@
947
1082
  "include": "#objectDec"
948
1083
  },
949
1084
  {
950
- "include": "#parameter"
1085
+ "include": "#parameterTupleType"
951
1086
  },
952
1087
  {
953
1088
  "include": "#parameterTupleEnd"
1089
+ },
1090
+ {
1091
+ "include": "#comment"
954
1092
  }
955
1093
  ]
956
1094
  }
@@ -959,17 +1097,30 @@
959
1097
  "parameterTupleEnd": {
960
1098
  "patterns": [
961
1099
  {
962
- "begin": "\\)",
1100
+ "begin": "\\]",
963
1101
  "end": "(?=\\,)|(?=\\|)|(?=\\:)|(?==\u003e)|(?=\\))",
964
1102
  "patterns": [
965
1103
  {
966
1104
  "name": "variable.parameter.ballerina",
967
- "match": "(?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\")"
1105
+ "match": "(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)"
968
1106
  }
969
1107
  ]
970
1108
  }
971
1109
  ]
972
1110
  },
1111
+ "parameterTupleType": {
1112
+ "patterns": [
1113
+ {
1114
+ "begin": "(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)",
1115
+ "end": "(?:\\,)|(?:\\|)|(?=\\])",
1116
+ "beginCaptures": {
1117
+ "0": {
1118
+ "name": "storage.type.ballerina"
1119
+ }
1120
+ }
1121
+ }
1122
+ ]
1123
+ },
973
1124
  "paranthesised": {
974
1125
  "patterns": [
975
1126
  {
@@ -1038,13 +1189,13 @@
1038
1189
  "include": "#annotationAttachment"
1039
1190
  },
1040
1191
  {
1041
- "include": "#variableDefInline"
1192
+ "include": "#comment"
1042
1193
  },
1043
1194
  {
1044
- "include": "#variableDef"
1195
+ "include": "#variableDefInline"
1045
1196
  },
1046
1197
  {
1047
- "include": "#comment"
1198
+ "include": "#variableDef"
1048
1199
  },
1049
1200
  {
1050
1201
  "include": "#code"
@@ -1163,7 +1314,7 @@
1163
1314
  "patterns": [
1164
1315
  {
1165
1316
  "name": "entity.name.function.ballerina",
1166
- "match": "(?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\")"
1317
+ "match": "(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)"
1167
1318
  }
1168
1319
  ]
1169
1320
  },
@@ -1191,6 +1342,10 @@
1191
1342
  "begin": "(\\bstring)(\\s*)(`)",
1192
1343
  "end": "`",
1193
1344
  "patterns": [
1345
+ {
1346
+ "name": "constant.character.escape.ballerina",
1347
+ "match": "\\\\."
1348
+ },
1194
1349
  {
1195
1350
  "include": "#templateVariable"
1196
1351
  },
@@ -1247,8 +1402,8 @@
1247
1402
  "templateVariable": {
1248
1403
  "patterns": [
1249
1404
  {
1250
- "begin": "{{",
1251
- "end": "}}",
1405
+ "begin": "\\${",
1406
+ "end": "}",
1252
1407
  "patterns": [
1253
1408
  {
1254
1409
  "include": "#code"
@@ -1270,8 +1425,8 @@
1270
1425
  "tupleType": {
1271
1426
  "patterns": [
1272
1427
  {
1273
- "begin": "\\(",
1274
- "end": "(?=\\)|;)",
1428
+ "begin": "\\[",
1429
+ "end": "(?=\\]|;)",
1275
1430
  "patterns": [
1276
1431
  {
1277
1432
  "include": "#comment"
@@ -1281,7 +1436,7 @@
1281
1436
  },
1282
1437
  {
1283
1438
  "name": "storage.type.ballerina",
1284
- "match": "\\b((?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\"))\\b"
1439
+ "match": "\\b((?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+))\\b"
1285
1440
  }
1286
1441
  ]
1287
1442
  }
@@ -1316,7 +1471,7 @@
1316
1471
  "typeDescription": {
1317
1472
  "patterns": [
1318
1473
  {
1319
- "begin": "(?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\")",
1474
+ "begin": "(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)",
1320
1475
  "end": "(?=;)",
1321
1476
  "patterns": [
1322
1477
  {
@@ -1333,7 +1488,7 @@
1333
1488
  },
1334
1489
  {
1335
1490
  "name": "storage.type.ballerina",
1336
- "match": "(?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\")"
1491
+ "match": "(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)"
1337
1492
  }
1338
1493
  ],
1339
1494
  "beginCaptures": {
@@ -1368,8 +1523,8 @@
1368
1523
  "variableDef": {
1369
1524
  "patterns": [
1370
1525
  {
1371
- "begin": "(?:(?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\"))(?: |\\t)|(?=\\()",
1372
- "end": "(?:(?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\"))|(?=\\,)|(?=;)|\\.\\.\\.",
1526
+ "begin": "(?:(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+))(?: |\\t)|(?=\\()",
1527
+ "end": "(?:(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+))|(?=\\,)|(?=;)|\\.\\.\\.",
1373
1528
  "patterns": [
1374
1529
  {
1375
1530
  "include": "#tupleType"
@@ -1408,7 +1563,7 @@
1408
1563
  },
1409
1564
  {
1410
1565
  "name": "source.ballerina",
1411
- "match": "(?:[a-zA-Z_][a-zA-Z0-9_]*)|(?:\\^\"([^|\"\\\\\\f\\n\\r\\t]|\\\\\\\\[btnfr]|\\\\[|\"\\\\/])+\")"
1566
+ "match": "(?:'?(?:(?:[^ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s\\\\])|\\\\(?:[ (){}\\[\\]\\-?*=\u003e\u003c?;\"',.\\s])|\\\\)+)"
1412
1567
  }
1413
1568
  ]
1414
1569
  }