tm-grammars 1.17.3 → 1.17.5
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.
- package/README.md +67 -67
- package/grammars/actionscript-3.json +12 -12
- package/grammars/angular-expression.json +6 -6
- package/grammars/angular-ts.json +42 -42
- package/grammars/apex.json +25 -25
- package/grammars/apl.json +8 -8
- package/grammars/ara.json +6 -6
- package/grammars/astro.json +1 -1
- package/grammars/ballerina.json +4 -4
- package/grammars/bicep.json +1 -1
- package/grammars/blade.json +16 -16
- package/grammars/c.json +11 -11
- package/grammars/clarity.json +25 -25
- package/grammars/codeql.json +182 -182
- package/grammars/coffee.json +9 -9
- package/grammars/common-lisp.json +2 -2
- package/grammars/cpp.json +3 -3
- package/grammars/crystal.json +4 -4
- package/grammars/csharp.json +50 -50
- package/grammars/css.json +15 -15
- package/grammars/dax.json +6 -6
- package/grammars/dream-maker.json +6 -6
- package/grammars/emacs-lisp.json +74 -74
- package/grammars/gdscript.json +12 -12
- package/grammars/glimmer-js.json +1 -1
- package/grammars/glimmer-ts.json +1 -1
- package/grammars/groovy.json +2 -2
- package/grammars/hack.json +8 -8
- package/grammars/haskell.json +64 -62
- package/grammars/haxe.json +1 -1
- package/grammars/html.json +1 -1
- package/grammars/imba.json +16 -16
- package/grammars/java.json +5 -5
- package/grammars/javascript.json +44 -44
- package/grammars/json.json +2 -2
- package/grammars/jsonc.json +2 -2
- package/grammars/jsonl.json +2 -2
- package/grammars/jsx.json +44 -44
- package/grammars/less.json +8 -8
- package/grammars/markdown.json +5 -5
- package/grammars/marko.json +1 -1
- package/grammars/matlab.json +7 -7
- package/grammars/mdc.json +6 -6
- package/grammars/mojo.json +85 -85
- package/grammars/narrat.json +2 -2
- package/grammars/objective-c.json +7 -7
- package/grammars/objective-cpp.json +13 -13
- package/grammars/php.json +10 -10
- package/grammars/purescript.json +1 -1
- package/grammars/python.json +85 -85
- package/grammars/racket.json +18 -15
- package/grammars/razor.json +3 -3
- package/grammars/regexp.json +7 -7
- package/grammars/riscv.json +1 -1
- package/grammars/ruby.json +4 -4
- package/grammars/scala.json +2 -2
- package/grammars/scheme.json +10 -10
- package/grammars/scss.json +4 -4
- package/grammars/shellsession.json +1 -1
- package/grammars/stylus.json +3 -3
- package/grammars/swift.json +32 -32
- package/grammars/system-verilog.json +1 -1
- package/grammars/toml.json +3 -3
- package/grammars/tsx.json +44 -44
- package/grammars/twig.json +4 -4
- package/grammars/typescript.json +42 -42
- package/grammars/typespec.json +3 -3
- package/grammars/vhdl.json +37 -37
- package/grammars/vue.json +1 -1
- package/grammars/vyper.json +105 -105
- package/grammars/yaml.json +17 -17
- package/index.js +73 -73
- package/package.json +1 -1
package/grammars/python.json
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
],
|
|
12
12
|
"repository": {
|
|
13
13
|
"annotated-parameter": {
|
|
14
|
-
"begin": "
|
|
14
|
+
"begin": "\\b([[:alpha:]_]\\w*)\\s*(:)",
|
|
15
15
|
"beginCaptures": {
|
|
16
16
|
"1": {
|
|
17
17
|
"name": "variable.parameter.function.language.python"
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
]
|
|
38
38
|
},
|
|
39
39
|
"assignment-operator": {
|
|
40
|
-
"match": "(
|
|
40
|
+
"match": "<<=|>>=|//=|\\*\\*=|\\+=|-=|/=|@=|\\*=|%=|~=|\\^=|&=|\\|=|=(?!=)",
|
|
41
41
|
"name": "keyword.operator.assignment.python"
|
|
42
42
|
},
|
|
43
43
|
"backticks": {
|
|
@@ -70,17 +70,17 @@
|
|
|
70
70
|
]
|
|
71
71
|
},
|
|
72
72
|
"builtin-exceptions": {
|
|
73
|
-
"match": "(
|
|
73
|
+
"match": "(?<!\\.)\\b((Arithmetic|Assertion|Attribute|Buffer|BlockingIO|BrokenPipe|ChildProcess|(Connection(Aborted|Refused|Reset)?)|EOF|Environment|FileExists|FileNotFound|FloatingPoint|IO|Import|Indentation|Index|Interrupted|IsADirectory|NotADirectory|Permission|ProcessLookup|Timeout|Key|Lookup|Memory|Name|NotImplemented|OS|Overflow|Reference|Runtime|Recursion|Syntax|System|Tab|Type|UnboundLocal|Unicode(Encode|Decode|Translate)?|Value|Windows|ZeroDivision|ModuleNotFound)Error|((Pending)?Deprecation|Runtime|Syntax|User|Future|Import|Unicode|Bytes|Resource)?Warning|SystemExit|Stop(Async)?Iteration|KeyboardInterrupt|GeneratorExit|(Base)?Exception)\\b",
|
|
74
74
|
"name": "support.type.exception.python"
|
|
75
75
|
},
|
|
76
76
|
"builtin-functions": {
|
|
77
77
|
"patterns": [
|
|
78
78
|
{
|
|
79
|
-
"match": "(
|
|
79
|
+
"match": "(?<!\\.)\\b(__import__|abs|aiter|all|any|anext|ascii|bin|breakpoint|callable|chr|compile|copyright|credits|delattr|dir|divmod|enumerate|eval|exec|exit|filter|format|getattr|globals|hasattr|hash|help|hex|id|input|isinstance|issubclass|iter|len|license|locals|map|max|memoryview|min|next|oct|open|ord|pow|print|quit|range|reload|repr|reversed|round|setattr|sorted|sum|vars|zip)\\b",
|
|
80
80
|
"name": "support.function.builtin.python"
|
|
81
81
|
},
|
|
82
82
|
{
|
|
83
|
-
"match": "(
|
|
83
|
+
"match": "(?<!\\.)\\b(file|reduce|intern|raw_input|unicode|cmp|basestring|execfile|long|xrange)\\b",
|
|
84
84
|
"name": "variable.legacy.builtin.python"
|
|
85
85
|
}
|
|
86
86
|
]
|
|
@@ -96,11 +96,11 @@
|
|
|
96
96
|
]
|
|
97
97
|
},
|
|
98
98
|
"builtin-types": {
|
|
99
|
-
"match": "(
|
|
99
|
+
"match": "(?<!\\.)\\b(bool|bytearray|bytes|classmethod|complex|dict|float|frozenset|int|list|object|property|set|slice|staticmethod|str|tuple|type(?#Although'super'isnotatype,it'srelatedtotypes,andisspecialenoughtobehighlighteddifferentlyfromotherbuilt-ins)|super)\\b",
|
|
100
100
|
"name": "support.type.python"
|
|
101
101
|
},
|
|
102
102
|
"call-wrapper-inheritance": {
|
|
103
|
-
"begin": "
|
|
103
|
+
"begin": "\\b(?=([[:alpha:]_]\\w*)\\s*(\\())",
|
|
104
104
|
"comment": "same as a function call, but in inheritance context",
|
|
105
105
|
"end": "(\\))",
|
|
106
106
|
"endCaptures": {
|
|
@@ -121,7 +121,7 @@
|
|
|
121
121
|
"class-declaration": {
|
|
122
122
|
"patterns": [
|
|
123
123
|
{
|
|
124
|
-
"begin": "
|
|
124
|
+
"begin": "\\s*(class)\\s+(?=[[:alpha:]_]\\w*\\s*(:|\\())",
|
|
125
125
|
"beginCaptures": {
|
|
126
126
|
"1": {
|
|
127
127
|
"name": "storage.type.class.python"
|
|
@@ -205,7 +205,7 @@
|
|
|
205
205
|
"name": "keyword.operator.assignment.python"
|
|
206
206
|
}
|
|
207
207
|
},
|
|
208
|
-
"match": "
|
|
208
|
+
"match": "\\b([[:alpha:]_]\\w*)\\s*(=)(?!=)"
|
|
209
209
|
},
|
|
210
210
|
"class-name": {
|
|
211
211
|
"patterns": [
|
|
@@ -216,7 +216,7 @@
|
|
|
216
216
|
"include": "#builtin-possible-callables"
|
|
217
217
|
},
|
|
218
218
|
{
|
|
219
|
-
"match": "
|
|
219
|
+
"match": "\\b([[:alpha:]_]\\w*)\\b",
|
|
220
220
|
"name": "entity.name.type.class.python"
|
|
221
221
|
}
|
|
222
222
|
]
|
|
@@ -232,7 +232,7 @@
|
|
|
232
232
|
"comments": {
|
|
233
233
|
"patterns": [
|
|
234
234
|
{
|
|
235
|
-
"begin": "(
|
|
235
|
+
"begin": "(?:\\#\\s*(type:)\\s*+(?#wewant`\\s*+`whichispossessivequantifiersincewedonotactuallywanttobacktrackwhenmatchingwhitespacehere)(?!$|\\#))",
|
|
236
236
|
"beginCaptures": {
|
|
237
237
|
"0": {
|
|
238
238
|
"name": "meta.typehint.comment.python"
|
|
@@ -246,11 +246,11 @@
|
|
|
246
246
|
"name": "comment.line.number-sign.python",
|
|
247
247
|
"patterns": [
|
|
248
248
|
{
|
|
249
|
-
"match": "
|
|
249
|
+
"match": "\\Gignore(?=\\s*(?:$|\\#))",
|
|
250
250
|
"name": "comment.typehint.ignore.notation.python"
|
|
251
251
|
},
|
|
252
252
|
{
|
|
253
|
-
"match": "(
|
|
253
|
+
"match": "(?<!\\.)\\b(bool|bytes|float|int|object|str|List|Dict|Iterable|Sequence|Set|FrozenSet|Callable|Union|Tuple|Any|None)\\b",
|
|
254
254
|
"name": "comment.typehint.type.notation.python"
|
|
255
255
|
},
|
|
256
256
|
{
|
|
@@ -337,7 +337,7 @@
|
|
|
337
337
|
]
|
|
338
338
|
},
|
|
339
339
|
"decorator": {
|
|
340
|
-
"begin": "
|
|
340
|
+
"begin": "^\\s*((@))\\s*(?=[[:alpha:]_]\\w*)",
|
|
341
341
|
"beginCaptures": {
|
|
342
342
|
"1": {
|
|
343
343
|
"name": "entity.name.function.decorator.python"
|
|
@@ -346,7 +346,7 @@
|
|
|
346
346
|
"name": "punctuation.definition.decorator.python"
|
|
347
347
|
}
|
|
348
348
|
},
|
|
349
|
-
"end": "(
|
|
349
|
+
"end": "(\\))(?:(.*?)(?=\\s*(?:\\#|$)))|(?=\\n|\\#)",
|
|
350
350
|
"endCaptures": {
|
|
351
351
|
"1": {
|
|
352
352
|
"name": "punctuation.definition.arguments.end.python"
|
|
@@ -379,7 +379,7 @@
|
|
|
379
379
|
"name": "punctuation.separator.period.python"
|
|
380
380
|
}
|
|
381
381
|
},
|
|
382
|
-
"match": "(
|
|
382
|
+
"match": "([[:alpha:]_]\\w*)|(\\.)",
|
|
383
383
|
"name": "entity.name.function.decorator.python"
|
|
384
384
|
},
|
|
385
385
|
{
|
|
@@ -391,7 +391,7 @@
|
|
|
391
391
|
"name": "invalid.illegal.decorator.python"
|
|
392
392
|
}
|
|
393
393
|
},
|
|
394
|
-
"match": "
|
|
394
|
+
"match": "\\s*([^([:alpha:]\\s_\\.#\\\\].*?)(?=\\#|$)",
|
|
395
395
|
"name": "invalid.illegal.decorator.python"
|
|
396
396
|
}
|
|
397
397
|
]
|
|
@@ -529,7 +529,7 @@
|
|
|
529
529
|
"name": "keyword.control.flow.python"
|
|
530
530
|
}
|
|
531
531
|
},
|
|
532
|
-
"match": "(
|
|
532
|
+
"match": "(?:(?:^|\\G)\\s*(?#'\\G'isnecessaryforST)((?:>>>|\\.\\.\\.)\\s)(?=\\s*\\S))"
|
|
533
533
|
},
|
|
534
534
|
"docstring-statement": {
|
|
535
535
|
"begin": "^(?=\\s*[rR]?(\\'\\'\\'|\\\"\\\"\\\"|\\'|\\\"))",
|
|
@@ -544,7 +544,7 @@
|
|
|
544
544
|
"double-one-regexp-character-set": {
|
|
545
545
|
"patterns": [
|
|
546
546
|
{
|
|
547
|
-
"match": "
|
|
547
|
+
"match": "\\[\\s\\^?\\s\\](?!.*?\\])"
|
|
548
548
|
},
|
|
549
549
|
{
|
|
550
550
|
"begin": "(\\[)(\\^)?(\\])?",
|
|
@@ -773,7 +773,7 @@
|
|
|
773
773
|
]
|
|
774
774
|
},
|
|
775
775
|
"double-one-regexp-named-group": {
|
|
776
|
-
"begin": "(
|
|
776
|
+
"begin": "(\\()(\\?P<\\w+(?:\\s+[[:alnum:]]+)?>)",
|
|
777
777
|
"beginCaptures": {
|
|
778
778
|
"1": {
|
|
779
779
|
"name": "support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"
|
|
@@ -845,7 +845,7 @@
|
|
|
845
845
|
"double-three-regexp-character-set": {
|
|
846
846
|
"patterns": [
|
|
847
847
|
{
|
|
848
|
-
"match": "
|
|
848
|
+
"match": "\\[\\s\\^?\\s\\](?!.*?\\])"
|
|
849
849
|
},
|
|
850
850
|
{
|
|
851
851
|
"begin": "(\\[)(\\^)?(\\])?",
|
|
@@ -1092,7 +1092,7 @@
|
|
|
1092
1092
|
]
|
|
1093
1093
|
},
|
|
1094
1094
|
"double-three-regexp-named-group": {
|
|
1095
|
-
"begin": "(
|
|
1095
|
+
"begin": "(\\()(\\?P<\\w+(?:\\s+[[:alnum:]]+)?>)",
|
|
1096
1096
|
"beginCaptures": {
|
|
1097
1097
|
"1": {
|
|
1098
1098
|
"name": "support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"
|
|
@@ -1175,13 +1175,13 @@
|
|
|
1175
1175
|
"name": "constant.other.ellipsis.python"
|
|
1176
1176
|
},
|
|
1177
1177
|
"escape-sequence": {
|
|
1178
|
-
"match": "(
|
|
1178
|
+
"match": "\\\\(x[0-9A-Fa-f]{2}|[0-7]{1,3}|[\\\\\"'abfnrtv])",
|
|
1179
1179
|
"name": "constant.character.escape.python"
|
|
1180
1180
|
},
|
|
1181
1181
|
"escape-sequence-unicode": {
|
|
1182
1182
|
"patterns": [
|
|
1183
1183
|
{
|
|
1184
|
-
"match": "
|
|
1184
|
+
"match": "\\\\(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8}|N\\{[\\w\\s]+?\\})",
|
|
1185
1185
|
"name": "constant.character.escape.python"
|
|
1186
1186
|
}
|
|
1187
1187
|
]
|
|
@@ -1197,7 +1197,7 @@
|
|
|
1197
1197
|
},
|
|
1198
1198
|
{
|
|
1199
1199
|
"comment": "Tokenize identifiers to help linters",
|
|
1200
|
-
"match": "
|
|
1200
|
+
"match": "\\b([[:alpha:]_]\\w*)\\b"
|
|
1201
1201
|
}
|
|
1202
1202
|
]
|
|
1203
1203
|
},
|
|
@@ -1306,7 +1306,7 @@
|
|
|
1306
1306
|
},
|
|
1307
1307
|
{
|
|
1308
1308
|
"comment": "Tokenize identifiers to help linters",
|
|
1309
|
-
"match": "
|
|
1309
|
+
"match": "\\b([[:alpha:]_]\\w*)\\b"
|
|
1310
1310
|
}
|
|
1311
1311
|
]
|
|
1312
1312
|
},
|
|
@@ -1327,7 +1327,7 @@
|
|
|
1327
1327
|
]
|
|
1328
1328
|
},
|
|
1329
1329
|
"fregexp-quantifier": {
|
|
1330
|
-
"match": "
|
|
1330
|
+
"match": "\\{\\{(\\d+|\\d+,(\\d+)?|,\\d+)\\}\\}",
|
|
1331
1331
|
"name": "keyword.operator.quantifier.regexp"
|
|
1332
1332
|
},
|
|
1333
1333
|
"fstring-fnorm-quoted-multi-line": {
|
|
@@ -1497,7 +1497,7 @@
|
|
|
1497
1497
|
}
|
|
1498
1498
|
},
|
|
1499
1499
|
"comment": "value interpolation using { ... }",
|
|
1500
|
-
"end": "(
|
|
1500
|
+
"end": "(\\})",
|
|
1501
1501
|
"endCaptures": {
|
|
1502
1502
|
"1": {
|
|
1503
1503
|
"name": "constant.character.format.placeholder.other.python"
|
|
@@ -1513,7 +1513,7 @@
|
|
|
1513
1513
|
]
|
|
1514
1514
|
},
|
|
1515
1515
|
"fstring-multi-core": {
|
|
1516
|
-
"match": "(
|
|
1516
|
+
"match": "(.+?)((?#.*and.*?inmulti-linematchneedspecialhandlingofnewlinesotherwiseSublimeTextandAtomwillmatchslightlydifferently.Theguardfornewlineshastobeseparatefromthelookaheadbecauseofspecial$matchingrule.)($\\n?)|(?=[\\\\\\}\\{]|'''|\"\"\"))(?#duetohowmultilineregexpsarematchedweneedaspecialcaseformatchinganewlinecharacter)|\\n",
|
|
1517
1517
|
"name": "string.interpolated.python string.quoted.multi.python"
|
|
1518
1518
|
},
|
|
1519
1519
|
"fstring-normf-quoted-multi-line": {
|
|
@@ -1603,7 +1603,7 @@
|
|
|
1603
1603
|
]
|
|
1604
1604
|
},
|
|
1605
1605
|
"fstring-raw-multi-core": {
|
|
1606
|
-
"match": "(
|
|
1606
|
+
"match": "(.+?)((?#.*and.*?inmulti-linematchneedspecialhandlingofnewlinesotherwiseSublimeTextandAtomwillmatchslightlydifferently.Theguardfornewlineshastobeseparatefromthelookaheadbecauseofspecial$matchingrule.)($\\n?)|(?=[\\\\\\}\\{]|'''|\"\"\"))(?#duetohowmultilineregexpsarematchedweneedaspecialcaseformatchinganewlinecharacter)|\\n",
|
|
1607
1607
|
"name": "string.interpolated.python string.quoted.raw.multi.python"
|
|
1608
1608
|
},
|
|
1609
1609
|
"fstring-raw-quoted-multi-line": {
|
|
@@ -1677,7 +1677,7 @@
|
|
|
1677
1677
|
]
|
|
1678
1678
|
},
|
|
1679
1679
|
"fstring-raw-single-core": {
|
|
1680
|
-
"match": "(
|
|
1680
|
+
"match": "(.+?)((?#.*and.*?inmulti-linematchneedspecialhandlingofnewlinesotherwiseSublimeTextandAtomwillmatchslightlydifferently.Theguardfornewlineshastobeseparatefromthelookaheadbecauseofspecial$matchingrule.)($\\n?)|(?=[\\\\\\}\\{]|(['\"])|((?<!\\\\)\\n)))(?#duetohowmultilineregexpsarematchedweneedaspecialcaseformatchinganewlinecharacter)|\\n",
|
|
1681
1681
|
"name": "string.interpolated.python string.quoted.raw.single.python"
|
|
1682
1682
|
},
|
|
1683
1683
|
"fstring-single-brace": {
|
|
@@ -1688,7 +1688,7 @@
|
|
|
1688
1688
|
}
|
|
1689
1689
|
},
|
|
1690
1690
|
"comment": "value interpolation using { ... }",
|
|
1691
|
-
"end": "(
|
|
1691
|
+
"end": "(\\})|(?=\\n)",
|
|
1692
1692
|
"endCaptures": {
|
|
1693
1693
|
"1": {
|
|
1694
1694
|
"name": "constant.character.format.placeholder.other.python"
|
|
@@ -1704,7 +1704,7 @@
|
|
|
1704
1704
|
]
|
|
1705
1705
|
},
|
|
1706
1706
|
"fstring-single-core": {
|
|
1707
|
-
"match": "(
|
|
1707
|
+
"match": "(.+?)((?#.*and.*?inmulti-linematchneedspecialhandlingofnewlinesotherwiseSublimeTextandAtomwillmatchslightlydifferently.Theguardfornewlineshastobeseparatefromthelookaheadbecauseofspecial$matchingrule.)($\\n?)|(?=[\\\\\\}\\{]|(['\"])|((?<!\\\\)\\n)))(?#duetohowmultilineregexpsarematchedweneedaspecialcaseformatchinganewlinecharacter)|\\n",
|
|
1708
1708
|
"name": "string.interpolated.python string.quoted.single.python"
|
|
1709
1709
|
},
|
|
1710
1710
|
"fstring-terminator-multi": {
|
|
@@ -1726,7 +1726,7 @@
|
|
|
1726
1726
|
"name": "storage.type.format.python"
|
|
1727
1727
|
}
|
|
1728
1728
|
},
|
|
1729
|
-
"match": "(
|
|
1729
|
+
"match": "((?:=?)(?:![rsa])?)(:\\w?[<>=^]?[-+\\s]?\\#?\\d*,?(\\.\\d+)?[bcdeEfFgGnosxX%]?)(?=})"
|
|
1730
1730
|
},
|
|
1731
1731
|
{
|
|
1732
1732
|
"include": "#fstring-terminator-multi-tail"
|
|
@@ -1804,7 +1804,7 @@
|
|
|
1804
1804
|
"name": "storage.type.format.python"
|
|
1805
1805
|
}
|
|
1806
1806
|
},
|
|
1807
|
-
"match": "(
|
|
1807
|
+
"match": "((?:=?)(?:![rsa])?)(:\\w?[<>=^]?[-+\\s]?\\#?\\d*,?(\\.\\d+)?[bcdeEfFgGnosxX%]?)(?=})"
|
|
1808
1808
|
},
|
|
1809
1809
|
{
|
|
1810
1810
|
"include": "#fstring-terminator-single-tail"
|
|
@@ -1883,7 +1883,7 @@
|
|
|
1883
1883
|
"name": "keyword.operator.unpacking.arguments.python"
|
|
1884
1884
|
}
|
|
1885
1885
|
},
|
|
1886
|
-
"match": "(
|
|
1886
|
+
"match": "(?:(?<=[,(])|^)\\s*(\\*{1,2})"
|
|
1887
1887
|
},
|
|
1888
1888
|
{
|
|
1889
1889
|
"include": "#lambda-incomplete"
|
|
@@ -1923,7 +1923,7 @@
|
|
|
1923
1923
|
]
|
|
1924
1924
|
},
|
|
1925
1925
|
"function-call": {
|
|
1926
|
-
"begin": "
|
|
1926
|
+
"begin": "\\b(?=([[:alpha:]_]\\w*)\\s*(\\())",
|
|
1927
1927
|
"comment": "Regular function call of the type \"name(args)\"",
|
|
1928
1928
|
"end": "(\\))",
|
|
1929
1929
|
"endCaptures": {
|
|
@@ -1945,7 +1945,7 @@
|
|
|
1945
1945
|
]
|
|
1946
1946
|
},
|
|
1947
1947
|
"function-declaration": {
|
|
1948
|
-
"begin": "
|
|
1948
|
+
"begin": "\\s*(?:\\b(async)\\s+)?\\b(def)\\s+(?=[[:alpha:]_][[:word:]]*\\s*\\()",
|
|
1949
1949
|
"beginCaptures": {
|
|
1950
1950
|
"1": {
|
|
1951
1951
|
"name": "storage.type.function.async.python"
|
|
@@ -1985,7 +1985,7 @@
|
|
|
1985
1985
|
"include": "#builtin-possible-callables"
|
|
1986
1986
|
},
|
|
1987
1987
|
{
|
|
1988
|
-
"match": "
|
|
1988
|
+
"match": "\\b([[:alpha:]_]\\w*)\\b",
|
|
1989
1989
|
"name": "entity.name.function.python"
|
|
1990
1990
|
}
|
|
1991
1991
|
]
|
|
@@ -1997,7 +1997,7 @@
|
|
|
1997
1997
|
},
|
|
1998
1998
|
{
|
|
1999
1999
|
"comment": "Some color schemas support meta.function-call.generic scope",
|
|
2000
|
-
"match": "
|
|
2000
|
+
"match": "\\b([[:alpha:]_]\\w*)\\b",
|
|
2001
2001
|
"name": "meta.function-call.generic.python"
|
|
2002
2002
|
}
|
|
2003
2003
|
]
|
|
@@ -2035,7 +2035,7 @@
|
|
|
2035
2035
|
"name": "keyword.control.import.python"
|
|
2036
2036
|
}
|
|
2037
2037
|
},
|
|
2038
|
-
"match": "
|
|
2038
|
+
"match": "\\b(?:(and|assert|async|await|break|class|continue|def|del|elif|else|except|finally|for|from|global|if|in|is|(?<=\\.)lambda|lambda(?=\\s*[\\.=])|nonlocal|not|or|pass|raise|return|try|while|with|yield)|(as|import))\\b"
|
|
2039
2039
|
},
|
|
2040
2040
|
"illegal-object-name": {
|
|
2041
2041
|
"comment": "It's illegal to name class or function \"True\"",
|
|
@@ -2110,7 +2110,7 @@
|
|
|
2110
2110
|
"name": "entity.other.inherited-class.python"
|
|
2111
2111
|
}
|
|
2112
2112
|
},
|
|
2113
|
-
"match": "
|
|
2113
|
+
"match": "\\b([[:alpha:]_]\\w*)\\b"
|
|
2114
2114
|
},
|
|
2115
2115
|
"inheritance-name": {
|
|
2116
2116
|
"patterns": [
|
|
@@ -2128,7 +2128,7 @@
|
|
|
2128
2128
|
"item-access": {
|
|
2129
2129
|
"patterns": [
|
|
2130
2130
|
{
|
|
2131
|
-
"begin": "
|
|
2131
|
+
"begin": "\\b(?=[[:alpha:]_]\\w*\\s*\\[)",
|
|
2132
2132
|
"end": "(\\])",
|
|
2133
2133
|
"endCaptures": {
|
|
2134
2134
|
"1": {
|
|
@@ -2181,7 +2181,7 @@
|
|
|
2181
2181
|
"include": "#special-names"
|
|
2182
2182
|
},
|
|
2183
2183
|
{
|
|
2184
|
-
"match": "
|
|
2184
|
+
"match": "\\b([[:alpha:]_]\\w*)\\b",
|
|
2185
2185
|
"name": "meta.indexed-name.python"
|
|
2186
2186
|
}
|
|
2187
2187
|
]
|
|
@@ -2205,7 +2205,7 @@
|
|
|
2205
2205
|
"match": "\\b(lambda)\\s*?(?=[,\\n]|$)"
|
|
2206
2206
|
},
|
|
2207
2207
|
{
|
|
2208
|
-
"begin": "
|
|
2208
|
+
"begin": "\\b(lambda)\\b",
|
|
2209
2209
|
"beginCaptures": {
|
|
2210
2210
|
"1": {
|
|
2211
2211
|
"name": "storage.type.function.lambda.python"
|
|
@@ -2276,7 +2276,7 @@
|
|
|
2276
2276
|
"name": "storage.type.function.lambda.python"
|
|
2277
2277
|
},
|
|
2278
2278
|
"lambda-parameter-with-default": {
|
|
2279
|
-
"begin": "
|
|
2279
|
+
"begin": "\\b([[:alpha:]_]\\w*)\\s*(=)",
|
|
2280
2280
|
"beginCaptures": {
|
|
2281
2281
|
"1": {
|
|
2282
2282
|
"name": "variable.parameter.function.language.python"
|
|
@@ -2317,7 +2317,7 @@
|
|
|
2317
2317
|
"name": "punctuation.separator.continuation.line.python"
|
|
2318
2318
|
}
|
|
2319
2319
|
},
|
|
2320
|
-
"end": "(
|
|
2320
|
+
"end": "(?=^\\s*$)|(?!(\\s*[rR]?(\\'\\'\\'|\\\"\\\"\\\"|\\'|\\\"))|(\\G$)(?#'\\G'isnecessaryforST))",
|
|
2321
2321
|
"patterns": [
|
|
2322
2322
|
{
|
|
2323
2323
|
"include": "#regexp"
|
|
@@ -2385,7 +2385,7 @@
|
|
|
2385
2385
|
}
|
|
2386
2386
|
},
|
|
2387
2387
|
"comment": "these methods have magic interpretation by python and are generally called\nindirectly through syntactic constructs\n",
|
|
2388
|
-
"match": "
|
|
2388
|
+
"match": "\\b(__(?:abs|add|aenter|aexit|aiter|and|anext|await|bool|call|ceil|class_getitem|cmp|coerce|complex|contains|copy|deepcopy|del|delattr|delete|delitem|delslice|dir|div|divmod|enter|eq|exit|float|floor|floordiv|format|ge|get|getattr|getattribute|getinitargs|getitem|getnewargs|getslice|getstate|gt|hash|hex|iadd|iand|idiv|ifloordiv||ilshift|imod|imul|index|init|instancecheck|int|invert|ior|ipow|irshift|isub|iter|itruediv|ixor|le|len|long|lshift|lt|missing|mod|mul|ne|neg|new|next|nonzero|oct|or|pos|pow|radd|rand|rdiv|rdivmod|reduce|reduce_ex|repr|reversed|rfloordiv||rlshift|rmod|rmul|ror|round|rpow|rrshift|rshift|rsub|rtruediv|rxor|set|setattr|setitem|set_name|setslice|setstate|sizeof|str|sub|subclasscheck|truediv|trunc|unicode|xor|matmul|rmatmul|imatmul|init_subclass|set_name|fspath|bytes|prepare|length_hint)__)\\b"
|
|
2389
2389
|
},
|
|
2390
2390
|
"magic-names": {
|
|
2391
2391
|
"patterns": [
|
|
@@ -2404,7 +2404,7 @@
|
|
|
2404
2404
|
}
|
|
2405
2405
|
},
|
|
2406
2406
|
"comment": "magic variables which a class/module may have.",
|
|
2407
|
-
"match": "
|
|
2407
|
+
"match": "\\b(__(?:all|annotations|bases|builtins|class|closure|code|debug|defaults|dict|doc|file|func|globals|kwdefaults|match_args|members|metaclass|methods|module|mro|mro_entries|name|qualname|post_init|self|signature|slots|subclasses|version|weakref|wrapped|classcell|spec|path|package|future|traceback)__)\\b"
|
|
2408
2408
|
},
|
|
2409
2409
|
"member-access": {
|
|
2410
2410
|
"begin": "(\\.)\\s*(?!\\.)",
|
|
@@ -2413,7 +2413,7 @@
|
|
|
2413
2413
|
"name": "punctuation.separator.period.python"
|
|
2414
2414
|
}
|
|
2415
2415
|
},
|
|
2416
|
-
"end": "(
|
|
2416
|
+
"end": "(?<=\\S)(?=\\W)|(^|(?<=\\s))(?=[^\\\\\\w\\s])|$",
|
|
2417
2417
|
"name": "meta.member.access.python",
|
|
2418
2418
|
"patterns": [
|
|
2419
2419
|
{
|
|
@@ -2429,7 +2429,7 @@
|
|
|
2429
2429
|
},
|
|
2430
2430
|
"member-access-attribute": {
|
|
2431
2431
|
"comment": "Highlight attribute access in otherwise non-specialized cases.",
|
|
2432
|
-
"match": "
|
|
2432
|
+
"match": "\\b([[:alpha:]_]\\w*)\\b",
|
|
2433
2433
|
"name": "meta.attribute.python"
|
|
2434
2434
|
},
|
|
2435
2435
|
"member-access-base": {
|
|
@@ -2508,7 +2508,7 @@
|
|
|
2508
2508
|
"name": "storage.type.number.python"
|
|
2509
2509
|
}
|
|
2510
2510
|
},
|
|
2511
|
-
"match": "(
|
|
2511
|
+
"match": "(?<![\\w\\.])(0[bB])(_?[01])+\\b",
|
|
2512
2512
|
"name": "constant.numeric.bin.python"
|
|
2513
2513
|
},
|
|
2514
2514
|
"number-dec": {
|
|
@@ -2520,7 +2520,7 @@
|
|
|
2520
2520
|
"name": "invalid.illegal.dec.python"
|
|
2521
2521
|
}
|
|
2522
2522
|
},
|
|
2523
|
-
"match": "(
|
|
2523
|
+
"match": "(?<![\\w\\.])(?:[1-9](?:_?[0-9])*|0+|[0-9](?:_?[0-9])*([jJ])|0([0-9]+)(?![eE\\.]))\\b",
|
|
2524
2524
|
"name": "constant.numeric.dec.python"
|
|
2525
2525
|
},
|
|
2526
2526
|
"number-float": {
|
|
@@ -2529,7 +2529,7 @@
|
|
|
2529
2529
|
"name": "storage.type.imaginary.number.python"
|
|
2530
2530
|
}
|
|
2531
2531
|
},
|
|
2532
|
-
"match": "(
|
|
2532
|
+
"match": "(?<!\\w)(?:(?:\\.[0-9](?:_?[0-9])*|[0-9](?:_?[0-9])*\\.[0-9](?:_?[0-9])*|[0-9](?:_?[0-9])*\\.)(?:[eE][+-]?[0-9](?:_?[0-9])*)?|[0-9](?:_?[0-9])*(?:[eE][+-]?[0-9](?:_?[0-9])*))([jJ])?\\b",
|
|
2533
2533
|
"name": "constant.numeric.float.python"
|
|
2534
2534
|
},
|
|
2535
2535
|
"number-hex": {
|
|
@@ -2538,7 +2538,7 @@
|
|
|
2538
2538
|
"name": "storage.type.number.python"
|
|
2539
2539
|
}
|
|
2540
2540
|
},
|
|
2541
|
-
"match": "(
|
|
2541
|
+
"match": "(?<![\\w\\.])(0[xX])(_?[0-9a-fA-F])+\\b",
|
|
2542
2542
|
"name": "constant.numeric.hex.python"
|
|
2543
2543
|
},
|
|
2544
2544
|
"number-long": {
|
|
@@ -2548,7 +2548,7 @@
|
|
|
2548
2548
|
}
|
|
2549
2549
|
},
|
|
2550
2550
|
"comment": "this is to support python2 syntax for long ints",
|
|
2551
|
-
"match": "(
|
|
2551
|
+
"match": "(?<![\\w\\.])([1-9][0-9]*|0)([lL])\\b",
|
|
2552
2552
|
"name": "constant.numeric.bin.python"
|
|
2553
2553
|
},
|
|
2554
2554
|
"number-oct": {
|
|
@@ -2557,11 +2557,11 @@
|
|
|
2557
2557
|
"name": "storage.type.number.python"
|
|
2558
2558
|
}
|
|
2559
2559
|
},
|
|
2560
|
-
"match": "(
|
|
2560
|
+
"match": "(?<![\\w\\.])(0[oO])(_?[0-7])+\\b",
|
|
2561
2561
|
"name": "constant.numeric.oct.python"
|
|
2562
2562
|
},
|
|
2563
2563
|
"odd-function-call": {
|
|
2564
|
-
"begin": "(
|
|
2564
|
+
"begin": "(?<=\\]|\\))\\s*(?=\\()",
|
|
2565
2565
|
"comment": "A bit obscured function call where there may have been an\narbitrary number of other operations to get the function.\nE.g. \"arr[idx](args)\"\n",
|
|
2566
2566
|
"end": "(\\))",
|
|
2567
2567
|
"endCaptures": {
|
|
@@ -2596,7 +2596,7 @@
|
|
|
2596
2596
|
"name": "keyword.operator.assignment.python"
|
|
2597
2597
|
}
|
|
2598
2598
|
},
|
|
2599
|
-
"match": "
|
|
2599
|
+
"match": "\\b(?<!\\.)(?:(and|or|not|in|is)(?#1)|(for|if|else|await|(?:yield(?:\\s+from)?))(?#2))(?!\\s*:)\\b|(<<|>>|&|\\||\\^|~)(?#3)|(\\*\\*|\\*|\\+|-|%|//|/|@)(?#4)|(!=|==|>=|<=|<|>)(?#5)|(:=)(?#6)"
|
|
2600
2600
|
},
|
|
2601
2601
|
"parameter-special": {
|
|
2602
2602
|
"captures": {
|
|
@@ -2613,7 +2613,7 @@
|
|
|
2613
2613
|
"name": "punctuation.separator.parameters.python"
|
|
2614
2614
|
}
|
|
2615
2615
|
},
|
|
2616
|
-
"match": "
|
|
2616
|
+
"match": "\\b((self)|(cls))\\b\\s*(?:(,)|(?=\\)))"
|
|
2617
2617
|
},
|
|
2618
2618
|
"parameters": {
|
|
2619
2619
|
"begin": "(\\()",
|
|
@@ -2659,7 +2659,7 @@
|
|
|
2659
2659
|
"name": "punctuation.separator.parameters.python"
|
|
2660
2660
|
}
|
|
2661
2661
|
},
|
|
2662
|
-
"match": "(
|
|
2662
|
+
"match": "([[:alpha:]_]\\w*)\\s*(?:(,)|(?=[)#\\n=]))"
|
|
2663
2663
|
},
|
|
2664
2664
|
{
|
|
2665
2665
|
"include": "#comments"
|
|
@@ -2712,7 +2712,7 @@
|
|
|
2712
2712
|
"name": "support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.end.regexp"
|
|
2713
2713
|
}
|
|
2714
2714
|
},
|
|
2715
|
-
"match": "(
|
|
2715
|
+
"match": "(\\()(\\?P=\\w+(?:\\s+[[:alnum:]]+)?)(\\))",
|
|
2716
2716
|
"name": "meta.backreference.named.regexp"
|
|
2717
2717
|
},
|
|
2718
2718
|
"regexp-backreference-number": {
|
|
@@ -2854,7 +2854,7 @@
|
|
|
2854
2854
|
"name": "constant.character.escape.regexp"
|
|
2855
2855
|
},
|
|
2856
2856
|
"regexp-escape-character": {
|
|
2857
|
-
"match": "(
|
|
2857
|
+
"match": "\\\\(x[0-9A-Fa-f]{2}|0[0-7]{1,2}|[0-7]{3})",
|
|
2858
2858
|
"name": "constant.character.escape.regexp"
|
|
2859
2859
|
},
|
|
2860
2860
|
"regexp-escape-sequence": {
|
|
@@ -2881,7 +2881,7 @@
|
|
|
2881
2881
|
"name": "support.other.escape.special.regexp"
|
|
2882
2882
|
},
|
|
2883
2883
|
"regexp-escape-unicode": {
|
|
2884
|
-
"match": "
|
|
2884
|
+
"match": "\\\\(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})",
|
|
2885
2885
|
"name": "constant.character.unicode.regexp"
|
|
2886
2886
|
},
|
|
2887
2887
|
"regexp-flags": {
|
|
@@ -2889,7 +2889,7 @@
|
|
|
2889
2889
|
"name": "storage.modifier.flag.regexp"
|
|
2890
2890
|
},
|
|
2891
2891
|
"regexp-quantifier": {
|
|
2892
|
-
"match": "
|
|
2892
|
+
"match": "\\{(\\d+|\\d+,(\\d+)?|,\\d+)\\}",
|
|
2893
2893
|
"name": "keyword.operator.quantifier.regexp"
|
|
2894
2894
|
},
|
|
2895
2895
|
"regexp-single-one-line": {
|
|
@@ -3000,7 +3000,7 @@
|
|
|
3000
3000
|
"single-one-regexp-character-set": {
|
|
3001
3001
|
"patterns": [
|
|
3002
3002
|
{
|
|
3003
|
-
"match": "
|
|
3003
|
+
"match": "\\[\\s\\^?\\s\\](?!.*?\\])"
|
|
3004
3004
|
},
|
|
3005
3005
|
{
|
|
3006
3006
|
"begin": "(\\[)(\\^)?(\\])?",
|
|
@@ -3229,7 +3229,7 @@
|
|
|
3229
3229
|
]
|
|
3230
3230
|
},
|
|
3231
3231
|
"single-one-regexp-named-group": {
|
|
3232
|
-
"begin": "(
|
|
3232
|
+
"begin": "(\\()(\\?P<\\w+(?:\\s+[[:alnum:]]+)?>)",
|
|
3233
3233
|
"beginCaptures": {
|
|
3234
3234
|
"1": {
|
|
3235
3235
|
"name": "support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"
|
|
@@ -3301,7 +3301,7 @@
|
|
|
3301
3301
|
"single-three-regexp-character-set": {
|
|
3302
3302
|
"patterns": [
|
|
3303
3303
|
{
|
|
3304
|
-
"match": "
|
|
3304
|
+
"match": "\\[\\s\\^?\\s\\](?!.*?\\])"
|
|
3305
3305
|
},
|
|
3306
3306
|
{
|
|
3307
3307
|
"begin": "(\\[)(\\^)?(\\])?",
|
|
@@ -3548,7 +3548,7 @@
|
|
|
3548
3548
|
]
|
|
3549
3549
|
},
|
|
3550
3550
|
"single-three-regexp-named-group": {
|
|
3551
|
-
"begin": "(
|
|
3551
|
+
"begin": "(\\()(\\?P<\\w+(?:\\s+[[:alnum:]]+)?>)",
|
|
3552
3552
|
"beginCaptures": {
|
|
3553
3553
|
"1": {
|
|
3554
3554
|
"name": "support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"
|
|
@@ -3627,7 +3627,7 @@
|
|
|
3627
3627
|
]
|
|
3628
3628
|
},
|
|
3629
3629
|
"special-names": {
|
|
3630
|
-
"match": "
|
|
3630
|
+
"match": "\\b(_*[[:upper:]][_\\d]*[[:upper:]])[[:upper:]\\d]*(_\\w*)?\\b",
|
|
3631
3631
|
"name": "constant.other.caps.python"
|
|
3632
3632
|
},
|
|
3633
3633
|
"special-variables": {
|
|
@@ -3639,7 +3639,7 @@
|
|
|
3639
3639
|
"name": "variable.language.special.cls.python"
|
|
3640
3640
|
}
|
|
3641
3641
|
},
|
|
3642
|
-
"match": "
|
|
3642
|
+
"match": "\\b(?<!\\.)(?:(self)|(cls))\\b"
|
|
3643
3643
|
},
|
|
3644
3644
|
"statement": {
|
|
3645
3645
|
"patterns": [
|
|
@@ -3689,11 +3689,11 @@
|
|
|
3689
3689
|
"name": "keyword.control.import.python"
|
|
3690
3690
|
},
|
|
3691
3691
|
{
|
|
3692
|
-
"match": "
|
|
3692
|
+
"match": "\\b(?<!\\.)(async|continue|del|assert|break|finally|for|from|elif|else|if|except|pass|raise|return|try|while|with)\\b",
|
|
3693
3693
|
"name": "keyword.control.flow.python"
|
|
3694
3694
|
},
|
|
3695
3695
|
{
|
|
3696
|
-
"match": "
|
|
3696
|
+
"match": "\\b(?<!\\.)(global|nonlocal)\\b",
|
|
3697
3697
|
"name": "storage.modifier.declaration.python"
|
|
3698
3698
|
},
|
|
3699
3699
|
{
|
|
@@ -3706,7 +3706,7 @@
|
|
|
3706
3706
|
"name": "keyword.control.flow.python"
|
|
3707
3707
|
}
|
|
3708
3708
|
},
|
|
3709
|
-
"match": "
|
|
3709
|
+
"match": "^\\s*(case|match)(?=\\s*([-+\\w\\d(\\[{'\":#]|$))\\b"
|
|
3710
3710
|
}
|
|
3711
3711
|
]
|
|
3712
3712
|
},
|
|
@@ -3822,7 +3822,7 @@
|
|
|
3822
3822
|
"name": "storage.type.format.python"
|
|
3823
3823
|
}
|
|
3824
3824
|
},
|
|
3825
|
-
"match": "(
|
|
3825
|
+
"match": "({{|}}|(?:{\\w*(\\.[[:alpha:]_]\\w*|\\[[^\\]'\"]+\\])*(![rsa])?(:\\w?[<>=^]?[-+\\s]?\\#?\\d*,?(\\.\\d+)?[bcdeEfFgGnosxX%]?)?}))",
|
|
3826
3826
|
"name": "meta.format.brace.python"
|
|
3827
3827
|
},
|
|
3828
3828
|
{
|
|
@@ -3837,7 +3837,7 @@
|
|
|
3837
3837
|
"name": "storage.type.format.python"
|
|
3838
3838
|
}
|
|
3839
3839
|
},
|
|
3840
|
-
"match": "(
|
|
3840
|
+
"match": "({\\w*(\\.[[:alpha:]_]\\w*|\\[[^\\]'\"]+\\])*(![rsa])?(:)[^'\"{}\\n]*(?:\\{[^'\"}\\n]*?\\}[^'\"{}\\n]*)*})",
|
|
3841
3841
|
"name": "meta.format.brace.python"
|
|
3842
3842
|
}
|
|
3843
3843
|
]
|
|
@@ -3864,7 +3864,7 @@
|
|
|
3864
3864
|
"name": "constant.character.format.placeholder.other.python"
|
|
3865
3865
|
}
|
|
3866
3866
|
},
|
|
3867
|
-
"match": "(
|
|
3867
|
+
"match": "(%(\\([\\w\\s]*\\))?[-+#0\\s]*(\\d+|\\*)?(\\.(\\d+|\\*))?([hlL])?[diouxXeEfFgGcrsab%])",
|
|
3868
3868
|
"name": "meta.format.percent.python"
|
|
3869
3869
|
},
|
|
3870
3870
|
"string-line-continuation": {
|
|
@@ -3872,7 +3872,7 @@
|
|
|
3872
3872
|
"name": "constant.language.python"
|
|
3873
3873
|
},
|
|
3874
3874
|
"string-multi-bad-brace1-formatting-raw": {
|
|
3875
|
-
"begin": "(
|
|
3875
|
+
"begin": "(?=\\{%(.*?(?!'''|\"\"\"))%\\})",
|
|
3876
3876
|
"comment": "template using {% ... %}",
|
|
3877
3877
|
"end": "(?='''|\"\"\")",
|
|
3878
3878
|
"patterns": [
|
|
@@ -3882,7 +3882,7 @@
|
|
|
3882
3882
|
]
|
|
3883
3883
|
},
|
|
3884
3884
|
"string-multi-bad-brace1-formatting-unicode": {
|
|
3885
|
-
"begin": "(
|
|
3885
|
+
"begin": "(?=\\{%(.*?(?!'''|\"\"\"))%\\})",
|
|
3886
3886
|
"comment": "template using {% ... %}",
|
|
3887
3887
|
"end": "(?='''|\"\"\")",
|
|
3888
3888
|
"patterns": [
|
|
@@ -3898,7 +3898,7 @@
|
|
|
3898
3898
|
]
|
|
3899
3899
|
},
|
|
3900
3900
|
"string-multi-bad-brace2-formatting-raw": {
|
|
3901
|
-
"begin": "(
|
|
3901
|
+
"begin": "(?!\\{\\{)(?=\\{(\\w*?(?!'''|\"\"\")[^!:\\.\\[}\\w]).*?(?!'''|\"\"\")\\})",
|
|
3902
3902
|
"comment": "odd format or format-like syntax",
|
|
3903
3903
|
"end": "(?='''|\"\"\")",
|
|
3904
3904
|
"patterns": [
|
|
@@ -3911,7 +3911,7 @@
|
|
|
3911
3911
|
]
|
|
3912
3912
|
},
|
|
3913
3913
|
"string-multi-bad-brace2-formatting-unicode": {
|
|
3914
|
-
"begin": "(
|
|
3914
|
+
"begin": "(?!\\{\\{)(?=\\{(\\w*?(?!'''|\"\"\")[^!:\\.\\[}\\w]).*?(?!'''|\"\"\")\\})",
|
|
3915
3915
|
"comment": "odd format or format-like syntax",
|
|
3916
3916
|
"end": "(?='''|\"\"\")",
|
|
3917
3917
|
"patterns": [
|
|
@@ -4139,7 +4139,7 @@
|
|
|
4139
4139
|
]
|
|
4140
4140
|
},
|
|
4141
4141
|
"string-single-bad-brace1-formatting-raw": {
|
|
4142
|
-
"begin": "(
|
|
4142
|
+
"begin": "(?=\\{%(.*?(?!(['\"])|((?<!\\\\)\\n)))%\\})",
|
|
4143
4143
|
"comment": "template using {% ... %}",
|
|
4144
4144
|
"end": "(?=(['\"])|((?<!\\\\)\\n))",
|
|
4145
4145
|
"patterns": [
|
|
@@ -4149,7 +4149,7 @@
|
|
|
4149
4149
|
]
|
|
4150
4150
|
},
|
|
4151
4151
|
"string-single-bad-brace1-formatting-unicode": {
|
|
4152
|
-
"begin": "(
|
|
4152
|
+
"begin": "(?=\\{%(.*?(?!(['\"])|((?<!\\\\)\\n)))%\\})",
|
|
4153
4153
|
"comment": "template using {% ... %}",
|
|
4154
4154
|
"end": "(?=(['\"])|((?<!\\\\)\\n))",
|
|
4155
4155
|
"patterns": [
|
|
@@ -4165,7 +4165,7 @@
|
|
|
4165
4165
|
]
|
|
4166
4166
|
},
|
|
4167
4167
|
"string-single-bad-brace2-formatting-raw": {
|
|
4168
|
-
"begin": "(
|
|
4168
|
+
"begin": "(?!\\{\\{)(?=\\{(\\w*?(?!(['\"])|((?<!\\\\)\\n))[^!:\\.\\[}\\w]).*?(?!(['\"])|((?<!\\\\)\\n))\\})",
|
|
4169
4169
|
"comment": "odd format or format-like syntax",
|
|
4170
4170
|
"end": "(?=(['\"])|((?<!\\\\)\\n))",
|
|
4171
4171
|
"patterns": [
|
|
@@ -4178,7 +4178,7 @@
|
|
|
4178
4178
|
]
|
|
4179
4179
|
},
|
|
4180
4180
|
"string-single-bad-brace2-formatting-unicode": {
|
|
4181
|
-
"begin": "(
|
|
4181
|
+
"begin": "(?!\\{\\{)(?=\\{(\\w*?(?!(['\"])|((?<!\\\\)\\n))[^!:\\.\\[}\\w]).*?(?!(['\"])|((?<!\\\\)\\n))\\})",
|
|
4182
4182
|
"comment": "odd format or format-like syntax",
|
|
4183
4183
|
"end": "(?=(['\"])|((?<!\\\\)\\n))",
|
|
4184
4184
|
"patterns": [
|