@codingame/monaco-editor-wrapper 1.14.5 → 1.14.6

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 (47) hide show
  1. package/dist/JavaScript.tmLanguage.js +64 -10
  2. package/dist/JavaScriptReact.tmLanguage.js +64 -10
  3. package/dist/Scala.tmLanguage.js +8 -4
  4. package/dist/TypeScript.tmLanguage.js +64 -10
  5. package/dist/TypeScriptReact.tmLanguage.js +64 -10
  6. package/dist/angular.js +7 -1
  7. package/dist/c.tmLanguage.js +650 -432
  8. package/dist/cpp.tmLanguage.js +72 -84
  9. package/dist/cpptools.js +81 -5
  10. package/dist/css.tmLanguage.js +5 -5
  11. package/dist/css.worker.js +1 -1
  12. package/dist/dart3.js +40 -21
  13. package/dist/fsharp.tmLanguage.js +2 -2
  14. package/dist/html.worker.js +1 -1
  15. package/dist/index.js +4 -3
  16. package/dist/java.js +1 -1
  17. package/dist/java2.js +35 -11
  18. package/dist/javascript-javascript.code-snippets.js +9 -0
  19. package/dist/javascript.js +1 -1
  20. package/dist/javascriptreact.js +1 -1
  21. package/dist/json.js +1 -3
  22. package/dist/json.worker.js +1 -1
  23. package/dist/jsonc.js +1 -3
  24. package/dist/lua2.js +184 -63
  25. package/dist/main.js +10625 -10607
  26. package/dist/markdown.tmLanguage.js +56 -17
  27. package/dist/objective-c.tmLanguage.js +276 -131
  28. package/dist/omnisharp-csharp.js +11 -11
  29. package/dist/omnisharp.js +24 -49
  30. package/dist/php.tmLanguage.js +280 -128
  31. package/dist/scalameta.js +19 -2
  32. package/dist/scss.js +12 -2
  33. package/dist/solidity2.js +1 -1
  34. package/dist/theme-defaults~dark_vs.js +1 -1
  35. package/dist/theme-defaults~hc_light.js +36 -36
  36. package/dist/ts.worker.js +1 -1
  37. package/dist/typescript-language-features.js +17 -2
  38. package/dist/typescript.js +1 -1
  39. package/dist/typescriptreact.js +1 -1
  40. package/dist/vscode-R-rmarkdown.js +3 -3
  41. package/dist/vscode-R.js +9 -9
  42. package/dist/vscode-python.js +16 -6
  43. package/dist/worker.js +1 -1
  44. package/dist/xml.js +1 -2
  45. package/dist/xsl.js +1 -2
  46. package/package.json +23 -25
  47. package/stats.html +1 -1
@@ -3,7 +3,7 @@ var information_for_contributors = [
3
3
  "If you want to provide a fix or improvement, please create a pull request against the original repository.",
4
4
  "Once accepted there, we are happy to receive an update request."
5
5
  ];
6
- var version = "https://github.com/jeff-hykin/cpp-textmate-grammar/commit/0ef79f098ed80ce5a86be4ed40f99ebcdbac4895";
6
+ var version = "https://github.com/jeff-hykin/better-c-syntax/commit/34712a6106a4ffb0a04d2fa836fd28ff6c5849a4";
7
7
  var name = "C";
8
8
  var scopeName = "source.c";
9
9
  var patterns = [
@@ -26,35 +26,28 @@ var patterns = [
26
26
  include: "#switch_statement"
27
27
  },
28
28
  {
29
- match: "\\b(break|continue|do|else|for|goto|if|_Pragma|return|while)\\b",
30
- name: "keyword.control.c"
29
+ include: "#anon_pattern_1"
31
30
  },
32
31
  {
33
32
  include: "#storage_types"
34
33
  },
35
34
  {
36
- match: "typedef",
37
- name: "keyword.other.typedef.c"
35
+ include: "#anon_pattern_2"
38
36
  },
39
37
  {
40
- match: "\\b(const|extern|register|restrict|static|volatile|inline)\\b",
41
- name: "storage.modifier.c"
38
+ include: "#anon_pattern_3"
42
39
  },
43
40
  {
44
- match: "\\bk[A-Z]\\w*\\b",
45
- name: "constant.other.variable.mac-classic.c"
41
+ include: "#anon_pattern_4"
46
42
  },
47
43
  {
48
- match: "\\bg[A-Z]\\w*\\b",
49
- name: "variable.other.readwrite.global.mac-classic.c"
44
+ include: "#anon_pattern_5"
50
45
  },
51
46
  {
52
- match: "\\bs[A-Z]\\w*\\b",
53
- name: "variable.other.readwrite.static.mac-classic.c"
47
+ include: "#anon_pattern_6"
54
48
  },
55
49
  {
56
- match: "\\b(NULL|true|false|TRUE|FALSE)\\b",
57
- name: "constant.language.c"
50
+ include: "#anon_pattern_7"
58
51
  },
59
52
  {
60
53
  include: "#operators"
@@ -66,6 +59,183 @@ var patterns = [
66
59
  include: "#strings"
67
60
  },
68
61
  {
62
+ include: "#anon_pattern_range_1"
63
+ },
64
+ {
65
+ include: "#anon_pattern_range_2"
66
+ },
67
+ {
68
+ include: "#anon_pattern_range_3"
69
+ },
70
+ {
71
+ include: "#pragma-mark"
72
+ },
73
+ {
74
+ include: "#anon_pattern_range_4"
75
+ },
76
+ {
77
+ include: "#anon_pattern_range_5"
78
+ },
79
+ {
80
+ include: "#anon_pattern_range_6"
81
+ },
82
+ {
83
+ include: "#anon_pattern_8"
84
+ },
85
+ {
86
+ include: "#anon_pattern_9"
87
+ },
88
+ {
89
+ include: "#anon_pattern_10"
90
+ },
91
+ {
92
+ include: "#anon_pattern_11"
93
+ },
94
+ {
95
+ include: "#anon_pattern_12"
96
+ },
97
+ {
98
+ include: "#anon_pattern_13"
99
+ },
100
+ {
101
+ include: "#block"
102
+ },
103
+ {
104
+ include: "#parens"
105
+ },
106
+ {
107
+ include: "#anon_pattern_range_7"
108
+ },
109
+ {
110
+ include: "#line_continuation_character"
111
+ },
112
+ {
113
+ include: "#anon_pattern_range_8"
114
+ },
115
+ {
116
+ include: "#anon_pattern_range_9"
117
+ },
118
+ {
119
+ include: "#anon_pattern_14"
120
+ },
121
+ {
122
+ include: "#anon_pattern_15"
123
+ }
124
+ ];
125
+ var repository = {
126
+ "access-method": {
127
+ name: "meta.function-call.member.c",
128
+ begin: "([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\]\\)]))\\s*(?:(\\.)|(->))((?:(?:[a-zA-Z_][a-zA-Z_0-9]*)\\s*(?:(?:\\.)|(?:->)))*)\\s*([a-zA-Z_][a-zA-Z_0-9]*)(\\()",
129
+ beginCaptures: {
130
+ "1": {
131
+ name: "variable.object.c"
132
+ },
133
+ "2": {
134
+ name: "punctuation.separator.dot-access.c"
135
+ },
136
+ "3": {
137
+ name: "punctuation.separator.pointer-access.c"
138
+ },
139
+ "4": {
140
+ patterns: [
141
+ {
142
+ match: "\\.",
143
+ name: "punctuation.separator.dot-access.c"
144
+ },
145
+ {
146
+ match: "->",
147
+ name: "punctuation.separator.pointer-access.c"
148
+ },
149
+ {
150
+ match: "[a-zA-Z_][a-zA-Z_0-9]*",
151
+ name: "variable.object.c"
152
+ },
153
+ {
154
+ name: "everything.else.c",
155
+ match: ".+"
156
+ }
157
+ ]
158
+ },
159
+ "5": {
160
+ name: "entity.name.function.member.c"
161
+ },
162
+ "6": {
163
+ name: "punctuation.section.arguments.begin.bracket.round.function.member.c"
164
+ }
165
+ },
166
+ end: "\\)",
167
+ endCaptures: {
168
+ "0": {
169
+ name: "punctuation.section.arguments.end.bracket.round.function.member.c"
170
+ }
171
+ },
172
+ patterns: [
173
+ {
174
+ include: "#function-call-innards"
175
+ }
176
+ ]
177
+ },
178
+ anon_pattern_1: {
179
+ match: "\\b(break|continue|do|else|for|goto|if|_Pragma|return|while)\\b",
180
+ name: "keyword.control.c"
181
+ },
182
+ anon_pattern_10: {
183
+ match: "(?x) \\b\n(int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t\n|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t\n|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t\n|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t\n|uintmax_t|uintmax_t)\n\\b",
184
+ name: "support.type.stdint.c"
185
+ },
186
+ anon_pattern_11: {
187
+ match: "\\b(noErr|kNilOptions|kInvalidID|kVariableLengthArray)\\b",
188
+ name: "support.constant.mac-classic.c"
189
+ },
190
+ anon_pattern_12: {
191
+ match: "(?x) \\b\n(AbsoluteTime|Boolean|Byte|ByteCount|ByteOffset|BytePtr|CompTimeValue|ConstLogicalAddress|ConstStrFileNameParam\n|ConstStringPtr|Duration|Fixed|FixedPtr|Float32|Float32Point|Float64|Float80|Float96|FourCharCode|Fract|FractPtr\n|Handle|ItemCount|LogicalAddress|OptionBits|OSErr|OSStatus|OSType|OSTypePtr|PhysicalAddress|ProcessSerialNumber\n|ProcessSerialNumberPtr|ProcHandle|Ptr|ResType|ResTypePtr|ShortFixed|ShortFixedPtr|SignedByte|SInt16|SInt32|SInt64\n|SInt8|Size|StrFileName|StringHandle|StringPtr|TimeBase|TimeRecord|TimeScale|TimeValue|TimeValue64|UInt16|UInt32\n|UInt64|UInt8|UniChar|UniCharCount|UniCharCountPtr|UniCharPtr|UnicodeScalarValue|UniversalProcHandle|UniversalProcPtr\n|UnsignedFixed|UnsignedFixedPtr|UnsignedWide|UTF16Char|UTF32Char|UTF8Char)\n\\b",
192
+ name: "support.type.mac-classic.c"
193
+ },
194
+ anon_pattern_13: {
195
+ match: "\\b([A-Za-z0-9_]+_t)\\b",
196
+ name: "support.type.posix-reserved.c"
197
+ },
198
+ anon_pattern_14: {
199
+ match: ";",
200
+ name: "punctuation.terminator.statement.c"
201
+ },
202
+ anon_pattern_15: {
203
+ match: ",",
204
+ name: "punctuation.separator.delimiter.c"
205
+ },
206
+ anon_pattern_2: {
207
+ match: "typedef",
208
+ name: "keyword.other.typedef.c"
209
+ },
210
+ anon_pattern_3: {
211
+ match: "\\b(const|extern|register|restrict|static|volatile|inline)\\b",
212
+ name: "storage.modifier.c"
213
+ },
214
+ anon_pattern_4: {
215
+ match: "\\bk[A-Z]\\w*\\b",
216
+ name: "constant.other.variable.mac-classic.c"
217
+ },
218
+ anon_pattern_5: {
219
+ match: "\\bg[A-Z]\\w*\\b",
220
+ name: "variable.other.readwrite.global.mac-classic.c"
221
+ },
222
+ anon_pattern_6: {
223
+ match: "\\bs[A-Z]\\w*\\b",
224
+ name: "variable.other.readwrite.static.mac-classic.c"
225
+ },
226
+ anon_pattern_7: {
227
+ match: "\\b(NULL|true|false|TRUE|FALSE)\\b",
228
+ name: "constant.language.c"
229
+ },
230
+ anon_pattern_8: {
231
+ match: "\\b(u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t)\\b",
232
+ name: "support.type.sys-types.c"
233
+ },
234
+ anon_pattern_9: {
235
+ match: "\\b(pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t)\\b",
236
+ name: "support.type.pthread.c"
237
+ },
238
+ anon_pattern_range_1: {
69
239
  name: "meta.preprocessor.macro.c",
70
240
  begin: "((?:(?:(?>\\s+)|(\\/\\*)((?>(?:[^\\*]|(?>\\*+)[^\\/])*)((?>\\*+)\\/)))+?|(?:(?:(?:(?:\\b|(?<=\\W))|(?=\\W))|\\A)|\\Z)))((#)\\s*define\\b)\\s+((?<!\\w)[a-zA-Z_]\\w*(?!\\w))(?:(\\()([^()\\\\]+)(\\)))?",
71
241
  beginCaptures: {
@@ -137,7 +307,7 @@ var patterns = [
137
307
  }
138
308
  ]
139
309
  },
140
- {
310
+ anon_pattern_range_2: {
141
311
  begin: "^\\s*((#)\\s*(error|warning))\\b\\s*",
142
312
  beginCaptures: {
143
313
  "1": {
@@ -205,7 +375,7 @@ var patterns = [
205
375
  }
206
376
  ]
207
377
  },
208
- {
378
+ anon_pattern_range_3: {
209
379
  begin: "^\\s*((#)\\s*(include(?:_next)?|import))\\b\\s*",
210
380
  beginCaptures: {
211
381
  "1": {
@@ -253,10 +423,7 @@ var patterns = [
253
423
  }
254
424
  ]
255
425
  },
256
- {
257
- include: "#pragma-mark"
258
- },
259
- {
426
+ anon_pattern_range_4: {
260
427
  begin: "^\\s*((#)\\s*line)\\b",
261
428
  beginCaptures: {
262
429
  "1": {
@@ -280,7 +447,7 @@ var patterns = [
280
447
  }
281
448
  ]
282
449
  },
283
- {
450
+ anon_pattern_range_5: {
284
451
  begin: "^\\s*(?:((#)\\s*undef))\\b",
285
452
  beginCaptures: {
286
453
  "1": {
@@ -302,7 +469,7 @@ var patterns = [
302
469
  }
303
470
  ]
304
471
  },
305
- {
472
+ anon_pattern_range_6: {
306
473
  begin: "^\\s*(?:((#)\\s*pragma))\\b",
307
474
  beginCaptures: {
308
475
  "1": {
@@ -330,37 +497,7 @@ var patterns = [
330
497
  }
331
498
  ]
332
499
  },
333
- {
334
- match: "\\b(u_char|u_short|u_int|u_long|ushort|uint|u_quad_t|quad_t|qaddr_t|caddr_t|daddr_t|div_t|dev_t|fixpt_t|blkcnt_t|blksize_t|gid_t|in_addr_t|in_port_t|ino_t|key_t|mode_t|nlink_t|id_t|pid_t|off_t|segsz_t|swblk_t|uid_t|id_t|clock_t|size_t|ssize_t|time_t|useconds_t|suseconds_t)\\b",
335
- name: "support.type.sys-types.c"
336
- },
337
- {
338
- match: "\\b(pthread_attr_t|pthread_cond_t|pthread_condattr_t|pthread_mutex_t|pthread_mutexattr_t|pthread_once_t|pthread_rwlock_t|pthread_rwlockattr_t|pthread_t|pthread_key_t)\\b",
339
- name: "support.type.pthread.c"
340
- },
341
- {
342
- match: "(?x) \\b\n(int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|int_least8_t\n|int_least16_t|int_least32_t|int_least64_t|uint_least8_t|uint_least16_t|uint_least32_t\n|uint_least64_t|int_fast8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t\n|uint_fast16_t|uint_fast32_t|uint_fast64_t|intptr_t|uintptr_t|intmax_t|intmax_t\n|uintmax_t|uintmax_t)\n\\b",
343
- name: "support.type.stdint.c"
344
- },
345
- {
346
- match: "\\b(noErr|kNilOptions|kInvalidID|kVariableLengthArray)\\b",
347
- name: "support.constant.mac-classic.c"
348
- },
349
- {
350
- match: "(?x) \\b\n(AbsoluteTime|Boolean|Byte|ByteCount|ByteOffset|BytePtr|CompTimeValue|ConstLogicalAddress|ConstStrFileNameParam\n|ConstStringPtr|Duration|Fixed|FixedPtr|Float32|Float32Point|Float64|Float80|Float96|FourCharCode|Fract|FractPtr\n|Handle|ItemCount|LogicalAddress|OptionBits|OSErr|OSStatus|OSType|OSTypePtr|PhysicalAddress|ProcessSerialNumber\n|ProcessSerialNumberPtr|ProcHandle|Ptr|ResType|ResTypePtr|ShortFixed|ShortFixedPtr|SignedByte|SInt16|SInt32|SInt64\n|SInt8|Size|StrFileName|StringHandle|StringPtr|TimeBase|TimeRecord|TimeScale|TimeValue|TimeValue64|UInt16|UInt32\n|UInt64|UInt8|UniChar|UniCharCount|UniCharCountPtr|UniCharPtr|UnicodeScalarValue|UniversalProcHandle|UniversalProcPtr\n|UnsignedFixed|UnsignedFixedPtr|UnsignedWide|UTF16Char|UTF32Char|UTF8Char)\n\\b",
351
- name: "support.type.mac-classic.c"
352
- },
353
- {
354
- match: "\\b([A-Za-z0-9_]+_t)\\b",
355
- name: "support.type.posix-reserved.c"
356
- },
357
- {
358
- include: "#block"
359
- },
360
- {
361
- include: "#parens"
362
- },
363
- {
500
+ anon_pattern_range_7: {
364
501
  name: "meta.function.c",
365
502
  begin: "(?<!\\w)(?!\\s*(?:atomic_uint_least64_t|atomic_uint_least16_t|atomic_uint_least32_t|atomic_uint_least8_t|atomic_int_least16_t|atomic_uint_fast64_t|atomic_uint_fast32_t|atomic_int_least64_t|atomic_int_least32_t|pthread_rwlockattr_t|atomic_uint_fast16_t|pthread_mutexattr_t|atomic_int_fast16_t|atomic_uint_fast8_t|atomic_int_fast64_t|atomic_int_least8_t|atomic_int_fast32_t|atomic_int_fast8_t|pthread_condattr_t|pthread_rwlock_t|atomic_uintptr_t|atomic_ptrdiff_t|atomic_uintmax_t|atomic_intmax_t|atomic_char32_t|atomic_intptr_t|atomic_char16_t|pthread_mutex_t|pthread_cond_t|atomic_wchar_t|uint_least64_t|uint_least32_t|uint_least16_t|pthread_once_t|pthread_attr_t|uint_least8_t|int_least32_t|int_least16_t|pthread_key_t|uint_fast32_t|uint_fast64_t|uint_fast16_t|atomic_size_t|atomic_ushort|atomic_ullong|int_least64_t|atomic_ulong|int_least8_t|int_fast16_t|int_fast32_t|int_fast64_t|uint_fast8_t|memory_order|atomic_schar|atomic_uchar|atomic_short|atomic_llong|thread_local|atomic_bool|atomic_uint|atomic_long|int_fast8_t|suseconds_t|atomic_char|atomic_int|useconds_t|_Imaginary|uintmax_t|uintmax_t|in_addr_t|in_port_t|_Noreturn|blksize_t|pthread_t|uintptr_t|volatile|u_quad_t|blkcnt_t|intmax_t|intptr_t|_Complex|uint16_t|uint32_t|uint64_t|_Alignof|_Alignas|continue|unsigned|restrict|intmax_t|register|int64_t|qaddr_t|segsz_t|_Atomic|alignas|default|caddr_t|nlink_t|typedef|u_short|fixpt_t|clock_t|swblk_t|ssize_t|alignof|daddr_t|int16_t|int32_t|uint8_t|struct|mode_t|size_t|time_t|ushort|u_long|u_char|int8_t|double|signed|static|extern|inline|return|switch|xor_eq|and_eq|bitand|not_eq|sizeof|quad_t|uid_t|bitor|union|off_t|key_t|ino_t|compl|u_int|short|const|false|while|float|pid_t|break|_Bool|or_eq|div_t|dev_t|gid_t|id_t|long|case|goto|else|bool|auto|id_t|enum|uint|true|NULL|void|char|for|not|int|and|xor|do|or|if)\\s*\\()(?=[a-zA-Z_]\\w*\\s*\\()",
366
503
  end: "(?!\\G)(?<=\\))",
@@ -370,10 +507,7 @@ var patterns = [
370
507
  }
371
508
  ]
372
509
  },
373
- {
374
- include: "#line_continuation_character"
375
- },
376
- {
510
+ anon_pattern_range_8: {
377
511
  name: "meta.bracket.square.access.c",
378
512
  begin: "([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\]\\)]))?(\\[)(?!\\])",
379
513
  beginCaptures: {
@@ -396,72 +530,10 @@ var patterns = [
396
530
  }
397
531
  ]
398
532
  },
399
- {
533
+ anon_pattern_range_9: {
400
534
  name: "storage.modifier.array.bracket.square.c",
401
535
  match: "\\[\\s*\\]"
402
536
  },
403
- {
404
- match: ";",
405
- name: "punctuation.terminator.statement.c"
406
- },
407
- {
408
- match: ",",
409
- name: "punctuation.separator.delimiter.c"
410
- }
411
- ];
412
- var repository = {
413
- "access-method": {
414
- name: "meta.function-call.member.c",
415
- begin: "([a-zA-Z_][a-zA-Z_0-9]*|(?<=[\\]\\)]))\\s*(?:(\\.)|(->))((?:(?:[a-zA-Z_][a-zA-Z_0-9]*)\\s*(?:(?:\\.)|(?:->)))*)\\s*([a-zA-Z_][a-zA-Z_0-9]*)(\\()",
416
- beginCaptures: {
417
- "1": {
418
- name: "variable.object.c"
419
- },
420
- "2": {
421
- name: "punctuation.separator.dot-access.c"
422
- },
423
- "3": {
424
- name: "punctuation.separator.pointer-access.c"
425
- },
426
- "4": {
427
- patterns: [
428
- {
429
- match: "\\.",
430
- name: "punctuation.separator.dot-access.c"
431
- },
432
- {
433
- match: "->",
434
- name: "punctuation.separator.pointer-access.c"
435
- },
436
- {
437
- match: "[a-zA-Z_][a-zA-Z_0-9]*",
438
- name: "variable.object.c"
439
- },
440
- {
441
- name: "everything.else.c",
442
- match: ".+"
443
- }
444
- ]
445
- },
446
- "5": {
447
- name: "entity.name.function.member.c"
448
- },
449
- "6": {
450
- name: "punctuation.section.arguments.begin.bracket.round.function.member.c"
451
- }
452
- },
453
- end: "\\)",
454
- endCaptures: {
455
- "0": {
456
- name: "punctuation.section.arguments.end.bracket.round.function.member.c"
457
- }
458
- },
459
- patterns: [
460
- {
461
- include: "#function-call-innards"
462
- }
463
- ]
464
- },
465
537
  backslash_escapes: {
466
538
  match: "(?x)\\\\ (\n\\\\\t\t\t |\n[abefnprtv'\"?] |\n[0-3][0-7]{,2}\t |\n[4-7]\\d?\t\t|\nx[a-fA-F0-9]{,2} |\nu[a-fA-F0-9]{,4} |\nU[a-fA-F0-9]{,8} )",
467
539
  name: "constant.character.escape.c"
@@ -490,6 +562,40 @@ var repository = {
490
562
  }
491
563
  ]
492
564
  },
565
+ block_comment: {
566
+ patterns: [
567
+ {
568
+ begin: "\\s*+(\\/\\*)",
569
+ end: "\\*\\/",
570
+ beginCaptures: {
571
+ "1": {
572
+ name: "punctuation.definition.comment.begin.c"
573
+ }
574
+ },
575
+ endCaptures: {
576
+ "0": {
577
+ name: "punctuation.definition.comment.end.c"
578
+ }
579
+ },
580
+ name: "comment.block.c"
581
+ },
582
+ {
583
+ begin: "\\s*+(\\/\\*)",
584
+ end: "\\*\\/",
585
+ beginCaptures: {
586
+ "1": {
587
+ name: "punctuation.definition.comment.begin.c"
588
+ }
589
+ },
590
+ endCaptures: {
591
+ "0": {
592
+ name: "punctuation.definition.comment.end.c"
593
+ }
594
+ },
595
+ name: "comment.block.c"
596
+ }
597
+ ]
598
+ },
493
599
  block_innards: {
494
600
  patterns: [
495
601
  {
@@ -556,7 +662,7 @@ var repository = {
556
662
  include: "#parens-block"
557
663
  },
558
664
  {
559
- include: "$base"
665
+ include: "$self"
560
666
  }
561
667
  ]
562
668
  },
@@ -631,339 +737,359 @@ var repository = {
631
737
  comments: {
632
738
  patterns: [
633
739
  {
634
- name: "comment.line.double-slash.documentation.c",
635
- begin: "(?:^)(?>\\s*)(\\/\\/[!\\/]+)",
636
- beginCaptures: {
637
- "1": {
638
- name: "punctuation.definition.comment.documentation.c"
639
- }
640
- },
641
- end: "(?<=\\n)(?<!\\\\\\n)",
642
740
  patterns: [
643
741
  {
644
- include: "#line_continuation_character"
645
- },
646
- {
647
- match: "(?<=[\\s*!\\/])[\\\\@](?:callergraph|callgraph|else|endif|f\\$|f\\[|f\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\$|\\#|<|>|%|\"|\\.|=|::|\\||\\-\\-|\\-\\-\\-)\\b(?:\\{[^}]*\\})?",
648
- name: "storage.type.class.doxygen.c"
649
- },
650
- {
651
- match: "((?<=[\\s*!\\/])[\\\\@](?:a|em|e))\\s+(\\S+)",
652
- captures: {
653
- "1": {
654
- name: "storage.type.class.doxygen.c"
655
- },
656
- "2": {
657
- name: "markup.italic.doxygen.c"
658
- }
659
- }
660
- },
661
- {
662
- match: "((?<=[\\s*!\\/])[\\\\@]b)\\s+(\\S+)",
663
- captures: {
664
- "1": {
665
- name: "storage.type.class.doxygen.c"
666
- },
667
- "2": {
668
- name: "markup.bold.doxygen.c"
669
- }
670
- }
671
- },
672
- {
673
- match: "((?<=[\\s*!\\/])[\\\\@](?:c|p))\\s+(\\S+)",
674
- captures: {
675
- "1": {
676
- name: "storage.type.class.doxygen.c"
677
- },
678
- "2": {
679
- name: "markup.inline.raw.string.c"
680
- }
681
- }
682
- },
683
- {
684
- match: "(?<=[\\s*!\\/])[\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\b(?:\\{[^}]*\\})?",
685
- name: "storage.type.class.doxygen.c"
686
- },
687
- {
688
- match: "(?<=[\\s*!\\/])[\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\b(?:\\{[^}]*\\})?",
689
- name: "storage.type.class.doxygen.c"
690
- },
691
- {
692
- match: "((?<=[\\s*!\\/])[\\\\@]param)(?:\\s*\\[((?:,?\\s*(?:in|out)\\s*)+)\\])?\\s+(\\b\\w+\\b)",
693
- captures: {
694
- "1": {
695
- name: "storage.type.class.doxygen.c"
696
- },
697
- "2": {
742
+ patterns: [
743
+ {
744
+ name: "comment.line.double-slash.documentation.c",
745
+ begin: "(?:^)(?>\\s*)(\\/\\/[!\\/]+)",
746
+ beginCaptures: {
747
+ "1": {
748
+ name: "punctuation.definition.comment.documentation.c"
749
+ }
750
+ },
751
+ end: "(?<=\\n)(?<!\\\\\\n)",
698
752
  patterns: [
699
753
  {
700
- match: "in|out",
701
- name: "keyword.other.parameter.direction.$0.c"
754
+ include: "#line_continuation_character"
755
+ },
756
+ {
757
+ match: "(?<=[\\s*!\\/])[\\\\@](?:callergraph|callgraph|else|endif|f\\$|f\\[|f\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\$|\\#|<|>|%|\"|\\.|=|::|\\||\\-\\-|\\-\\-\\-)\\b(?:\\{[^}]*\\})?",
758
+ name: "storage.type.class.doxygen.c"
759
+ },
760
+ {
761
+ match: "((?<=[\\s*!\\/])[\\\\@](?:a|em|e))\\s+(\\S+)",
762
+ captures: {
763
+ "1": {
764
+ name: "storage.type.class.doxygen.c"
765
+ },
766
+ "2": {
767
+ name: "markup.italic.doxygen.c"
768
+ }
769
+ }
770
+ },
771
+ {
772
+ match: "((?<=[\\s*!\\/])[\\\\@]b)\\s+(\\S+)",
773
+ captures: {
774
+ "1": {
775
+ name: "storage.type.class.doxygen.c"
776
+ },
777
+ "2": {
778
+ name: "markup.bold.doxygen.c"
779
+ }
780
+ }
781
+ },
782
+ {
783
+ match: "((?<=[\\s*!\\/])[\\\\@](?:c|p))\\s+(\\S+)",
784
+ captures: {
785
+ "1": {
786
+ name: "storage.type.class.doxygen.c"
787
+ },
788
+ "2": {
789
+ name: "markup.inline.raw.string.c"
790
+ }
791
+ }
792
+ },
793
+ {
794
+ match: "(?<=[\\s*!\\/])[\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\b(?:\\{[^}]*\\})?",
795
+ name: "storage.type.class.doxygen.c"
796
+ },
797
+ {
798
+ match: "(?<=[\\s*!\\/])[\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\b(?:\\{[^}]*\\})?",
799
+ name: "storage.type.class.doxygen.c"
800
+ },
801
+ {
802
+ match: "((?<=[\\s*!\\/])[\\\\@]param)(?:\\s*\\[((?:,?\\s*(?:in|out)\\s*)+)\\])?\\s+(\\b\\w+\\b)",
803
+ captures: {
804
+ "1": {
805
+ name: "storage.type.class.doxygen.c"
806
+ },
807
+ "2": {
808
+ patterns: [
809
+ {
810
+ match: "in|out",
811
+ name: "keyword.other.parameter.direction.$0.c"
812
+ }
813
+ ]
814
+ },
815
+ "3": {
816
+ name: "variable.parameter.c"
817
+ }
818
+ }
819
+ },
820
+ {
821
+ match: "(?<=[\\s*!\\/])[\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|todo|tparam|version|warning|xrefitem)\\b(?:\\{[^}]*\\})?",
822
+ name: "storage.type.class.doxygen.c"
823
+ },
824
+ {
825
+ match: "(?<=[\\s*!\\/])[\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|uml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\b(?:\\{[^}]*\\})?",
826
+ name: "storage.type.class.doxygen.c"
827
+ },
828
+ {
829
+ match: "(?:\\b[A-Z]+:|@[a-z_]+:)",
830
+ name: "storage.type.class.gtkdoc"
702
831
  }
703
832
  ]
704
833
  },
705
- "3": {
706
- name: "variable.parameter.c"
707
- }
708
- }
709
- },
710
- {
711
- match: "(?<=[\\s*!\\/])[\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|todo|tparam|version|warning|xrefitem)\\b(?:\\{[^}]*\\})?",
712
- name: "storage.type.class.doxygen.c"
713
- },
714
- {
715
- match: "(?<=[\\s*!\\/])[\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|uml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\b(?:\\{[^}]*\\})?",
716
- name: "storage.type.class.doxygen.c"
717
- },
718
- {
719
- match: "(?:\\b[A-Z]+:|@[a-z_]+:)",
720
- name: "storage.type.class.gtkdoc"
721
- }
722
- ]
723
- },
724
- {
725
- match: "(\\/\\*[!*]+(?=\\s))(.+)([!*]*\\*\\/)",
726
- captures: {
727
- "1": {
728
- name: "punctuation.definition.comment.begin.documentation.c"
729
- },
730
- "2": {
731
- patterns: [
732
834
  {
733
- match: "(?<=[\\s*!\\/])[\\\\@](?:callergraph|callgraph|else|endif|f\\$|f\\[|f\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\$|\\#|<|>|%|\"|\\.|=|::|\\||\\-\\-|\\-\\-\\-)\\b(?:\\{[^}]*\\})?",
734
- name: "storage.type.class.doxygen.c"
835
+ match: "(\\/\\*[!*]+(?=\\s))(.+)([!*]*\\*\\/)",
836
+ captures: {
837
+ "1": {
838
+ name: "punctuation.definition.comment.begin.documentation.c"
839
+ },
840
+ "2": {
841
+ patterns: [
842
+ {
843
+ match: "(?<=[\\s*!\\/])[\\\\@](?:callergraph|callgraph|else|endif|f\\$|f\\[|f\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\$|\\#|<|>|%|\"|\\.|=|::|\\||\\-\\-|\\-\\-\\-)\\b(?:\\{[^}]*\\})?",
844
+ name: "storage.type.class.doxygen.c"
845
+ },
846
+ {
847
+ match: "((?<=[\\s*!\\/])[\\\\@](?:a|em|e))\\s+(\\S+)",
848
+ captures: {
849
+ "1": {
850
+ name: "storage.type.class.doxygen.c"
851
+ },
852
+ "2": {
853
+ name: "markup.italic.doxygen.c"
854
+ }
855
+ }
856
+ },
857
+ {
858
+ match: "((?<=[\\s*!\\/])[\\\\@]b)\\s+(\\S+)",
859
+ captures: {
860
+ "1": {
861
+ name: "storage.type.class.doxygen.c"
862
+ },
863
+ "2": {
864
+ name: "markup.bold.doxygen.c"
865
+ }
866
+ }
867
+ },
868
+ {
869
+ match: "((?<=[\\s*!\\/])[\\\\@](?:c|p))\\s+(\\S+)",
870
+ captures: {
871
+ "1": {
872
+ name: "storage.type.class.doxygen.c"
873
+ },
874
+ "2": {
875
+ name: "markup.inline.raw.string.c"
876
+ }
877
+ }
878
+ },
879
+ {
880
+ match: "(?<=[\\s*!\\/])[\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\b(?:\\{[^}]*\\})?",
881
+ name: "storage.type.class.doxygen.c"
882
+ },
883
+ {
884
+ match: "(?<=[\\s*!\\/])[\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\b(?:\\{[^}]*\\})?",
885
+ name: "storage.type.class.doxygen.c"
886
+ },
887
+ {
888
+ match: "((?<=[\\s*!\\/])[\\\\@]param)(?:\\s*\\[((?:,?\\s*(?:in|out)\\s*)+)\\])?\\s+(\\b\\w+\\b)",
889
+ captures: {
890
+ "1": {
891
+ name: "storage.type.class.doxygen.c"
892
+ },
893
+ "2": {
894
+ patterns: [
895
+ {
896
+ match: "in|out",
897
+ name: "keyword.other.parameter.direction.$0.c"
898
+ }
899
+ ]
900
+ },
901
+ "3": {
902
+ name: "variable.parameter.c"
903
+ }
904
+ }
905
+ },
906
+ {
907
+ match: "(?<=[\\s*!\\/])[\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|todo|tparam|version|warning|xrefitem)\\b(?:\\{[^}]*\\})?",
908
+ name: "storage.type.class.doxygen.c"
909
+ },
910
+ {
911
+ match: "(?<=[\\s*!\\/])[\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|uml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\b(?:\\{[^}]*\\})?",
912
+ name: "storage.type.class.doxygen.c"
913
+ },
914
+ {
915
+ match: "(?:\\b[A-Z]+:|@[a-z_]+:)",
916
+ name: "storage.type.class.gtkdoc"
917
+ }
918
+ ]
919
+ },
920
+ "3": {
921
+ name: "punctuation.definition.comment.end.documentation.c"
922
+ }
923
+ },
924
+ name: "comment.block.documentation.c"
735
925
  },
736
926
  {
737
- match: "((?<=[\\s*!\\/])[\\\\@](?:a|em|e))\\s+(\\S+)",
738
- captures: {
927
+ name: "comment.block.documentation.c",
928
+ begin: "((?>\\s*)\\/\\*[!*]+(?:(?:\\n|$)|(?=\\s)))",
929
+ beginCaptures: {
739
930
  "1": {
931
+ name: "punctuation.definition.comment.begin.documentation.c"
932
+ }
933
+ },
934
+ end: "([!*]*\\*\\/)",
935
+ endCaptures: {
936
+ "1": {
937
+ name: "punctuation.definition.comment.end.documentation.c"
938
+ }
939
+ },
940
+ patterns: [
941
+ {
942
+ match: "(?<=[\\s*!\\/])[\\\\@](?:callergraph|callgraph|else|endif|f\\$|f\\[|f\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\$|\\#|<|>|%|\"|\\.|=|::|\\||\\-\\-|\\-\\-\\-)\\b(?:\\{[^}]*\\})?",
943
+ name: "storage.type.class.doxygen.c"
944
+ },
945
+ {
946
+ match: "((?<=[\\s*!\\/])[\\\\@](?:a|em|e))\\s+(\\S+)",
947
+ captures: {
948
+ "1": {
949
+ name: "storage.type.class.doxygen.c"
950
+ },
951
+ "2": {
952
+ name: "markup.italic.doxygen.c"
953
+ }
954
+ }
955
+ },
956
+ {
957
+ match: "((?<=[\\s*!\\/])[\\\\@]b)\\s+(\\S+)",
958
+ captures: {
959
+ "1": {
960
+ name: "storage.type.class.doxygen.c"
961
+ },
962
+ "2": {
963
+ name: "markup.bold.doxygen.c"
964
+ }
965
+ }
966
+ },
967
+ {
968
+ match: "((?<=[\\s*!\\/])[\\\\@](?:c|p))\\s+(\\S+)",
969
+ captures: {
970
+ "1": {
971
+ name: "storage.type.class.doxygen.c"
972
+ },
973
+ "2": {
974
+ name: "markup.inline.raw.string.c"
975
+ }
976
+ }
977
+ },
978
+ {
979
+ match: "(?<=[\\s*!\\/])[\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\b(?:\\{[^}]*\\})?",
980
+ name: "storage.type.class.doxygen.c"
981
+ },
982
+ {
983
+ match: "(?<=[\\s*!\\/])[\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\b(?:\\{[^}]*\\})?",
984
+ name: "storage.type.class.doxygen.c"
985
+ },
986
+ {
987
+ match: "((?<=[\\s*!\\/])[\\\\@]param)(?:\\s*\\[((?:,?\\s*(?:in|out)\\s*)+)\\])?\\s+(\\b\\w+\\b)",
988
+ captures: {
989
+ "1": {
990
+ name: "storage.type.class.doxygen.c"
991
+ },
992
+ "2": {
993
+ patterns: [
994
+ {
995
+ match: "in|out",
996
+ name: "keyword.other.parameter.direction.$0.c"
997
+ }
998
+ ]
999
+ },
1000
+ "3": {
1001
+ name: "variable.parameter.c"
1002
+ }
1003
+ }
1004
+ },
1005
+ {
1006
+ match: "(?<=[\\s*!\\/])[\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|todo|tparam|version|warning|xrefitem)\\b(?:\\{[^}]*\\})?",
1007
+ name: "storage.type.class.doxygen.c"
1008
+ },
1009
+ {
1010
+ match: "(?<=[\\s*!\\/])[\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|uml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\b(?:\\{[^}]*\\})?",
740
1011
  name: "storage.type.class.doxygen.c"
741
1012
  },
742
- "2": {
743
- name: "markup.italic.doxygen.c"
1013
+ {
1014
+ match: "(?:\\b[A-Z]+:|@[a-z_]+:)",
1015
+ name: "storage.type.class.gtkdoc"
744
1016
  }
745
- }
1017
+ ]
746
1018
  },
747
1019
  {
748
- match: "((?<=[\\s*!\\/])[\\\\@]b)\\s+(\\S+)",
1020
+ match: "^\\/\\* =(\\s*.*?)\\s*= \\*\\/$\\n?",
749
1021
  captures: {
750
1022
  "1": {
751
- name: "storage.type.class.doxygen.c"
752
- },
753
- "2": {
754
- name: "markup.bold.doxygen.c"
1023
+ name: "meta.toc-list.banner.block.c"
755
1024
  }
756
- }
1025
+ },
1026
+ name: "comment.block.banner.c"
757
1027
  },
758
1028
  {
759
- match: "((?<=[\\s*!\\/])[\\\\@](?:c|p))\\s+(\\S+)",
760
- captures: {
1029
+ name: "comment.block.c",
1030
+ begin: "(\\/\\*)",
1031
+ beginCaptures: {
761
1032
  "1": {
762
- name: "storage.type.class.doxygen.c"
763
- },
764
- "2": {
765
- name: "markup.inline.raw.string.c"
1033
+ name: "punctuation.definition.comment.begin.c"
1034
+ }
1035
+ },
1036
+ end: "(\\*\\/)",
1037
+ endCaptures: {
1038
+ "1": {
1039
+ name: "punctuation.definition.comment.end.c"
766
1040
  }
767
1041
  }
768
1042
  },
769
1043
  {
770
- match: "(?<=[\\s*!\\/])[\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\b(?:\\{[^}]*\\})?",
771
- name: "storage.type.class.doxygen.c"
772
- },
773
- {
774
- match: "(?<=[\\s*!\\/])[\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\b(?:\\{[^}]*\\})?",
775
- name: "storage.type.class.doxygen.c"
776
- },
777
- {
778
- match: "((?<=[\\s*!\\/])[\\\\@]param)(?:\\s*\\[((?:,?\\s*(?:in|out)\\s*)+)\\])?\\s+(\\b\\w+\\b)",
1044
+ match: "^\\/\\/ =(\\s*.*?)\\s*=$\\n?",
779
1045
  captures: {
780
1046
  "1": {
781
- name: "storage.type.class.doxygen.c"
782
- },
783
- "2": {
784
- patterns: [
785
- {
786
- match: "in|out",
787
- name: "keyword.other.parameter.direction.$0.c"
788
- }
789
- ]
790
- },
791
- "3": {
792
- name: "variable.parameter.c"
1047
+ name: "meta.toc-list.banner.line.c"
793
1048
  }
794
- }
795
- },
796
- {
797
- match: "(?<=[\\s*!\\/])[\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|todo|tparam|version|warning|xrefitem)\\b(?:\\{[^}]*\\})?",
798
- name: "storage.type.class.doxygen.c"
799
- },
800
- {
801
- match: "(?<=[\\s*!\\/])[\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|uml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\b(?:\\{[^}]*\\})?",
802
- name: "storage.type.class.doxygen.c"
1049
+ },
1050
+ name: "comment.line.banner.c"
803
1051
  },
804
1052
  {
805
- match: "(?:\\b[A-Z]+:|@[a-z_]+:)",
806
- name: "storage.type.class.gtkdoc"
807
- }
808
- ]
809
- },
810
- "3": {
811
- name: "punctuation.definition.comment.end.documentation.c"
812
- }
813
- },
814
- name: "comment.block.documentation.c"
815
- },
816
- {
817
- name: "comment.block.documentation.c",
818
- begin: "((?>\\s*)\\/\\*[!*]+(?:(?:\\n|$)|(?=\\s)))",
819
- beginCaptures: {
820
- "1": {
821
- name: "punctuation.definition.comment.begin.documentation.c"
822
- }
823
- },
824
- end: "([!*]*\\*\\/)",
825
- endCaptures: {
826
- "1": {
827
- name: "punctuation.definition.comment.end.documentation.c"
828
- }
829
- },
830
- patterns: [
831
- {
832
- match: "(?<=[\\s*!\\/])[\\\\@](?:callergraph|callgraph|else|endif|f\\$|f\\[|f\\]|hidecallergraph|hidecallgraph|hiderefby|hiderefs|hideinitializer|htmlinclude|n|nosubgrouping|private|privatesection|protected|protectedsection|public|publicsection|pure|showinitializer|showrefby|showrefs|tableofcontents|\\$|\\#|<|>|%|\"|\\.|=|::|\\||\\-\\-|\\-\\-\\-)\\b(?:\\{[^}]*\\})?",
833
- name: "storage.type.class.doxygen.c"
834
- },
835
- {
836
- match: "((?<=[\\s*!\\/])[\\\\@](?:a|em|e))\\s+(\\S+)",
837
- captures: {
838
- "1": {
839
- name: "storage.type.class.doxygen.c"
840
- },
841
- "2": {
842
- name: "markup.italic.doxygen.c"
843
- }
844
- }
845
- },
846
- {
847
- match: "((?<=[\\s*!\\/])[\\\\@]b)\\s+(\\S+)",
848
- captures: {
849
- "1": {
850
- name: "storage.type.class.doxygen.c"
851
- },
852
- "2": {
853
- name: "markup.bold.doxygen.c"
854
- }
855
- }
856
- },
857
- {
858
- match: "((?<=[\\s*!\\/])[\\\\@](?:c|p))\\s+(\\S+)",
859
- captures: {
860
- "1": {
861
- name: "storage.type.class.doxygen.c"
862
- },
863
- "2": {
864
- name: "markup.inline.raw.string.c"
865
- }
866
- }
867
- },
868
- {
869
- match: "(?<=[\\s*!\\/])[\\\\@](?:a|anchor|b|c|cite|copybrief|copydetail|copydoc|def|dir|dontinclude|e|em|emoji|enum|example|extends|file|idlexcept|implements|include|includedoc|includelineno|latexinclude|link|memberof|namespace|p|package|ref|refitem|related|relates|relatedalso|relatesalso|verbinclude)\\b(?:\\{[^}]*\\})?",
870
- name: "storage.type.class.doxygen.c"
871
- },
872
- {
873
- match: "(?<=[\\s*!\\/])[\\\\@](?:addindex|addtogroup|category|class|defgroup|diafile|dotfile|elseif|fn|headerfile|if|ifnot|image|ingroup|interface|line|mainpage|mscfile|name|overload|page|property|protocol|section|skip|skipline|snippet|snippetdoc|snippetlineno|struct|subpage|subsection|subsubsection|typedef|union|until|vhdlflow|weakgroup)\\b(?:\\{[^}]*\\})?",
874
- name: "storage.type.class.doxygen.c"
875
- },
876
- {
877
- match: "((?<=[\\s*!\\/])[\\\\@]param)(?:\\s*\\[((?:,?\\s*(?:in|out)\\s*)+)\\])?\\s+(\\b\\w+\\b)",
878
- captures: {
879
- "1": {
880
- name: "storage.type.class.doxygen.c"
881
- },
882
- "2": {
1053
+ begin: "((?:^[ \\t]+)?)(?=\\/\\/)",
1054
+ beginCaptures: {
1055
+ "1": {
1056
+ name: "punctuation.whitespace.comment.leading.c"
1057
+ }
1058
+ },
1059
+ end: "(?!\\G)",
883
1060
  patterns: [
884
1061
  {
885
- match: "in|out",
886
- name: "keyword.other.parameter.direction.$0.c"
1062
+ name: "comment.line.double-slash.c",
1063
+ begin: "(\\/\\/)",
1064
+ beginCaptures: {
1065
+ "1": {
1066
+ name: "punctuation.definition.comment.c"
1067
+ }
1068
+ },
1069
+ end: "(?=\\n)",
1070
+ patterns: [
1071
+ {
1072
+ include: "#line_continuation_character"
1073
+ }
1074
+ ]
887
1075
  }
888
1076
  ]
889
- },
890
- "3": {
891
- name: "variable.parameter.c"
892
1077
  }
893
- }
894
- },
895
- {
896
- match: "(?<=[\\s*!\\/])[\\\\@](?:arg|attention|author|authors|brief|bug|copyright|date|deprecated|details|exception|invariant|li|note|par|paragraph|param|post|pre|remark|remarks|result|return|returns|retval|sa|see|short|since|test|throw|todo|tparam|version|warning|xrefitem)\\b(?:\\{[^}]*\\})?",
897
- name: "storage.type.class.doxygen.c"
1078
+ ]
898
1079
  },
899
1080
  {
900
- match: "(?<=[\\s*!\\/])[\\\\@](?:code|cond|docbookonly|dot|htmlonly|internal|latexonly|link|manonly|msc|parblock|rtfonly|secreflist|uml|verbatim|xmlonly|endcode|endcond|enddocbookonly|enddot|endhtmlonly|endinternal|endlatexonly|endlink|endmanonly|endmsc|endparblock|endrtfonly|endsecreflist|enduml|endverbatim|endxmlonly)\\b(?:\\{[^}]*\\})?",
901
- name: "storage.type.class.doxygen.c"
1081
+ include: "#block_comment"
902
1082
  },
903
1083
  {
904
- match: "(?:\\b[A-Z]+:|@[a-z_]+:)",
905
- name: "storage.type.class.gtkdoc"
1084
+ include: "#line_comment"
906
1085
  }
907
1086
  ]
908
1087
  },
909
1088
  {
910
- match: "^\\/\\* =(\\s*.*?)\\s*= \\*\\/$\\n?",
911
- captures: {
912
- "1": {
913
- name: "meta.toc-list.banner.block.c"
914
- }
915
- },
916
- name: "comment.block.banner.c"
917
- },
918
- {
919
- name: "comment.block.c",
920
- begin: "(\\/\\*)",
921
- beginCaptures: {
922
- "1": {
923
- name: "punctuation.definition.comment.begin.c"
924
- }
925
- },
926
- end: "(\\*\\/)",
927
- endCaptures: {
928
- "1": {
929
- name: "punctuation.definition.comment.end.c"
930
- }
931
- }
932
- },
933
- {
934
- match: "^\\/\\/ =(\\s*.*?)\\s*=$\\n?",
935
- captures: {
936
- "1": {
937
- name: "meta.toc-list.banner.line.c"
938
- }
939
- },
940
- name: "comment.line.banner.c"
1089
+ include: "#block_comment"
941
1090
  },
942
1091
  {
943
- begin: "((?:^[ \\t]+)?)(?=\\/\\/)",
944
- beginCaptures: {
945
- "1": {
946
- name: "punctuation.whitespace.comment.leading.c"
947
- }
948
- },
949
- end: "(?!\\G)",
950
- patterns: [
951
- {
952
- name: "comment.line.double-slash.c",
953
- begin: "(\\/\\/)",
954
- beginCaptures: {
955
- "1": {
956
- name: "punctuation.definition.comment.c"
957
- }
958
- },
959
- end: "(?=\\n)",
960
- patterns: [
961
- {
962
- include: "#line_continuation_character"
963
- }
964
- ]
965
- }
966
- ]
1092
+ include: "#line_comment"
967
1093
  }
968
1094
  ]
969
1095
  },
@@ -1033,7 +1159,7 @@ var repository = {
1033
1159
  include: "#function-call-innards"
1034
1160
  },
1035
1161
  {
1036
- include: "$base"
1162
+ include: "$self"
1037
1163
  }
1038
1164
  ]
1039
1165
  },
@@ -1160,32 +1286,124 @@ var repository = {
1160
1286
  ]
1161
1287
  },
1162
1288
  {
1163
- include: "$base"
1289
+ include: "$self"
1164
1290
  }
1165
1291
  ]
1166
1292
  },
1167
1293
  inline_comment: {
1168
- match: "(\\/\\*)((?>(?:[^\\*]|(?>\\*+)[^\\/])*)((?>\\*+)\\/))",
1169
- captures: {
1170
- "1": {
1171
- name: "comment.block.c punctuation.definition.comment.begin.c"
1172
- },
1173
- "2": {
1174
- name: "comment.block.c"
1175
- },
1176
- "3": {
1294
+ patterns: [
1295
+ {
1177
1296
  patterns: [
1178
1297
  {
1179
- match: "\\*\\/",
1180
- name: "comment.block.c punctuation.definition.comment.end.c"
1298
+ match: "(\\/\\*)((?>(?:[^\\*]|(?>\\*+)[^\\/])*)((?>\\*+)\\/))",
1299
+ captures: {
1300
+ "1": {
1301
+ name: "comment.block.c punctuation.definition.comment.begin.c"
1302
+ },
1303
+ "2": {
1304
+ name: "comment.block.c"
1305
+ },
1306
+ "3": {
1307
+ patterns: [
1308
+ {
1309
+ match: "\\*\\/",
1310
+ name: "comment.block.c punctuation.definition.comment.end.c"
1311
+ },
1312
+ {
1313
+ match: "\\*",
1314
+ name: "comment.block.c"
1315
+ }
1316
+ ]
1317
+ }
1318
+ }
1181
1319
  },
1182
1320
  {
1183
- match: "\\*",
1321
+ match: "(\\/\\*)((?:[^\\*]|(?:\\*)++[^\\/])*+((?:\\*)++\\/))",
1322
+ captures: {
1323
+ "1": {
1324
+ name: "comment.block.c punctuation.definition.comment.begin.c"
1325
+ },
1326
+ "2": {
1327
+ name: "comment.block.c"
1328
+ },
1329
+ "3": {
1330
+ patterns: [
1331
+ {
1332
+ match: "\\*\\/",
1333
+ name: "comment.block.c punctuation.definition.comment.end.c"
1334
+ },
1335
+ {
1336
+ match: "\\*",
1337
+ name: "comment.block.c"
1338
+ }
1339
+ ]
1340
+ }
1341
+ }
1342
+ }
1343
+ ]
1344
+ },
1345
+ {
1346
+ match: "(\\/\\*)((?:[^\\*]|(?:\\*)++[^\\/])*+((?:\\*)++\\/))",
1347
+ captures: {
1348
+ "1": {
1349
+ name: "comment.block.c punctuation.definition.comment.begin.c"
1350
+ },
1351
+ "2": {
1184
1352
  name: "comment.block.c"
1353
+ },
1354
+ "3": {
1355
+ patterns: [
1356
+ {
1357
+ match: "\\*\\/",
1358
+ name: "comment.block.c punctuation.definition.comment.end.c"
1359
+ },
1360
+ {
1361
+ match: "\\*",
1362
+ name: "comment.block.c"
1363
+ }
1364
+ ]
1365
+ }
1366
+ }
1367
+ }
1368
+ ]
1369
+ },
1370
+ line_comment: {
1371
+ patterns: [
1372
+ {
1373
+ begin: "\\s*+(\\/\\/)",
1374
+ end: "(?<=\\n)(?<!\\\\\\n)",
1375
+ beginCaptures: {
1376
+ "1": {
1377
+ name: "punctuation.definition.comment.c"
1378
+ }
1379
+ },
1380
+ endCaptures: {
1381
+ },
1382
+ name: "comment.line.double-slash.c",
1383
+ patterns: [
1384
+ {
1385
+ include: "#line_continuation_character"
1386
+ }
1387
+ ]
1388
+ },
1389
+ {
1390
+ begin: "\\s*+(\\/\\/)",
1391
+ end: "(?<=\\n)(?<!\\\\\\n)",
1392
+ beginCaptures: {
1393
+ "1": {
1394
+ name: "punctuation.definition.comment.c"
1395
+ }
1396
+ },
1397
+ endCaptures: {
1398
+ },
1399
+ name: "comment.line.double-slash.c",
1400
+ patterns: [
1401
+ {
1402
+ include: "#line_continuation_character"
1185
1403
  }
1186
1404
  ]
1187
1405
  }
1188
- }
1406
+ ]
1189
1407
  },
1190
1408
  line_continuation_character: {
1191
1409
  patterns: [
@@ -1613,7 +1831,7 @@ var repository = {
1613
1831
  include: "#function-call-innards"
1614
1832
  },
1615
1833
  {
1616
- include: "$base"
1834
+ include: "$self"
1617
1835
  }
1618
1836
  ]
1619
1837
  }
@@ -1635,7 +1853,7 @@ var repository = {
1635
1853
  },
1636
1854
  patterns: [
1637
1855
  {
1638
- include: "$base"
1856
+ include: "$self"
1639
1857
  }
1640
1858
  ]
1641
1859
  },
@@ -1763,7 +1981,7 @@ var repository = {
1763
1981
  ]
1764
1982
  },
1765
1983
  {
1766
- include: "$base"
1984
+ include: "$self"
1767
1985
  }
1768
1986
  ]
1769
1987
  },
@@ -2058,7 +2276,7 @@ var repository = {
2058
2276
  include: "#member_access"
2059
2277
  },
2060
2278
  {
2061
- include: "$base"
2279
+ include: "$self"
2062
2280
  }
2063
2281
  ]
2064
2282
  },
@@ -2204,7 +2422,7 @@ var repository = {
2204
2422
  ]
2205
2423
  },
2206
2424
  {
2207
- include: "$base"
2425
+ include: "$self"
2208
2426
  }
2209
2427
  ]
2210
2428
  },
@@ -2462,7 +2680,7 @@ var repository = {
2462
2680
  end: "(?=^\\s*((#)\\s*(?:else|elif|endif)\\b))",
2463
2681
  patterns: [
2464
2682
  {
2465
- include: "$base"
2683
+ include: "$self"
2466
2684
  }
2467
2685
  ]
2468
2686
  }
@@ -2653,7 +2871,7 @@ var repository = {
2653
2871
  ]
2654
2872
  },
2655
2873
  {
2656
- include: "$base"
2874
+ include: "$self"
2657
2875
  }
2658
2876
  ]
2659
2877
  }
@@ -2762,7 +2980,7 @@ var repository = {
2762
2980
  end: "(?=^\\s*((#)\\s*endif\\b))",
2763
2981
  patterns: [
2764
2982
  {
2765
- include: "$base"
2983
+ include: "$self"
2766
2984
  }
2767
2985
  ]
2768
2986
  },