textpow 0.10.1 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (193) hide show
  1. data/.travis.yml +7 -0
  2. data/Gemfile +10 -0
  3. data/Gemfile.lock +30 -0
  4. data/{History.txt → History.rdoc} +10 -0
  5. data/{README.txt → MIT-LICENSE.txt} +0 -30
  6. data/README.rdoc +82 -0
  7. data/Rakefile +42 -49
  8. data/bin/plist2syntax +0 -0
  9. data/bin/plist2yaml +0 -0
  10. data/examples/benchmark_js.rb +13 -0
  11. data/examples/jquery.js +9046 -0
  12. data/lib/textpow.rb +43 -3
  13. data/lib/textpow/debug_processor.rb +35 -35
  14. data/lib/textpow/recording_processor.rb +13 -0
  15. data/lib/textpow/score_manager.rb +60 -60
  16. data/lib/textpow/syntax.rb +303 -262
  17. data/lib/textpow/syntax/broken/markdown.syntax +519 -0
  18. data/lib/textpow/syntax/broken/php.syntax +1253 -0
  19. data/lib/textpow/syntax/buggy/nemerle.syntax +74 -0
  20. data/lib/textpow/syntax/old/YAML.yaml +160 -0
  21. data/lib/textpow/syntax/old/txt2tags.yaml +139 -0
  22. data/lib/textpow/syntax/source.actionscript.syntax +97 -0
  23. data/lib/textpow/syntax/source.active4d.library.syntax +21 -0
  24. data/lib/textpow/syntax/source.active4d.syntax +276 -0
  25. data/lib/textpow/syntax/source.ada.syntax +33 -0
  26. data/lib/textpow/syntax/source.antlr.syntax +151 -0
  27. data/lib/textpow/syntax/source.apache-config.mod_perl.syntax +50 -0
  28. data/lib/textpow/syntax/source.apache-config.syntax +191 -0
  29. data/lib/textpow/syntax/source.applescript.syntax +384 -0
  30. data/lib/textpow/syntax/source.asp.syntax +70 -0
  31. data/lib/textpow/syntax/source.asp.vb.net.syntax +129 -0
  32. data/lib/textpow/syntax/source.c++.qt.syntax +26 -0
  33. data/lib/textpow/syntax/source.c++.syntax +186 -0
  34. data/lib/textpow/syntax/source.c-sharp.syntax +59 -0
  35. data/lib/textpow/syntax/source.c.ragel.syntax +201 -0
  36. data/lib/textpow/syntax/source.c.syntax +414 -0
  37. data/lib/textpow/syntax/source.camlp4.ocaml.syntax +36 -0
  38. data/lib/textpow/syntax/source.cm.syntax +32 -0
  39. data/lib/textpow/syntax/source.coffee.syntax +216 -0
  40. data/lib/textpow/syntax/source.context-free.syntax +176 -0
  41. data/lib/textpow/syntax/source.css.beta.syntax +1925 -0
  42. data/lib/textpow/syntax/source.css.syntax +195 -0
  43. data/lib/textpow/syntax/source.d.syntax +142 -0
  44. data/lib/textpow/syntax/source.diff.syntax +81 -0
  45. data/lib/textpow/syntax/source.dot.syntax +47 -0
  46. data/lib/textpow/syntax/source.dylan.syntax +62 -0
  47. data/lib/textpow/syntax/source.eiffel.syntax +78 -0
  48. data/lib/textpow/syntax/source.erlang.syntax +922 -0
  49. data/lib/textpow/syntax/source.fortran.syntax +141 -0
  50. data/lib/textpow/syntax/source.fscript.syntax +80 -0
  51. data/lib/textpow/syntax/source.fxscript.syntax +142 -0
  52. data/lib/textpow/syntax/source.gri.syntax +83 -0
  53. data/lib/textpow/syntax/source.groovy.groovy.syntax +191 -0
  54. data/lib/textpow/syntax/source.haskell.syntax +88 -0
  55. data/lib/textpow/syntax/source.icalendar.syntax +32 -0
  56. data/lib/textpow/syntax/source.inform.syntax +48 -0
  57. data/lib/textpow/syntax/source.ini.syntax +55 -0
  58. data/lib/textpow/syntax/source.io.syntax +81 -0
  59. data/lib/textpow/syntax/source.java-props.syntax +20 -0
  60. data/lib/textpow/syntax/source.java.syntax +211 -0
  61. data/lib/textpow/syntax/source.js.greasemonkey.syntax +34 -0
  62. data/lib/textpow/syntax/source.js.jquery.syntax +114 -0
  63. data/lib/textpow/syntax/source.js.mootools.syntax +572 -0
  64. data/lib/textpow/syntax/source.js.prototype.bracketed.syntax +140 -0
  65. data/lib/textpow/syntax/source.js.prototype.syntax +72 -0
  66. data/lib/textpow/syntax/source.js.syntax +256 -0
  67. data/lib/textpow/syntax/source.js.yui.syntax +176 -0
  68. data/lib/textpow/syntax/source.json.syntax +136 -0
  69. data/lib/textpow/syntax/source.lex.syntax +219 -0
  70. data/lib/textpow/syntax/source.lighttpd-config.syntax +54 -0
  71. data/lib/textpow/syntax/source.lilypond.syntax +492 -0
  72. data/lib/textpow/syntax/source.lisp.syntax +61 -0
  73. data/lib/textpow/syntax/source.logo.syntax +29 -0
  74. data/lib/textpow/syntax/source.logtalk.syntax +152 -0
  75. data/lib/textpow/syntax/source.lua.syntax +86 -0
  76. data/lib/textpow/syntax/source.makefile.syntax +36 -0
  77. data/lib/textpow/syntax/source.matlab.syntax +142 -0
  78. data/lib/textpow/syntax/source.mel.syntax +92 -0
  79. data/lib/textpow/syntax/source.mips.syntax +66 -0
  80. data/lib/textpow/syntax/source.ml.syntax +121 -0
  81. data/lib/textpow/syntax/source.modula-3.syntax +47 -0
  82. data/lib/textpow/syntax/source.nant-build.syntax +53 -0
  83. data/lib/textpow/syntax/source.objc++.syntax +18 -0
  84. data/lib/textpow/syntax/source.objc.syntax +233 -0
  85. data/lib/textpow/syntax/source.ocaml.syntax +764 -0
  86. data/lib/textpow/syntax/source.ocamllex.syntax +167 -0
  87. data/lib/textpow/syntax/source.ocamlyacc.syntax +184 -0
  88. data/lib/textpow/syntax/source.open-gl.syntax +14 -0
  89. data/lib/textpow/syntax/source.pascal.syntax +77 -0
  90. data/lib/textpow/syntax/source.pascal.vectorscript.syntax +57 -0
  91. data/lib/textpow/syntax/source.perl.syntax +1113 -0
  92. data/lib/textpow/syntax/source.php.cake.syntax +55 -0
  93. data/lib/textpow/syntax/source.plist.tm-grammar.syntax +708 -0
  94. data/lib/textpow/syntax/source.postscript.syntax +114 -0
  95. data/lib/textpow/syntax/source.processing.syntax +106 -0
  96. data/lib/textpow/syntax/source.prolog.syntax +40 -0
  97. data/lib/textpow/syntax/source.python.django.syntax +21 -0
  98. data/lib/textpow/syntax/source.python.syntax +868 -0
  99. data/lib/textpow/syntax/source.qmake.syntax +114 -0
  100. data/lib/textpow/syntax/source.quake-config.syntax +32 -0
  101. data/lib/textpow/syntax/source.r-console.syntax +16 -0
  102. data/lib/textpow/syntax/source.r.syntax +81 -0
  103. data/lib/textpow/syntax/source.regexp.oniguruma.syntax +107 -0
  104. data/lib/textpow/syntax/source.regexp.python.syntax +109 -0
  105. data/lib/textpow/syntax/source.regexp.syntax +50 -0
  106. data/lib/textpow/syntax/source.remind.syntax +253 -0
  107. data/lib/textpow/syntax/source.rez.syntax +80 -0
  108. data/lib/textpow/syntax/source.ruby.experimental.syntax +145 -0
  109. data/lib/textpow/syntax/source.ruby.rails.syntax +88 -0
  110. data/lib/textpow/syntax/source.ruby.syntax +1035 -0
  111. data/lib/textpow/syntax/source.s5.syntax +69 -0
  112. data/lib/textpow/syntax/source.sass.syntax +45 -0
  113. data/lib/textpow/syntax/source.scheme.syntax +347 -0
  114. data/lib/textpow/syntax/source.scilab.syntax +41 -0
  115. data/lib/textpow/syntax/source.scss.syntax +527 -0
  116. data/lib/textpow/syntax/source.shell.syntax +384 -0
  117. data/lib/textpow/syntax/source.slate.syntax +149 -0
  118. data/lib/textpow/syntax/source.smarty.syntax +63 -0
  119. data/lib/textpow/syntax/source.sql.ruby.syntax +18 -0
  120. data/lib/textpow/syntax/source.sql.syntax +237 -0
  121. data/lib/textpow/syntax/source.ssh-config.syntax +33 -0
  122. data/lib/textpow/syntax/source.strings.syntax +39 -0
  123. data/lib/textpow/syntax/source.swig.syntax +57 -0
  124. data/lib/textpow/syntax/source.tcl.macports.syntax +163 -0
  125. data/lib/textpow/syntax/source.tcl.syntax +152 -0
  126. data/lib/textpow/syntax/source.yaml.syntax +160 -0
  127. data/lib/textpow/syntax/text.active4d-ini.syntax +50 -0
  128. data/lib/textpow/syntax/text.bbcode.syntax +287 -0
  129. data/lib/textpow/syntax/text.bibtex.syntax +151 -0
  130. data/lib/textpow/syntax/text.blog.html.syntax +41 -0
  131. data/lib/textpow/syntax/text.blog.markdown.syntax +42 -0
  132. data/lib/textpow/syntax/text.blog.syntax +27 -0
  133. data/lib/textpow/syntax/text.blog.textile.syntax +27 -0
  134. data/lib/textpow/syntax/text.gtdalt.syntax +143 -0
  135. data/lib/textpow/syntax/text.haml.syntax +88 -0
  136. data/lib/textpow/syntax/text.html.asp.net.syntax +424 -0
  137. data/lib/textpow/syntax/text.html.asp.syntax +27 -0
  138. data/lib/textpow/syntax/text.html.basic.syntax +362 -0
  139. data/lib/textpow/syntax/text.html.cfm.syntax +119 -0
  140. data/lib/textpow/syntax/text.html.django.syntax +36 -0
  141. data/lib/textpow/syntax/text.html.dokuwiki.syntax +204 -0
  142. data/lib/textpow/syntax/text.html.doxygen.syntax +43 -0
  143. data/lib/textpow/syntax/text.html.markdown.multimarkdown.syntax +39 -0
  144. data/lib/textpow/syntax/text.html.mason.syntax +119 -0
  145. data/lib/textpow/syntax/text.html.mediawiki.syntax +567 -0
  146. data/lib/textpow/syntax/text.html.mt.syntax +162 -0
  147. data/lib/textpow/syntax/text.html.ruby.syntax +40 -0
  148. data/lib/textpow/syntax/text.html.strict.active4d.syntax +311 -0
  149. data/lib/textpow/syntax/text.html.tcl.syntax +26 -0
  150. data/lib/textpow/syntax/text.html.textile.syntax +215 -0
  151. data/lib/textpow/syntax/text.html.tt.syntax +121 -0
  152. data/lib/textpow/syntax/text.html.twiki.syntax +241 -0
  153. data/lib/textpow/syntax/text.html.xhtml.1-strict.syntax +4027 -0
  154. data/lib/textpow/syntax/text.log.latex.syntax +50 -0
  155. data/lib/textpow/syntax/text.mail.markdown.syntax +118 -0
  156. data/lib/textpow/syntax/text.man.syntax +17 -0
  157. data/lib/textpow/syntax/text.moinmoin.syntax +189 -0
  158. data/lib/textpow/syntax/text.plain.gtd.syntax +22 -0
  159. data/lib/textpow/syntax/text.plain.release-notes.syntax +46 -0
  160. data/lib/textpow/syntax/text.plain.syntax +32 -0
  161. data/lib/textpow/syntax/text.plist.syntax +635 -0
  162. data/lib/textpow/syntax/text.pmwiki.syntax +113 -0
  163. data/lib/textpow/syntax/text.restructuredtext.syntax +250 -0
  164. data/lib/textpow/syntax/text.setext.syntax +147 -0
  165. data/lib/textpow/syntax/text.subversion-commit.syntax +36 -0
  166. data/lib/textpow/syntax/text.tabular.csv.syntax +68 -0
  167. data/lib/textpow/syntax/text.tabular.tsv.syntax +50 -0
  168. data/lib/textpow/syntax/text.tex.latex.beamer.syntax +41 -0
  169. data/lib/textpow/syntax/text.tex.latex.haskell.syntax +24 -0
  170. data/lib/textpow/syntax/text.tex.latex.memoir.syntax +64 -0
  171. data/lib/textpow/syntax/text.tex.latex.rd.syntax +91 -0
  172. data/lib/textpow/syntax/text.tex.latex.sweave.syntax +84 -0
  173. data/lib/textpow/syntax/text.tex.latex.syntax +566 -0
  174. data/lib/textpow/syntax/text.tex.math.syntax +49 -0
  175. data/lib/textpow/syntax/text.tex.syntax +86 -0
  176. data/lib/textpow/syntax/text.txt2tags.syntax +79 -0
  177. data/lib/textpow/syntax/text.xml.apple-dist.syntax +77 -0
  178. data/lib/textpow/syntax/text.xml.strict.syntax +92 -0
  179. data/lib/textpow/syntax/text.xml.syntax +180 -0
  180. data/lib/textpow/syntax/text.xml.xsl.syntax +60 -0
  181. data/lib/textpow/version.rb +3 -0
  182. data/spec/fixtures/objeck.plist +107 -0
  183. data/spec/fixtures/utf8.txt +1 -0
  184. data/spec/spec_helper.rb +2 -0
  185. data/spec/textpow/score_manager_spec.rb +20 -0
  186. data/spec/textpow/syntax_files_spec.rb +26 -0
  187. data/spec/textpow/syntax_spec.rb +225 -0
  188. data/spec/textpow_spec.rb +57 -0
  189. data/textpow.gemspec +19 -0
  190. metadata +246 -68
  191. data/Manifest.txt +0 -13
  192. data/mm/manual.mm +0 -266
  193. data/test/test_textpow.rb +0 -25
@@ -0,0 +1,70 @@
1
+ ---
2
+ name: ASP
3
+ fileTypes:
4
+ - asa
5
+ scopeName: source.asp
6
+ uuid: 291022B4-6B1D-11D9-90EB-000D93589AF6
7
+ patterns:
8
+ - name: meta.function.asp
9
+ captures:
10
+ "1":
11
+ name: storage.type.function.asp
12
+ "2":
13
+ name: entity.name.function.asp
14
+ "3":
15
+ name: punctuation.definition.parameters.asp
16
+ "4":
17
+ name: variable.parameter.function.asp
18
+ "5":
19
+ name: punctuation.definition.parameters.asp
20
+ match: ^\s*((?i:function|sub))\s*([a-zA-Z_]\w*)\s*(\()([^)]*)(\)).*\n?
21
+ - name: comment.line.apostrophe.asp
22
+ captures:
23
+ "1":
24
+ name: punctuation.definition.comment.asp
25
+ match: (').*$\n?
26
+ - name: keyword.control.asp
27
+ match: (?i:\b(If|Then|Else|ElseIf|End If|While|Wend|For|To|Each|Case|Select|End Select|Return|Continue|Do|Until|Loop|Next|With|Exit Do|Exit For|Exit Function|Exit Property|Exit Sub)\b)
28
+ - name: keyword.operator.asp
29
+ match: (?i:\b(Mod|And|Not|Or|Xor)\b)
30
+ - name: storage.type.asp
31
+ match: (?i:\b(Call|Class|Const|Dim|Redim|Function|Sub|End sub|End Function|Set|Let|Get|New|Randomize|Option Explicit|On Error Resume Next|On Error GoTo)\b)
32
+ - name: storage.modifier.asp
33
+ match: (?i:\b(Private|Public|Default)\b)
34
+ - name: constant.language.asp
35
+ match: (?i:\b(Empty|False|Nothing|Null|True)\b)
36
+ - name: string.quoted.double.asp
37
+ endCaptures:
38
+ "0":
39
+ name: punctuation.definition.string.end.asp
40
+ begin: "\""
41
+ beginCaptures:
42
+ "0":
43
+ name: punctuation.definition.string.begin.asp
44
+ end: "\"(?!\")"
45
+ patterns:
46
+ - name: constant.character.escape.apostrophe.asp
47
+ match: "\"\""
48
+ - name: variable.other.asp
49
+ captures:
50
+ "1":
51
+ name: punctuation.definition.variable.asp
52
+ match: (\$)[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?\b
53
+ - name: support.class.asp
54
+ match: (?i:\b(Application|ObjectContext|Request|Response|Server|Session)\b)
55
+ - name: support.class.collection.asp
56
+ match: (?i:\b(Contents|StaticObjects|ClientCertificate|Cookies|Form|QueryString|ServerVariables)\b)
57
+ - name: support.constant.asp
58
+ match: (?i:\b(TotalBytes|Buffer|CacheControl|Charset|ContentType|Expires|ExpiresAbsolute|IsClientConnected|PICS|Status|ScriptTimeout|CodePage|LCID|SessionID|Timeout)\b)
59
+ - name: support.function.asp
60
+ match: (?i:\b(Lock|Unlock|SetAbort|SetComplete|BianryRead|AddHeader|AppendToLog|BinaryWrite|Clear|End|Flush|Redirect|Write|CreateObject|HTMLEncode|MapPath|URLEncode|Abandon)\b)
61
+ - name: support.function.event.asp
62
+ match: (?i:\b(Application_OnEnd|Application_OnStart|OnTransactionAbort|OnTransactionCommit|Session_OnEnd|Session_OnStart)\b)
63
+ - name: support.function.vb.asp
64
+ match: (?i:\b(Array|Add|Asc|Atn|CBool|CByte|CCur|CDate|CDbl|Chr|CInt|CLng|Conversions|Cos|CreateObject|CSng|CStr|Date|DateAdd|DateDiff|DatePart|DateSerial|DateValue|Day|Derived|Math|Escape|Eval|Exists|Exp|Filter|FormatCurrency|FormatDateTime|FormatNumber|FormatPercent|GetLocale|GetObject|GetRef|Hex|Hour|InputBox|InStr|InStrRev|Int|Fix|IsArray|IsDate|IsEmpty|IsNull|IsNumeric|IsObject|Item|Items|Join|Keys|LBound|LCase|Left|Len|LoadPicture|Log|LTrim|RTrim|Trim|Maths|Mid|Minute|Month|MonthName|MsgBox|Now|Oct|Remove|RemoveAll|Replace|RGB|Right|Rnd|Round|ScriptEngine|ScriptEngineBuildVersion|ScriptEngineMajorVersion|ScriptEngineMinorVersion|Second|SetLocale|Sgn|Sin|Space|Split|Sqr|StrComp|String|StrReverse|Tan|Time|Timer|TimeSerial|TimeValue|TypeName|UBound|UCase|Unescape|VarType|Weekday|WeekdayName|Year)\b)
65
+ - name: constant.numeric.asp
66
+ match: \b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\.?[0-9]*)|(\.[0-9]+))((e|E)(\+|-)?[0-9]+)?)(L|l|UL|ul|u|U|F|f)?\b
67
+ - name: support.type.vb.asp
68
+ match: (?i:\b(vbtrue|fvbalse|vbcr|vbcrlf|vbformfeed|vblf|vbnewline|vbnullchar|vbnullstring|vbtab|vbverticaltab|vbbinarycompare|vbtextcomparevbsunday|vbmonday|vbtuesday|vbwednesday|vbthursday|vbfriday|vbsaturday|vbusesystemdayofweek|vbfirstjan1|vbfirstfourdays|vbfirstfullweek|vbgeneraldate|vblongdate|vbshortdate|vblongtime|vbshorttime|vbobjecterror|vbEmpty|vbNull|vbInteger|vbLong|vbSingle|vbDouble|vbCurrency|vbDate|vbString|vbObject|vbError|vbBoolean|vbVariant|vbDataObject|vbDecimal|vbByte|vbArray)\b)
69
+ keyEquivalent: ^~A
70
+ comment: "ASP SCRIPTING DICTIONARY \xE2\x80\x93 By Rich Barton: Version 1.0 (based on PHP Scripting Dictionary by Justin French, Sune Foldager and Allan Odgaard) Note: .asp is handled by asp/html"
@@ -0,0 +1,129 @@
1
+ ---
2
+ name: ASP vb.NET
3
+ fileTypes:
4
+ - vb
5
+ scopeName: source.asp.vb.net
6
+ repository:
7
+ round-brackets:
8
+ name: meta.round-brackets
9
+ endCaptures:
10
+ "0":
11
+ name: punctuation.section.round-brackets.end.asp
12
+ begin: \(
13
+ beginCaptures:
14
+ "0":
15
+ name: punctuation.section.round-brackets.begin.asp
16
+ end: \)
17
+ patterns:
18
+ - include: source.asp.vb.net
19
+ uuid: 7F9C9343-D48E-4E7D-BFE8-F680714DCD3E
20
+ foldingStartMarker: (<(?i:(head|table|div|style|script|ul|ol|form|dl))\b.*?>|\{|^\s*<?%?\s*'?\s*(?i:(sub|private\s+Sub|public\s+Sub|function|if|while|For))\s*.*$)
21
+ patterns:
22
+ - name: meta.ending-space
23
+ match: \n
24
+ - include: "#round-brackets"
25
+ - name: meta.leading-space
26
+ begin: ^(?=\t)
27
+ end: (?=[^\t])
28
+ patterns:
29
+ - captures:
30
+ "1":
31
+ name: meta.odd-tab.tabs
32
+ "2":
33
+ name: meta.even-tab.tabs
34
+ match: (\t)(\t)?
35
+ - name: meta.leading-space
36
+ begin: ^(?= )
37
+ end: (?=[^ ])
38
+ patterns:
39
+ - captures:
40
+ "1":
41
+ name: meta.odd-tab.spaces
42
+ "2":
43
+ name: meta.even-tab.spaces
44
+ match: ( )( )?
45
+ - name: meta.function.asp
46
+ captures:
47
+ "1":
48
+ name: storage.type.function.asp
49
+ "2":
50
+ name: entity.name.function.asp
51
+ "3":
52
+ name: punctuation.definition.parameters.asp
53
+ "4":
54
+ name: variable.parameter.function.asp
55
+ "5":
56
+ name: punctuation.definition.parameters.asp
57
+ match: ^\s*((?i:function|sub))\s*([a-zA-Z_]\w*)\s*(\()([^)]*)(\)).*\n?
58
+ - name: comment.line.apostrophe.asp
59
+ begin: "'"
60
+ beginCaptures:
61
+ "0":
62
+ name: punctuation.definition.comment.asp
63
+ end: (?=(\n|%>))
64
+ - name: keyword.control.asp
65
+ match: (?i:\b(If|Then|Else|ElseIf|Else If|End If|While|Wend|For|To|Each|Case|Select|End Select|Return|Continue|Do|Until|Loop|Next|With|Exit Do|Exit For|Exit Function|Exit Property|Exit Sub|IIf)\b)
66
+ - name: keyword.operator.asp
67
+ match: (?i:\b(Mod|And|Not|Or|Xor|as)\b)
68
+ - name: variable.other.dim.asp
69
+ captures:
70
+ "1":
71
+ name: storage.type.asp
72
+ "2":
73
+ name: variable.other.bfeac.asp
74
+ "3":
75
+ name: meta.separator.comma.asp
76
+ match: (?i:(dim)\s*(?:(\b[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?\b)\s*(,?)))
77
+ - name: storage.type.asp
78
+ match: (?i:\s*\b(Call|Class|Const|Dim|Redim|Function|Sub|Private Sub|Public Sub|End sub|End Function|Set|Let|Get|New|Randomize|Option Explicit|On Error Resume Next|On Error GoTo)\b\s*)
79
+ - name: storage.modifier.asp
80
+ match: (?i:\b(Private|Public|Default)\b)
81
+ - name: constant.language.asp
82
+ match: (?i:\s*\b(Empty|False|Nothing|Null|True)\b)
83
+ - name: string.quoted.double.asp
84
+ endCaptures:
85
+ "0":
86
+ name: punctuation.definition.string.end.asp
87
+ begin: "\""
88
+ beginCaptures:
89
+ "0":
90
+ name: punctuation.definition.string.begin.asp
91
+ end: "\""
92
+ patterns:
93
+ - name: constant.character.escape.apostrophe.asp
94
+ match: "\"\""
95
+ - name: variable.other.asp
96
+ captures:
97
+ "1":
98
+ name: punctuation.definition.variable.asp
99
+ match: (\$)[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?\b\s*
100
+ - name: support.class.asp
101
+ match: (?i:\b(Application|ObjectContext|Request|Response|Server|Session)\b)
102
+ - name: support.class.collection.asp
103
+ match: (?i:\b(Contents|StaticObjects|ClientCertificate|Cookies|Form|QueryString|ServerVariables)\b)
104
+ - name: support.constant.asp
105
+ match: (?i:\b(TotalBytes|Buffer|CacheControl|Charset|ContentType|Expires|ExpiresAbsolute|IsClientConnected|PICS|Status|ScriptTimeout|CodePage|LCID|SessionID|Timeout)\b)
106
+ - name: support.function.asp
107
+ match: (?i:\b(Lock|Unlock|SetAbort|SetComplete|BianryRead|AddHeader|AppendToLog|BinaryWrite|Clear|End|Flush|Redirect|Write|CreateObject|HTMLEncode|MapPath|URLEncode|Abandon|Convert|Regex)\b)
108
+ - name: support.function.event.asp
109
+ match: (?i:\b(Application_OnEnd|Application_OnStart|OnTransactionAbort|OnTransactionCommit|Session_OnEnd|Session_OnStart)\b)
110
+ - name: support.type.vb.asp
111
+ match: (?i:(?<=as )(\b[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?\b))
112
+ - name: support.function.vb.asp
113
+ match: (?i:\b(Array|Add|Asc|Atn|CBool|CByte|CCur|CDate|CDbl|Chr|CInt|CLng|Conversions|Cos|CreateObject|CSng|CStr|Date|DateAdd|DateDiff|DatePart|DateSerial|DateValue|Day|Derived|Math|Escape|Eval|Exists|Exp|Filter|FormatCurrency|FormatDateTime|FormatNumber|FormatPercent|GetLocale|GetObject|GetRef|Hex|Hour|InputBox|InStr|InStrRev|Int|Fix|IsArray|IsDate|IsEmpty|IsNull|IsNumeric|IsObject|Item|Items|Join|Keys|LBound|LCase|Left|Len|LoadPicture|Log|LTrim|RTrim|Trim|Maths|Mid|Minute|Month|MonthName|MsgBox|Now|Oct|Remove|RemoveAll|Replace|RGB|Right|Rnd|Round|ScriptEngine|ScriptEngineBuildVersion|ScriptEngineMajorVersion|ScriptEngineMinorVersion|Second|SetLocale|Sgn|Sin|Space|Split|Sqr|StrComp|String|StrReverse|Tan|Time|Timer|TimeSerial|TimeValue|TypeName|UBound|UCase|Unescape|VarType|Weekday|WeekdayName|Year)\b)
114
+ - name: constant.numeric.asp
115
+ match: -?\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\.?[0-9]*)|(\.[0-9]+))((e|E)(\+|-)?[0-9]+)?)(L|l|UL|ul|u|U|F|f)?\b
116
+ - name: support.type.vb.asp
117
+ match: (?i:\b(vbtrue|fvbalse|vbcr|vbcrlf|vbformfeed|vblf|vbnewline|vbnullchar|vbnullstring|int32|vbtab|vbverticaltab|vbbinarycompare|vbtextcomparevbsunday|vbmonday|vbtuesday|vbwednesday|vbthursday|vbfriday|vbsaturday|vbusesystemdayofweek|vbfirstjan1|vbfirstfourdays|vbfirstfullweek|vbgeneraldate|vblongdate|vbshortdate|vblongtime|vbshorttime|vbobjecterror|vbEmpty|vbNull|vbInteger|vbLong|vbSingle|vbDouble|vbCurrency|vbDate|vbString|vbObject|vbError|vbBoolean|vbVariant|vbDataObject|vbDecimal|vbByte|vbArray)\b)
118
+ - name: support.function.asp
119
+ captures:
120
+ "1":
121
+ name: entity.name.function.asp
122
+ match: (?i:(\b[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?\b)(?=\(\)?))
123
+ - name: variable.other.asp
124
+ match: (?i:((?<=(\+|=|-|\&|\\|/|<|>|\(|,))\s*\b([a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?)\b(?!(\(|\.))|\b([a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?)\b(?=\s*(\+|=|-|\&|\\|/|<|>|\(|\)))))
125
+ - name: keyword.operator.js
126
+ match: "!|\\$|%|&|\\*|\\-\\-|\\-|\\+\\+|\\+|~|===|==|=|!=|!==|<=|>=|<<=|>>=|>>>=|<>|<|>|!|&&|\\|\\||\\?\\:|\\*=|/=|%=|\\+=|\\-=|&=|\\^=|\\b(in|instanceof|new|delete|typeof|void)\\b"
127
+ foldingStopMarker: (</(?i:(head|table|div|style|script|ul|ol|form|dl))>?|\}|^\s*<?%?\s*\s*'?\s*(?i:(end|Next))\s*.*$)
128
+ keyEquivalent: ^~A
129
+ comment: Modified from the original ASP bundle. Originally modified by Thomas Aylott subtleGradient.com
@@ -0,0 +1,26 @@
1
+ ---
2
+ name: Qt C++
3
+ fileTypes:
4
+ - cpp
5
+ - h
6
+ firstLineMatch: -\*- C\+\+ -\*-
7
+ scopeName: source.c++.qt
8
+ uuid: C0D24A46-0534-11DB-8949-0011242E4184
9
+ foldingStartMarker: "(?x)\n\
10
+ \t\t /\\*\\*(?!\\*)\n\
11
+ \t\t|^(?![^{]*?//|[^{]*?/\\*(?!.*?\\*/.*?\\{)).*?\\{\\s*($|//|/\\*(?!.*?\\*/.*\\S))\n\
12
+ \t"
13
+ patterns:
14
+ - name: support.other.macro.qt
15
+ match: \bQ_(CLASSINFO|ENUMS|FLAGS|INTERFACES|OBJECT|PROPERTY)\b
16
+ - name: support.function.qt
17
+ match: \b((dis)?connect|emit|fore(ach|ver)|tr(Utf8)?|qobject_cast)\b
18
+ - name: support.class.qt
19
+ match: \bQ(Abstract(Button|EventDispatcher|Extension(Factory|Manager)|FileEngine(Handler)?|FormBuilder|GraphicsShapeItem|Item(Delegate|Model|View)|ListModel|PrintDialog|ProxyModel|ScrollArea|Slider|Socket|SpinBox|TableModel|TextDocumentLayout)|Accessible(Bridge|BridgePlugin|Event|Interface|Object|Plugin|Widget)?|Action(Event|Group)?|(Core)?Application|AssistantClient|Ax(Aggregated|Base|Bindable|Factory|Object|Script|ScriptEngine|ScriptManager|Widget)|BasicTimer|Bit(Array|map)|BoxLayout|Brush|Buffer|ButtonGroup|ByteArray(Matcher)?|(CDE|Windows(XP)?|Cleanlooks|Common|Mac|Plastique|Motif)Style|Cache|CalendarWidget|Char|CheckBox|ChildEvent|Clipboard|CloseEvent|Color(Dialog|map)?|ComboBox|Completer|ConicalGradient|ContextMenuEvent|CopChannel|Cursor|CustomRasterPaintDevice|DBus(AbstractAdaptor|AbstractInterface|Argument|Connection(Interface)?|Error|Interface|Message|ObjectPath|Reply|Server|Signature|Variant)|Data(Stream|WidgetMapper)|Date((Time)?(Edit)?)|Decoration(Factory|Plugin)?|Designer(ActionEditorInterface|ContainerExtension|CustomWidgetCollectionInterface|CustomWidgetInterface|FormEditorInterface|FormWindowCursorInterface|FormWindowInterface|FormWindowManagerInterface|MemberSheetExtension|ObjectInspectorInterface|PropertyEditorInterface|PropertySheetExtension|TaskMenuExtension|WidgetBoxInterface)|Desktop(Services|Widget)|Dial(og|ogButtonBox)?|Dir(Model|ectPainter)?|DockWidget|Dom(Attr|CDATASection|CharacterData|Comment|Document|DocumentFragment|DocumentType|Element|Entity|EntityReference|Implementation|NamedNodeMap|Node|NodeList|Notation|ProcessingInstruction|Text)|Double(SpinBox|Validator)|Drag((Enter|Leave|Move)Event)?|(Drop|DynamicPropertyChange)Event|ErrorMessage|Event(Loop)?|Extension(Factory|Manager)|FSFileEngine|File(Dialog|IconProvider|Info|OpenEvent|SystemWatcher)?|Flags?|Focus(Event|Frame)|Font(ComboBox|Database|Dialog|Info|MetricsF?)?|FormBuilder|Frame|Ftp|GL(Colormap|Context|Format|FramebufferObject|PixelBuffer|Widget)|Generic(Return)?Argument|Gradient|Graphics(EllipseItem|Item|ItemAnimation|ItemGroup|LineItem|PathItem|PixmapItem|PolygonItem|RectItem|Scene((ContextMenu|Hover|Mouse|Wheel)?Event)?|SimpleTextItem|SvgItem|TextItem|View)|GridLayout|GroupBox|HBoxLayout|Hash(Iterator)?|HeaderView|(Help|Hide|Hover)Event|Host(Address|Info)|Http((Response|Request)?Header)?|IODevice|Icon(DragEvent|Engine(Plugin)?)?|Image(IO(Handler|Plugin)|Reader|Writer)?|Input(Context(Factory|Plugin)?|Dialog|Event|MethodEvent)|IntValidator|Item(Delegate|Editor(CreatorBase|Factory)|Selection(Model|Range)?)|KbdDriver(Factory|Plugin)|Key(Event|Sequence)|LCDNumber|Label|Latin1(Char|String)|Layout(Item)?|Library(Info)?|Line(Edit|F)?|LinearGradient|LinkedList(Iterator)?|LinuxFbScreen|List(View|Iterator|Widget(Item)?)?|Locale|MacPasteboardMime|MainWindow|Map(Iterator)?|Matrix|Menu(Bar)?|MessageBox|Meta(ClassInfo|Enum|Method|Object|Property|Type)|Mime(Data|Source)|ModelIndex|MouseDriver(Factory|Plugin)|(Move|Mouse)Event|Movie|Multi(Hash|Map)|Mutable(Hash|(Linked)?List|Map|Set|Vector)Iterator|Mutex(Locker)?|Network(AddressEntry|Interface|Proxy)|Object(CleanupHandler)?|PageSetupDialog|Paint(Device|Engine(State)?|Event|er(Path(Stroker)?)?)|Pair|Palette|Pen|PersistentModelIndex|Picture(FormatPlugin|IO)?|Pixmap(Cache)?|PluginLoader|PointF?|Pointer|PolygonF?|Print(Dialog|Engine|er)|Process|Progress(Bar|Dialog)|ProxyModel|PushButton|Queue|RadialGradient|RadioButton|RasterPaintEngine|ReadLocker|ReadWriteLock|RectF?|RegExp(Validator)?|Region|ResizeEvent|Resource|RubberBand|Screen(Cursor|Driver(Factory|Plugin))?|Scroll(Area|Bar)|Semaphore|SessionManager|Set(Iterator)?|Settings|SharedData(Pointer)?|Shortcut(Event)?|ShowEvent|Signal(Mapper|Spy)|Size(Grip|Policy|F)?|Slider|SocketNotifier|SortFilterProxyModel|Sound|SpacerItem|SpinBox|SplashScreen|Splitter(Handle)?|Sql(Database|Driver(Creator(Base)?|Plugin)?|Error|Field|Index|Query(Model)?|Record|Relation|Relational(Delegate|TableModel)|Result|TableModel)|Stack(ed(Layout|Widget))?|StandardItem(EditorCreator|Model)?|Status(Bar|TipEvent)|String(List(Model)?|Matcher)?|Style(Factory|HintReturn(Mask)?|Option(Button|ComboBox|Complex|DockWidget|FocusRect|Frame(V2)?|GraphicsItem|GroupBox|Header|MenuItem|ProgressBar(V2)?|Q3(DockWindow|ListView|ListViewItem)|RubberBand|SizeGrip|Slider|SpinBox|Tab(BarBase|V2|WidgetFrame)?|TitleBar|Tool(Bar|Box|Button)|ViewItem(V2)?)?|Painter|Plugin)?|Svg(Renderer|Widget)|SyntaxHighlighter|SysInfo|System(Locale|TrayIcon)|Tab(Bar|Widget)|Table(Widget(Item|SelectionRange)?|View)|TabletEvent|Tcp(Server|Socket)|TemporaryFile|TestEventList|Text(Block(Format|Group|UserData)?|Browser|CharFormat|Codec(Plugin)?|Cursor|(De|En)coder|Document(Fragment)?|Edit|Fragment|Frame(Format)?|(Image)?Format|InlineObject|Layout|Length|Line|List(Format)?|Object|Option|Stream|Table(Cell|Format)?)|Thread(Storage)?|Time(Edit|Line)?|Timer(Event)?|Tool(Bar|Box|Button|Tip)|TransformedScreen|Translator|Tree(Widget(Item(Iterator)?)?|View)|UdpSocket|UiLoader|Undo(Command|Group|Stack|View)|Url(Info)?|Uuid|VBoxLayout|(VNC|VFb)Screen|Validator|VarLengthArray|Variant|Vector(Iterator)?|WS(Client|EmbedWidget|Event|InputMethod|(Keyboard|(Tslib|Calibrated)?Mouse)Handler|PointerCalibrationData|ScreenSaver|Server|Window(Surface)?)|WaitCondition|WhatsThis(ClickedEvent)?|WheelEvent|Widget(Action|Item)?|Window(StateChangeEvent|sMime)|Workspace|WriteLocker|X11Embed(Container|Widget)|X11Info|Xml(Attributes|(Content|DTD|Decl|Default|Error|Lexical)Handler|EntityResolver|InputSource|Locator|NamespaceSupport|ParseException|Reader|SimpleReader))\b
20
+ - name: storage.type.qt
21
+ match: \b(q(int8|int16|int32|int64|longlong|real|uint8|uint16|uint32|uint64|ulonglong)|u(char|int|long|short))\b
22
+ - name: storage.modifier.qt
23
+ match: \b(slots|signals)\b
24
+ - include: source.c++
25
+ foldingStopMarker: (?<!\*)\*\*/|^\s*\}
26
+ keyEquivalent: ^~Q
@@ -0,0 +1,186 @@
1
+ ---
2
+ comment: I don&apos;t think anyone uses .hp. .cp tends to be paired with .h. (I could be wrong. :) -- chris
3
+ fileTypes:
4
+ - cc
5
+ - cpp
6
+ - cp
7
+ - cxx
8
+ - c++
9
+ - C
10
+ - h
11
+ - hh
12
+ - hpp
13
+ - h++
14
+ firstLineMatch: -\*- C\+\+ -\*-
15
+ foldingStartMarker: "(?x)\n\
16
+ \t\t /\\*\\*(?!\\*)\n\
17
+ \t\t|^(?![^{]*?//|[^{]*?/\\*(?!.*?\\*/.*?\\{)).*?\\{\\s*($|//|/\\*(?!.*?\\*/.*\\S))\n\
18
+ \t"
19
+ foldingStopMarker: (?<!\*)\*\*/|^\s*\}
20
+ keyEquivalent: ^~C
21
+ name: C++
22
+ patterns:
23
+ - include: "#special_block"
24
+ - include: source.c
25
+ - match: \b(friend|explicit|virtual)\b
26
+ name: storage.modifier.c++
27
+ - match: \b(private:|protected:|public:)
28
+ name: storage.modifier.c++
29
+ - match: \b(catch|operator|try|throw|using)\b
30
+ name: keyword.control.c++
31
+ - match: \bdelete\b(\s*\[\])?|\bnew\b(?!\])
32
+ name: keyword.control.c++
33
+ - comment: common C++ instance var naming idiom -- fMemberName
34
+ match: \b(f|m)[A-Z]\w*\b
35
+ name: variable.other.readwrite.member.c++
36
+ - match: \b(this)\b
37
+ name: variable.language.c++
38
+ - match: \btemplate\b\s*
39
+ name: storage.type.template.c++
40
+ - match: \b(const_cast|dynamic_cast|reinterpret_cast|static_cast)\b\s*
41
+ name: keyword.operator.cast.c++
42
+ - match: \b(and|and_eq|bitand|bitor|compl|not|not_eq|or|or_eq|typeid|xor|xor_eq)\b
43
+ name: keyword.operator.c++
44
+ - match: \b(class|wchar_t)\b
45
+ name: storage.type.c++
46
+ - match: \b(export|mutable|typename)\b
47
+ name: storage.modifier.c++
48
+ - begin: "(?x)\n \t\t\t\t(?: ^ # begin-of-line\n \t\t\t\t | (?: (?<!else|new|=) ) # or word + space before name\n \t\t\t\t)\n \t\t\t\t((?:[A-Za-z_][A-Za-z0-9_]*::)*+~[A-Za-z_][A-Za-z0-9_]*) # actual name\n \t\t\t\t \\s*(\\() # start bracket or end-of-line\n \t\t\t"
49
+ beginCaptures:
50
+ "1":
51
+ name: entity.name.function.c++
52
+ "2":
53
+ name: punctuation.definition.parameters.c
54
+ end: \)
55
+ endCaptures:
56
+ "0":
57
+ name: punctuation.definition.parameters.c
58
+ name: meta.function.destructor.c++
59
+ patterns:
60
+ - include: $base
61
+ - begin: "(?x)\n \t\t\t\t(?: ^ # begin-of-line\n \t\t\t\t | (?: (?<!else|new|=) ) # or word + space before name\n \t\t\t\t)\n \t\t\t\t((?:[A-Za-z_][A-Za-z0-9_]*::)*+~[A-Za-z_][A-Za-z0-9_]*) # actual name\n \t\t\t\t \\s*(\\() # terminating semi-colon\n \t\t\t"
62
+ beginCaptures:
63
+ "1":
64
+ name: entity.name.function.c++
65
+ "2":
66
+ name: punctuation.definition.parameters.c
67
+ end: \)
68
+ endCaptures:
69
+ "0":
70
+ name: punctuation.definition.parameters.c
71
+ name: meta.function.destructor.prototype.c++
72
+ patterns:
73
+ - include: $base
74
+ repository:
75
+ angle_brackets:
76
+ begin: <
77
+ end: ">"
78
+ name: meta.angle-brackets.c++
79
+ patterns:
80
+ - include: "#angle_brackets"
81
+ - include: $base
82
+ block:
83
+ begin: \{
84
+ end: \}
85
+ name: meta.block.c++
86
+ patterns:
87
+ - captures:
88
+ "1":
89
+ name: support.function.any-method.c
90
+ "2":
91
+ name: punctuation.definition.parameters.c
92
+ match: |-
93
+ (?x)
94
+ (
95
+ (?!while|for|do|if|else|switch|catch|enumerate|return|r?iterate)(?: \b[A-Za-z_][A-Za-z0-9_]*+\b | :: )*+ # actual name
96
+ )
97
+ \s*(\()
98
+ name: meta.function-call.c
99
+ - include: $base
100
+ constructor:
101
+ patterns:
102
+ - begin: "(?x)\n \t\t\t\t(?: ^\\s*) # begin-of-line\n \t\t\t\t((?!while|for|do|if|else|switch|catch|enumerate|r?iterate)[A-Za-z_][A-Za-z0-9_:]*) # actual name\n \t\t\t\t \\s*(\\() # start bracket or end-of-line\n \t\t\t"
103
+ beginCaptures:
104
+ "1":
105
+ name: entity.name.function.c++
106
+ "2":
107
+ name: punctuation.definition.parameters.c
108
+ end: \)
109
+ endCaptures:
110
+ "0":
111
+ name: punctuation.definition.parameters.c
112
+ name: meta.function.constructor.c++
113
+ patterns:
114
+ - include: $base
115
+ - begin: "(?x)\n \t\t\t\t(:) # begin-of-line\n \t\t\t\t((?=\\s*[A-Za-z_][A-Za-z0-9_:]* # actual name\n \t\t\t\t \\s*(\\())) # start bracket or end-of-line\n \t\t\t"
116
+ beginCaptures:
117
+ "1":
118
+ name: punctuation.definition.parameters.c
119
+ end: (?=\{)
120
+ name: meta.function.constructor.initializer-list.c++
121
+ patterns:
122
+ - include: $base
123
+ special_block:
124
+ patterns:
125
+ - begin: \b(namespace)\b\s*([_A-Za-z][_A-Za-z0-9]*\b)?+
126
+ beginCaptures:
127
+ "1":
128
+ name: storage.type.c++
129
+ "2":
130
+ name: entity.name.type.c++
131
+ end: (?<=\})|(?=(;|,|\(|\)|>|\[|\]|=))
132
+ name: meta.namespace-block.c++
133
+ patterns:
134
+ - begin: (\{)
135
+ beginCaptures:
136
+ "1":
137
+ name: punctuation.definition.scope.c++
138
+ end: (\})
139
+ endCaptures:
140
+ "1":
141
+ name: punctuation.definition.invalid.c++
142
+ patterns:
143
+ - include: "#special_block"
144
+ - include: "#constructor"
145
+ - include: $base
146
+ - include: $base
147
+ - begin: \b(class|struct)\b\s*([_A-Za-z][_A-Za-z0-9]*\b)?+
148
+ beginCaptures:
149
+ "1":
150
+ name: storage.type.c++
151
+ "2":
152
+ name: entity.name.type.c++
153
+ end: (?<=\})|(?=(;|,|\(|\)|>|\[|\]|=))
154
+ name: meta.class-struct-block.c++
155
+ patterns:
156
+ - include: "#angle_brackets"
157
+ - begin: (\{)
158
+ beginCaptures:
159
+ "1":
160
+ name: punctuation.definition.scope.c++
161
+ end: (\})(\s*\n)?
162
+ endCaptures:
163
+ "1":
164
+ name: punctuation.definition.invalid.c++
165
+ "2":
166
+ name: invalid.illegal.you-forgot-semicolon.c++
167
+ patterns:
168
+ - include: "#special_block"
169
+ - include: "#constructor"
170
+ - include: $base
171
+ - include: $base
172
+ - begin: \b(extern)(?=\s*")
173
+ beginCaptures:
174
+ "1":
175
+ name: storage.modifier.c++
176
+ end: (?<=\})|(?=\w)
177
+ name: meta.extern-block.c++
178
+ patterns:
179
+ - begin: \{
180
+ end: \}
181
+ patterns:
182
+ - include: "#special_block"
183
+ - include: $base
184
+ - include: $base
185
+ scopeName: source.c++
186
+ uuid: 26251B18-6B1D-11D9-AFDB-000D93589AF6
@@ -0,0 +1,59 @@
1
+ ---
2
+ name: C#
3
+ fileTypes:
4
+ - cs
5
+ scopeName: source.c-sharp
6
+ uuid: 1BA75B32-707C-11D9-A928-000D93589AF6
7
+ foldingStartMarker: "(?x)\n\
8
+ \t\t /\\*\\*(?!\\*)\n\
9
+ \t\t|^(?![^{]*?//|[^{]*?/\\*(?!.*?\\*/.*?\\{)).*?\\{\\s*($|//|/\\*(?!.*?\\*/.*\\S))\n\
10
+ \t"
11
+ patterns:
12
+ - name: comment.block.c#
13
+ captures:
14
+ "0":
15
+ name: punctuation.definition.comment.c#
16
+ begin: /\*
17
+ end: \*/
18
+ - name: comment.line.double-slash.c#
19
+ captures:
20
+ "1":
21
+ name: punctuation.definition.comment.c#
22
+ match: (//).*$\n?
23
+ - name: keyword.control.c#
24
+ match: \b(abstract|as|base|break|case|catch|checked|const|continue|default|delegate|do|else|event|explicit|extern|false|finally|fixed|for|foreach|goto|if|implicit|in|internal|is|lock|namespace|new|null|operator|out|override|params|private|protected|public|readonly|ref|return|sealed|sizeof|stackalloc|static|switch|this|throw|true|try|typeof|unckecked|unsafe|using|virtual|volatile|void|while)\b
25
+ - name: storage.type.c#
26
+ match: \b(bool|byte|char|class|decimal|double|enum|float|int|nterface|long|object|sbyte|short|string|struct|uint|ulong|ushort)\b
27
+ - name: constant.numeric.c#
28
+ match: \b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\.?[0-9]*)|(\.[0-9]+))((e|E)(\+|-)?[0-9]+)?)(L|l|UL|ul|u|U|F|f)?\b
29
+ - name: string.quoted.double.c#
30
+ endCaptures:
31
+ "0":
32
+ name: punctuation.definition.string.end.c#
33
+ begin: "\""
34
+ beginCaptures:
35
+ "0":
36
+ name: punctuation.definition.string.begin.c#
37
+ end: "\""
38
+ patterns:
39
+ - name: constant.character.escape.c#
40
+ match: \\.
41
+ - name: string.quoted.single.c#
42
+ endCaptures:
43
+ "0":
44
+ name: punctuation.definition.string.end.c#
45
+ begin: "'"
46
+ beginCaptures:
47
+ "0":
48
+ name: punctuation.definition.string.begin.c#
49
+ end: "'"
50
+ patterns:
51
+ - name: constant.character.escape.c#
52
+ match: \\.
53
+ - name: meta.preprocessor.c#
54
+ captures:
55
+ "2":
56
+ name: keyword.control.import.c#
57
+ match: ^(#)\s*(if|else|elif|endif|define|undef|warning|error|line|region|endregion)\b
58
+ foldingStopMarker: (?<!\*)\*\*/|^\s*\}
59
+ keyEquivalent: ^~C