github-linguist 6.0.1 → 6.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/annotation.liquidhaskell.haskell.json +13 -4
  3. data/grammars/hint.haskell.json +13 -4
  4. data/grammars/hint.message.haskell.json +13 -4
  5. data/grammars/hint.type.haskell.json +13 -4
  6. data/grammars/source.angelscript.json +1 -1
  7. data/grammars/source.ballerina.json +25 -2
  8. data/grammars/source.batchfile.json +69 -38
  9. data/grammars/source.c.json +1 -1
  10. data/grammars/source.clarion.json +4 -4
  11. data/grammars/source.cs.json +3952 -780
  12. data/grammars/source.elixir.json +7 -7
  13. data/grammars/source.fortran.json +38 -35
  14. data/grammars/source.fortran.modern.json +6 -6
  15. data/grammars/source.graphql.json +55 -2
  16. data/grammars/source.haskell.json +13 -4
  17. data/grammars/source.hsig.json +13 -4
  18. data/grammars/source.hx.json +2309 -0
  19. data/grammars/source.hxml.json +37 -5
  20. data/grammars/source.isabelle.theory.json +7 -7
  21. data/grammars/source.js.json +39 -54
  22. data/grammars/source.js.regexp.json +11 -5
  23. data/grammars/source.julia.json +16 -5
  24. data/grammars/{source.Kotlin.json → source.kotlin.json} +118 -33
  25. data/grammars/source.mathematica.json +0 -1
  26. data/grammars/source.meson.json +4 -0
  27. data/grammars/source.mupad.json +36 -12
  28. data/grammars/source.netlinx.erb.json +1 -2
  29. data/grammars/source.netlinx.json +0 -3
  30. data/grammars/source.nextflow.json +7 -7
  31. data/grammars/source.perl.json +1 -1
  32. data/grammars/source.renpy.json +436 -648
  33. data/grammars/source.scala.json +133 -87
  34. data/grammars/source.sed.json +1520 -0
  35. data/grammars/source.shell.json +17 -17
  36. data/grammars/source.solidity.json +1 -1
  37. data/grammars/source.swift.json +1 -1
  38. data/grammars/source.terraform.json +1 -1
  39. data/grammars/source.ts.json +493 -122
  40. data/grammars/source.tsx.json +568 -191
  41. data/grammars/source.x86.json +295 -0
  42. data/grammars/source.yaml.json +41 -21
  43. data/grammars/source.yara.json +1 -1
  44. data/grammars/text.haml.json +15 -0
  45. data/grammars/text.html.creole.json +1 -1
  46. data/grammars/text.html.php.blade.json +2 -2
  47. data/grammars/text.html.php.json +55 -134
  48. data/grammars/text.html.smarty.json +25 -1
  49. data/grammars/text.html.vue.json +0 -6
  50. data/grammars/text.restructuredtext.json +110 -17
  51. data/grammars/text.tex.latex.haskell.json +13 -4
  52. data/lib/linguist/documentation.yml +1 -0
  53. data/lib/linguist/generated.rb +9 -1
  54. data/lib/linguist/heuristics.rb +2 -0
  55. data/lib/linguist/language.rb +0 -8
  56. data/lib/linguist/languages.json +1 -1
  57. data/lib/linguist/languages.yml +103 -7
  58. data/lib/linguist/linguist.bundle +0 -0
  59. data/lib/linguist/samples.json +1221 -262
  60. data/lib/linguist/shebang.rb +7 -4
  61. data/lib/linguist/strategy/extension.rb +15 -2
  62. data/lib/linguist/strategy/filename.rb +15 -2
  63. data/lib/linguist/vendor.yml +7 -0
  64. data/lib/linguist/version.rb +1 -1
  65. metadata +17 -19
  66. data/grammars/source.erazor.json +0 -118
  67. data/grammars/source.haxe.2.json +0 -1267
  68. data/grammars/source.hss.1.json +0 -442
  69. data/grammars/source.nmml.json +0 -81
  70. data/grammars/source.sbt.json +0 -39
@@ -318,7 +318,6 @@
318
318
  {
319
319
  "include": "$self"
320
320
  },
321
- {},
322
321
  {
323
322
  "name": "punctuation.separator.list.mathematica",
324
323
  "match": ","
@@ -25,6 +25,10 @@
25
25
  "name": "constant.numeric.float.meson",
26
26
  "match": "\\b([1-9]+[0-9]*\\.[0-9]*)"
27
27
  },
28
+ {
29
+ "name": "constant.numeric.integer.hexadecimal.meson",
30
+ "match": "\\b(?i:(0x[0-9a-f]+))"
31
+ },
28
32
  {
29
33
  "name": "constant.numeric.integer.decimal.meson",
30
34
  "match": "\\b([1-9]+[0-9]*|0)"
@@ -2,13 +2,48 @@
2
2
  "name": "MuPAD",
3
3
  "scopeName": "source.mupad",
4
4
  "patterns": [
5
+ {
6
+ "name": "comment.line.double-slash.mupad",
7
+ "begin": "//",
8
+ "end": "$",
9
+ "patterns": [
10
+ {}
11
+ ]
12
+ },
13
+ {
14
+ "include": "#blockcomment"
15
+ },
5
16
  {
6
17
  "name": "keyword.control.mupad",
7
18
  "match": "\\b(axiom|end_axiom|category|end_category|begin|break|case|do|downto|elif|else|end_case|end_for|end_if|end_proc|end_repeat|end_while|for|from|if|%if|local|name|next|of|option|otherwise|proc|quit|repeat|save|step|then|to|until|while|domain|end|inherits|end_domain)\\b"
8
19
  },
9
20
  {
10
21
  "name": "keyword.operator.mupad",
11
- "match": "\\b(and|div|in|intersect|minus|mod|not|or|union|xor|-\u003e|--\u003e|\\+|-|\\*|/|\u003e|\u003c|\u003c\u003e|=|\u003c=\u003e|\u003c==|==\u003e|\\|)\\b"
22
+ "match": "\\b(intersect|minus|union)\\b|-\u003e|--\u003e|\\."
23
+ },
24
+ {
25
+ "name": "keyword.operator.arithmetic.mupad",
26
+ "match": "\\b(div|mod)\\b|\\+|-|\\*|/|\\^|\\|"
27
+ },
28
+ {
29
+ "name": "keyword.operator.logical.mupad",
30
+ "match": "\\b(and|in|not|or|xor)\\b|\u003e|\u003c|\u003c\u003e|=|\u003c=\u003e|\u003c==|==\u003e|\\|\\||\u0026\u0026"
31
+ },
32
+ {
33
+ "name": "keyword.operator.assignment.mupad",
34
+ "match": ":="
35
+ },
36
+ {
37
+ "name": "punctuation.accessor.mupad",
38
+ "match": "::"
39
+ },
40
+ {
41
+ "name": "punctuation.terminator.mupad",
42
+ "match": ";"
43
+ },
44
+ {
45
+ "name": "punctuation.separator.mupad",
46
+ "match": ","
12
47
  },
13
48
  {
14
49
  "name": "constant.language.mupad",
@@ -58,17 +93,6 @@
58
93
  "name": "constant.numeric.mupad",
59
94
  "match": "\\b(([0-9]+\\.?[0-9]*)((e|E)(\\+|-)?[0-9]+)?)\\b"
60
95
  },
61
- {
62
- "name": "comment.line.double-slash.mupad",
63
- "begin": "//",
64
- "end": "$",
65
- "patterns": [
66
- {}
67
- ]
68
- },
69
- {
70
- "include": "#blockcomment"
71
- },
72
96
  {
73
97
  "name": "string.quoted.double.mupad",
74
98
  "begin": "\"",
@@ -17,8 +17,7 @@
17
17
  "patterns": [
18
18
  {
19
19
  "include": "source.ruby"
20
- },
21
- {}
20
+ }
22
21
  ],
23
22
  "beginCaptures": {
24
23
  "0": {
@@ -163,9 +163,6 @@
163
163
  {
164
164
  "include": "#preprocessor-rule-other-block"
165
165
  },
166
- {
167
- "include": "#sizeof"
168
- },
169
166
  {
170
167
  "include": "#access"
171
168
  },
@@ -8,7 +8,7 @@
8
8
  ],
9
9
  "repository": {
10
10
  "code-block": {
11
- "name": "support.code.block.nextflow",
11
+ "name": "code.block.nextflow",
12
12
  "begin": "{",
13
13
  "end": "}",
14
14
  "patterns": [
@@ -31,16 +31,16 @@
31
31
  ]
32
32
  },
33
33
  "process-body": {
34
- "name": "support.process.body.nextflow",
34
+ "name": "process.body.nextflow",
35
35
  "begin": "{",
36
36
  "end": "(?=})",
37
37
  "patterns": [
38
38
  {
39
- "name": "support.process.directive.type.nextflow",
39
+ "name": "process.directive.type.nextflow",
40
40
  "match": "(?:afterScript|beforeScript|cache|container|cpus|clusterOptions|disk|echo|errorStrategy|executor|ext|maxErrors|maxForks|maxRetries|memory|module|penv|publishDir|queue|scratch|storeDir|stageInMode|stageOutMode|tag|time|validExitStatus)\\b"
41
41
  },
42
42
  {
43
- "name": "support.constant.block.nextflow",
43
+ "name": "constant.block.nextflow",
44
44
  "match": "(?:input|output|script|shell|exec):"
45
45
  },
46
46
  {
@@ -73,7 +73,7 @@
73
73
  ]
74
74
  },
75
75
  "process-def": {
76
- "name": "support.process.nextflow",
76
+ "name": "process.nextflow",
77
77
  "begin": "^\\s*(process)\\s+(\\w+|\"[^\"]+\"|'[^']+')\\s*",
78
78
  "end": "}",
79
79
  "patterns": [
@@ -83,10 +83,10 @@
83
83
  ],
84
84
  "beginCaptures": {
85
85
  "1": {
86
- "name": "support.keyword.nextflow"
86
+ "name": "keyword.nextflow"
87
87
  },
88
88
  "2": {
89
- "name": "support.function.nextflow"
89
+ "name": "function.nextflow"
90
90
  }
91
91
  }
92
92
  }
@@ -310,7 +310,7 @@
310
310
  },
311
311
  {
312
312
  "name": "string.regexp.find-m.simple-delimiter.perl",
313
- "begin": "(?\u003c!\\{|\\+|\\-)(m)(?!_)\\s*([^\\sa-zA-Z0-9'\\{\\[\\(\\\u003c])",
313
+ "begin": "\\G(?\u003c!\\{|\\+|\\-)(m)(?!_)\\s*([^\\sa-zA-Z0-9'\\{\\[\\(\\\u003c])",
314
314
  "end": "\\2",
315
315
  "patterns": [
316
316
  {
@@ -7,67 +7,67 @@
7
7
  "end": "(?!\\G)",
8
8
  "patterns": [
9
9
  {
10
- "name": "comment.line.number-sign.python",
10
+ "name": "comment.line.number-sign.python.renpy",
11
11
  "begin": "#",
12
12
  "end": "\\n",
13
13
  "beginCaptures": {
14
14
  "0": {
15
- "name": "punctuation.definition.comment.python"
15
+ "name": "punctuation.definition.comment.python.renpy"
16
16
  }
17
17
  }
18
18
  }
19
19
  ],
20
20
  "beginCaptures": {
21
21
  "1": {
22
- "name": "punctuation.whitespace.comment.leading.python"
22
+ "name": "punctuation.whitespace.comment.leading.python.renpy"
23
23
  }
24
24
  }
25
25
  },
26
26
  {
27
- "name": "constant.numeric.integer.long.hexadecimal.python",
27
+ "name": "constant.numeric.integer.long.hexadecimal.python.renpy",
28
28
  "match": "\\b(?i:(0x[[:xdigit:]]*)L)"
29
29
  },
30
30
  {
31
- "name": "constant.numeric.integer.hexadecimal.python",
31
+ "name": "constant.numeric.integer.hexadecimal.python.renpy",
32
32
  "match": "\\b(?i:(0x[[:xdigit:]]*))"
33
33
  },
34
34
  {
35
- "name": "constant.numeric.integer.long.octal.python",
35
+ "name": "constant.numeric.integer.long.octal.python.renpy",
36
36
  "match": "\\b(?i:(0[0-7]+)L)"
37
37
  },
38
38
  {
39
- "name": "constant.numeric.integer.octal.python",
39
+ "name": "constant.numeric.integer.octal.python.renpy",
40
40
  "match": "\\b(0[0-7]+)"
41
41
  },
42
42
  {
43
- "name": "constant.numeric.complex.python",
43
+ "name": "constant.numeric.complex.python.renpy",
44
44
  "match": "\\b(?i:(((\\d+(\\.(?=[^a-zA-Z_])\\d*)?|(?\u003c=[^0-9a-zA-Z_])\\.\\d+)(e[\\-\\+]?\\d+)?))J)"
45
45
  },
46
46
  {
47
- "name": "constant.numeric.float.python",
47
+ "name": "constant.numeric.float.python.renpy",
48
48
  "match": "\\b(?i:(\\d+\\.\\d*(e[\\-\\+]?\\d+)?))(?=[^a-zA-Z_])"
49
49
  },
50
50
  {
51
- "name": "constant.numeric.float.python",
51
+ "name": "constant.numeric.float.python.renpy",
52
52
  "match": "(?\u003c=[^0-9a-zA-Z_])(?i:(\\.\\d+(e[\\-\\+]?\\d+)?))"
53
53
  },
54
54
  {
55
- "name": "constant.numeric.float.python",
55
+ "name": "constant.numeric.float.python.renpy",
56
56
  "match": "\\b(?i:(\\d+e[\\-\\+]?\\d+))"
57
57
  },
58
58
  {
59
- "name": "constant.numeric.integer.long.decimal.python",
59
+ "name": "constant.numeric.integer.long.decimal.python.renpy",
60
60
  "match": "\\b(?i:([1-9]+[0-9]*|0)L)"
61
61
  },
62
62
  {
63
- "name": "constant.numeric.integer.decimal.python",
63
+ "name": "constant.numeric.integer.decimal.python.renpy",
64
64
  "match": "\\b([1-9]+[0-9]*|0)"
65
65
  },
66
66
  {
67
67
  "match": "\\b(global)\\b",
68
68
  "captures": {
69
69
  "1": {
70
- "name": "storage.modifier.global.python"
70
+ "name": "storage.modifier.global.python.renpy"
71
71
  }
72
72
  }
73
73
  },
@@ -75,7 +75,7 @@
75
75
  "match": "\\b(nonlocal)\\b",
76
76
  "captures": {
77
77
  "1": {
78
- "name": "storage.modifier.nonlocal.python"
78
+ "name": "storage.modifier.nonlocal.python.renpy"
79
79
  }
80
80
  }
81
81
  },
@@ -83,200 +83,133 @@
83
83
  "match": "\\b(?:(import)|(from))\\b",
84
84
  "captures": {
85
85
  "1": {
86
- "name": "keyword.control.import.python"
86
+ "name": "keyword.control.import.python.renpy"
87
87
  },
88
88
  "2": {
89
- "name": "keyword.control.import.from.python"
89
+ "name": "keyword.control.import.from.python.renpy"
90
90
  }
91
91
  }
92
92
  },
93
93
  {
94
- "name": "keyword.control.conditional.python",
94
+ "name": "keyword.control.conditional.python.renpy",
95
95
  "match": "\\b(if|elif|else)\\b"
96
96
  },
97
97
  {
98
- "name": "keyword.control.exception.python",
98
+ "name": "keyword.control.exception.python.renpy",
99
99
  "match": "\\b(except|finally|try|raise)\\b"
100
100
  },
101
101
  {
102
- "name": "keyword.control.repeat.python",
102
+ "name": "keyword.control.repeat.python.renpy",
103
103
  "match": "\\b(for|while)\\b"
104
104
  },
105
105
  {
106
- "name": "keyword.control.statement.python",
107
- "match": "\\b(function|nvl|block|choice|parallel|contains|on|voice|imagemap|hotspot|text|frame|textbutton|grid|add|key|use|bar|with|is|button|window|hbox|vbox|mousearea|imagebutton)\\b"
108
- },
109
- {
110
- "name": "support.type.screen.renpy",
111
- "match": "\\b(kind|color|action|area|hovered|unhovered|clicked|modal|text_style|has|who|what|tag|value|theme)\\b"
112
- },
113
- {
114
- "name": "support.type.transform.renpy",
115
- "match": "\\b(repeat|fadein|fadeout|position|Position|easein|easeout|time|ui)\\b"
116
- },
117
- {
118
- "name": "support.type.other.renpy",
119
- "match": "\\b(MultiPersistent|Character|DynamicCharacter|music|sound|movie|pause|Transform|clear)\\b"
120
- },
121
- {
122
- "name": "invalid.deprecated.operator.renpy",
123
- "match": "\\$"
106
+ "match": "\\b(assert|del|exec|print)\\b",
107
+ "captures": {
108
+ "1": {
109
+ "name": "keyword.other.python.renpy"
110
+ }
111
+ }
124
112
  },
125
113
  {
126
- "name": "keyword.control.statement.python",
127
- "match": "\\b(return|pass|break|continue|yield)\\b"
114
+ "name": "invalid.deprecated.operator.python.renpy",
115
+ "match": "\u003c\u003e"
128
116
  },
129
117
  {
130
- "name": "support.type.objects.renpy",
131
- "match": "\\b(renpy|store|persistent|config|build)\\b"
118
+ "name": "keyword.operator.comparison.python.renpy",
119
+ "match": "\u003c\\=|\u003e\\=|\\=\\=|\u003c|\u003e|\\!\\="
132
120
  },
133
121
  {
134
- "name": "support.type.python.renpy",
135
- "match": "\\b(python)\\b"
122
+ "name": "keyword.operator.assignment.augmented.python.renpy",
123
+ "match": "\\+\\=|-\\=|\\*\\=|/\\=|//\\=|%\\=|\u0026\\=|\\|\\=|\\^\\=|\u003e\u003e\\=|\u003c\u003c\\=|\\*\\*\\="
136
124
  },
137
125
  {
138
- "name": "keyword.control.statement.init.renpy",
139
- "match": "\\b(init)\\b"
126
+ "name": "keyword.operator.arithmetic.python.renpy",
127
+ "match": "\\+|\\-|\\*|\\*\\*|/|//|%|\u003c\u003c|\u003e\u003e|\u0026|\\||\\^|~"
140
128
  },
141
129
  {
142
- "name": "support.type.transition.renpy",
143
- "match": "\\b(Solid|AlphaDissolve|ComposeTransition|CropMove|Dissolve|Fade|ImageDissolve|MoveTransition|MultipleTransition|Pause|Pixellate|move_transitions)\\b"
130
+ "name": "keyword.operator.assignment.python.renpy",
131
+ "match": "\\="
144
132
  },
145
133
  {
146
- "match": "\\s+(with)\\s+\\b(fade|dissolve|pixellate|move|moveinright|moveinleft|moveintop|moveinbottom|moveoutright|moveoutleft|moveouttop|moveoutbottom|ease|easeinright|easeinleft|easeintop|easeinbottom|easeoutright|easeoutleft|easeouttop|easeoutbottom|zoomin|zoomout|zoominout|vpunch|hpunch|blinds|squares|wipeleft|wiperight|wipeup|wipedown|slideleft|slideright|slideup|slidedown|slideawayleft|slideawayright|slideawayup|slideawaydown|irisin|irisout)\\b",
134
+ "match": "^\\s*(label)\\s*([a-zA-Z_][a-zA-Z_0-9]*)",
147
135
  "captures": {
148
136
  "1": {
149
- "name": "keyword.control.statement.with.renpy"
137
+ "name": "keyword.python.renpy"
150
138
  },
151
139
  "2": {
152
- "name": "support.type.transition.renpy"
140
+ "name": "entity.name.section.python.renpy.label.renpy"
153
141
  }
154
142
  }
155
143
  },
156
144
  {
157
- "name": "support.type.transform.renpy",
158
- "match": "\\b(linear|top_margin|ymargin|xsize|ysize|yminimum|xminimum|ymaximum|xmaximum|transpose|insensitive|selected_idle|selected_hover|ground|idle|hover|focus_mask|hover_sound|activate_sound|style|spacing|text_align|size_group|layout|style_group|background|ypadding|xpadding|idle_color|hover_color|selected_idle_color|selected_hover_color|insensitive_color|xfill|xmargin|pos|xpos|ypos|anchor|xanchor|yanchor|align|xalign|yalign|xoffset|yoffset|xcenter|ycenter|rotate|rotate_pad|transform_anchor|zoom|xzoom|yzoom|nearest|alpha|additive|around|alignaround|angle|radius|crop|crop_relative|corner1|corner2|size|subpixel|delay|events)\\b"
159
- },
160
- {
161
- "name": "support.type.movie.renpy",
162
- "match": "\\b(Movie|movie_cutscene)\\b"
163
- },
164
- {
165
- "name": "keyword.control.statement.python",
166
- "match": "\\b(play|queue|stop)\\b"
167
- },
168
- {
169
- "match": "(\\s*\\.\\s*)(music|sound)\\s*\\.\\s*(play|seen_audio|get_duration|get_pause|get_playing|get_pos|is_playing|queue|register_channel|set_pan|set_pause|set_queue_empty_callback|set_volume|stop|loop|noloop)\\b",
145
+ "match": "^\\s*(menu)\\s*([a-zA-Z_][a-zA-Z_0-9]*)",
170
146
  "captures": {
171
- "2": {
172
- "name": "support.type.music.renpy"
147
+ "1": {
148
+ "name": "keyword.python.renpy"
173
149
  },
174
- "3": {
175
- "name": "entity.name.function.images.renpy"
150
+ "2": {
151
+ "name": "entity.name.section.python.renpy.menu.renpy"
176
152
  }
177
153
  }
178
154
  },
179
155
  {
180
- "match": "(\\s*\\.\\s*)(play|seen_audio)\\b",
156
+ "match": "^\\s*(screen)\\s*([a-zA-Z_][a-zA-Z_0-9]*)",
181
157
  "captures": {
158
+ "1": {
159
+ "name": "keyword.python.renpy"
160
+ },
182
161
  "2": {
183
- "name": "entity.name.function.images.renpy"
162
+ "name": "entity.name.class.python.renpy.screen.renpy"
184
163
  }
185
164
  }
186
165
  },
187
166
  {
188
- "name": "support.type.show.renpy",
189
- "match": "\\b(as|at|behind|onlayer|zorder|expression)\\b"
190
- },
191
- {
192
- "match": "(\\s*\\.\\s*)(can_show|copy_images|get_available_image_attributes|get_available_image_tags|get_image_bounds|get_placement|get_showing_tags|has_image|image_exists|seen_image|showing|start_predict|stop_predict)\\b",
167
+ "match": "^\\s*(image)\\s+([a-zA-Z_0-9 ]*)",
193
168
  "captures": {
169
+ "1": {
170
+ "name": "keyword.python.renpy"
171
+ },
194
172
  "2": {
195
- "name": "entity.name.function.images.renpy"
173
+ "name": "entity.name.class.image.python.renpy"
196
174
  }
197
175
  }
198
176
  },
199
177
  {
200
- "name": "support.type.action.renpy",
201
- "match": "\\b(Hide|Jump|NullAction|Return|Show|ShowTransient)\\b"
202
- },
203
- {
204
- "name": "support.type.action.renpy",
205
- "match": "\\b(SetDict|SetField|SetScreenVariable|SetVariable|ToggleDict|ToggleField|ToggleScreenVariable|ToggleVariable)\\b"
206
- },
207
- {
208
- "name": "support.type.action.renpy",
209
- "match": "\\b(MainMenu|Quit|ShowMenu|Start)\\b"
210
- },
211
- {
212
- "name": "support.type.action.renpy",
213
- "match": "\\b(FileAction|FileDelete|FileLoad|FilePage|FilePageNext|FilePagePrevious|FileSave|FileTakeScreenShot|QuickLoad|QuickSave)\\b"
214
- },
215
- {
216
- "name": "support.type.action.renpy",
217
- "match": "\\b(Play|Queue|SetMixer|Stop)\\b"
218
- },
219
- {
220
- "name": "support.type.other.renpy",
221
- "match": "\\b(Preference|Function|Help|HideInterface|If|InvertSelected|MouseMove|Notify|OpenURL|RollForward|Rollback|ScreenShot|SelectedIf|Skip|With)\\b"
222
- },
223
- {
224
- "name": "entity.name.function.translation.renpy",
225
- "match": "(?:\\s+)\\b(new)\\b"
226
- },
227
- {
228
- "name": "keyword.operator.logical.translation.renpy",
229
- "match": "(?:\\s+)\\b(old)\\b"
230
- },
231
- {
232
- "match": "^\\b(translate)\\b\\s\\b([a-zA-z0-9_]+)\\b\\s\\b(strings)\\b",
178
+ "match": "^\\s*(transform)\\s+([a-zA-Z_][a-zA-Z_0-9]*)",
233
179
  "captures": {
234
180
  "1": {
235
- "name": "keyword.operator.logical.translation.renpy"
181
+ "name": "keyword.python.renpy"
236
182
  },
237
183
  "2": {
238
- "name": "entity.name.function.translation.renpy"
239
- },
240
- "3": {
241
- "name": "support.type.translation.renpy"
184
+ "name": "entity.name.section.python.renpy.transform.renpy"
242
185
  }
243
186
  }
244
187
  },
245
188
  {
246
- "name": "keyword.operator.logical.python",
247
- "match": "\\b(and|in|is|not|or)\\b"
248
- },
249
- {
250
- "match": "\\b(assert|del|exec|print)\\b",
189
+ "match": "^\\s*(style)\\s+([a-zA-Z_][a-zA-Z_0-9]*)",
251
190
  "captures": {
252
191
  "1": {
253
- "name": "keyword.other.python"
192
+ "name": "keyword.python.renpy"
193
+ },
194
+ "2": {
195
+ "name": "entity.name.tag.python.renpy.style.renpy"
254
196
  }
255
197
  }
256
198
  },
257
199
  {
258
- "name": "invalid.deprecated.operator.python",
259
- "match": "\u003c\u003e"
260
- },
261
- {
262
- "name": "keyword.operator.comparison.python",
263
- "match": "\u003c\\=|\u003e\\=|\\=\\=|\u003c|\u003e|\\!\\="
264
- },
265
- {
266
- "name": "keyword.operator.assignment.augmented.python",
267
- "match": "\\+\\=|-\\=|\\*\\=|/\\=|//\\=|%\\=|\u0026\\=|\\|\\=|\\^\\=|\u003e\u003e\\=|\u003c\u003c\\=|\\*\\*\\="
268
- },
269
- {
270
- "name": "keyword.operator.arithmetic.python",
271
- "match": "\\+|\\-|\\*|\\*\\*|/|//|%|\u003c\u003c|\u003e\u003e|\u0026|\\||\\^|~"
272
- },
273
- {
274
- "name": "keyword.operator.assignment.python",
275
- "match": "\\="
200
+ "match": "^\\s*(define|default)\\s+([a-zA-Z_0-9\\.]*)",
201
+ "captures": {
202
+ "1": {
203
+ "name": "keyword.python.renpy"
204
+ },
205
+ "2": {
206
+ "name": "meta.definition.variable.python.renpy.renpy"
207
+ }
208
+ }
276
209
  },
277
210
  {
278
- "name": "meta.class.old-style.python",
279
- "contentName": "entity.name.type.class.python",
211
+ "name": "meta.class.old-style.python.renpy",
212
+ "contentName": "entity.name.type.class.python.renpy",
280
213
  "begin": "^\\s*(class)\\s+(?=[a-zA-Z_][a-zA-Z_0-9]*\\s*\\:)",
281
214
  "end": "\\s*(:)",
282
215
  "patterns": [
@@ -286,82 +219,22 @@
286
219
  ],
287
220
  "beginCaptures": {
288
221
  "1": {
289
- "name": "storage.type.class.python"
222
+ "name": "storage.type.class.python.renpy"
290
223
  }
291
224
  },
292
225
  "endCaptures": {
293
226
  "1": {
294
- "name": "punctuation.section.class.begin.python"
227
+ "name": "punctuation.section.class.begin.python.renpy"
295
228
  }
296
229
  }
297
230
  },
298
231
  {
299
- "name": "meta.class.python",
232
+ "name": "meta.class.python.renpy",
300
233
  "begin": "^\\s*(class)\\s+(?=[a-zA-Z_][a-zA-Z_0-9]*\\s*\\()",
301
234
  "end": "(\\))\\s*(?:(\\:)|(.*$\\n?))",
302
235
  "patterns": [
303
236
  {
304
- "contentName": "entity.name.type.class.python",
305
- "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
306
- "end": "(?![A-Za-z0-9_])",
307
- "patterns": [
308
- {
309
- "include": "#entity_name_class"
310
- }
311
- ]
312
- },
313
- {
314
- "contentName": "meta.class.inheritance.python",
315
- "begin": "(\\()",
316
- "end": "(?=\\)|:)",
317
- "patterns": [
318
- {
319
- "contentName": "entity.other.inherited-class.python",
320
- "begin": "(?\u003c=\\(|,)\\s*",
321
- "end": "\\s*(?:(,)|(?=\\)))",
322
- "patterns": [
323
- {
324
- "include": "$self"
325
- }
326
- ],
327
- "endCaptures": {
328
- "1": {
329
- "name": "punctuation.separator.inheritance.python"
330
- }
331
- }
332
- }
333
- ],
334
- "beginCaptures": {
335
- "1": {
336
- "name": "punctuation.definition.inheritance.begin.python"
337
- }
338
- }
339
- }
340
- ],
341
- "beginCaptures": {
342
- "1": {
343
- "name": "storage.type.class.python"
344
- }
345
- },
346
- "endCaptures": {
347
- "1": {
348
- "name": "punctuation.definition.inheritance.end.python"
349
- },
350
- "2": {
351
- "name": "punctuation.section.class.begin.python"
352
- },
353
- "3": {
354
- "name": "invalid.illegal.missing-section-begin.python"
355
- }
356
- }
357
- },
358
- {
359
- "name": "meta.class.python",
360
- "begin": "^\\s*((jump)|(call)|(screen)|(label)|(menu)|(transform))\\s+(?=[a-zA-Z_][a-zA-Z_0-9]*\\s*)",
361
- "end": "(\\n|\\()|\\:",
362
- "patterns": [
363
- {
364
- "contentName": "entity.name.type.class.python",
237
+ "contentName": "entity.name.type.class.python.renpy",
365
238
  "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
366
239
  "end": "(?![A-Za-z0-9_])",
367
240
  "patterns": [
@@ -371,72 +244,12 @@
371
244
  ]
372
245
  },
373
246
  {
374
- "contentName": "meta.class.inheritance.python",
247
+ "contentName": "meta.class.inheritance.python.renpy",
375
248
  "begin": "(\\()",
376
249
  "end": "(?=\\)|:)",
377
250
  "patterns": [
378
251
  {
379
- "contentName": "entity.other.inherited-class.python",
380
- "begin": "(?\u003c=\\(|,)\\s*",
381
- "end": "\\s*(?:(,)|(?=\\)))",
382
- "patterns": [
383
- {
384
- "include": "$self"
385
- }
386
- ],
387
- "endCaptures": {
388
- "1": {
389
- "name": "punctuation.separator.inheritance.python"
390
- }
391
- }
392
- }
393
- ],
394
- "beginCaptures": {
395
- "1": {
396
- "name": "punctuation.definition.inheritance.begin.python"
397
- }
398
- }
399
- }
400
- ],
401
- "beginCaptures": {
402
- "1": {
403
- "name": "keyword.control.statement.renpy"
404
- }
405
- },
406
- "endCaptures": {
407
- "1": {
408
- "name": "punctuation.definition.inheritance.end.python"
409
- },
410
- "2": {
411
- "name": "punctuation.section.class.begin.python"
412
- },
413
- "3": {
414
- "name": "invalid.illegal.missing-section-begin.python"
415
- }
416
- }
417
- },
418
- {
419
- "name": "meta.class.python",
420
- "begin": "((default)|(define)|(image)|(scene)|(show)|(hide))\\s+((\\s)|(?=[a-zA-Z_][a-zA-Z_0-9]*\\s*))",
421
- "end": "(\\=)|(\\s)|(\\s*$\\n?|#.*$\\n?)",
422
- "patterns": [
423
- {
424
- "contentName": "entity.name.type.class.python",
425
- "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
426
- "end": "(?![A-Za-z0-9_])",
427
- "patterns": [
428
- {
429
- "include": "#entity_name_class"
430
- }
431
- ]
432
- },
433
- {
434
- "contentName": "meta.class.inheritance.python",
435
- "begin": "(\\()",
436
- "end": "(?=\\)|:|)",
437
- "patterns": [
438
- {
439
- "contentName": "entity.other.inherited-class.python",
252
+ "contentName": "entity.other.inherited-class.python.renpy",
440
253
  "begin": "(?\u003c=\\(|,)\\s*",
441
254
  "end": "\\s*(?:(,)|(?=\\)))",
442
255
  "patterns": [
@@ -446,42 +259,42 @@
446
259
  ],
447
260
  "endCaptures": {
448
261
  "1": {
449
- "name": "punctuation.separator.inheritance.python"
262
+ "name": "punctuation.separator.inheritance.python.renpy"
450
263
  }
451
264
  }
452
265
  }
453
266
  ],
454
267
  "beginCaptures": {
455
268
  "1": {
456
- "name": "punctuation.definition.inheritance.begin.python"
269
+ "name": "punctuation.definition.inheritance.begin.python.renpy"
457
270
  }
458
271
  }
459
272
  }
460
273
  ],
461
274
  "beginCaptures": {
462
275
  "1": {
463
- "name": "keyword.control.statement.renpy"
276
+ "name": "storage.type.class.python.renpy"
464
277
  }
465
278
  },
466
279
  "endCaptures": {
467
280
  "1": {
468
- "name": "punctuation.definition.inheritance.end.python"
281
+ "name": "punctuation.definition.inheritance.end.python.renpy"
469
282
  },
470
283
  "2": {
471
- "name": "punctuation.section.class.begin.python"
284
+ "name": "punctuation.section.class.begin.python.renpy"
472
285
  },
473
286
  "3": {
474
- "name": "invalid.illegal.missing-section-begin.python"
287
+ "name": "invalid.illegal.missing-section-begin.python.renpy"
475
288
  }
476
289
  }
477
290
  },
478
291
  {
479
- "name": "meta.class.python",
292
+ "name": "meta.class.python.renpy",
480
293
  "begin": "^\\s*(class)\\s+(?=[a-zA-Z_][a-zA-Z_0-9])",
481
294
  "end": "(\\()|(\\s*$\\n?|#.*$\\n?)",
482
295
  "patterns": [
483
296
  {
484
- "contentName": "entity.name.type.class.python",
297
+ "contentName": "entity.name.type.class.python.renpy",
485
298
  "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
486
299
  "end": "(?![A-Za-z0-9_])",
487
300
  "patterns": [
@@ -493,25 +306,25 @@
493
306
  ],
494
307
  "beginCaptures": {
495
308
  "1": {
496
- "name": "storage.type.class.python"
309
+ "name": "storage.type.class.python.renpy"
497
310
  }
498
311
  },
499
312
  "endCaptures": {
500
313
  "1": {
501
- "name": "punctuation.definition.inheritance.begin.python"
314
+ "name": "punctuation.definition.inheritance.begin.python.renpy"
502
315
  },
503
316
  "2": {
504
- "name": "invalid.illegal.missing-inheritance.python"
317
+ "name": "invalid.illegal.missing-inheritance.python.renpy"
505
318
  }
506
319
  }
507
320
  },
508
321
  {
509
- "name": "meta.function.python",
322
+ "name": "meta.function.python.renpy",
510
323
  "begin": "^\\s*(def)\\s+(?=[A-Za-z_][A-Za-z0-9_]*\\s*\\()",
511
324
  "end": "(\\))\\s*(?:(\\:)|(.*$\\n?))",
512
325
  "patterns": [
513
326
  {
514
- "contentName": "entity.name.function.python",
327
+ "contentName": "entity.name.function.python.renpy",
515
328
  "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
516
329
  "end": "(?![A-Za-z0-9_])",
517
330
  "patterns": [
@@ -521,7 +334,7 @@
521
334
  ]
522
335
  },
523
336
  {
524
- "contentName": "meta.function.parameters.python",
337
+ "contentName": "meta.function.parameters.python.renpy",
525
338
  "begin": "(\\()",
526
339
  "end": "(?=\\)\\s*\\:)",
527
340
  "patterns": [
@@ -532,45 +345,45 @@
532
345
  "match": "\\b([a-zA-Z_][a-zA-Z_0-9]*)\\s*(?:(,)|(?=[\\n\\)]))",
533
346
  "captures": {
534
347
  "1": {
535
- "name": "variable.parameter.function.python"
348
+ "name": "variable.parameter.function.python.renpy"
536
349
  },
537
350
  "2": {
538
- "name": "punctuation.separator.parameters.python"
351
+ "name": "punctuation.separator.parameters.python.renpy"
539
352
  }
540
353
  }
541
354
  }
542
355
  ],
543
356
  "beginCaptures": {
544
357
  "1": {
545
- "name": "punctuation.definition.parameters.begin.python"
358
+ "name": "punctuation.definition.parameters.begin.python.renpy"
546
359
  }
547
360
  }
548
361
  }
549
362
  ],
550
363
  "beginCaptures": {
551
364
  "1": {
552
- "name": "storage.type.function.python"
365
+ "name": "storage.type.function.python.renpy"
553
366
  }
554
367
  },
555
368
  "endCaptures": {
556
369
  "1": {
557
- "name": "punctuation.definition.parameters.end.python"
370
+ "name": "punctuation.definition.parameters.end.python.renpy"
558
371
  },
559
372
  "2": {
560
- "name": "punctuation.section.function.begin.python"
373
+ "name": "punctuation.section.function.begin.python.renpy"
561
374
  },
562
375
  "3": {
563
- "name": "invalid.illegal.missing-section-begin.python"
376
+ "name": "invalid.illegal.missing-section-begin.python.renpy"
564
377
  }
565
378
  }
566
379
  },
567
380
  {
568
- "name": "meta.function.python",
381
+ "name": "meta.function.python.renpy",
569
382
  "begin": "^\\s*(def)\\s+(?=[A-Za-z_][A-Za-z0-9_]*)",
570
383
  "end": "(\\()|\\s*($\\n?|#.*$\\n?)",
571
384
  "patterns": [
572
385
  {
573
- "contentName": "entity.name.function.python",
386
+ "contentName": "entity.name.function.python.renpy",
574
387
  "begin": "(?=[A-Za-z_][A-Za-z0-9_]*)",
575
388
  "end": "(?![A-Za-z0-9_])",
576
389
  "patterns": [
@@ -582,25 +395,25 @@
582
395
  ],
583
396
  "beginCaptures": {
584
397
  "1": {
585
- "name": "storage.type.function.python"
398
+ "name": "storage.type.function.python.renpy"
586
399
  }
587
400
  },
588
401
  "endCaptures": {
589
402
  "1": {
590
- "name": "punctuation.definition.parameters.begin.python"
403
+ "name": "punctuation.definition.parameters.begin.python.renpy"
591
404
  },
592
405
  "2": {
593
- "name": "invalid.illegal.missing-parameters.python"
406
+ "name": "invalid.illegal.missing-parameters.python.renpy"
594
407
  }
595
408
  }
596
409
  },
597
410
  {
598
- "name": "meta.function.inline.python",
411
+ "name": "meta.function.inline.python.renpy",
599
412
  "begin": "(lambda)(?=\\s+)",
600
413
  "end": "(\\:)",
601
414
  "patterns": [
602
415
  {
603
- "contentName": "meta.function.inline.parameters.python",
416
+ "contentName": "meta.function.inline.parameters.python.renpy",
604
417
  "begin": "\\s+",
605
418
  "end": "(?=\\:)",
606
419
  "patterns": [
@@ -611,10 +424,10 @@
611
424
  "match": "\\b([a-zA-Z_][a-zA-Z_0-9]*)\\s*(?:(,)|(?=[\\n\\)\\:]))",
612
425
  "captures": {
613
426
  "1": {
614
- "name": "variable.parameter.function.python"
427
+ "name": "variable.parameter.function.python.renpy"
615
428
  },
616
429
  "2": {
617
- "name": "punctuation.separator.parameters.python"
430
+ "name": "punctuation.separator.parameters.python.renpy"
618
431
  }
619
432
  }
620
433
  }
@@ -623,28 +436,76 @@
623
436
  ],
624
437
  "beginCaptures": {
625
438
  "1": {
626
- "name": "storage.type.function.inline.python"
439
+ "name": "storage.type.function.inline.python.renpy"
627
440
  }
628
441
  },
629
442
  "endCaptures": {
630
443
  "1": {
631
- "name": "punctuation.definition.parameters.end.python"
444
+ "name": "punctuation.definition.parameters.end.python.renpy"
632
445
  },
633
446
  "2": {
634
- "name": "punctuation.section.function.begin.python"
447
+ "name": "punctuation.section.function.begin.python.renpy"
635
448
  },
636
449
  "3": {
637
- "name": "invalid.illegal.missing-section-begin.python"
450
+ "name": "invalid.illegal.missing-section-begin.python.renpy"
451
+ }
452
+ }
453
+ },
454
+ {
455
+ "match": "\\b(def|lambda)\\b",
456
+ "captures": {
457
+ "1": {
458
+ "name": "storage.type.function.python.renpy"
459
+ }
460
+ }
461
+ },
462
+ {
463
+ "match": "\\b(class)\\b",
464
+ "captures": {
465
+ "1": {
466
+ "name": "storage.type.class.python.renpy"
638
467
  }
639
468
  }
640
469
  },
641
470
  {
642
- "name": "meta.function.decorator.python",
471
+ "name": "keyword.python.renpy",
472
+ "match": "\\$"
473
+ },
474
+ {
475
+ "name": "keyword.python.renpy",
476
+ "match": "\\b(\\$|add|and|animation|as|assert|at|attribute|attributeimage|auto|bar|behind|block|break|button|call|choice|circles|class|clear|clockwise|contains|continue|counterclockwise|def|default|define|del|drag|draggroup|elif|else|event|except|exec|expression|finally|fixed|for|frame|from|function|global|grid|group|has|hbox|hide|hotbar|hotspot|if|image|imagebutton|imagemap|import|in|init|input|is|jump|key|knot|label|lambda|menu|mousearea|music|new|nointeract|not|null|nvl|offset|old|on|onlayer|or|parallel|pass|pause|play|print|python|queue|raise|repeat|return|scene|screen|show|showif|side|sound|stop|strings|style|sustain|tag|take|testcase|text|textbutton|time|timer|transclude|transform|translate|try|use|vbar|vbox|viewport|voice|vpgrid|while|window|with|yield|zorder)\\b"
477
+ },
478
+ {
479
+ "name": "entity.other.attribute-name.python.renpy",
480
+ "match": "\\b((?:action|activate_sound|adjustment|allow|alpha|alternate|alternate_keysym|arguments|arrowkeys|at|auto|cache|caption|changed|child_size|clicked|cols|default|drag_handle|drag_joined|drag_name|drag_offscreen|drag_raise|draggable|dragged|droppable|dropped|edgescroll|exclude|focus|focus_mask|ground|height|hover|hovered|id|idle|image_style|insensitive|keysym|layer|length|modal|mouse_drop|mousewheel|pagekeys|pixel_width|predict|prefix|properties|range|repeat|rows|scope|scrollbars|selected|selected_hover|selected_idle|selected_insensitive|sensitive|slow|slow_done|spacing|style|style_group|style_prefix|style_suffix|substitute|suffix|text_style|transpose|unhovered|value|variant|width|xadjustment|xinitial|yadjustment|yinitial|zorder))\\b"
481
+ },
482
+ {
483
+ "name": "entity.other.attribute-name.python.renpy",
484
+ "match": "\\b((?:|activate_|hover_|idle_|insensitive_|selected_|selected_activate_|selected_hover_|selected_idle_|selected_insensitive_)(?:additive|adjust_spacing|align|alignaround|alpha|alt|anchor|angle|antialias|area|around|background|bar_invert|bar_resizing|bar_vertical|base_bar|black_color|bold|bottom_bar|bottom_gutter|bottom_margin|bottom_padding|box_layout|box_reverse|box_wrap|child|clipping|color|corner1|corner2|crop|crop_relative|debug|delay|drop_shadow|drop_shadow_color|events|first_indent|first_spacing|fit_first|focus_mask|font|foreground|hinting|hyperlink_functions|italic|justify|kerning|key_events|keyboard_focus|language|layout|left_bar|left_gutter|left_margin|left_padding|line_leading|line_spacing|margin|maximum|maxsize|min_width|minimum|minwidth|mouse|nearest|newline_indent|offset|order_reverse|outlines|padding|pos|radius|rest_indent|right_bar|right_gutter|right_margin|right_padding|rotate|rotate_pad|ruby_style|size|size_group|slow_abortable|slow_cps|slow_cps_multiplier|sound|spacing|strikethrough|subpixel|text_align|text_y_fudge|thumb|thumb_offset|thumb_shadow|tooltip|top_bar|top_gutter|top_margin|top_padding|transform_anchor|underline|unscrollable|vertical|xalign|xanchor|xanchoraround|xaround|xcenter|xfill|xfit|xmargin|xmaximum|xminimum|xoffset|xpadding|xpan|xpos|xsize|xspacing|xtile|xysize|xzoom|yalign|yanchor|yanchoraround|yaround|ycenter|yfill|yfit|ymargin|ymaximum|yminimum|yoffset|ypadding|ypan|ypos|ysize|yspacing|ytile|yzoom|zoom))\\b"
485
+ },
486
+ {
487
+ "name": "entity.other.attribute-name.python.renpy",
488
+ "match": "\\b((?:vscrollbar_|scrollbar_)(?:|activate_|hover_|idle_|insensitive_|selected_|selected_activate_|selected_hover_|selected_idle_|selected_insensitive_)(?:align|alt|anchor|area|bar_invert|bar_resizing|bar_vertical|base_bar|bottom_bar|bottom_gutter|clipping|debug|keyboard_focus|left_bar|left_gutter|maximum|mouse|offset|pos|right_bar|right_gutter|thumb|thumb_offset|thumb_shadow|tooltip|top_bar|top_gutter|unscrollable|xalign|xanchor|xcenter|xfill|xmaximum|xoffset|xpos|xsize|xysize|yalign|yanchor|ycenter|yfill|ymaximum|yoffset|ypos|ysize))\\b"
489
+ },
490
+ {
491
+ "name": "entity.other.attribute-name.python.renpy",
492
+ "match": "\\b(side_(?:|activate_|hover_|idle_|insensitive_|selected_|selected_activate_|selected_hover_|selected_idle_|selected_insensitive_)(?:align|alt|anchor|area|clipping|debug|maximum|offset|pos|spacing|tooltip|xalign|xanchor|xcenter|xfill|xmaximum|xoffset|xpos|xsize|xysize|yalign|yanchor|ycenter|yfill|ymaximum|yoffset|ypos|ysize))\\b"
493
+ },
494
+ {
495
+ "name": "entity.other.attribute-name.python.renpy",
496
+ "match": "\\b(text_(?:|activate_|hover_|idle_|insensitive_|selected_|selected_activate_|selected_hover_|selected_idle_|selected_insensitive_)(?:adjust_spacing|align|alt|anchor|antialias|area|black_color|bold|clipping|color|debug|drop_shadow|drop_shadow_color|first_indent|font|hinting|hyperlink_functions|italic|justify|kerning|language|layout|line_leading|line_spacing|maximum|min_width|minimum|minwidth|newline_indent|offset|outlines|pos|rest_indent|ruby_style|size|slow_abortable|slow_cps|slow_cps_multiplier|strikethrough|text_align|text_y_fudge|tooltip|underline|vertical|xalign|xanchor|xcenter|xfill|xmaximum|xminimum|xoffset|xpos|xsize|xysize|yalign|yanchor|ycenter|yfill|ymaximum|yminimum|yoffset|ypos|ysize))\\b"
497
+ },
498
+ {
499
+ "name": "entity.other.attribute-name.python.renpy",
500
+ "match": "\\b(viewport_(?:|activate_|hover_|idle_|insensitive_|selected_|selected_activate_|selected_hover_|selected_idle_|selected_insensitive_)(?:align|alt|anchor|area|clipping|debug|maximum|offset|pos|tooltip|xalign|xanchor|xcenter|xfill|xmaximum|xoffset|xpos|xsize|xysize|yalign|yanchor|ycenter|yfill|ymaximum|yoffset|ypos|ysize))\\b"
501
+ },
502
+ {
503
+ "name": "meta.function.decorator.python.renpy",
643
504
  "begin": "^\\s*(?=@\\s*[A-Za-z_][A-Za-z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z_0-9]*)*\\s*\\()",
644
505
  "end": "(\\))",
645
506
  "patterns": [
646
507
  {
647
- "contentName": "entity.name.function.decorator.python",
508
+ "contentName": "entity.name.function.decorator.python.renpy",
648
509
  "begin": "(?=(@)\\s*[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*\\s*\\()",
649
510
  "end": "(?=\\s*\\()",
650
511
  "patterns": [
@@ -654,12 +515,12 @@
654
515
  ],
655
516
  "beginCaptures": {
656
517
  "1": {
657
- "name": "punctuation.definition.decorator.python"
518
+ "name": "punctuation.definition.decorator.python.renpy"
658
519
  }
659
520
  }
660
521
  },
661
522
  {
662
- "contentName": "meta.function.decorator.arguments.python",
523
+ "contentName": "meta.function.decorator.arguments.python.renpy",
663
524
  "begin": "(\\()",
664
525
  "end": "(?=\\))",
665
526
  "patterns": [
@@ -672,20 +533,20 @@
672
533
  ],
673
534
  "beginCaptures": {
674
535
  "1": {
675
- "name": "punctuation.definition.arguments.begin.python"
536
+ "name": "punctuation.definition.arguments.begin.python.renpy"
676
537
  }
677
538
  }
678
539
  }
679
540
  ],
680
541
  "endCaptures": {
681
542
  "1": {
682
- "name": "punctuation.definition.arguments.end.python"
543
+ "name": "punctuation.definition.arguments.end.python.renpy"
683
544
  }
684
545
  }
685
546
  },
686
547
  {
687
- "name": "meta.function.decorator.python",
688
- "contentName": "entity.name.function.decorator.python",
548
+ "name": "meta.function.decorator.python.renpy",
549
+ "contentName": "entity.name.function.decorator.python.renpy",
689
550
  "begin": "^\\s*(?=@\\s*[A-Za-z_][A-Za-z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z_0-9]*)*)",
690
551
  "end": "(?=\\s|$\\n?|#)",
691
552
  "patterns": [
@@ -699,15 +560,15 @@
699
560
  ],
700
561
  "beginCaptures": {
701
562
  "1": {
702
- "name": "punctuation.definition.decorator.python"
563
+ "name": "punctuation.definition.decorator.python.renpy"
703
564
  }
704
565
  }
705
566
  }
706
567
  ]
707
568
  },
708
569
  {
709
- "name": "meta.function-call.python",
710
- "contentName": "meta.function-call.arguments.python",
570
+ "name": "meta.function-call.python.renpy",
571
+ "contentName": "meta.function-call.arguments.python.renpy",
711
572
  "begin": "(?\u003c=\\)|\\])\\s*(\\()",
712
573
  "end": "(\\))",
713
574
  "patterns": [
@@ -720,17 +581,17 @@
720
581
  ],
721
582
  "beginCaptures": {
722
583
  "1": {
723
- "name": "punctuation.definition.arguments.begin.python"
584
+ "name": "punctuation.definition.arguments.begin.python.renpy"
724
585
  }
725
586
  },
726
587
  "endCaptures": {
727
588
  "1": {
728
- "name": "punctuation.definition.arguments.end.python"
589
+ "name": "punctuation.definition.arguments.end.python.renpy"
729
590
  }
730
591
  }
731
592
  },
732
593
  {
733
- "name": "meta.function-call.python",
594
+ "name": "meta.function-call.python.renpy",
734
595
  "begin": "(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z_0-9]*)*\\s*\\()",
735
596
  "end": "(\\))",
736
597
  "patterns": [
@@ -744,7 +605,7 @@
744
605
  ]
745
606
  },
746
607
  {
747
- "contentName": "meta.function-call.arguments.python",
608
+ "contentName": "meta.function-call.arguments.python.renpy",
748
609
  "begin": "(\\()",
749
610
  "end": "(?=\\))",
750
611
  "patterns": [
@@ -757,19 +618,19 @@
757
618
  ],
758
619
  "beginCaptures": {
759
620
  "1": {
760
- "name": "punctuation.definition.arguments.begin.python"
621
+ "name": "punctuation.definition.arguments.begin.python.renpy"
761
622
  }
762
623
  }
763
624
  }
764
625
  ],
765
626
  "endCaptures": {
766
627
  "1": {
767
- "name": "punctuation.definition.arguments.end.python"
628
+ "name": "punctuation.definition.arguments.end.python.renpy"
768
629
  }
769
630
  }
770
631
  },
771
632
  {
772
- "name": "meta.item-access.python",
633
+ "name": "meta.item-access.python.renpy",
773
634
  "begin": "(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z_0-9]*)*\\s*\\[)",
774
635
  "end": "(\\])",
775
636
  "patterns": [
@@ -783,7 +644,7 @@
783
644
  ]
784
645
  },
785
646
  {
786
- "contentName": "meta.item-access.arguments.python",
647
+ "contentName": "meta.item-access.arguments.python.renpy",
787
648
  "begin": "(\\[)",
788
649
  "end": "(?=\\])",
789
650
  "patterns": [
@@ -793,20 +654,20 @@
793
654
  ],
794
655
  "beginCaptures": {
795
656
  "1": {
796
- "name": "punctuation.definition.arguments.begin.python"
657
+ "name": "punctuation.definition.arguments.begin.python.renpy"
797
658
  }
798
659
  }
799
660
  }
800
661
  ],
801
662
  "endCaptures": {
802
663
  "1": {
803
- "name": "punctuation.definition.arguments.end.python"
664
+ "name": "punctuation.definition.arguments.end.python.renpy"
804
665
  }
805
666
  }
806
667
  },
807
668
  {
808
- "name": "meta.item-access.python",
809
- "contentName": "meta.item-access.arguments.python",
669
+ "name": "meta.item-access.python.renpy",
670
+ "contentName": "meta.item-access.arguments.python.renpy",
810
671
  "begin": "(?\u003c=\\)|\\])\\s*(\\[)",
811
672
  "end": "(\\])",
812
673
  "patterns": [
@@ -816,36 +677,12 @@
816
677
  ],
817
678
  "beginCaptures": {
818
679
  "1": {
819
- "name": "punctuation.definition.arguments.begin.python"
680
+ "name": "punctuation.definition.arguments.begin.python.renpy"
820
681
  }
821
682
  },
822
683
  "endCaptures": {
823
684
  "1": {
824
- "name": "punctuation.definition.arguments.end.python"
825
- }
826
- }
827
- },
828
- {
829
- "match": "\\b(menu)\\b",
830
- "captures": {
831
- "1": {
832
- "name": "keyword.control.statement.renpy"
833
- }
834
- }
835
- },
836
- {
837
- "match": "\\b(def|lambda)\\b",
838
- "captures": {
839
- "1": {
840
- "name": "storage.type.function.python"
841
- }
842
- }
843
- },
844
- {
845
- "match": "\\b(class)\\b",
846
- "captures": {
847
- "1": {
848
- "name": "storage.type.class.python"
685
+ "name": "punctuation.definition.arguments.end.python.renpy"
849
686
  }
850
687
  }
851
688
  },
@@ -856,13 +693,9 @@
856
693
  "include": "#language_variables"
857
694
  },
858
695
  {
859
- "name": "constant.language.python",
696
+ "name": "constant.language.python.renpy",
860
697
  "match": "\\b(None|True|False|Ellipsis|NotImplemented)\\b"
861
698
  },
862
- {
863
- "name": "constant.language.python",
864
- "match": "\\b(no_action|yes_action|no_action)\\b"
865
- },
866
699
  {
867
700
  "include": "#string_quoted_single"
868
701
  },
@@ -885,23 +718,23 @@
885
718
  "match": "(\\[)(\\s*(\\]))\\b",
886
719
  "captures": {
887
720
  "1": {
888
- "name": "punctuation.definition.list.begin.python"
721
+ "name": "punctuation.definition.list.begin.python.renpy"
889
722
  },
890
723
  "2": {
891
- "name": "meta.empty-list.python"
724
+ "name": "meta.empty-list.python.renpy"
892
725
  },
893
726
  "3": {
894
- "name": "punctuation.definition.list.end.python"
727
+ "name": "punctuation.definition.list.end.python.renpy"
895
728
  }
896
729
  }
897
730
  },
898
731
  {
899
- "name": "meta.structure.list.python",
732
+ "name": "meta.structure.list.python.renpy",
900
733
  "begin": "(\\[)",
901
734
  "end": "(\\])",
902
735
  "patterns": [
903
736
  {
904
- "contentName": "meta.structure.list.item.python",
737
+ "contentName": "meta.structure.list.item.python.renpy",
905
738
  "begin": "(?\u003c=\\[|\\,)\\s*(?![\\],])",
906
739
  "end": "\\s*(?:(,)|(?=\\]))",
907
740
  "patterns": [
@@ -911,59 +744,59 @@
911
744
  ],
912
745
  "endCaptures": {
913
746
  "1": {
914
- "name": "punctuation.separator.list.python"
747
+ "name": "punctuation.separator.list.python.renpy"
915
748
  }
916
749
  }
917
750
  }
918
751
  ],
919
752
  "beginCaptures": {
920
753
  "1": {
921
- "name": "punctuation.definition.list.begin.python"
754
+ "name": "punctuation.definition.list.begin.python.renpy"
922
755
  }
923
756
  },
924
757
  "endCaptures": {
925
758
  "1": {
926
- "name": "punctuation.definition.list.end.python"
759
+ "name": "punctuation.definition.list.end.python.renpy"
927
760
  }
928
761
  }
929
762
  },
930
763
  {
931
- "name": "meta.structure.tuple.python",
764
+ "name": "meta.structure.tuple.python.renpy",
932
765
  "match": "(\\()(\\s*(\\)))",
933
766
  "captures": {
934
767
  "1": {
935
- "name": "punctuation.definition.tuple.begin.python"
768
+ "name": "punctuation.definition.tuple.begin.python.renpy"
936
769
  },
937
770
  "2": {
938
- "name": "meta.empty-tuple.python"
771
+ "name": "meta.empty-tuple.python.renpy"
939
772
  },
940
773
  "3": {
941
- "name": "punctuation.definition.tuple.end.python"
774
+ "name": "punctuation.definition.tuple.end.python.renpy"
942
775
  }
943
776
  }
944
777
  },
945
778
  {
946
- "name": "meta.structure.dictionary.python",
779
+ "name": "meta.structure.dictionary.python.renpy",
947
780
  "match": "(\\{)(\\s*(\\}))",
948
781
  "captures": {
949
782
  "1": {
950
- "name": "punctuation.definition.dictionary.begin.python"
783
+ "name": "punctuation.definition.dictionary.begin.python.renpy"
951
784
  },
952
785
  "2": {
953
- "name": "meta.empty-dictionary.python"
786
+ "name": "meta.empty-dictionary.python.renpy"
954
787
  },
955
788
  "3": {
956
- "name": "punctuation.definition.dictionary.end.python"
789
+ "name": "punctuation.definition.dictionary.end.python.renpy"
957
790
  }
958
791
  }
959
792
  },
960
793
  {
961
- "name": "meta.structure.dictionary.python",
794
+ "name": "meta.structure.dictionary.python.renpy",
962
795
  "begin": "(\\{)",
963
796
  "end": "(\\})",
964
797
  "patterns": [
965
798
  {
966
- "contentName": "meta.structure.dictionary.key.python",
799
+ "contentName": "meta.structure.dictionary.key.python.renpy",
967
800
  "begin": "(?\u003c=\\{|\\,|^)\\s*(?![\\},])",
968
801
  "end": "\\s*(?:(?=\\})|(\\:))",
969
802
  "patterns": [
@@ -973,12 +806,12 @@
973
806
  ],
974
807
  "endCaptures": {
975
808
  "1": {
976
- "name": "punctuation.separator.valuepair.dictionary.python"
809
+ "name": "punctuation.separator.valuepair.dictionary.python.renpy"
977
810
  }
978
811
  }
979
812
  },
980
813
  {
981
- "contentName": "meta.structure.dictionary.value.python",
814
+ "contentName": "meta.structure.dictionary.value.python.renpy",
982
815
  "begin": "(?\u003c=\\:|^)\\s*",
983
816
  "end": "\\s*(?:(?=\\})|(,))",
984
817
  "patterns": [
@@ -988,44 +821,44 @@
988
821
  ],
989
822
  "endCaptures": {
990
823
  "1": {
991
- "name": "punctuation.separator.dictionary.python"
824
+ "name": "punctuation.separator.dictionary.python.renpy"
992
825
  }
993
826
  }
994
827
  }
995
828
  ],
996
829
  "beginCaptures": {
997
830
  "1": {
998
- "name": "punctuation.definition.dictionary.begin.python"
831
+ "name": "punctuation.definition.dictionary.begin.python.renpy"
999
832
  }
1000
833
  },
1001
834
  "endCaptures": {
1002
835
  "1": {
1003
- "name": "punctuation.definition.dictionary.end.python"
836
+ "name": "punctuation.definition.dictionary.end.python.renpy"
1004
837
  }
1005
838
  }
1006
839
  }
1007
840
  ],
1008
841
  "repository": {
1009
842
  "builtin_exceptions": {
1010
- "name": "support.type.exception.python",
843
+ "name": "support.type.exception.python.renpy",
1011
844
  "match": "(?x)\\b(\n\t\t\t\t(\n\t\t\t\t\tArithmetic|Assertion|Attribute|BlockingIO|BrokenPipe|Buffer|ChildProcess|\n\t\t\t\t\tConnection(Aborted|Refused|Reset)?|EOF|Environment|FileExists|\n\t\t\t\t\tFileNotFound|FloatingPoint|Interrupted|IO|IsADirectoryError|\n\t\t\t\t\tImport|Indentation|Index|Key|Lookup|Memory|Name|NotADirectory|\n\t\t\t\t\tNotImplemented|OS|Overflow|Permission|ProcessLookup|Reference|\n\t\t\t\t\tRuntime|Standard|Syntax|System|Tab|Timeout|Type|UnboundLocal|\n\t\t\t\t\tUnicode(Encode|Decode|Translate)?|Value|VMS|Windows|ZeroDivision\n\t\t\t\t)Error|\n\t\t\t\t((Pending)?Deprecation|Runtime|Syntax|User|Future|Import|Unicode|Bytes)?Warning|\n\t\t\t\t(Base)?Exception|\n\t\t\t\tSystemExit|StopIteration|NotImplemented|KeyboardInterrupt|GeneratorExit\n\t\t\t)\\b"
1012
845
  },
1013
846
  "builtin_functions": {
1014
- "name": "support.function.builtin.python",
847
+ "name": "support.function.builtin.python.renpy",
1015
848
  "match": "(?x)\\b(\n\t\t\t\t__import__|all|abs|any|apply|ascii|bin|callable|chr|classmethod|cmp|coerce|\n\t\t\t\tcompile|delattr|dir|divmod|enumerate|eval|execfile|filter|format|getattr|\n\t\t\t\tglobals|hasattr|hash|help|hex|id|input|intern|isinstance|issubclass|iter|\n\t\t\t\tlen|locals|map|max|min|next|oct|open|ord|pow|print|property|range|\n\t\t\t\traw_input|reduce|reload|repr|reversed|round|setattr|sorted|staticmethod|\n\t\t\t\tsum|super|type|unichr|vars|zip\n\t\t\t)\\b"
1016
849
  },
1017
850
  "builtin_types": {
1018
- "name": "support.type.python",
851
+ "name": "support.type.python.renpy",
1019
852
  "match": "(?x)\\b(\n\t\t\t\tbasestring|bool|buffer|bytearray|bytes|complex|dict|float|frozenset|int|\n\t\t\t\tlist|long|memoryview|object|range|set|slice|str|tuple|unicode|xrange\n\t\t\t)\\b"
1020
853
  },
1021
854
  "constant_placeholder": {
1022
855
  "name": "constant.other.placeholder.tags.renpy",
1023
- "match": "(?i:(%(\\([a-z_]+\\))?#?0?\\-?[ ]?\\+?([0-9]*|\\*)(\\.([0-9]*|\\*))?([hL][a-z]|[a-z%]))|(\\{([\\?\\\u0026\\%\\\\\\/#=\\-\\+!\\[\\].:\\w ]+)?\\})|(\\{\\/([!\\[\\].:\\w ]+)?\\})|(\\[([!\\[\\].:\\w ]+)?\\]))"
856
+ "match": "\\{[^}]*\\}|\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]"
1024
857
  },
1025
858
  "docstrings": {
1026
859
  "patterns": [
1027
860
  {
1028
- "name": "comment.block.python",
861
+ "name": "comment.block.python.renpy",
1029
862
  "begin": "^\\s*(?=[uU]?[rR]?\"\"\")",
1030
863
  "end": "(?\u003c=\"\"\")",
1031
864
  "patterns": [
@@ -1035,7 +868,7 @@
1035
868
  ]
1036
869
  },
1037
870
  {
1038
- "name": "comment.block.python",
871
+ "name": "comment.block.python.renpy",
1039
872
  "begin": "^\\s*(?=[uU]?[rR]?''')",
1040
873
  "end": "(?\u003c=''')",
1041
874
  "patterns": [
@@ -1127,57 +960,61 @@
1127
960
  "match": "(\\\\x[0-9A-F]{2})|(\\\\[0-7]{3})|(\\\\\\n)|(\\\\\\\\)|(\\\\\\\")|(\\\\')|(\\\\a)|(\\\\b)|(\\\\f)|(\\\\n)|(\\\\r)|(\\\\t)|(\\\\v)",
1128
961
  "captures": {
1129
962
  "1": {
1130
- "name": "constant.character.escape.hex.python"
963
+ "name": "constant.character.escape.hex.python.renpy"
1131
964
  },
1132
965
  "10": {
1133
- "name": "constant.character.escape.linefeed.python"
966
+ "name": "constant.character.escape.linefeed.python.renpy"
1134
967
  },
1135
968
  "11": {
1136
- "name": "constant.character.escape.return.python"
969
+ "name": "constant.character.escape.return.python.renpy"
1137
970
  },
1138
971
  "12": {
1139
- "name": "constant.character.escape.tab.python"
972
+ "name": "constant.character.escape.tab.python.renpy"
1140
973
  },
1141
974
  "13": {
1142
- "name": "constant.character.escape.vertical-tab.python"
975
+ "name": "constant.character.escape.vertical-tab.python.renpy"
1143
976
  },
1144
977
  "2": {
1145
- "name": "constant.character.escape.octal.python"
978
+ "name": "constant.character.escape.octal.python.renpy"
1146
979
  },
1147
980
  "3": {
1148
- "name": "constant.character.escape.newline.python"
981
+ "name": "constant.character.escape.newline.python.renpy"
1149
982
  },
1150
983
  "4": {
1151
- "name": "constant.character.escape.backlash.python"
984
+ "name": "constant.character.escape.backlash.python.renpy"
1152
985
  },
1153
986
  "5": {
1154
- "name": "constant.character.escape.double-quote.python"
987
+ "name": "constant.character.escape.double-quote.python.renpy"
1155
988
  },
1156
989
  "6": {
1157
- "name": "constant.character.escape.single-quote.python"
990
+ "name": "constant.character.escape.single-quote.python.renpy"
1158
991
  },
1159
992
  "7": {
1160
- "name": "constant.character.escape.bell.python"
993
+ "name": "constant.character.escape.bell.python.renpy"
1161
994
  },
1162
995
  "8": {
1163
- "name": "constant.character.escape.backspace.python"
996
+ "name": "constant.character.escape.backspace.python.renpy"
1164
997
  },
1165
998
  "9": {
1166
- "name": "constant.character.escape.formfeed.python"
999
+ "name": "constant.character.escape.formfeed.python.renpy"
1167
1000
  }
1168
1001
  }
1169
1002
  },
1003
+ "escaped_placeholder": {
1004
+ "name": "constant.character.escape.placeholder.python.renpy",
1005
+ "match": "\\{\\{|\\[\\["
1006
+ },
1170
1007
  "escaped_unicode_char": {
1171
1008
  "match": "(\\\\U[0-9A-Fa-f]{8})|(\\\\u[0-9A-Fa-f]{4})|(\\\\N\\{[a-zA-Z ]+\\})",
1172
1009
  "captures": {
1173
1010
  "1": {
1174
- "name": "constant.character.escape.unicode.16-bit-hex.python"
1011
+ "name": "constant.character.escape.unicode.16-bit-hex.python.renpy"
1175
1012
  },
1176
1013
  "2": {
1177
- "name": "constant.character.escape.unicode.32-bit-hex.python"
1014
+ "name": "constant.character.escape.unicode.32-bit-hex.python.renpy"
1178
1015
  },
1179
1016
  "3": {
1180
- "name": "constant.character.escape.unicode.name.python"
1017
+ "name": "constant.character.escape.unicode.name.python.renpy"
1181
1018
  }
1182
1019
  }
1183
1020
  },
@@ -1207,7 +1044,7 @@
1207
1044
  "match": "[A-Za-z_][A-Za-z0-9_]*"
1208
1045
  },
1209
1046
  "illegal_names": {
1210
- "name": "invalid.illegal.name.python",
1047
+ "name": "invalid.illegal.name.python.renpy",
1211
1048
  "match": "\\b(and|as|assert|break|class|continue|def|del|elif|else|except|exec|finally|for|global|if|import|in|is|lambda|nonlocal|not|or|print|raise|try|while|with|yield)\\b"
1212
1049
  },
1213
1050
  "keyword_arguments": {
@@ -1220,55 +1057,56 @@
1220
1057
  ],
1221
1058
  "beginCaptures": {
1222
1059
  "1": {
1223
- "name": "variable.parameter.function.python"
1060
+ "name": "variable.parameter.function.python.renpy"
1224
1061
  },
1225
1062
  "2": {
1226
- "name": "keyword.operator.assignment.python"
1063
+ "name": "keyword.operator.assignment.python.renpy"
1227
1064
  }
1228
1065
  },
1229
1066
  "endCaptures": {
1230
1067
  "1": {
1231
- "name": "punctuation.separator.parameters.python"
1068
+ "name": "punctuation.separator.parameters.python.renpy"
1232
1069
  }
1233
1070
  }
1234
1071
  },
1235
1072
  "language_variables": {
1236
- "name": "variable.language.python",
1073
+ "name": "variable.language.python.renpy",
1237
1074
  "match": "\\b(self|cls)\\b"
1238
1075
  },
1239
1076
  "line_continuation": {
1240
1077
  "match": "(\\\\)(.*)$\\n?",
1241
1078
  "captures": {
1242
1079
  "1": {
1243
- "name": "punctuation.separator.continuation.line.python"
1080
+ "name": "punctuation.separator.continuation.line.python.renpy"
1244
1081
  },
1245
1082
  "2": {
1246
- "name": "invalid.illegal.unexpected-text.python"
1083
+ "name": "invalid.illegal.unexpected-text.python.renpy"
1247
1084
  }
1248
1085
  }
1249
1086
  },
1250
1087
  "magic_function_names": {
1251
- "name": "support.function.magic.python",
1088
+ "name": "support.function.magic.python.renpy",
1252
1089
  "match": "(?x)\\b(__(?:\n\t\t\t\t\t\tabs|add|and|cmp|coerce|complex|contains|del|delattr|\n\t\t\t\t\t\tdelete|delitem|delslice|div|divmod|enter|eq|exit|float|\n\t\t\t\t\t\tfloordiv|ge|get|getattr|getattribute|getitem|getslice|gt|\n\t\t\t\t\t\thash|hex|iadd|iand|idiv|ifloordiv|ilshift|imod|imul|init|\n\t\t\t\t\t\tint|invert|ior|ipow|irshift|isub|iter|itruediv|ixor|le|len|\n\t\t\t\t\t\tlong|lshift|lt|mod|mul|ne|neg|new|nonzero|oct|or|pos|pow|\n\t\t\t\t\t\tradd|rand|rdiv|rdivmod|repr|rfloordiv|rlshift|rmod|rmul|ror|\n\t\t\t\t\t\trpow|rrshift|rshift|rsub|rtruediv|rxor|set|setattr|setitem|\n\t\t\t\t\t\tsetslice|str|sub|truediv|unicode|xor\n\t\t\t\t\t)__)\\b"
1253
1090
  },
1254
1091
  "magic_variable_names": {
1255
- "name": "support.variable.magic.python",
1092
+ "name": "support.variable.magic.python.renpy",
1256
1093
  "match": "\\b__(all|bases|class|debug|dict|doc|file|members|metaclass|methods|name|slots|weakref)__\\b"
1257
1094
  },
1258
1095
  "regular_expressions": {
1259
1096
  "patterns": [
1260
- {
1261
- "include": "source.regexp.python"
1262
- }
1097
+ {}
1263
1098
  ]
1264
1099
  },
1265
1100
  "string_quoted_double": {
1266
1101
  "patterns": [
1267
1102
  {
1268
- "name": "string.quoted.double.block.unicode-raw-regex.python",
1103
+ "name": "string.quoted.double.block.unicode-raw-regex.python.renpy",
1269
1104
  "begin": "([uU]r)(\"\"\")",
1270
1105
  "end": "((?\u003c=\"\"\")(\")\"\"|\"\"\")",
1271
1106
  "patterns": [
1107
+ {
1108
+ "include": "#escaped_placeholder"
1109
+ },
1272
1110
  {
1273
1111
  "include": "#constant_placeholder"
1274
1112
  },
@@ -1284,26 +1122,29 @@
1284
1122
  ],
1285
1123
  "beginCaptures": {
1286
1124
  "1": {
1287
- "name": "storage.type.string.python"
1125
+ "name": "storage.type.string.python.renpy"
1288
1126
  },
1289
1127
  "2": {
1290
- "name": "punctuation.definition.string.begin.python"
1128
+ "name": "punctuation.definition.string.begin.python.renpy"
1291
1129
  }
1292
1130
  },
1293
1131
  "endCaptures": {
1294
1132
  "1": {
1295
- "name": "punctuation.definition.string.end.python"
1133
+ "name": "punctuation.definition.string.end.python.renpy"
1296
1134
  },
1297
1135
  "2": {
1298
- "name": "meta.empty-string.double.python"
1136
+ "name": "meta.empty-string.double.python.renpy"
1299
1137
  }
1300
1138
  }
1301
1139
  },
1302
1140
  {
1303
- "name": "string.quoted.double.block.unicode-raw.python",
1141
+ "name": "string.quoted.double.block.unicode-raw.python.renpy",
1304
1142
  "begin": "([uU]R)(\"\"\")",
1305
1143
  "end": "((?\u003c=\"\"\")(\")\"\"|\"\"\")",
1306
1144
  "patterns": [
1145
+ {
1146
+ "include": "#escaped_placeholder"
1147
+ },
1307
1148
  {
1308
1149
  "include": "#constant_placeholder"
1309
1150
  },
@@ -1316,26 +1157,29 @@
1316
1157
  ],
1317
1158
  "beginCaptures": {
1318
1159
  "1": {
1319
- "name": "storage.type.string.python"
1160
+ "name": "storage.type.string.python.renpy"
1320
1161
  },
1321
1162
  "2": {
1322
- "name": "punctuation.definition.string.begin.python"
1163
+ "name": "punctuation.definition.string.begin.python.renpy"
1323
1164
  }
1324
1165
  },
1325
1166
  "endCaptures": {
1326
1167
  "1": {
1327
- "name": "punctuation.definition.string.end.python"
1168
+ "name": "punctuation.definition.string.end.python.renpy"
1328
1169
  },
1329
1170
  "2": {
1330
- "name": "meta.empty-string.double.python"
1171
+ "name": "meta.empty-string.double.python.renpy"
1331
1172
  }
1332
1173
  }
1333
1174
  },
1334
1175
  {
1335
- "name": "string.quoted.double.block.raw-regex.python",
1176
+ "name": "string.quoted.double.block.raw-regex.python.renpy",
1336
1177
  "begin": "(r)(\"\"\")",
1337
1178
  "end": "((?\u003c=\"\"\")(\")\"\"|\"\"\")",
1338
1179
  "patterns": [
1180
+ {
1181
+ "include": "#escaped_placeholder"
1182
+ },
1339
1183
  {
1340
1184
  "include": "#constant_placeholder"
1341
1185
  },
@@ -1348,26 +1192,29 @@
1348
1192
  ],
1349
1193
  "beginCaptures": {
1350
1194
  "1": {
1351
- "name": "storage.type.string.python"
1195
+ "name": "storage.type.string.python.renpy"
1352
1196
  },
1353
1197
  "2": {
1354
- "name": "punctuation.definition.string.begin.python"
1198
+ "name": "punctuation.definition.string.begin.python.renpy"
1355
1199
  }
1356
1200
  },
1357
1201
  "endCaptures": {
1358
1202
  "1": {
1359
- "name": "punctuation.definition.string.end.python"
1203
+ "name": "punctuation.definition.string.end.python.renpy"
1360
1204
  },
1361
1205
  "2": {
1362
- "name": "meta.empty-string.double.python"
1206
+ "name": "meta.empty-string.double.python.renpy"
1363
1207
  }
1364
1208
  }
1365
1209
  },
1366
1210
  {
1367
- "name": "string.quoted.double.block.raw.python",
1211
+ "name": "string.quoted.double.block.raw.python.renpy",
1368
1212
  "begin": "(R)(\"\"\")",
1369
1213
  "end": "((?\u003c=\"\"\")(\")\"\"|\"\"\")",
1370
1214
  "patterns": [
1215
+ {
1216
+ "include": "#escaped_placeholder"
1217
+ },
1371
1218
  {
1372
1219
  "include": "#constant_placeholder"
1373
1220
  },
@@ -1377,26 +1224,29 @@
1377
1224
  ],
1378
1225
  "beginCaptures": {
1379
1226
  "1": {
1380
- "name": "storage.type.string.python"
1227
+ "name": "storage.type.string.python.renpy"
1381
1228
  },
1382
1229
  "2": {
1383
- "name": "punctuation.definition.string.begin.python"
1230
+ "name": "punctuation.definition.string.begin.python.renpy"
1384
1231
  }
1385
1232
  },
1386
1233
  "endCaptures": {
1387
1234
  "1": {
1388
- "name": "punctuation.definition.string.end.python"
1235
+ "name": "punctuation.definition.string.end.python.renpy"
1389
1236
  },
1390
1237
  "2": {
1391
- "name": "meta.empty-string.double.python"
1238
+ "name": "meta.empty-string.double.python.renpy"
1392
1239
  }
1393
1240
  }
1394
1241
  },
1395
1242
  {
1396
- "name": "string.quoted.double.block.unicode.python",
1243
+ "name": "string.quoted.double.block.unicode.python.renpy",
1397
1244
  "begin": "([uU])(\"\"\")",
1398
1245
  "end": "((?\u003c=\"\"\")(\")\"\"|\"\"\")",
1399
1246
  "patterns": [
1247
+ {
1248
+ "include": "#escaped_placeholder"
1249
+ },
1400
1250
  {
1401
1251
  "include": "#constant_placeholder"
1402
1252
  },
@@ -1409,33 +1259,36 @@
1409
1259
  ],
1410
1260
  "beginCaptures": {
1411
1261
  "1": {
1412
- "name": "storage.type.string.python"
1262
+ "name": "storage.type.string.python.renpy"
1413
1263
  },
1414
1264
  "2": {
1415
- "name": "punctuation.definition.string.begin.python"
1265
+ "name": "punctuation.definition.string.begin.python.renpy"
1416
1266
  }
1417
1267
  },
1418
1268
  "endCaptures": {
1419
1269
  "1": {
1420
- "name": "punctuation.definition.string.end.python"
1270
+ "name": "punctuation.definition.string.end.python.renpy"
1421
1271
  },
1422
1272
  "2": {
1423
- "name": "meta.empty-string.double.python"
1273
+ "name": "meta.empty-string.double.python.renpy"
1424
1274
  }
1425
1275
  }
1426
1276
  },
1427
1277
  {
1428
- "name": "string.quoted.double.single-line.unicode-raw-regex.python",
1278
+ "name": "string.quoted.double.single-line.unicode-raw-regex.python.renpy",
1429
1279
  "match": "([uU]r)(\")((?:[^\"\\\\]|\\\\.)*)(\")",
1430
1280
  "captures": {
1431
1281
  "1": {
1432
- "name": "storage.type.string.python"
1282
+ "name": "storage.type.string.python.renpy"
1433
1283
  },
1434
1284
  "2": {
1435
- "name": "punctuation.definition.string.begin.python"
1285
+ "name": "punctuation.definition.string.begin.python.renpy"
1436
1286
  },
1437
1287
  "3": {
1438
1288
  "patterns": [
1289
+ {
1290
+ "include": "#escaped_placeholder"
1291
+ },
1439
1292
  {
1440
1293
  "include": "#constant_placeholder"
1441
1294
  },
@@ -1451,15 +1304,18 @@
1451
1304
  ]
1452
1305
  },
1453
1306
  "4": {
1454
- "name": "punctuation.definition.string.end.python"
1307
+ "name": "punctuation.definition.string.end.python.renpy"
1455
1308
  }
1456
1309
  }
1457
1310
  },
1458
1311
  {
1459
- "name": "string.quoted.double.single-line.unicode-raw.python",
1312
+ "name": "string.quoted.double.single-line.unicode-raw.python.renpy",
1460
1313
  "begin": "([uU]R)(\")",
1461
1314
  "end": "((?\u003c=\")(\")|\")",
1462
1315
  "patterns": [
1316
+ {
1317
+ "include": "#escaped_placeholder"
1318
+ },
1463
1319
  {
1464
1320
  "include": "#constant_placeholder"
1465
1321
  },
@@ -1472,36 +1328,39 @@
1472
1328
  ],
1473
1329
  "beginCaptures": {
1474
1330
  "1": {
1475
- "name": "storage.type.string.python"
1331
+ "name": "storage.type.string.python.renpy"
1476
1332
  },
1477
1333
  "2": {
1478
- "name": "punctuation.definition.string.begin.python"
1334
+ "name": "punctuation.definition.string.begin.python.renpy"
1479
1335
  }
1480
1336
  },
1481
1337
  "endCaptures": {
1482
1338
  "1": {
1483
- "name": "punctuation.definition.string.end.python"
1339
+ "name": "punctuation.definition.string.end.python.renpy"
1484
1340
  },
1485
1341
  "2": {
1486
- "name": "meta.empty-string.double.python"
1342
+ "name": "meta.empty-string.double.python.renpy"
1487
1343
  },
1488
1344
  "3": {
1489
- "name": "invalid.illegal.unclosed-string.python"
1345
+ "name": "invalid.illegal.unclosed-string.python.renpy"
1490
1346
  }
1491
1347
  }
1492
1348
  },
1493
1349
  {
1494
- "name": "string.quoted.double.single-line.raw-regex.python",
1350
+ "name": "string.quoted.double.single-line.raw-regex.python.renpy",
1495
1351
  "match": "(r)(\")((?:[^\"\\\\]|\\\\.)*)(\")",
1496
1352
  "captures": {
1497
1353
  "1": {
1498
- "name": "storage.type.string.python"
1354
+ "name": "storage.type.string.python.renpy"
1499
1355
  },
1500
1356
  "2": {
1501
- "name": "punctuation.definition.string.begin.python"
1357
+ "name": "punctuation.definition.string.begin.python.renpy"
1502
1358
  },
1503
1359
  "3": {
1504
1360
  "patterns": [
1361
+ {
1362
+ "include": "#escaped_placeholder"
1363
+ },
1505
1364
  {
1506
1365
  "include": "#constant_placeholder"
1507
1366
  },
@@ -1514,15 +1373,18 @@
1514
1373
  ]
1515
1374
  },
1516
1375
  "4": {
1517
- "name": "punctuation.definition.string.end.python"
1376
+ "name": "punctuation.definition.string.end.python.renpy"
1518
1377
  }
1519
1378
  }
1520
1379
  },
1521
1380
  {
1522
- "name": "string.quoted.double.single-line.raw.python",
1381
+ "name": "string.quoted.double.single-line.raw.python.renpy",
1523
1382
  "begin": "(R)(\")",
1524
1383
  "end": "((?\u003c=\")(\")|\")|(\\n)",
1525
1384
  "patterns": [
1385
+ {
1386
+ "include": "#escaped_placeholder"
1387
+ },
1526
1388
  {
1527
1389
  "include": "#constant_placeholder"
1528
1390
  },
@@ -1532,29 +1394,32 @@
1532
1394
  ],
1533
1395
  "beginCaptures": {
1534
1396
  "1": {
1535
- "name": "storage.type.string.python"
1397
+ "name": "storage.type.string.python.renpy"
1536
1398
  },
1537
1399
  "2": {
1538
- "name": "punctuation.definition.string.begin.python"
1400
+ "name": "punctuation.definition.string.begin.python.renpy"
1539
1401
  }
1540
1402
  },
1541
1403
  "endCaptures": {
1542
1404
  "1": {
1543
- "name": "punctuation.definition.string.end.python"
1405
+ "name": "punctuation.definition.string.end.python.renpy"
1544
1406
  },
1545
1407
  "2": {
1546
- "name": "meta.empty-string.double.python"
1408
+ "name": "meta.empty-string.double.python.renpy"
1547
1409
  },
1548
1410
  "3": {
1549
- "name": "invalid.illegal.unclosed-string.python"
1411
+ "name": "invalid.illegal.unclosed-string.python.renpy"
1550
1412
  }
1551
1413
  }
1552
1414
  },
1553
1415
  {
1554
- "name": "string.quoted.double.single-line.unicode.python",
1416
+ "name": "string.quoted.double.single-line.unicode.python.renpy",
1555
1417
  "begin": "([uU])(\")",
1556
1418
  "end": "((?\u003c=\")(\")|\")",
1557
1419
  "patterns": [
1420
+ {
1421
+ "include": "#escaped_placeholder"
1422
+ },
1558
1423
  {
1559
1424
  "include": "#constant_placeholder"
1560
1425
  },
@@ -1567,90 +1432,32 @@
1567
1432
  ],
1568
1433
  "beginCaptures": {
1569
1434
  "1": {
1570
- "name": "storage.type.string.python"
1435
+ "name": "storage.type.string.python.renpy"
1571
1436
  },
1572
1437
  "2": {
1573
- "name": "punctuation.definition.string.begin.python"
1438
+ "name": "punctuation.definition.string.begin.python.renpy"
1574
1439
  }
1575
1440
  },
1576
1441
  "endCaptures": {
1577
1442
  "1": {
1578
- "name": "punctuation.definition.string.end.python"
1443
+ "name": "punctuation.definition.string.end.python.renpy"
1579
1444
  },
1580
1445
  "2": {
1581
- "name": "meta.empty-string.double.python"
1446
+ "name": "meta.empty-string.double.python.renpy"
1582
1447
  },
1583
1448
  "3": {
1584
- "name": "invalid.illegal.unclosed-string.python"
1449
+ "name": "invalid.illegal.unclosed-string.python.renpy"
1585
1450
  }
1586
1451
  }
1587
1452
  },
1588
1453
  {
1589
- "name": "string.quoted.double.block.sql.python",
1590
- "begin": "(\"\"\")(?=\\s*(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER))",
1454
+ "name": "string.quoted.double.block.python.renpy",
1455
+ "begin": "(\"\"\")",
1591
1456
  "end": "((?\u003c=\"\"\")(\")\"\"|\"\"\")",
1592
1457
  "patterns": [
1593
1458
  {
1594
- "include": "#constant_placeholder"
1595
- },
1596
- {
1597
- "include": "#escaped_char"
1598
- },
1599
- {
1600
- "include": "source.sql"
1601
- }
1602
- ],
1603
- "beginCaptures": {
1604
- "1": {
1605
- "name": "punctuation.definition.string.begin.python"
1606
- }
1607
- },
1608
- "endCaptures": {
1609
- "1": {
1610
- "name": "punctuation.definition.string.end.python"
1611
- },
1612
- "2": {
1613
- "name": "meta.empty-string.double.python"
1614
- }
1615
- }
1616
- },
1617
- {
1618
- "name": "string.quoted.double.single-line.sql.python",
1619
- "begin": "(\")(?=\\s*(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER))",
1620
- "end": "((?\u003c=\")(\")|\")|(\\n)",
1621
- "patterns": [
1622
- {
1623
- "include": "#constant_placeholder"
1624
- },
1625
- {
1626
- "include": "#escaped_char"
1459
+ "include": "#escaped_placeholder"
1627
1460
  },
1628
- {
1629
- "include": "source.sql"
1630
- }
1631
- ],
1632
- "beginCaptures": {
1633
- "1": {
1634
- "name": "punctuation.definition.string.begin.python"
1635
- }
1636
- },
1637
- "endCaptures": {
1638
- "1": {
1639
- "name": "punctuation.definition.string.end.python"
1640
- },
1641
- "2": {
1642
- "name": "meta.empty-string.double.python"
1643
- },
1644
- "3": {
1645
- "name": "invalid.illegal.unclosed-string.python"
1646
- }
1647
- }
1648
- },
1649
- {
1650
- "name": "string.quoted.double.block.python",
1651
- "begin": "(\"\"\")",
1652
- "end": "((?\u003c=\"\"\")(\")\"\"|\"\"\")",
1653
- "patterns": [
1654
1461
  {
1655
1462
  "include": "#constant_placeholder"
1656
1463
  },
@@ -1660,23 +1467,26 @@
1660
1467
  ],
1661
1468
  "beginCaptures": {
1662
1469
  "1": {
1663
- "name": "punctuation.definition.string.begin.python"
1470
+ "name": "punctuation.definition.string.begin.python.renpy"
1664
1471
  }
1665
1472
  },
1666
1473
  "endCaptures": {
1667
1474
  "1": {
1668
- "name": "punctuation.definition.string.end.python"
1475
+ "name": "punctuation.definition.string.end.python.renpy"
1669
1476
  },
1670
1477
  "2": {
1671
- "name": "meta.empty-string.double.python"
1478
+ "name": "meta.empty-string.double.python.renpy"
1672
1479
  }
1673
1480
  }
1674
1481
  },
1675
1482
  {
1676
- "name": "string.quoted.double.single-line.python",
1483
+ "name": "string.quoted.double.single-line.python.renpy",
1677
1484
  "begin": "(\")",
1678
1485
  "end": "((?\u003c=\")(\")|\")",
1679
1486
  "patterns": [
1487
+ {
1488
+ "include": "#escaped_placeholder"
1489
+ },
1680
1490
  {
1681
1491
  "include": "#constant_placeholder"
1682
1492
  },
@@ -1686,18 +1496,18 @@
1686
1496
  ],
1687
1497
  "beginCaptures": {
1688
1498
  "1": {
1689
- "name": "punctuation.definition.string.begin.python"
1499
+ "name": "punctuation.definition.string.begin.python.renpy"
1690
1500
  }
1691
1501
  },
1692
1502
  "endCaptures": {
1693
1503
  "1": {
1694
- "name": "punctuation.definition.string.end.python"
1504
+ "name": "punctuation.definition.string.end.python.renpy"
1695
1505
  },
1696
1506
  "2": {
1697
- "name": "meta.empty-string.double.python"
1507
+ "name": "meta.empty-string.double.python.renpy"
1698
1508
  },
1699
1509
  "3": {
1700
- "name": "invalid.illegal.unclosed-string.python"
1510
+ "name": "invalid.illegal.unclosed-string.python.renpy"
1701
1511
  }
1702
1512
  }
1703
1513
  }
@@ -1706,25 +1516,28 @@
1706
1516
  "string_quoted_single": {
1707
1517
  "patterns": [
1708
1518
  {
1709
- "name": "string.quoted.single.single-line.python",
1519
+ "name": "string.quoted.single.single-line.python.renpy",
1710
1520
  "match": "(?\u003c!')(')(('))(?!')",
1711
1521
  "captures": {
1712
1522
  "1": {
1713
- "name": "punctuation.definition.string.begin.python"
1523
+ "name": "punctuation.definition.string.begin.python.renpy"
1714
1524
  },
1715
1525
  "2": {
1716
- "name": "punctuation.definition.string.end.python"
1526
+ "name": "punctuation.definition.string.end.python.renpy"
1717
1527
  },
1718
1528
  "3": {
1719
- "name": "meta.empty-string.single.python"
1529
+ "name": "meta.empty-string.single.python.renpy"
1720
1530
  }
1721
1531
  }
1722
1532
  },
1723
1533
  {
1724
- "name": "string.quoted.single.block.unicode-raw-regex.python",
1534
+ "name": "string.quoted.single.block.unicode-raw-regex.python.renpy",
1725
1535
  "begin": "([uU]r)(''')",
1726
1536
  "end": "((?\u003c=''')(')''|''')",
1727
1537
  "patterns": [
1538
+ {
1539
+ "include": "#escaped_placeholder"
1540
+ },
1728
1541
  {
1729
1542
  "include": "#constant_placeholder"
1730
1543
  },
@@ -1740,26 +1553,29 @@
1740
1553
  ],
1741
1554
  "beginCaptures": {
1742
1555
  "1": {
1743
- "name": "storage.type.string.python"
1556
+ "name": "storage.type.string.python.renpy"
1744
1557
  },
1745
1558
  "2": {
1746
- "name": "punctuation.definition.string.begin.python"
1559
+ "name": "punctuation.definition.string.begin.python.renpy"
1747
1560
  }
1748
1561
  },
1749
1562
  "endCaptures": {
1750
1563
  "1": {
1751
- "name": "punctuation.definition.string.end.python"
1564
+ "name": "punctuation.definition.string.end.python.renpy"
1752
1565
  },
1753
1566
  "2": {
1754
- "name": "meta.empty-string.single.python"
1567
+ "name": "meta.empty-string.single.python.renpy"
1755
1568
  }
1756
1569
  }
1757
1570
  },
1758
1571
  {
1759
- "name": "string.quoted.single.block.unicode-raw.python",
1572
+ "name": "string.quoted.single.block.unicode-raw.python.renpy",
1760
1573
  "begin": "([uU]R)(''')",
1761
1574
  "end": "((?\u003c=''')(')''|''')",
1762
1575
  "patterns": [
1576
+ {
1577
+ "include": "#escaped_placeholder"
1578
+ },
1763
1579
  {
1764
1580
  "include": "#constant_placeholder"
1765
1581
  },
@@ -1772,26 +1588,29 @@
1772
1588
  ],
1773
1589
  "beginCaptures": {
1774
1590
  "1": {
1775
- "name": "storage.type.string.python"
1591
+ "name": "storage.type.string.python.renpy"
1776
1592
  },
1777
1593
  "2": {
1778
- "name": "punctuation.definition.string.begin.python"
1594
+ "name": "punctuation.definition.string.begin.python.renpy"
1779
1595
  }
1780
1596
  },
1781
1597
  "endCaptures": {
1782
1598
  "1": {
1783
- "name": "punctuation.definition.string.end.python"
1599
+ "name": "punctuation.definition.string.end.python.renpy"
1784
1600
  },
1785
1601
  "2": {
1786
- "name": "meta.empty-string.single.python"
1602
+ "name": "meta.empty-string.single.python.renpy"
1787
1603
  }
1788
1604
  }
1789
1605
  },
1790
1606
  {
1791
- "name": "string.quoted.single.block.raw-regex.python",
1607
+ "name": "string.quoted.single.block.raw-regex.python.renpy",
1792
1608
  "begin": "(r)(''')",
1793
1609
  "end": "((?\u003c=''')(')''|''')",
1794
1610
  "patterns": [
1611
+ {
1612
+ "include": "#escaped_placeholder"
1613
+ },
1795
1614
  {
1796
1615
  "include": "#constant_placeholder"
1797
1616
  },
@@ -1804,26 +1623,29 @@
1804
1623
  ],
1805
1624
  "beginCaptures": {
1806
1625
  "1": {
1807
- "name": "storage.type.string.python"
1626
+ "name": "storage.type.string.python.renpy"
1808
1627
  },
1809
1628
  "2": {
1810
- "name": "punctuation.definition.string.begin.python"
1629
+ "name": "punctuation.definition.string.begin.python.renpy"
1811
1630
  }
1812
1631
  },
1813
1632
  "endCaptures": {
1814
1633
  "1": {
1815
- "name": "punctuation.definition.string.end.python"
1634
+ "name": "punctuation.definition.string.end.python.renpy"
1816
1635
  },
1817
1636
  "2": {
1818
- "name": "meta.empty-string.single.python"
1637
+ "name": "meta.empty-string.single.python.renpy"
1819
1638
  }
1820
1639
  }
1821
1640
  },
1822
1641
  {
1823
- "name": "string.quoted.single.block.raw.python",
1642
+ "name": "string.quoted.single.block.raw.python.renpy",
1824
1643
  "begin": "(R)(''')",
1825
1644
  "end": "((?\u003c=''')(')''|''')",
1826
1645
  "patterns": [
1646
+ {
1647
+ "include": "#escaped_placeholder"
1648
+ },
1827
1649
  {
1828
1650
  "include": "#constant_placeholder"
1829
1651
  },
@@ -1833,26 +1655,29 @@
1833
1655
  ],
1834
1656
  "beginCaptures": {
1835
1657
  "1": {
1836
- "name": "storage.type.string.python"
1658
+ "name": "storage.type.string.python.renpy"
1837
1659
  },
1838
1660
  "2": {
1839
- "name": "punctuation.definition.string.begin.python"
1661
+ "name": "punctuation.definition.string.begin.python.renpy"
1840
1662
  }
1841
1663
  },
1842
1664
  "endCaptures": {
1843
1665
  "1": {
1844
- "name": "punctuation.definition.string.end.python"
1666
+ "name": "punctuation.definition.string.end.python.renpy"
1845
1667
  },
1846
1668
  "2": {
1847
- "name": "meta.empty-string.single.python"
1669
+ "name": "meta.empty-string.single.python.renpy"
1848
1670
  }
1849
1671
  }
1850
1672
  },
1851
1673
  {
1852
- "name": "string.quoted.single.block.unicode.python",
1674
+ "name": "string.quoted.single.block.unicode.python.renpy",
1853
1675
  "begin": "([uU])(''')",
1854
1676
  "end": "((?\u003c=''')(')''|''')",
1855
1677
  "patterns": [
1678
+ {
1679
+ "include": "#escaped_placeholder"
1680
+ },
1856
1681
  {
1857
1682
  "include": "#constant_placeholder"
1858
1683
  },
@@ -1865,33 +1690,36 @@
1865
1690
  ],
1866
1691
  "beginCaptures": {
1867
1692
  "1": {
1868
- "name": "storage.type.string.python"
1693
+ "name": "storage.type.string.python.renpy"
1869
1694
  },
1870
1695
  "2": {
1871
- "name": "punctuation.definition.string.begin.python"
1696
+ "name": "punctuation.definition.string.begin.python.renpy"
1872
1697
  }
1873
1698
  },
1874
1699
  "endCaptures": {
1875
1700
  "1": {
1876
- "name": "punctuation.definition.string.end.python"
1701
+ "name": "punctuation.definition.string.end.python.renpy"
1877
1702
  },
1878
1703
  "2": {
1879
- "name": "meta.empty-string.single.python"
1704
+ "name": "meta.empty-string.single.python.renpy"
1880
1705
  }
1881
1706
  }
1882
1707
  },
1883
1708
  {
1884
- "name": "string.quoted.single.single-line.unicode-raw-regex.python",
1709
+ "name": "string.quoted.single.single-line.unicode-raw-regex.python.renpy",
1885
1710
  "match": "([uU]r)(')((?:[^'\\\\]|\\\\.)*)(')",
1886
1711
  "captures": {
1887
1712
  "1": {
1888
- "name": "storage.type.string.python"
1713
+ "name": "storage.type.string.python.renpy"
1889
1714
  },
1890
1715
  "2": {
1891
- "name": "punctuation.definition.string.begin.python"
1716
+ "name": "punctuation.definition.string.begin.python.renpy"
1892
1717
  },
1893
1718
  "3": {
1894
1719
  "patterns": [
1720
+ {
1721
+ "include": "#escaped_placeholder"
1722
+ },
1895
1723
  {
1896
1724
  "include": "#constant_placeholder"
1897
1725
  },
@@ -1907,15 +1735,18 @@
1907
1735
  ]
1908
1736
  },
1909
1737
  "4": {
1910
- "name": "punctuation.definition.string.end.python"
1738
+ "name": "punctuation.definition.string.end.python.renpy"
1911
1739
  }
1912
1740
  }
1913
1741
  },
1914
1742
  {
1915
- "name": "string.quoted.single.single-line.unicode-raw.python",
1743
+ "name": "string.quoted.single.single-line.unicode-raw.python.renpy",
1916
1744
  "begin": "([uU]R)(')",
1917
1745
  "end": "(')",
1918
1746
  "patterns": [
1747
+ {
1748
+ "include": "#escaped_placeholder"
1749
+ },
1919
1750
  {
1920
1751
  "include": "#constant_placeholder"
1921
1752
  },
@@ -1928,33 +1759,36 @@
1928
1759
  ],
1929
1760
  "beginCaptures": {
1930
1761
  "1": {
1931
- "name": "storage.type.string.python"
1762
+ "name": "storage.type.string.python.renpy"
1932
1763
  },
1933
1764
  "2": {
1934
- "name": "punctuation.definition.string.begin.python"
1765
+ "name": "punctuation.definition.string.begin.python.renpy"
1935
1766
  }
1936
1767
  },
1937
1768
  "endCaptures": {
1938
1769
  "1": {
1939
- "name": "punctuation.definition.string.end.python"
1770
+ "name": "punctuation.definition.string.end.python.renpy"
1940
1771
  },
1941
1772
  "2": {
1942
- "name": "invalid.illegal.unclosed-string.python"
1773
+ "name": "invalid.illegal.unclosed-string.python.renpy"
1943
1774
  }
1944
1775
  }
1945
1776
  },
1946
1777
  {
1947
- "name": "string.quoted.single.single-line.raw-regex.python",
1778
+ "name": "string.quoted.single.single-line.raw-regex.python.renpy",
1948
1779
  "match": "(r)(')((?:[^'\\\\]|\\\\.)*)(')",
1949
1780
  "captures": {
1950
1781
  "1": {
1951
- "name": "storage.type.string.python"
1782
+ "name": "storage.type.string.python.renpy"
1952
1783
  },
1953
1784
  "2": {
1954
- "name": "punctuation.definition.string.begin.python"
1785
+ "name": "punctuation.definition.string.begin.python.renpy"
1955
1786
  },
1956
1787
  "3": {
1957
1788
  "patterns": [
1789
+ {
1790
+ "include": "#escaped_placeholder"
1791
+ },
1958
1792
  {
1959
1793
  "include": "#constant_placeholder"
1960
1794
  },
@@ -1967,15 +1801,18 @@
1967
1801
  ]
1968
1802
  },
1969
1803
  "4": {
1970
- "name": "punctuation.definition.string.end.python"
1804
+ "name": "punctuation.definition.string.end.python.renpy"
1971
1805
  }
1972
1806
  }
1973
1807
  },
1974
1808
  {
1975
- "name": "string.quoted.single.single-line.raw.python",
1809
+ "name": "string.quoted.single.single-line.raw.python.renpy",
1976
1810
  "begin": "(R)(')",
1977
1811
  "end": "(')|(\\n)",
1978
1812
  "patterns": [
1813
+ {
1814
+ "include": "#escaped_placeholder"
1815
+ },
1979
1816
  {
1980
1817
  "include": "#constant_placeholder"
1981
1818
  },
@@ -1985,26 +1822,29 @@
1985
1822
  ],
1986
1823
  "beginCaptures": {
1987
1824
  "1": {
1988
- "name": "storage.type.string.python"
1825
+ "name": "storage.type.string.python.renpy"
1989
1826
  },
1990
1827
  "2": {
1991
- "name": "punctuation.definition.string.begin.python"
1828
+ "name": "punctuation.definition.string.begin.python.renpy"
1992
1829
  }
1993
1830
  },
1994
1831
  "endCaptures": {
1995
1832
  "1": {
1996
- "name": "punctuation.definition.string.end.python"
1833
+ "name": "punctuation.definition.string.end.python.renpy"
1997
1834
  },
1998
1835
  "2": {
1999
- "name": "invalid.illegal.unclosed-string.python"
1836
+ "name": "invalid.illegal.unclosed-string.python.renpy"
2000
1837
  }
2001
1838
  }
2002
1839
  },
2003
1840
  {
2004
- "name": "string.quoted.single.single-line.unicode.python",
1841
+ "name": "string.quoted.single.single-line.unicode.python.renpy",
2005
1842
  "begin": "([uU])(')",
2006
1843
  "end": "(')",
2007
1844
  "patterns": [
1845
+ {
1846
+ "include": "#escaped_placeholder"
1847
+ },
2008
1848
  {
2009
1849
  "include": "#constant_placeholder"
2010
1850
  },
@@ -2017,84 +1857,29 @@
2017
1857
  ],
2018
1858
  "beginCaptures": {
2019
1859
  "1": {
2020
- "name": "storage.type.string.python"
1860
+ "name": "storage.type.string.python.renpy"
2021
1861
  },
2022
1862
  "2": {
2023
- "name": "punctuation.definition.string.begin.python"
1863
+ "name": "punctuation.definition.string.begin.python.renpy"
2024
1864
  }
2025
1865
  },
2026
1866
  "endCaptures": {
2027
1867
  "1": {
2028
- "name": "punctuation.definition.string.end.python"
1868
+ "name": "punctuation.definition.string.end.python.renpy"
2029
1869
  },
2030
1870
  "2": {
2031
- "name": "invalid.illegal.unclosed-string.python"
1871
+ "name": "invalid.illegal.unclosed-string.python.renpy"
2032
1872
  }
2033
1873
  }
2034
1874
  },
2035
1875
  {
2036
- "name": "string.quoted.single.block.python",
2037
- "begin": "(''')(?=\\s*(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER))",
1876
+ "name": "string.quoted.single.block.python.renpy",
1877
+ "begin": "(''')",
2038
1878
  "end": "((?\u003c=''')(')''|''')",
2039
1879
  "patterns": [
2040
1880
  {
2041
- "include": "#constant_placeholder"
2042
- },
2043
- {
2044
- "include": "#escaped_char"
2045
- },
2046
- {
2047
- "include": "source.sql"
2048
- }
2049
- ],
2050
- "beginCaptures": {
2051
- "1": {
2052
- "name": "punctuation.definition.string.begin.python"
2053
- }
2054
- },
2055
- "endCaptures": {
2056
- "1": {
2057
- "name": "punctuation.definition.string.end.python"
2058
- },
2059
- "2": {
2060
- "name": "meta.empty-string.single.python"
2061
- }
2062
- }
2063
- },
2064
- {
2065
- "name": "string.quoted.single.single-line.python",
2066
- "begin": "(')(?=\\s*(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER))",
2067
- "end": "(')|(\\n)",
2068
- "patterns": [
2069
- {
2070
- "include": "#constant_placeholder"
2071
- },
2072
- {
2073
- "include": "#escaped_char"
1881
+ "include": "#escaped_placeholder"
2074
1882
  },
2075
- {
2076
- "include": "source.sql"
2077
- }
2078
- ],
2079
- "beginCaptures": {
2080
- "1": {
2081
- "name": "punctuation.definition.string.begin.python"
2082
- }
2083
- },
2084
- "endCaptures": {
2085
- "1": {
2086
- "name": "punctuation.definition.string.end.python"
2087
- },
2088
- "2": {
2089
- "name": "invalid.illegal.unclosed-string.python"
2090
- }
2091
- }
2092
- },
2093
- {
2094
- "name": "string.quoted.single.block.python",
2095
- "begin": "(''')",
2096
- "end": "((?\u003c=''')(')''|''')",
2097
- "patterns": [
2098
1883
  {
2099
1884
  "include": "#constant_placeholder"
2100
1885
  },
@@ -2104,23 +1889,26 @@
2104
1889
  ],
2105
1890
  "beginCaptures": {
2106
1891
  "1": {
2107
- "name": "punctuation.definition.string.begin.python"
1892
+ "name": "punctuation.definition.string.begin.python.renpy"
2108
1893
  }
2109
1894
  },
2110
1895
  "endCaptures": {
2111
1896
  "1": {
2112
- "name": "punctuation.definition.string.end.python"
1897
+ "name": "punctuation.definition.string.end.python.renpy"
2113
1898
  },
2114
1899
  "2": {
2115
- "name": "meta.empty-string.single.python"
1900
+ "name": "meta.empty-string.single.python.renpy"
2116
1901
  }
2117
1902
  }
2118
1903
  },
2119
1904
  {
2120
- "name": "string.quoted.single.single-line.python",
1905
+ "name": "string.quoted.single.single-line.python.renpy",
2121
1906
  "begin": "(')",
2122
1907
  "end": "(')",
2123
1908
  "patterns": [
1909
+ {
1910
+ "include": "#escaped_placeholder"
1911
+ },
2124
1912
  {
2125
1913
  "include": "#constant_placeholder"
2126
1914
  },
@@ -2130,15 +1918,15 @@
2130
1918
  ],
2131
1919
  "beginCaptures": {
2132
1920
  "1": {
2133
- "name": "punctuation.definition.string.begin.python"
1921
+ "name": "punctuation.definition.string.begin.python.renpy"
2134
1922
  }
2135
1923
  },
2136
1924
  "endCaptures": {
2137
1925
  "1": {
2138
- "name": "punctuation.definition.string.end.python"
1926
+ "name": "punctuation.definition.string.end.python.renpy"
2139
1927
  },
2140
1928
  "2": {
2141
- "name": "invalid.illegal.unclosed-string.python"
1929
+ "name": "invalid.illegal.unclosed-string.python.renpy"
2142
1930
  }
2143
1931
  }
2144
1932
  }