@codingame/monaco-editor-wrapper 3.9.3 → 4.0.0-next.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 (537) hide show
  1. package/dist/C2Hs-configuration.json.js +3 -0
  2. package/dist/C2Hs.json.js +3 -0
  3. package/dist/COBOL.tmLanguage.json.js +3 -0
  4. package/dist/Erlang.plist.js +2 -1751
  5. package/dist/Hsc2Hs-configuration.json.js +3 -0
  6. package/dist/Hsc2Hs.json.js +3 -0
  7. package/dist/JavaProperties.tmLanguage.json.js +3 -0
  8. package/dist/Kotlin.tmLanguage.js +2 -723
  9. package/dist/META.json.js +3 -0
  10. package/dist/META.json2.js +3 -0
  11. package/dist/Markdown Redcarpet.json.js +3 -0
  12. package/dist/RMarkdown.json.js +3 -0
  13. package/dist/Rcpp.json.js +3 -0
  14. package/dist/Rd (R Documentation).json.js +3 -0
  15. package/dist/Scala.tmLanguage.json.js +3 -0
  16. package/dist/_commonjsHelpers.js +35 -0
  17. package/dist/_rollupPluginBabelHelpers.js +1 -1
  18. package/dist/add.svg.js +3 -0
  19. package/dist/add.svg2.js +3 -0
  20. package/dist/adddep-dark.svg.js +3 -0
  21. package/dist/adddep-light.svg.js +3 -0
  22. package/dist/alex.json.js +3 -0
  23. package/dist/angular-directives.json.js +3 -0
  24. package/dist/angular-interpolations.json.js +3 -0
  25. package/dist/angular-template-language-configuration.json.js +3 -0
  26. package/dist/arrow-circle-up-dark.svg.js +3 -0
  27. package/dist/arrow-circle-up-light.svg.js +3 -0
  28. package/dist/aspnetcorerazor.tmLanguage.json.js +3 -0
  29. package/dist/atd.json.js +3 -0
  30. package/dist/book-dark.svg.js +3 -0
  31. package/dist/book-light.svg.js +3 -0
  32. package/dist/book-open-dark.svg.js +3 -0
  33. package/dist/book-open-light.svg.js +3 -0
  34. package/dist/buildtarget.json.js +3 -0
  35. package/dist/cabal-configuration.json.js +3 -0
  36. package/dist/cabal.json.js +3 -0
  37. package/dist/codeblock-cabal.json.js +3 -0
  38. package/dist/codeblock-haskell.json.js +3 -0
  39. package/dist/codeblock-literate-haskell.json.js +3 -0
  40. package/dist/codeblock.json.js +3 -0
  41. package/dist/codeblock.json2.js +3 -0
  42. package/dist/configuration/index.d.ts +0 -1
  43. package/dist/cram.json.js +3 -0
  44. package/dist/csharp.json.js +3 -0
  45. package/dist/css.worker.js +1 -1
  46. package/dist/d.json.js +3 -0
  47. package/dist/d.json2.js +3 -0
  48. package/dist/dart-language-configuration.json.js +3 -0
  49. package/dist/dart.json.js +3 -0
  50. package/dist/dcf-configuration.json.js +3 -0
  51. package/dist/dcf.json.js +3 -0
  52. package/dist/diet.json.js +3 -0
  53. package/dist/diet.json2.js +3 -0
  54. package/dist/diet.json3.js +3 -0
  55. package/dist/django-html.tmLanguage.json.js +3 -0
  56. package/dist/django-txt.tmLanguage.json.js +3 -0
  57. package/dist/dml.json.js +3 -0
  58. package/dist/document-search-dark.svg.js +3 -0
  59. package/dist/document-search-light.svg.js +3 -0
  60. package/dist/documentation-inverse.svg.js +3 -0
  61. package/dist/documentation.svg.js +3 -0
  62. package/dist/dub-convert-inverse.svg.js +3 -0
  63. package/dist/dub-convert.svg.js +3 -0
  64. package/dist/dune-project.json.js +3 -0
  65. package/dist/dune-project.json2.js +3 -0
  66. package/dist/dune-workspace.json.js +3 -0
  67. package/dist/dune.json.js +3 -0
  68. package/dist/dune.json2.js +3 -0
  69. package/dist/dune.json3.js +3 -0
  70. package/dist/edit-dub-inverse.svg.js +3 -0
  71. package/dist/edit-dub.svg.js +3 -0
  72. package/dist/edit-source-inverse.svg.js +3 -0
  73. package/dist/edit-source.svg.js +3 -0
  74. package/dist/eex-language-configuration.json.js +3 -0
  75. package/dist/eex.json.js +3 -0
  76. package/dist/elixir-language-configuration.json.js +3 -0
  77. package/dist/elixir.json.js +3 -0
  78. package/dist/erlang.configuration.json.js +3 -0
  79. package/dist/erlang.json.js +3 -0
  80. package/dist/expression.json.js +3 -0
  81. package/dist/extension-web.js.js +3 -0
  82. package/dist/extension-web.js2.js +3 -0
  83. package/dist/extension.browser.js.js +3 -0
  84. package/dist/extensions.d.ts +35 -0
  85. package/dist/features/htmlContribution.js +0 -1
  86. package/dist/features/jsonContribution.d.ts +2 -4
  87. package/dist/features/jsonContribution.js +10 -29
  88. package/dist/features/typescriptContribution.js +2 -2
  89. package/dist/file_type_java.svg.js +3 -0
  90. package/dist/file_type_scala.svg.js +3 -0
  91. package/dist/filters.json.js +3 -0
  92. package/dist/focus-dark.svg.js +3 -0
  93. package/dist/focus-light.svg.js +3 -0
  94. package/dist/general.json.js +3 -0
  95. package/dist/get-inverse.svg.js +3 -0
  96. package/dist/get.svg.js +3 -0
  97. package/dist/go.json.js +3 -0
  98. package/dist/go.mod.language-configuration.json.js +3 -0
  99. package/dist/go.mod.tmGrammar.json.js +3 -0
  100. package/dist/go.sum.tmGrammar.json.js +3 -0
  101. package/dist/govulncheck.tmGrammar.json.js +3 -0
  102. package/dist/happy.json.js +3 -0
  103. package/dist/haskell-configuration.json.js +3 -0
  104. package/dist/haskell.json.js +3 -0
  105. package/dist/hot-reload-tb.png.js +3 -0
  106. package/dist/hot-reload.svg.js +3 -0
  107. package/dist/html-eex.json.js +3 -0
  108. package/dist/html.worker.js +1 -1
  109. package/dist/index.d.ts +2 -3
  110. package/dist/index.js +9 -6
  111. package/dist/index2.js +2 -1351
  112. package/dist/inline-styles.json.js +3 -0
  113. package/dist/inline-template.json.js +3 -0
  114. package/dist/inspector.svg.js +3 -0
  115. package/dist/java-properties-configuration.json.js +3 -0
  116. package/dist/java.json.js +3 -0
  117. package/dist/javascript.json.js +3 -0
  118. package/dist/json.worker.js +1 -1
  119. package/dist/jvm-bytecode-verbose.json.js +3 -0
  120. package/dist/jvm-bytecode.json.js +3 -0
  121. package/dist/kotlin.configuration.json.js +3 -0
  122. package/dist/kotlin.json.js +3 -0
  123. package/dist/lang-config.json.js +3 -0
  124. package/dist/language-configuration.json.js +3 -0
  125. package/dist/language-configuration.json2.js +3 -0
  126. package/dist/language-configuration.json3.js +3 -0
  127. package/dist/language-configuration.json4.js +3 -0
  128. package/dist/language-configuration.json5.js +3 -0
  129. package/dist/language-configuration.json6.js +3 -0
  130. package/dist/language-configuration.json7.js +3 -0
  131. package/dist/language-configuration.json8.js +3 -0
  132. package/dist/languages/index.d.ts +0 -2
  133. package/dist/literate-haskell-configuration.json.js +3 -0
  134. package/dist/literateHaskell.json.js +3 -0
  135. package/dist/main.js +839 -3115
  136. package/dist/markdown-svelte-css.json.js +3 -0
  137. package/dist/markdown-svelte-js.json.js +3 -0
  138. package/dist/markdown-svelte.json.js +3 -0
  139. package/dist/menhir-action.json.js +3 -0
  140. package/dist/menhir.json.js +3 -0
  141. package/dist/menhir.json2.js +3 -0
  142. package/dist/merlin.json.js +3 -0
  143. package/dist/monaco.d.ts +6 -9
  144. package/dist/oasis.json.js +3 -0
  145. package/dist/oasis.json2.js +3 -0
  146. package/dist/ocaml-markdown-codeblock.json.js +3 -0
  147. package/dist/ocaml.interface.json.js +3 -0
  148. package/dist/ocaml.json.js +3 -0
  149. package/dist/ocaml.json2.js +3 -0
  150. package/dist/ocaml.json3.js +3 -0
  151. package/dist/ocamlbuild.json.js +3 -0
  152. package/dist/ocamlbuild.json2.js +3 -0
  153. package/dist/ocamldoc.json.js +3 -0
  154. package/dist/ocamlformat.json.js +3 -0
  155. package/dist/ocamlformat.json2.js +3 -0
  156. package/dist/ocamllex.json.js +3 -0
  157. package/dist/ocamllex.json2.js +3 -0
  158. package/dist/ocamllex.json3.js +3 -0
  159. package/dist/opam-install.json.js +3 -0
  160. package/dist/opam-install.json2.js +3 -0
  161. package/dist/opam.json.js +3 -0
  162. package/dist/opam.json2.js +3 -0
  163. package/dist/outdated-inverse.svg.js +3 -0
  164. package/dist/outdated.svg.js +3 -0
  165. package/dist/pascal.configuration.json.js +3 -0
  166. package/dist/pascal.json.js +3 -0
  167. package/dist/pascal.tmLanguage.js +2 -168
  168. package/dist/performance.svg.js +3 -0
  169. package/dist/pgsql.tmLanguage.js +2 -283
  170. package/dist/pip-requirements.json.js +3 -0
  171. package/dist/pip-requirements.tmLanguage.json.js +3 -0
  172. package/dist/plus-dark.svg.js +3 -0
  173. package/dist/plus-light.svg.js +3 -0
  174. package/dist/postcss.json.js +3 -0
  175. package/dist/preview-right-dark.svg.js +3 -0
  176. package/dist/preview-right-light.svg.js +3 -0
  177. package/dist/pug-svelte-dotblock.json.js +3 -0
  178. package/dist/pug-svelte-tags.json.js +3 -0
  179. package/dist/pug-svelte.json.js +3 -0
  180. package/dist/r-configuration.json.js +3 -0
  181. package/dist/r-snippets.json.js +3 -0
  182. package/dist/r.json.js +3 -0
  183. package/dist/rbuildignore-configuration.json.js +3 -0
  184. package/dist/rbuildignore.json.js +3 -0
  185. package/dist/rd-configuration.json.js +3 -0
  186. package/dist/reason-markdown-codeblock.json.js +3 -0
  187. package/dist/reason.json.js +3 -0
  188. package/dist/reason.json2.js +3 -0
  189. package/dist/ref-group-by-type-dark.svg.js +3 -0
  190. package/dist/ref-group-by-type-light.svg.js +3 -0
  191. package/dist/ref-ungroup-by-type-dark.svg.js +3 -0
  192. package/dist/ref-ungroup-by-type-light.svg.js +3 -0
  193. package/dist/refresh-dark.svg.js +3 -0
  194. package/dist/refresh-dark.svg2.js +3 -0
  195. package/dist/refresh-light.svg.js +3 -0
  196. package/dist/refresh-light.svg2.js +3 -0
  197. package/dist/repl.svg.js +3 -0
  198. package/dist/repl.svg2.js +3 -0
  199. package/dist/rmarkdown.json2.js +3 -0
  200. package/dist/rmd-configuration.json.js +3 -0
  201. package/dist/rnamespace-configuration.json.js +3 -0
  202. package/dist/rnamespace.json.js +3 -0
  203. package/dist/save.svg.js +3 -0
  204. package/dist/save.svg2.js +3 -0
  205. package/dist/scalameta-logo.png.js +3 -0
  206. package/dist/sdl.json.js +3 -0
  207. package/dist/semanticdb.json.js +3 -0
  208. package/dist/services.d.ts +4 -0
  209. package/dist/solidity.configuration.json.js +3 -0
  210. package/dist/solidity.json.js +3 -0
  211. package/dist/solidity.json2.js +3 -0
  212. package/dist/svelte.json.js +3 -0
  213. package/dist/svelte.tmLanguage.json.js +3 -0
  214. package/dist/switch-impl-intf.dark.svg.js +3 -0
  215. package/dist/switch-impl-intf.light.svg.js +3 -0
  216. package/dist/systemverilog.json.js +3 -0
  217. package/dist/systemverilog.tmLanguage.json.js +3 -0
  218. package/dist/tags.json.js +3 -0
  219. package/dist/tasty.json.js +3 -0
  220. package/dist/tcl.json.js +3 -0
  221. package/dist/tcl.json2.js +3 -0
  222. package/dist/template.json.js +3 -0
  223. package/dist/theme/index.d.ts +1 -4
  224. package/dist/tools/EditorOpenHandlerRegistry.d.ts +3 -2
  225. package/dist/ts.worker.js +1 -1
  226. package/dist/typescript.json.js +3 -0
  227. package/dist/upgrade-inverse.svg.js +3 -0
  228. package/dist/upgrade.svg.js +3 -0
  229. package/dist/vim.js +37 -36
  230. package/dist/vs2019_dark.json.js +3 -0
  231. package/dist/vs2019_light.json.js +3 -0
  232. package/dist/worker.js +14 -2
  233. package/dist/x-dark.svg.js +3 -0
  234. package/dist/x-light.svg.js +3 -0
  235. package/package.json +40 -42
  236. package/stats.html +90 -1429
  237. package/dist/COBOL.tmLanguage.js +0 -172
  238. package/dist/HTML (Eex)2.js +0 -100
  239. package/dist/JSON.tmLanguage.js +0 -221
  240. package/dist/JSONC.tmLanguage.js +0 -221
  241. package/dist/JavaProperties.tmLanguage.js +0 -116
  242. package/dist/JavaScript.tmLanguage.js +0 -5929
  243. package/dist/JavaScriptReact.tmLanguage.js +0 -5929
  244. package/dist/META.js +0 -100
  245. package/dist/MagicPython.tmLanguage.js +0 -4221
  246. package/dist/MagicRegExp.tmLanguage.js +0 -505
  247. package/dist/Markdown Redcarpet.js +0 -221
  248. package/dist/RMarkdown.js +0 -25
  249. package/dist/Rcpp.js +0 -50
  250. package/dist/Rd (R Documentation).js +0 -131
  251. package/dist/Regular Expressions (JavaScript).tmLanguage.js +0 -166
  252. package/dist/Scala.tmLanguage.js +0 -1324
  253. package/dist/TypeScript.tmLanguage.js +0 -5680
  254. package/dist/TypeScriptReact.tmLanguage.js +0 -5929
  255. package/dist/angular.js +0 -62
  256. package/dist/asp-vb-net.tmlanguage.js +0 -247
  257. package/dist/aspnetcorerazor.js +0 -72
  258. package/dist/aspnetcorerazor.tmLanguage.js +0 -1825
  259. package/dist/atd.js +0 -110
  260. package/dist/atd2.js +0 -114
  261. package/dist/buildignore.r.js +0 -5
  262. package/dist/buildtarget.js +0 -53
  263. package/dist/c.js +0 -101
  264. package/dist/c.tmLanguage.js +0 -3565
  265. package/dist/cabal.js +0 -10
  266. package/dist/cabal.tmLanguage.js +0 -66
  267. package/dist/clojure.js +0 -68
  268. package/dist/clojure.tmLanguage.js +0 -439
  269. package/dist/cobol.js +0 -6
  270. package/dist/cobol2.js +0 -341
  271. package/dist/codeblock-cabal.js +0 -42
  272. package/dist/codeblock-haskell.js +0 -42
  273. package/dist/codeblock-literate-haskell.js +0 -42
  274. package/dist/codeblock.js +0 -59
  275. package/dist/codeblock2.js +0 -36
  276. package/dist/codeblock3.js +0 -95
  277. package/dist/coffeescript-coffeescript.code-snippets.js +0 -18
  278. package/dist/coffeescript.js +0 -91
  279. package/dist/coffeescript.tmLanguage.js +0 -1324
  280. package/dist/configuration/files.d.ts +0 -6
  281. package/dist/cpp-c.code-snippets.js +0 -18
  282. package/dist/cpp-cpp.code-snippets.js +0 -18
  283. package/dist/cpp.js +0 -101
  284. package/dist/cpp.tmLanguage.js +0 -16648
  285. package/dist/cpptools.js +0 -2631
  286. package/dist/cram.js +0 -257
  287. package/dist/csharp.js +0 -92
  288. package/dist/csharp.tmLanguage.js +0 -4992
  289. package/dist/css.js +0 -106
  290. package/dist/css.tmLanguage.js +0 -1873
  291. package/dist/cuda-cpp.js +0 -101
  292. package/dist/cuda-cpp.tmLanguage.js +0 -19993
  293. package/dist/d-diet.js +0 -92
  294. package/dist/d.js +0 -3212
  295. package/dist/d2.js +0 -97
  296. package/dist/d3.js +0 -609
  297. package/dist/dart.js +0 -543
  298. package/dist/dart2.js +0 -103
  299. package/dist/dart3.js +0 -1130
  300. package/dist/dcf.js +0 -93
  301. package/dist/debian-control.r.js +0 -69
  302. package/dist/diet.js +0 -758
  303. package/dist/diet2.js +0 -100
  304. package/dist/django-html.js +0 -155
  305. package/dist/django-html.tmLanguage.js +0 -715
  306. package/dist/django-txt.js +0 -155
  307. package/dist/django-txt.tmLanguage.js +0 -269
  308. package/dist/dml.js +0 -169
  309. package/dist/dml2.js +0 -90
  310. package/dist/dockercompose.js +0 -82
  311. package/dist/dpp.js +0 -97
  312. package/dist/dscript.js +0 -90
  313. package/dist/dune-project.js +0 -481
  314. package/dist/dune-project2.js +0 -65
  315. package/dist/dune-workspace.js +0 -298
  316. package/dist/dune-workspace2.js +0 -65
  317. package/dist/dune.js +0 -2962
  318. package/dist/dune2.js +0 -65
  319. package/dist/eex.js +0 -55
  320. package/dist/elixir-snippets.js +0 -184
  321. package/dist/elixir.js +0 -2341
  322. package/dist/elixir2.js +0 -69
  323. package/dist/elixir3.js +0 -40
  324. package/dist/erlang-erlang.js +0 -195
  325. package/dist/erlang.js +0 -81
  326. package/dist/erlang2.js +0 -86
  327. package/dist/expression.js +0 -846
  328. package/dist/features/extensionConfigurations.d.ts +0 -1
  329. package/dist/features/extensionConfigurations.js +0 -44
  330. package/dist/fsharp-fsharp.code-snippets.js +0 -18
  331. package/dist/fsharp.js +0 -80
  332. package/dist/fsharp.tmLanguage.js +0 -1844
  333. package/dist/go.js +0 -103
  334. package/dist/go.mod.js +0 -8
  335. package/dist/go.mod.tmGrammar.js +0 -182
  336. package/dist/go.sum.tmGrammar.js +0 -55
  337. package/dist/go.tmLanguage.js +0 -1025
  338. package/dist/go.work.js +0 -8
  339. package/dist/govulncheck.tmGrammar.js +0 -138
  340. package/dist/groovy-groovy.code-snippets.js +0 -229
  341. package/dist/groovy.js +0 -79
  342. package/dist/groovy.tmLanguage.js +0 -1391
  343. package/dist/haskell.js +0 -88
  344. package/dist/haskell.tmLanguage.js +0 -629
  345. package/dist/haskell2.js +0 -16
  346. package/dist/html (eex).js +0 -31
  347. package/dist/html-derivative.tmLanguage.js +0 -57
  348. package/dist/html-html.code-snippets.js +0 -20
  349. package/dist/html.js +0 -11
  350. package/dist/html.tmLanguage.js +0 -2652
  351. package/dist/html.tmLanguage2.js +0 -107
  352. package/dist/inline-styles.js +0 -104
  353. package/dist/inline-template.js +0 -88
  354. package/dist/jade.js +0 -11
  355. package/dist/java-java.js +0 -125
  356. package/dist/java-properties.js +0 -73
  357. package/dist/java.js +0 -98
  358. package/dist/java.tmLanguage.js +0 -1863
  359. package/dist/java2.js +0 -917
  360. package/dist/javascript-javascript.code-snippets.js +0 -205
  361. package/dist/javascript.js +0 -197
  362. package/dist/javascriptreact.js +0 -197
  363. package/dist/jsdoc.js.injection.tmLanguage.js +0 -32
  364. package/dist/jsdoc.ts.injection.tmLanguage.js +0 -32
  365. package/dist/json.js +0 -75
  366. package/dist/jsonc.js +0 -75
  367. package/dist/jsx-tags.js +0 -158
  368. package/dist/julia.js +0 -89
  369. package/dist/julia.tmLanguage.js +0 -954
  370. package/dist/jvm-bytecode-verbose.js +0 -1231
  371. package/dist/jvm-bytecode.js +0 -565
  372. package/dist/kotlin-kotlin.js +0 -117
  373. package/dist/kotlin.js +0 -103
  374. package/dist/kotlinscript.js +0 -103
  375. package/dist/languages/extensions/extensionConfigurationLoader.d.ts +0 -3
  376. package/dist/languages/extensions/grammarLoader.d.ts +0 -2
  377. package/dist/languages/extensions/languageConfigurationLoader.d.ts +0 -2
  378. package/dist/languages/extensions/snippetLoader.d.ts +0 -2
  379. package/dist/languages/extensions/themeLoader.d.ts +0 -2
  380. package/dist/languages/snippets/index.d.ts +0 -1
  381. package/dist/languages/textMate/index.d.ts +0 -1
  382. package/dist/languages/textMate/semanticTokens.d.ts +0 -1
  383. package/dist/literate haskell.js +0 -88
  384. package/dist/literateHaskell.tmLanguage.js +0 -70
  385. package/dist/lua.js +0 -84
  386. package/dist/lua.tmLanguage.js +0 -914
  387. package/dist/lua2.js +0 -2853
  388. package/dist/markdown-basics-markdown.code-snippets.js +0 -121
  389. package/dist/markdown-svelte-css.js +0 -37
  390. package/dist/markdown-svelte-js.js +0 -37
  391. package/dist/markdown-svelte.js +0 -59
  392. package/dist/markdown-vue.js +0 -54
  393. package/dist/markdown.js +0 -49
  394. package/dist/markdown.tmLanguage.js +0 -3042
  395. package/dist/menhir-action.js +0 -51
  396. package/dist/menhir.js +0 -597
  397. package/dist/merlin.js +0 -111
  398. package/dist/namespace.r.js +0 -88
  399. package/dist/oasis.js +0 -99
  400. package/dist/objective-c.js +0 -79
  401. package/dist/objective-c.tmLanguage.js +0 -3763
  402. package/dist/objective-cpp.js +0 -79
  403. package/dist/ocaml-dune-project.js +0 -38
  404. package/dist/ocaml-dune.js +0 -53
  405. package/dist/ocaml-markdown-codeblock.js +0 -42
  406. package/dist/ocaml-ocaml.js +0 -88
  407. package/dist/ocaml-ocamllex.js +0 -12
  408. package/dist/ocaml.META.js +0 -29
  409. package/dist/ocaml.interface.js +0 -292
  410. package/dist/ocaml.interface2.js +0 -114
  411. package/dist/ocaml.js +0 -903
  412. package/dist/ocaml.menhir.js +0 -81
  413. package/dist/ocaml.oasis.js +0 -18
  414. package/dist/ocaml.ocamlbuild.js +0 -45
  415. package/dist/ocaml.ocamlformat.js +0 -8
  416. package/dist/ocaml.ocamllex.js +0 -60
  417. package/dist/ocaml.opam-install.js +0 -49
  418. package/dist/ocaml.opam.js +0 -69
  419. package/dist/ocaml2.js +0 -114
  420. package/dist/ocaml3.js +0 -136
  421. package/dist/ocamlbuild.js +0 -189
  422. package/dist/ocamldoc.js +0 -54
  423. package/dist/ocamlformat.js +0 -206
  424. package/dist/ocamllex.js +0 -133
  425. package/dist/omnisharp-csharp.js +0 -508
  426. package/dist/omnisharp.js +0 -594
  427. package/dist/opam-install.js +0 -40
  428. package/dist/opam.js +0 -140
  429. package/dist/pascal-pascal.js +0 -382
  430. package/dist/pascal.js +0 -80
  431. package/dist/pascal2.js +0 -26
  432. package/dist/perl.js +0 -93
  433. package/dist/perl.tmLanguage.js +0 -2986
  434. package/dist/perl6.js +0 -86
  435. package/dist/perl6.tmLanguage.js +0 -323
  436. package/dist/php-php.code-snippets.js +0 -267
  437. package/dist/php.js +0 -154
  438. package/dist/php.tmLanguage.js +0 -4036
  439. package/dist/pip-requirements.js +0 -8
  440. package/dist/pip-requirements.tmLanguage.js +0 -89
  441. package/dist/plaintext.js +0 -11
  442. package/dist/platform.tmLanguage.js +0 -1135
  443. package/dist/postcss.src.yaml.js +0 -393
  444. package/dist/postgres.js +0 -80
  445. package/dist/postgresql.js +0 -75
  446. package/dist/powershell.js +0 -107
  447. package/dist/powershell.tmLanguage.js +0 -1037
  448. package/dist/pug-svelte-dotblock.js +0 -69
  449. package/dist/pug-svelte-tags.js +0 -215
  450. package/dist/pug-svelte.js +0 -307
  451. package/dist/python.js +0 -236
  452. package/dist/r.js +0 -664
  453. package/dist/r2.js +0 -88
  454. package/dist/rbuildignore.js +0 -39
  455. package/dist/rd.js +0 -81
  456. package/dist/reason-markdown-codeblock.js +0 -42
  457. package/dist/reason.js +0 -79
  458. package/dist/rmd.js +0 -84
  459. package/dist/rnamespace.js +0 -283
  460. package/dist/ruby.js +0 -95
  461. package/dist/ruby.tmLanguage.js +0 -2784
  462. package/dist/rust.js +0 -84
  463. package/dist/rust.tmLanguage.js +0 -1178
  464. package/dist/sassdoc.tmLanguage.js +0 -362
  465. package/dist/scala.js +0 -85
  466. package/dist/scalameta.js +0 -224
  467. package/dist/scss.js +0 -117
  468. package/dist/scss.tmLanguage.js +0 -1887
  469. package/dist/sdl.js +0 -162
  470. package/dist/sdl2.js +0 -90
  471. package/dist/semanticdb.js +0 -62
  472. package/dist/shell-unix-bash.tmLanguage.js +0 -2038
  473. package/dist/shellscript.js +0 -93
  474. package/dist/solargraph.js +0 -192
  475. package/dist/solidity-solidity.js +0 -213
  476. package/dist/solidity.js +0 -1224
  477. package/dist/solidity2.js +0 -71
  478. package/dist/solidity3.js +0 -143
  479. package/dist/sql.js +0 -99
  480. package/dist/sql.tmLanguage.js +0 -636
  481. package/dist/svelte.js +0 -120
  482. package/dist/svelte.svelte-vscode-javascript.js +0 -45
  483. package/dist/svelte.svelte-vscode-svelte.js +0 -46
  484. package/dist/svelte.svelte-vscode-typescript.js +0 -43
  485. package/dist/svelte.svelte-vscode.js +0 -383
  486. package/dist/svelte.tmLanguage.src.yaml.js +0 -1099
  487. package/dist/svlangserver-systemverilog.js +0 -395
  488. package/dist/svlangserver.js +0 -85
  489. package/dist/swift-swift.code-snippets.js +0 -183
  490. package/dist/swift.js +0 -90
  491. package/dist/swift.tmLanguage.js +0 -3312
  492. package/dist/systemverilog.js +0 -187
  493. package/dist/systemverilog.tmLanguage.js +0 -1259
  494. package/dist/tasty.js +0 -72
  495. package/dist/tcl-tcl.js +0 -151
  496. package/dist/tcl.js +0 -78
  497. package/dist/tcl.tmlanguage.yaml.js +0 -5490
  498. package/dist/template.js +0 -207
  499. package/dist/theme-defaults~dark_plus.js +0 -210
  500. package/dist/theme-defaults~dark_plus_experimental.js +0 -145
  501. package/dist/theme-defaults~dark_vs.js +0 -412
  502. package/dist/theme-defaults~hc_black.js +0 -471
  503. package/dist/theme-defaults~hc_light.js +0 -595
  504. package/dist/theme-defaults~light_plus.js +0 -212
  505. package/dist/theme-defaults~light_plus_experimental.js +0 -158
  506. package/dist/theme-defaults~light_vs.js +0 -441
  507. package/dist/typescript-basics-typescript.code-snippets.js +0 -313
  508. package/dist/typescript-language-features.js +0 -1103
  509. package/dist/typescript.js +0 -216
  510. package/dist/typescriptreact.js +0 -216
  511. package/dist/vb-vb.code-snippets.js +0 -88
  512. package/dist/vb.js +0 -79
  513. package/dist/verilog.js +0 -187
  514. package/dist/volar-vue.js +0 -289
  515. package/dist/vscode-R-r-snippets.js +0 -534
  516. package/dist/vscode-R-rmarkdown.js +0 -461
  517. package/dist/vscode-R.js +0 -660
  518. package/dist/vscode-django-filters.js +0 -340
  519. package/dist/vscode-django.js +0 -37
  520. package/dist/vscode-go-go.js +0 -276
  521. package/dist/vscode-go.js +0 -1610
  522. package/dist/vscode-groovy.js +0 -28
  523. package/dist/vscode-python.js +0 -706
  524. package/dist/vue-directives.js +0 -25
  525. package/dist/vue-interpolations.js +0 -25
  526. package/dist/vue-sfc-style-variable-injection.js +0 -63
  527. package/dist/vue.js +0 -151
  528. package/dist/vue.tmLanguage.js +0 -1218
  529. package/dist/xml.js +0 -116
  530. package/dist/xml.tmLanguage.js +0 -395
  531. package/dist/xsl.js +0 -39
  532. package/dist/xsl.tmLanguage.js +0 -102
  533. package/dist/yaml.js +0 -82
  534. package/dist/yaml.tmLanguage.js +0 -629
  535. /package/dist/{extensions → editor}/autofold.d.ts +0 -0
  536. /package/dist/{extensions → editor}/cobol.d.ts +0 -0
  537. /package/dist/{extensions → editor}/index.d.ts +0 -0
@@ -1,2784 +0,0 @@
1
- var information_for_contributors = [
2
- "This file has been converted from https://github.com/microsoft/vscode/blob/master/extensions/ruby/",
3
- "If you want to provide a fix or improvement, please create a pull request against the original repository.",
4
- "Once accepted there, we are happy to receive an update request."
5
- ];
6
- var version = "https://github.com/textmate/ruby.tmbundle/commit/efcb8941c701343f1b2e9fb105c678152fea6892";
7
- var name = "Ruby";
8
- var scopeName = "source.ruby";
9
- var comment = "\n\tTODO: unresolved issues\n\n\ttext:\n\t\"p <<end\n\tprint me!\n\tend\"\n\tsymptoms:\n\tnot recognized as a heredoc\n\tsolution:\n\tthere is no way to distinguish perfectly between the << operator and the start\n\tof a heredoc. Currently, we require assignment to recognize a heredoc. More\n\trefinement is possible.\n\t• Heredocs with indented terminators (<<-) are always distinguishable, however.\n\t• Nested heredocs are not really supportable at present\n\n\ttext:\n\tprint <<-'THERE' \n\tThis is single quoted. \n\tThe above used #{Time.now} \n\tTHERE \n\tsymtoms:\n\tFrom Programming Ruby p306; should be a non-interpolated heredoc.\n\t\n text:\n val?(a):p(b)\n val?'a':'b'\n symptoms:\n ':p' is recognized as a symbol.. its 2 things ':' and 'p'.\n :'b' has same problem.\n solution:\n ternary operator rule, precedence stuff, symbol rule.\n but also consider 'a.b?(:c)' ??\n";
10
- var patterns = [
11
- {
12
- captures: {
13
- "1": {
14
- name: "keyword.control.class.ruby"
15
- },
16
- "2": {
17
- name: "entity.name.type.class.ruby"
18
- },
19
- "3": {
20
- name: "keyword.operator.other.ruby"
21
- },
22
- "4": {
23
- name: "entity.other.inherited-class.ruby"
24
- },
25
- "5": {
26
- name: "keyword.operator.other.ruby"
27
- },
28
- "6": {
29
- name: "variable.other.object.ruby"
30
- }
31
- },
32
- match: "^\\s*(class)\\s+(?:([.a-zA-Z0-9_:]+)(?:\\s*(<)\\s*([.a-zA-Z0-9_:]+))?|(<<)\\s*([.a-zA-Z0-9_:]+))",
33
- name: "meta.class.ruby"
34
- },
35
- {
36
- captures: {
37
- "1": {
38
- name: "keyword.control.module.ruby"
39
- },
40
- "2": {
41
- name: "entity.name.type.module.ruby"
42
- },
43
- "3": {
44
- name: "entity.other.inherited-class.module.first.ruby"
45
- },
46
- "4": {
47
- name: "punctuation.separator.inheritance.ruby"
48
- },
49
- "5": {
50
- name: "entity.other.inherited-class.module.second.ruby"
51
- },
52
- "6": {
53
- name: "punctuation.separator.inheritance.ruby"
54
- },
55
- "7": {
56
- name: "entity.other.inherited-class.module.third.ruby"
57
- },
58
- "8": {
59
- name: "punctuation.separator.inheritance.ruby"
60
- }
61
- },
62
- match: "^\\s*(module)\\s+(([A-Z]\\w*(::))?([A-Z]\\w*(::))?([A-Z]\\w*(::))*[A-Z]\\w*)",
63
- name: "meta.module.ruby"
64
- },
65
- {
66
- comment: "else if is a common mistake carried over from other languages. it works if you put in a second end, but it’s never what you want.",
67
- match: "(?<!\\.)\\belse(\\s)+if\\b",
68
- name: "invalid.deprecated.ruby"
69
- },
70
- {
71
- captures: {
72
- "1": {
73
- name: "punctuation.definition.constant.ruby"
74
- }
75
- },
76
- comment: "symbols as hash key (1.9 syntax)",
77
- match: "(?>[a-zA-Z_]\\w*(?>[?!])?)(:)(?!:)",
78
- name: "constant.other.symbol.hashkey.ruby"
79
- },
80
- {
81
- captures: {
82
- "1": {
83
- name: "punctuation.definition.constant.ruby"
84
- }
85
- },
86
- comment: "symbols as hash key (1.8 syntax)",
87
- match: "(?<!:)(:)(?>[a-zA-Z_]\\w*(?>[?!])?)(?=\\s*=>)",
88
- name: "constant.other.symbol.hashkey.ruby"
89
- },
90
- {
91
- comment: "everything being a reserved word, not a value and needing a 'end' is a..",
92
- match: "(?<!\\.)\\b(BEGIN|begin|case|class|else|elsif|END|end|ensure|for|if|in|module|rescue|then|unless|until|when|while)\\b(?![?!])",
93
- name: "keyword.control.ruby"
94
- },
95
- {
96
- comment: "contextual smart pair support for block parameters",
97
- match: "(?<!\\.)\\bdo\\b",
98
- name: "keyword.control.start-block.ruby"
99
- },
100
- {
101
- comment: "contextual smart pair support",
102
- match: "(?<=\\{)(\\s+)",
103
- name: "meta.syntax.ruby.start-block"
104
- },
105
- {
106
- match: "(?<!\\.)\\b(alias|alias_method|block_given[?]|break|defined[?]|iterator[?]|next|redo|retry|return|super|undef|yield)(\\b|(?<=[?]))(?![?!])",
107
- name: "keyword.control.pseudo-method.ruby"
108
- },
109
- {
110
- match: "\\b(nil|true|false)\\b(?![?!])",
111
- name: "constant.language.ruby"
112
- },
113
- {
114
- match: "\\b(__(dir|FILE|LINE)__)\\b(?![?!])",
115
- name: "variable.language.ruby"
116
- },
117
- {
118
- begin: "^__END__\\n",
119
- captures: {
120
- "0": {
121
- name: "string.unquoted.program-block.ruby"
122
- }
123
- },
124
- comment: "__END__ marker",
125
- contentName: "text.plain",
126
- end: "(?=not)impossible",
127
- patterns: [
128
- {
129
- begin: "(?=<?xml|<(?i:html\\b)|!DOCTYPE (?i:html\\b))",
130
- end: "(?=not)impossible",
131
- name: "text.html.embedded.ruby",
132
- patterns: [
133
- {
134
- include: "text.html.basic"
135
- }
136
- ]
137
- }
138
- ]
139
- },
140
- {
141
- match: "\\b(self)\\b(?![?!])",
142
- name: "variable.language.self.ruby"
143
- },
144
- {
145
- comment: " everything being a method but having a special function is a..",
146
- match: "\\b(initialize|new|loop|include|extend|prepend|fail|raise|attr_reader|attr_writer|attr_accessor|attr|catch|throw|private|private_class_method|module_function|public|public_class_method|protected|refine|using)\\b(?![?!])",
147
- name: "keyword.other.special-method.ruby"
148
- },
149
- {
150
- begin: "\\b(?<!\\.|::)(require|require_relative)\\b",
151
- captures: {
152
- "1": {
153
- name: "keyword.other.special-method.ruby"
154
- }
155
- },
156
- end: "$|(?=#|\\})",
157
- name: "meta.require.ruby",
158
- patterns: [
159
- {
160
- include: "$self"
161
- }
162
- ]
163
- },
164
- {
165
- captures: {
166
- "1": {
167
- name: "punctuation.definition.variable.ruby"
168
- }
169
- },
170
- match: "(@)[a-zA-Z_]\\w*",
171
- name: "variable.other.readwrite.instance.ruby"
172
- },
173
- {
174
- captures: {
175
- "1": {
176
- name: "punctuation.definition.variable.ruby"
177
- }
178
- },
179
- match: "(@@)[a-zA-Z_]\\w*",
180
- name: "variable.other.readwrite.class.ruby"
181
- },
182
- {
183
- captures: {
184
- "1": {
185
- name: "punctuation.definition.variable.ruby"
186
- }
187
- },
188
- match: "(\\$)[a-zA-Z_]\\w*",
189
- name: "variable.other.readwrite.global.ruby"
190
- },
191
- {
192
- captures: {
193
- "1": {
194
- name: "punctuation.definition.variable.ruby"
195
- }
196
- },
197
- match: "(\\$)(!|@|&|`|'|\\+|\\d+|~|=|/|\\\\|,|;|\\.|<|>|_|\\*|\\$|\\?|:|\"|-[0adFiIlpvw])",
198
- name: "variable.other.readwrite.global.pre-defined.ruby"
199
- },
200
- {
201
- begin: "\\b(ENV)\\[",
202
- beginCaptures: {
203
- "1": {
204
- name: "variable.other.constant.ruby"
205
- }
206
- },
207
- end: "\\]",
208
- name: "meta.environment-variable.ruby",
209
- patterns: [
210
- {
211
- include: "$self"
212
- }
213
- ]
214
- },
215
- {
216
- match: "\\b[A-Z]\\w*(?=((\\.|::)[A-Za-z]|\\[))",
217
- name: "support.class.ruby"
218
- },
219
- {
220
- match: "\\b(abort|at_exit|autoload[?]?|binding|callcc|caller|caller_locations|chomp|chop|eval|exec|exit|exit!|fork|format|gets|global_variables|gsub|lambda|load|local_variables|open|p|print|printf|proc|putc|puts|rand|readline|readlines|select|set_trace_func|sleep|spawn|sprintf|srand|sub|syscall|system|test|trace_var|trap|untrace_var|warn)(\\b|(?<=[?!]))(?![?!])",
221
- name: "support.function.kernel.ruby"
222
- },
223
- {
224
- match: "\\b[A-Z]\\w*\\b",
225
- name: "variable.other.constant.ruby"
226
- },
227
- {
228
- begin: "(?x)\n\t\t\t (?=def\\b) # an optimization to help Oniguruma fail fast\n\t\t\t (?<=^|\\s)(def)\\s+ # the def keyword\n\t\t\t ( (?>[a-zA-Z_]\\w*(?>\\.|::))? # a method name prefix\n\t\t\t (?>[a-zA-Z_]\\w*(?>[?!]|=(?!>))? # the method name\n\t\t\t |===?|!=|!~|>[>=]?|<=>|<[<=]?|[%&`/\\|^]|\\*\\*?|=?~|[-+]@?|\\[\\]=?) ) # …or an operator method\n\t\t\t \\s*(\\() # the openning parenthesis for arguments\n\t\t\t ",
229
- beginCaptures: {
230
- "1": {
231
- name: "keyword.control.def.ruby"
232
- },
233
- "2": {
234
- name: "entity.name.function.ruby"
235
- },
236
- "3": {
237
- name: "punctuation.definition.parameters.ruby"
238
- }
239
- },
240
- comment: "the method pattern comes from the symbol pattern, see there for a explaination",
241
- end: "\\)",
242
- endCaptures: {
243
- "0": {
244
- name: "punctuation.definition.parameters.ruby"
245
- }
246
- },
247
- name: "meta.function.method.with-arguments.ruby",
248
- patterns: [
249
- {
250
- begin: "(?=[&*_a-zA-Z])",
251
- end: "(?=[,)])",
252
- patterns: [
253
- {
254
- captures: {
255
- "1": {
256
- name: "storage.type.variable.ruby"
257
- },
258
- "2": {
259
- name: "constant.other.symbol.hashkey.parameter.function.ruby"
260
- },
261
- "3": {
262
- name: "punctuation.definition.constant.ruby"
263
- },
264
- "4": {
265
- name: "variable.parameter.function.ruby"
266
- }
267
- },
268
- match: "\\G([&*]?)(?:([_a-zA-Z]\\w*(:))|([_a-zA-Z]\\w*))"
269
- },
270
- {
271
- include: "#parens"
272
- },
273
- {
274
- include: "#braces"
275
- },
276
- {
277
- include: "$self"
278
- }
279
- ]
280
- }
281
- ],
282
- repository: {
283
- braces: {
284
- begin: "\\{",
285
- beginCaptures: {
286
- "0": {
287
- name: "punctuation.section.function.begin.ruby"
288
- }
289
- },
290
- end: "\\}",
291
- endCaptures: {
292
- "0": {
293
- name: "punctuation.section.function.end.ruby"
294
- }
295
- },
296
- patterns: [
297
- {
298
- include: "#parens"
299
- },
300
- {
301
- include: "#braces"
302
- },
303
- {
304
- include: "$self"
305
- }
306
- ]
307
- },
308
- parens: {
309
- begin: "\\(",
310
- beginCaptures: {
311
- "0": {
312
- name: "punctuation.section.function.begin.ruby"
313
- }
314
- },
315
- end: "\\)",
316
- endCaptures: {
317
- "0": {
318
- name: "punctuation.section.function.end.ruby"
319
- }
320
- },
321
- patterns: [
322
- {
323
- include: "#parens"
324
- },
325
- {
326
- include: "#braces"
327
- },
328
- {
329
- include: "$self"
330
- }
331
- ]
332
- }
333
- }
334
- },
335
- {
336
- begin: "(?x)\n\t\t\t (?=def\\b) # an optimization to help Oniguruma fail fast\n\t\t\t (?<=^|\\s)(def)\\s+ # the def keyword\n\t\t\t ( (?>[a-zA-Z_]\\w*(?>\\.|::))? # a method name prefix\n\t\t\t (?>[a-zA-Z_]\\w*(?>[?!]|=(?!>))? # the method name\n\t\t\t |===?|!=|!~|>[>=]?|<=>|<[<=]?|[%&`/\\|^]|\\*\\*?|=?~|[-+]@?|\\[\\]=?) ) # …or an operator method\n\t\t\t [ \\t] # the space separating the arguments\n\t\t\t (?=[ \\t]*[^\\s#;]) # make sure arguments and not a comment follow\n\t\t\t ",
337
- beginCaptures: {
338
- "1": {
339
- name: "keyword.control.def.ruby"
340
- },
341
- "2": {
342
- name: "entity.name.function.ruby"
343
- }
344
- },
345
- comment: "same as the previous rule, but without parentheses around the arguments",
346
- end: "$",
347
- name: "meta.function.method.with-arguments.ruby",
348
- patterns: [
349
- {
350
- begin: "(?![\\s,])",
351
- end: "(?=,|$)",
352
- patterns: [
353
- {
354
- captures: {
355
- "1": {
356
- name: "storage.type.variable.ruby"
357
- },
358
- "2": {
359
- name: "constant.other.symbol.hashkey.parameter.function.ruby"
360
- },
361
- "3": {
362
- name: "punctuation.definition.constant.ruby"
363
- },
364
- "4": {
365
- name: "variable.parameter.function.ruby"
366
- }
367
- },
368
- match: "\\G([&*]?)(?:([_a-zA-Z]\\w*(:))|([_a-zA-Z]\\w*))",
369
- name: "variable.parameter.function.ruby"
370
- },
371
- {
372
- include: "$self"
373
- }
374
- ]
375
- }
376
- ]
377
- },
378
- {
379
- captures: {
380
- "1": {
381
- name: "keyword.control.def.ruby"
382
- },
383
- "3": {
384
- name: "entity.name.function.ruby"
385
- }
386
- },
387
- comment: " the optional name is just to catch the def also without a method-name",
388
- match: "(?x)\n\t\t\t (?=def\\b) # an optimization to help Oniguruma fail fast\n\t\t\t (?<=^|\\s)(def)\\b # the def keyword\n\t\t\t ( \\s+ # an optional group of whitespace followed by…\n\t\t\t ( (?>[a-zA-Z_]\\w*(?>\\.|::))? # a method name prefix\n\t\t\t (?>[a-zA-Z_]\\w*(?>[?!]|=(?!>))? # the method name\n\t\t\t |===?|!=|!~|>[>=]?|<=>|<[<=]?|[%&`/\\|^]|\\*\\*?|=?~|[-+]@?|\\[\\]=?) ) )? # …or an operator method\n\t\t\t ",
389
- name: "meta.function.method.without-arguments.ruby"
390
- },
391
- {
392
- match: "\\b\\d(?>_?\\d)*(?=\\.\\d|[eE])(\\.\\d(?>_?\\d)*)?([eE][-+]?\\d(?>_?\\d)*)?r?i?\\b",
393
- name: "constant.numeric.float.ruby"
394
- },
395
- {
396
- match: "\\b(0|(0[dD]\\d|[1-9])(?>_?\\d)*)r?i?\\b",
397
- name: "constant.numeric.integer.ruby"
398
- },
399
- {
400
- match: "\\b0[xX]\\h(?>_?\\h)*r?i?\\b",
401
- name: "constant.numeric.hex.ruby"
402
- },
403
- {
404
- match: "\\b0[bB][01](?>_?[01])*r?i?\\b",
405
- name: "constant.numeric.binary.ruby"
406
- },
407
- {
408
- match: "\\b0([oO]?[0-7](?>_?[0-7])*)?r?i?\\b",
409
- name: "constant.numeric.octal.ruby"
410
- },
411
- {
412
- begin: ":'",
413
- captures: {
414
- "0": {
415
- name: "punctuation.definition.constant.ruby"
416
- }
417
- },
418
- end: "'",
419
- name: "constant.other.symbol.single-quoted.ruby",
420
- patterns: [
421
- {
422
- match: "\\\\['\\\\]",
423
- name: "constant.character.escape.ruby"
424
- }
425
- ]
426
- },
427
- {
428
- begin: ":\"",
429
- captures: {
430
- "0": {
431
- name: "punctuation.definition.constant.ruby"
432
- }
433
- },
434
- end: "\"",
435
- name: "constant.other.symbol.double-quoted.ruby",
436
- patterns: [
437
- {
438
- include: "#interpolated_ruby"
439
- },
440
- {
441
- include: "#escaped_char"
442
- }
443
- ]
444
- },
445
- {
446
- comment: "Needs higher precedence than regular expressions.",
447
- match: "(?<!\\()/=",
448
- name: "keyword.operator.assignment.augmented.ruby"
449
- },
450
- {
451
- begin: "'",
452
- beginCaptures: {
453
- "0": {
454
- name: "punctuation.definition.string.begin.ruby"
455
- }
456
- },
457
- comment: "single quoted string (does not allow interpolation)",
458
- end: "'",
459
- endCaptures: {
460
- "0": {
461
- name: "punctuation.definition.string.end.ruby"
462
- }
463
- },
464
- name: "string.quoted.single.ruby",
465
- patterns: [
466
- {
467
- match: "\\\\'|\\\\\\\\",
468
- name: "constant.character.escape.ruby"
469
- }
470
- ]
471
- },
472
- {
473
- begin: "\"",
474
- beginCaptures: {
475
- "0": {
476
- name: "punctuation.definition.string.begin.ruby"
477
- }
478
- },
479
- comment: "double quoted string (allows for interpolation)",
480
- end: "\"",
481
- endCaptures: {
482
- "0": {
483
- name: "punctuation.definition.string.end.ruby"
484
- }
485
- },
486
- name: "string.quoted.double.ruby",
487
- patterns: [
488
- {
489
- include: "#interpolated_ruby"
490
- },
491
- {
492
- include: "#escaped_char"
493
- }
494
- ]
495
- },
496
- {
497
- begin: "`",
498
- beginCaptures: {
499
- "0": {
500
- name: "punctuation.definition.string.begin.ruby"
501
- }
502
- },
503
- comment: "execute string (allows for interpolation)",
504
- end: "`",
505
- endCaptures: {
506
- "0": {
507
- name: "punctuation.definition.string.end.ruby"
508
- }
509
- },
510
- name: "string.interpolated.ruby",
511
- patterns: [
512
- {
513
- include: "#interpolated_ruby"
514
- },
515
- {
516
- include: "#escaped_char"
517
- }
518
- ]
519
- },
520
- {
521
- include: "#percent_literals"
522
- },
523
- {
524
- begin: "(?x)\n\t\t\t (?:\n\t\t\t ^ # beginning of line\n\t\t\t | (?<= # or look-behind on:\n\t\t\t [=>~(?:\\[,|&;]\n\t\t\t | [\\s;]if\\s\t\t\t# keywords\n\t\t\t | [\\s;]elsif\\s\n\t\t\t | [\\s;]while\\s\n\t\t\t | [\\s;]unless\\s\n\t\t\t | [\\s;]when\\s\n\t\t\t | [\\s;]assert_match\\s\n\t\t\t | [\\s;]or\\s\t\t\t# boolean opperators\n\t\t\t | [\\s;]and\\s\n\t\t\t | [\\s;]not\\s\n\t\t\t | [\\s.]index\\s\t\t\t# methods\n\t\t\t | [\\s.]scan\\s\n\t\t\t | [\\s.]sub\\s\n\t\t\t | [\\s.]sub!\\s\n\t\t\t | [\\s.]gsub\\s\n\t\t\t | [\\s.]gsub!\\s\n\t\t\t | [\\s.]match\\s\n\t\t\t )\n\t\t\t | (?<= # or a look-behind with line anchor:\n\t\t\t ^when\\s # duplication necessary due to limits of regex\n\t\t\t | ^if\\s\n\t\t\t | ^elsif\\s\n\t\t\t | ^while\\s\n\t\t\t | ^unless\\s\n\t\t\t )\n\t\t\t )\n\t\t\t \\s*((/))(?![*+{}?])\n\t\t\t",
525
- captures: {
526
- "1": {
527
- name: "string.regexp.classic.ruby"
528
- },
529
- "2": {
530
- name: "punctuation.definition.string.ruby"
531
- }
532
- },
533
- comment: "regular expressions (normal)\n\t\t\twe only start a regexp if the character before it (excluding whitespace)\n\t\t\tis what we think is before a regexp\n\t\t\t",
534
- contentName: "string.regexp.classic.ruby",
535
- end: "((/[eimnosux]*))",
536
- patterns: [
537
- {
538
- include: "#regex_sub"
539
- }
540
- ]
541
- },
542
- {
543
- captures: {
544
- "1": {
545
- name: "punctuation.definition.constant.ruby"
546
- }
547
- },
548
- comment: "symbols",
549
- match: "(?<!:)(:)(?>[a-zA-Z_]\\w*(?>[?!]|=(?![>=]))?|===?|>[>=]?|<=>|<[<=]?|[%&`/\\|]|\\*\\*?|=?~|[-+]@?|\\[\\]=?|(@@?|\\$)[a-zA-Z_]\\w*)",
550
- name: "constant.other.symbol.ruby"
551
- },
552
- {
553
- begin: "^=begin",
554
- captures: {
555
- "0": {
556
- name: "punctuation.definition.comment.ruby"
557
- }
558
- },
559
- comment: "multiline comments",
560
- end: "^=end",
561
- name: "comment.block.documentation.ruby"
562
- },
563
- {
564
- begin: "(^[ \\t]+)?(?=#)",
565
- beginCaptures: {
566
- "1": {
567
- name: "punctuation.whitespace.comment.leading.ruby"
568
- }
569
- },
570
- end: "(?!\\G)",
571
- patterns: [
572
- {
573
- begin: "#",
574
- beginCaptures: {
575
- "0": {
576
- name: "punctuation.definition.comment.ruby"
577
- }
578
- },
579
- end: "\\n",
580
- name: "comment.line.number-sign.ruby"
581
- }
582
- ]
583
- },
584
- {
585
- comment: "\n\t\t\tmatches questionmark-letters.\n\n\t\t\texamples (1st alternation = hex):\n\t\t\t?\\x1 ?\\x61\n\n\t\t\texamples (2nd alternation = octal):\n\t\t\t?\\0 ?\\07 ?\\017\n\n\t\t\texamples (3rd alternation = escaped):\n\t\t\t?\\n ?\\b\n\n\t\t\texamples (4th alternation = meta-ctrl):\n\t\t\t?\\C-a ?\\M-a ?\\C-\\M-\\C-\\M-a\n\n\t\t\texamples (4th alternation = normal):\n\t\t\t?a ?A ?0 \n\t\t\t?* ?\" ?( \n\t\t\t?. ?#\n\t\t\t\n\t\t\t\n\t\t\tthe negative lookbehind prevents against matching\n\t\t\tp(42.tainted?)\n\t\t\t",
586
- match: "(?<!\\w)\\?(\\\\(x\\h{1,2}(?!\\h)\\b|0[0-7]{0,2}(?![0-7])\\b|[^x0MC])|(\\\\[MC]-)+\\w|[^\\s\\\\])",
587
- name: "constant.numeric.ruby"
588
- },
589
- {
590
- begin: "(?=(?><<[-~](\"?)((?:[_\\w]+_|)HTML)\\b\\1))",
591
- comment: "Heredoc with embedded html",
592
- end: "(?!\\G)",
593
- name: "meta.embedded.block.html",
594
- patterns: [
595
- {
596
- begin: "(?><<[-~](\"?)((?:[_\\w]+_|)HTML)\\b\\1)",
597
- beginCaptures: {
598
- "0": {
599
- name: "punctuation.definition.string.begin.ruby"
600
- }
601
- },
602
- contentName: "text.html",
603
- end: "\\s*\\2$\\n?",
604
- endCaptures: {
605
- "0": {
606
- name: "punctuation.definition.string.end.ruby"
607
- }
608
- },
609
- name: "string.unquoted.heredoc.ruby",
610
- patterns: [
611
- {
612
- include: "#heredoc"
613
- },
614
- {
615
- include: "#interpolated_ruby"
616
- },
617
- {
618
- include: "text.html.basic"
619
- },
620
- {
621
- include: "#escaped_char"
622
- }
623
- ]
624
- }
625
- ]
626
- },
627
- {
628
- begin: "(?=(?><<[-~](\"?)((?:[_\\w]+_|)XML)\\b\\1))",
629
- comment: "Heredoc with embedded xml",
630
- end: "(?!\\G)",
631
- name: "meta.embedded.block.xml",
632
- patterns: [
633
- {
634
- begin: "(?><<[-~](\"?)((?:[_\\w]+_|)XML)\\b\\1)",
635
- beginCaptures: {
636
- "0": {
637
- name: "punctuation.definition.string.begin.ruby"
638
- }
639
- },
640
- contentName: "text.xml",
641
- end: "\\s*\\2$\\n?",
642
- endCaptures: {
643
- "0": {
644
- name: "punctuation.definition.string.end.ruby"
645
- }
646
- },
647
- name: "string.unquoted.heredoc.ruby",
648
- patterns: [
649
- {
650
- include: "#heredoc"
651
- },
652
- {
653
- include: "#interpolated_ruby"
654
- },
655
- {
656
- include: "text.xml"
657
- },
658
- {
659
- include: "#escaped_char"
660
- }
661
- ]
662
- }
663
- ]
664
- },
665
- {
666
- begin: "(?=(?><<[-~](\"?)((?:[_\\w]+_|)SQL)\\b\\1))",
667
- comment: "Heredoc with embedded sql",
668
- end: "(?!\\G)",
669
- name: "meta.embedded.block.sql",
670
- patterns: [
671
- {
672
- begin: "(?><<[-~](\"?)((?:[_\\w]+_|)SQL)\\b\\1)",
673
- beginCaptures: {
674
- "0": {
675
- name: "punctuation.definition.string.begin.ruby"
676
- }
677
- },
678
- contentName: "source.sql",
679
- end: "\\s*\\2$\\n?",
680
- endCaptures: {
681
- "0": {
682
- name: "punctuation.definition.string.end.ruby"
683
- }
684
- },
685
- name: "string.unquoted.heredoc.ruby",
686
- patterns: [
687
- {
688
- include: "#heredoc"
689
- },
690
- {
691
- include: "#interpolated_ruby"
692
- },
693
- {
694
- include: "source.sql"
695
- },
696
- {
697
- include: "#escaped_char"
698
- }
699
- ]
700
- }
701
- ]
702
- },
703
- {
704
- begin: "(?=(?><<[-~](\"?)((?:[_\\w]+_|)CSS)\\b\\1))",
705
- comment: "Heredoc with embedded css",
706
- end: "(?!\\G)",
707
- name: "meta.embedded.block.css",
708
- patterns: [
709
- {
710
- begin: "(?><<[-~](\"?)((?:[_\\w]+_|)CSS)\\b\\1)",
711
- beginCaptures: {
712
- "0": {
713
- name: "punctuation.definition.string.begin.ruby"
714
- }
715
- },
716
- contentName: "source.css",
717
- end: "\\s*\\2$\\n?",
718
- endCaptures: {
719
- "0": {
720
- name: "punctuation.definition.string.end.ruby"
721
- }
722
- },
723
- name: "string.unquoted.heredoc.ruby",
724
- patterns: [
725
- {
726
- include: "#heredoc"
727
- },
728
- {
729
- include: "#interpolated_ruby"
730
- },
731
- {
732
- include: "source.css"
733
- },
734
- {
735
- include: "#escaped_char"
736
- }
737
- ]
738
- }
739
- ]
740
- },
741
- {
742
- begin: "(?=(?><<[-~](\"?)((?:[_\\w]+_|)CPP)\\b\\1))",
743
- comment: "Heredoc with embedded c++",
744
- end: "(?!\\G)",
745
- name: "meta.embedded.block.c++",
746
- patterns: [
747
- {
748
- begin: "(?><<[-~](\"?)((?:[_\\w]+_|)CPP)\\b\\1)",
749
- beginCaptures: {
750
- "0": {
751
- name: "punctuation.definition.string.begin.ruby"
752
- }
753
- },
754
- contentName: "source.c++",
755
- end: "\\s*\\2$\\n?",
756
- endCaptures: {
757
- "0": {
758
- name: "punctuation.definition.string.end.ruby"
759
- }
760
- },
761
- name: "string.unquoted.heredoc.ruby",
762
- patterns: [
763
- {
764
- include: "#heredoc"
765
- },
766
- {
767
- include: "#interpolated_ruby"
768
- },
769
- {
770
- include: "source.c++"
771
- },
772
- {
773
- include: "#escaped_char"
774
- }
775
- ]
776
- }
777
- ]
778
- },
779
- {
780
- begin: "(?=(?><<[-~](\"?)((?:[_\\w]+_|)C)\\b\\1))",
781
- comment: "Heredoc with embedded c",
782
- end: "(?!\\G)",
783
- name: "meta.embedded.block.c",
784
- patterns: [
785
- {
786
- begin: "(?><<[-~](\"?)((?:[_\\w]+_|)C)\\b\\1)",
787
- beginCaptures: {
788
- "0": {
789
- name: "punctuation.definition.string.begin.ruby"
790
- }
791
- },
792
- contentName: "source.c",
793
- end: "\\s*\\2$\\n?",
794
- endCaptures: {
795
- "0": {
796
- name: "punctuation.definition.string.end.ruby"
797
- }
798
- },
799
- name: "string.unquoted.heredoc.ruby",
800
- patterns: [
801
- {
802
- include: "#heredoc"
803
- },
804
- {
805
- include: "#interpolated_ruby"
806
- },
807
- {
808
- include: "source.c"
809
- },
810
- {
811
- include: "#escaped_char"
812
- }
813
- ]
814
- }
815
- ]
816
- },
817
- {
818
- begin: "(?=(?><<[-~](\"?)((?:[_\\w]+_|)(?:JS|JAVASCRIPT))\\b\\1))",
819
- comment: "Heredoc with embedded javascript",
820
- end: "(?!\\G)",
821
- name: "meta.embedded.block.js",
822
- patterns: [
823
- {
824
- begin: "(?><<[-~](\"?)((?:[_\\w]+_|)(?:JS|JAVASCRIPT))\\b\\1)",
825
- beginCaptures: {
826
- "0": {
827
- name: "punctuation.definition.string.begin.ruby"
828
- }
829
- },
830
- contentName: "source.js",
831
- end: "\\s*\\2$\\n?",
832
- endCaptures: {
833
- "0": {
834
- name: "punctuation.definition.string.end.ruby"
835
- }
836
- },
837
- name: "string.unquoted.heredoc.ruby",
838
- patterns: [
839
- {
840
- include: "#heredoc"
841
- },
842
- {
843
- include: "#interpolated_ruby"
844
- },
845
- {
846
- include: "source.js"
847
- },
848
- {
849
- include: "#escaped_char"
850
- }
851
- ]
852
- }
853
- ]
854
- },
855
- {
856
- begin: "(?=(?><<[-~](\"?)((?:[_\\w]+_|)JQUERY)\\b\\1))",
857
- comment: "Heredoc with embedded jQuery javascript",
858
- end: "(?!\\G)",
859
- name: "meta.embedded.block.js.jquery",
860
- patterns: [
861
- {
862
- begin: "(?><<[-~](\"?)((?:[_\\w]+_|)JQUERY)\\b\\1)",
863
- beginCaptures: {
864
- "0": {
865
- name: "punctuation.definition.string.begin.ruby"
866
- }
867
- },
868
- contentName: "source.js.jquery",
869
- end: "\\s*\\2$\\n?",
870
- endCaptures: {
871
- "0": {
872
- name: "punctuation.definition.string.end.ruby"
873
- }
874
- },
875
- name: "string.unquoted.heredoc.ruby",
876
- patterns: [
877
- {
878
- include: "#heredoc"
879
- },
880
- {
881
- include: "#interpolated_ruby"
882
- },
883
- {
884
- include: "source.js.jquery"
885
- },
886
- {
887
- include: "#escaped_char"
888
- }
889
- ]
890
- }
891
- ]
892
- },
893
- {
894
- begin: "(?=(?><<[-~](\"?)((?:[_\\w]+_|)(?:SH|SHELL))\\b\\1))",
895
- comment: "Heredoc with embedded shell",
896
- end: "(?!\\G)",
897
- name: "meta.embedded.block.shell",
898
- patterns: [
899
- {
900
- begin: "(?><<[-~](\"?)((?:[_\\w]+_|)(?:SH|SHELL))\\b\\1)",
901
- beginCaptures: {
902
- "0": {
903
- name: "punctuation.definition.string.begin.ruby"
904
- }
905
- },
906
- contentName: "source.shell",
907
- end: "\\s*\\2$\\n?",
908
- endCaptures: {
909
- "0": {
910
- name: "punctuation.definition.string.end.ruby"
911
- }
912
- },
913
- name: "string.unquoted.heredoc.ruby",
914
- patterns: [
915
- {
916
- include: "#heredoc"
917
- },
918
- {
919
- include: "#interpolated_ruby"
920
- },
921
- {
922
- include: "source.shell"
923
- },
924
- {
925
- include: "#escaped_char"
926
- }
927
- ]
928
- }
929
- ]
930
- },
931
- {
932
- begin: "(?=(?><<[-~](\"?)((?:[_\\w]+_|)LUA)\\b\\1))",
933
- comment: "Heredoc with embedded lua",
934
- end: "(?!\\G)",
935
- name: "meta.embedded.block.lua",
936
- patterns: [
937
- {
938
- begin: "(?><<[-~](\"?)((?:[_\\w]+_|)LUA)\\b\\1)",
939
- beginCaptures: {
940
- "0": {
941
- name: "punctuation.definition.string.begin.ruby"
942
- }
943
- },
944
- contentName: "source.lua",
945
- end: "\\s*\\2$\\n?",
946
- endCaptures: {
947
- "0": {
948
- name: "punctuation.definition.string.end.ruby"
949
- }
950
- },
951
- name: "string.unquoted.heredoc.ruby",
952
- patterns: [
953
- {
954
- include: "#heredoc"
955
- },
956
- {
957
- include: "#interpolated_ruby"
958
- },
959
- {
960
- include: "source.lua"
961
- },
962
- {
963
- include: "#escaped_char"
964
- }
965
- ]
966
- }
967
- ]
968
- },
969
- {
970
- begin: "(?=(?><<[-~](\"?)((?:[_\\w]+_|)RUBY)\\b\\1))",
971
- comment: "Heredoc with embedded ruby",
972
- end: "(?!\\G)",
973
- name: "meta.embedded.block.ruby",
974
- patterns: [
975
- {
976
- begin: "(?><<[-~](\"?)((?:[_\\w]+_|)RUBY)\\b\\1)",
977
- beginCaptures: {
978
- "0": {
979
- name: "punctuation.definition.string.begin.ruby"
980
- }
981
- },
982
- contentName: "source.ruby",
983
- end: "\\s*\\2$\\n?",
984
- endCaptures: {
985
- "0": {
986
- name: "punctuation.definition.string.end.ruby"
987
- }
988
- },
989
- name: "string.unquoted.heredoc.ruby",
990
- patterns: [
991
- {
992
- include: "#heredoc"
993
- },
994
- {
995
- include: "#interpolated_ruby"
996
- },
997
- {
998
- include: "source.ruby"
999
- },
1000
- {
1001
- include: "#escaped_char"
1002
- }
1003
- ]
1004
- }
1005
- ]
1006
- },
1007
- {
1008
- begin: "(?>=\\s*<<(\\w+))",
1009
- beginCaptures: {
1010
- "0": {
1011
- name: "punctuation.definition.string.begin.ruby"
1012
- }
1013
- },
1014
- end: "^\\1$",
1015
- endCaptures: {
1016
- "0": {
1017
- name: "punctuation.definition.string.end.ruby"
1018
- }
1019
- },
1020
- name: "string.unquoted.heredoc.ruby",
1021
- patterns: [
1022
- {
1023
- include: "#heredoc"
1024
- },
1025
- {
1026
- include: "#interpolated_ruby"
1027
- },
1028
- {
1029
- include: "#escaped_char"
1030
- }
1031
- ]
1032
- },
1033
- {
1034
- begin: "(?><<[-~](\\w+))",
1035
- beginCaptures: {
1036
- "0": {
1037
- name: "punctuation.definition.string.begin.ruby"
1038
- }
1039
- },
1040
- comment: "heredoc with indented terminator",
1041
- end: "\\s*\\1$",
1042
- endCaptures: {
1043
- "0": {
1044
- name: "punctuation.definition.string.end.ruby"
1045
- }
1046
- },
1047
- name: "string.unquoted.heredoc.ruby",
1048
- patterns: [
1049
- {
1050
- include: "#heredoc"
1051
- },
1052
- {
1053
- include: "#interpolated_ruby"
1054
- },
1055
- {
1056
- include: "#escaped_char"
1057
- }
1058
- ]
1059
- },
1060
- {
1061
- begin: "(?<=\\{|do|\\{\\s|do\\s)(\\|)",
1062
- captures: {
1063
- "1": {
1064
- name: "punctuation.separator.arguments.ruby"
1065
- }
1066
- },
1067
- end: "(?<!\\|)(\\|)(?!\\|)",
1068
- patterns: [
1069
- {
1070
- include: "$self"
1071
- },
1072
- {
1073
- match: "[_a-zA-Z][_a-zA-Z0-9]*",
1074
- name: "variable.other.block.ruby"
1075
- },
1076
- {
1077
- match: ",",
1078
- name: "punctuation.separator.variable.ruby"
1079
- }
1080
- ]
1081
- },
1082
- {
1083
- match: "=>",
1084
- name: "punctuation.separator.key-value"
1085
- },
1086
- {
1087
- match: "->",
1088
- name: "support.function.kernel.lambda.ruby"
1089
- },
1090
- {
1091
- match: "<<=|%=|&{1,2}=|\\*=|\\*\\*=|\\+=|-=|\\^=|\\|{1,2}=|<<",
1092
- name: "keyword.operator.assignment.augmented.ruby"
1093
- },
1094
- {
1095
- match: "<=>|<(?!<|=)|>(?!<|=|>)|<=|>=|===|==|=~|!=|!~|(?<=[ \\t])\\?",
1096
- name: "keyword.operator.comparison.ruby"
1097
- },
1098
- {
1099
- match: "(?<!\\.)\\b(and|not|or)\\b(?![?!])",
1100
- name: "keyword.operator.logical.ruby"
1101
- },
1102
- {
1103
- comment: "Make sure this goes after assignment and comparison",
1104
- match: "(?<=^|[ \\t])!|&&|\\|\\||\\^",
1105
- name: "keyword.operator.logical.ruby"
1106
- },
1107
- {
1108
- captures: {
1109
- "1": {
1110
- name: "punctuation.separator.method.ruby"
1111
- }
1112
- },
1113
- comment: "Safe navigation operator - Added in 2.3",
1114
- match: "(&\\.)\\s*(?![A-Z])"
1115
- },
1116
- {
1117
- match: "(%|&|\\*\\*|\\*|\\+|-|/)",
1118
- name: "keyword.operator.arithmetic.ruby"
1119
- },
1120
- {
1121
- match: "=",
1122
- name: "keyword.operator.assignment.ruby"
1123
- },
1124
- {
1125
- match: "\\||~|>>",
1126
- name: "keyword.operator.other.ruby"
1127
- },
1128
- {
1129
- match: ";",
1130
- name: "punctuation.separator.statement.ruby"
1131
- },
1132
- {
1133
- match: ",",
1134
- name: "punctuation.separator.object.ruby"
1135
- },
1136
- {
1137
- captures: {
1138
- "1": {
1139
- name: "punctuation.separator.namespace.ruby"
1140
- }
1141
- },
1142
- comment: "Mark as namespace separator if double colons followed by capital letter",
1143
- match: "(::)\\s*(?=[A-Z])"
1144
- },
1145
- {
1146
- captures: {
1147
- "1": {
1148
- name: "punctuation.separator.method.ruby"
1149
- }
1150
- },
1151
- comment: "Mark as method separator if double colons not followed by capital letter",
1152
- match: "(\\.|::)\\s*(?![A-Z])"
1153
- },
1154
- {
1155
- comment: "Must come after method and constant separators to prefer double colons",
1156
- match: ":",
1157
- name: "punctuation.separator.other.ruby"
1158
- },
1159
- {
1160
- match: "\\{",
1161
- name: "punctuation.section.scope.begin.ruby"
1162
- },
1163
- {
1164
- match: "\\}",
1165
- name: "punctuation.section.scope.end.ruby"
1166
- },
1167
- {
1168
- match: "\\[",
1169
- name: "punctuation.section.array.begin.ruby"
1170
- },
1171
- {
1172
- match: "\\]",
1173
- name: "punctuation.section.array.end.ruby"
1174
- },
1175
- {
1176
- match: "\\(|\\)",
1177
- name: "punctuation.section.function.ruby"
1178
- }
1179
- ];
1180
- var repository = {
1181
- escaped_char: {
1182
- match: "\\\\(?:[0-7]{1,3}|x[\\da-fA-F]{1,2}|.)",
1183
- name: "constant.character.escape.ruby"
1184
- },
1185
- heredoc: {
1186
- begin: "^<<[-~]?\\w+",
1187
- end: "$",
1188
- patterns: [
1189
- {
1190
- include: "$self"
1191
- }
1192
- ]
1193
- },
1194
- interpolated_ruby: {
1195
- patterns: [
1196
- {
1197
- begin: "#\\{",
1198
- beginCaptures: {
1199
- "0": {
1200
- name: "punctuation.section.embedded.begin.ruby"
1201
- }
1202
- },
1203
- contentName: "source.ruby",
1204
- end: "(\\})",
1205
- endCaptures: {
1206
- "0": {
1207
- name: "punctuation.section.embedded.end.ruby"
1208
- },
1209
- "1": {
1210
- name: "source.ruby"
1211
- }
1212
- },
1213
- name: "meta.embedded.line.ruby",
1214
- patterns: [
1215
- {
1216
- include: "#nest_curly_and_self"
1217
- },
1218
- {
1219
- include: "$self"
1220
- }
1221
- ],
1222
- repository: {
1223
- nest_curly_and_self: {
1224
- patterns: [
1225
- {
1226
- begin: "\\{",
1227
- captures: {
1228
- "0": {
1229
- name: "punctuation.section.scope.ruby"
1230
- }
1231
- },
1232
- end: "\\}",
1233
- patterns: [
1234
- {
1235
- include: "#nest_curly_and_self"
1236
- }
1237
- ]
1238
- },
1239
- {
1240
- include: "$self"
1241
- }
1242
- ]
1243
- }
1244
- }
1245
- },
1246
- {
1247
- captures: {
1248
- "1": {
1249
- name: "punctuation.definition.variable.ruby"
1250
- }
1251
- },
1252
- match: "(#@)[a-zA-Z_]\\w*",
1253
- name: "variable.other.readwrite.instance.ruby"
1254
- },
1255
- {
1256
- captures: {
1257
- "1": {
1258
- name: "punctuation.definition.variable.ruby"
1259
- }
1260
- },
1261
- match: "(#@@)[a-zA-Z_]\\w*",
1262
- name: "variable.other.readwrite.class.ruby"
1263
- },
1264
- {
1265
- captures: {
1266
- "1": {
1267
- name: "punctuation.definition.variable.ruby"
1268
- }
1269
- },
1270
- match: "(#\\$)[a-zA-Z_]\\w*",
1271
- name: "variable.other.readwrite.global.ruby"
1272
- }
1273
- ]
1274
- },
1275
- percent_literals: {
1276
- patterns: [
1277
- {
1278
- begin: "%i(?:([(\\[{<])|([^\\w\\s]|_))",
1279
- beginCaptures: {
1280
- "0": {
1281
- name: "punctuation.section.array.begin.ruby"
1282
- }
1283
- },
1284
- end: "[)\\]}>]\\2|\\1\\2",
1285
- endCaptures: {
1286
- "0": {
1287
- name: "punctuation.section.array.end.ruby"
1288
- }
1289
- },
1290
- name: "meta.array.symbol.ruby",
1291
- patterns: [
1292
- {
1293
- begin: "\\G(?<=\\()(?!\\))",
1294
- end: "(?=\\))",
1295
- patterns: [
1296
- {
1297
- include: "#parens"
1298
- },
1299
- {
1300
- include: "#symbol"
1301
- }
1302
- ]
1303
- },
1304
- {
1305
- begin: "\\G(?<=\\[)(?!\\])",
1306
- end: "(?=\\])",
1307
- patterns: [
1308
- {
1309
- include: "#brackets"
1310
- },
1311
- {
1312
- include: "#symbol"
1313
- }
1314
- ]
1315
- },
1316
- {
1317
- begin: "\\G(?<=\\{)(?!\\})",
1318
- end: "(?=\\})",
1319
- patterns: [
1320
- {
1321
- include: "#braces"
1322
- },
1323
- {
1324
- include: "#symbol"
1325
- }
1326
- ]
1327
- },
1328
- {
1329
- begin: "\\G(?<=<)(?!>)",
1330
- end: "(?=>)",
1331
- patterns: [
1332
- {
1333
- include: "#angles"
1334
- },
1335
- {
1336
- include: "#symbol"
1337
- }
1338
- ]
1339
- },
1340
- {
1341
- include: "#symbol"
1342
- }
1343
- ],
1344
- repository: {
1345
- angles: {
1346
- patterns: [
1347
- {
1348
- captures: {
1349
- "0": {
1350
- name: "constant.character.escape.ruby"
1351
- }
1352
- },
1353
- match: "\\\\<|\\\\>",
1354
- name: "constant.other.symbol.ruby"
1355
- },
1356
- {
1357
- begin: "<",
1358
- captures: {
1359
- "0": {
1360
- name: "constant.other.symbol.ruby"
1361
- }
1362
- },
1363
- end: ">",
1364
- patterns: [
1365
- {
1366
- include: "#angles"
1367
- },
1368
- {
1369
- include: "#symbol"
1370
- }
1371
- ]
1372
- }
1373
- ]
1374
- },
1375
- braces: {
1376
- patterns: [
1377
- {
1378
- captures: {
1379
- "0": {
1380
- name: "constant.character.escape.ruby"
1381
- }
1382
- },
1383
- match: "\\\\\\{|\\\\\\}",
1384
- name: "constant.other.symbol.ruby"
1385
- },
1386
- {
1387
- begin: "\\{",
1388
- captures: {
1389
- "0": {
1390
- name: "constant.other.symbol.ruby"
1391
- }
1392
- },
1393
- end: "\\}",
1394
- patterns: [
1395
- {
1396
- include: "#braces"
1397
- },
1398
- {
1399
- include: "#symbol"
1400
- }
1401
- ]
1402
- }
1403
- ]
1404
- },
1405
- brackets: {
1406
- patterns: [
1407
- {
1408
- captures: {
1409
- "0": {
1410
- name: "constant.character.escape.ruby"
1411
- }
1412
- },
1413
- match: "\\\\\\[|\\\\\\]",
1414
- name: "constant.other.symbol.ruby"
1415
- },
1416
- {
1417
- begin: "\\[",
1418
- captures: {
1419
- "0": {
1420
- name: "constant.other.symbol.ruby"
1421
- }
1422
- },
1423
- end: "\\]",
1424
- patterns: [
1425
- {
1426
- include: "#brackets"
1427
- },
1428
- {
1429
- include: "#symbol"
1430
- }
1431
- ]
1432
- }
1433
- ]
1434
- },
1435
- parens: {
1436
- patterns: [
1437
- {
1438
- captures: {
1439
- "0": {
1440
- name: "constant.character.escape.ruby"
1441
- }
1442
- },
1443
- match: "\\\\\\(|\\\\\\)",
1444
- name: "constant.other.symbol.ruby"
1445
- },
1446
- {
1447
- begin: "\\(",
1448
- captures: {
1449
- "0": {
1450
- name: "constant.other.symbol.ruby"
1451
- }
1452
- },
1453
- end: "\\)",
1454
- patterns: [
1455
- {
1456
- include: "#parens"
1457
- },
1458
- {
1459
- include: "#symbol"
1460
- }
1461
- ]
1462
- }
1463
- ]
1464
- },
1465
- symbol: {
1466
- patterns: [
1467
- {
1468
- captures: {
1469
- "0": {
1470
- name: "constant.character.escape.ruby"
1471
- }
1472
- },
1473
- match: "\\\\\\\\|\\\\[ ]",
1474
- name: "constant.other.symbol.ruby"
1475
- },
1476
- {
1477
- match: "\\S\\w*",
1478
- name: "constant.other.symbol.ruby"
1479
- }
1480
- ]
1481
- }
1482
- }
1483
- },
1484
- {
1485
- begin: "%I(?:([(\\[{<])|([^\\w\\s]|_))",
1486
- beginCaptures: {
1487
- "0": {
1488
- name: "punctuation.section.array.begin.ruby"
1489
- }
1490
- },
1491
- end: "[)\\]}>]\\2|\\1\\2",
1492
- endCaptures: {
1493
- "0": {
1494
- name: "punctuation.section.array.end.ruby"
1495
- }
1496
- },
1497
- name: "meta.array.symbol.interpolated.ruby",
1498
- patterns: [
1499
- {
1500
- begin: "\\G(?<=\\()(?!\\))",
1501
- end: "(?=\\))",
1502
- patterns: [
1503
- {
1504
- include: "#parens"
1505
- },
1506
- {
1507
- include: "#symbol"
1508
- }
1509
- ]
1510
- },
1511
- {
1512
- begin: "\\G(?<=\\[)(?!\\])",
1513
- end: "(?=\\])",
1514
- patterns: [
1515
- {
1516
- include: "#brackets"
1517
- },
1518
- {
1519
- include: "#symbol"
1520
- }
1521
- ]
1522
- },
1523
- {
1524
- begin: "\\G(?<=\\{)(?!\\})",
1525
- end: "(?=\\})",
1526
- patterns: [
1527
- {
1528
- include: "#braces"
1529
- },
1530
- {
1531
- include: "#symbol"
1532
- }
1533
- ]
1534
- },
1535
- {
1536
- begin: "\\G(?<=<)(?!>)",
1537
- end: "(?=>)",
1538
- patterns: [
1539
- {
1540
- include: "#angles"
1541
- },
1542
- {
1543
- include: "#symbol"
1544
- }
1545
- ]
1546
- },
1547
- {
1548
- include: "#symbol"
1549
- }
1550
- ],
1551
- repository: {
1552
- angles: {
1553
- patterns: [
1554
- {
1555
- begin: "<",
1556
- captures: {
1557
- "0": {
1558
- name: "constant.other.symbol.ruby"
1559
- }
1560
- },
1561
- end: ">",
1562
- patterns: [
1563
- {
1564
- include: "#angles"
1565
- },
1566
- {
1567
- include: "#symbol"
1568
- }
1569
- ]
1570
- }
1571
- ]
1572
- },
1573
- braces: {
1574
- patterns: [
1575
- {
1576
- begin: "\\{",
1577
- captures: {
1578
- "0": {
1579
- name: "constant.other.symbol.ruby"
1580
- }
1581
- },
1582
- end: "\\}",
1583
- patterns: [
1584
- {
1585
- include: "#braces"
1586
- },
1587
- {
1588
- include: "#symbol"
1589
- }
1590
- ]
1591
- }
1592
- ]
1593
- },
1594
- brackets: {
1595
- patterns: [
1596
- {
1597
- begin: "\\[",
1598
- captures: {
1599
- "0": {
1600
- name: "constant.other.symbol.ruby"
1601
- }
1602
- },
1603
- end: "\\]",
1604
- patterns: [
1605
- {
1606
- include: "#brackets"
1607
- },
1608
- {
1609
- include: "#symbol"
1610
- }
1611
- ]
1612
- }
1613
- ]
1614
- },
1615
- parens: {
1616
- patterns: [
1617
- {
1618
- begin: "\\(",
1619
- captures: {
1620
- "0": {
1621
- name: "constant.other.symbol.ruby"
1622
- }
1623
- },
1624
- end: "\\)",
1625
- patterns: [
1626
- {
1627
- include: "#parens"
1628
- },
1629
- {
1630
- include: "#symbol"
1631
- }
1632
- ]
1633
- }
1634
- ]
1635
- },
1636
- symbol: {
1637
- patterns: [
1638
- {
1639
- begin: "(?=\\\\|#\\{)",
1640
- end: "(?!\\G)",
1641
- name: "constant.other.symbol.ruby",
1642
- patterns: [
1643
- {
1644
- include: "#escaped_char"
1645
- },
1646
- {
1647
- include: "#interpolated_ruby"
1648
- }
1649
- ]
1650
- },
1651
- {
1652
- match: "\\S\\w*",
1653
- name: "constant.other.symbol.ruby"
1654
- }
1655
- ]
1656
- }
1657
- }
1658
- },
1659
- {
1660
- begin: "%q(?:([(\\[{<])|([^\\w\\s]|_))",
1661
- beginCaptures: {
1662
- "0": {
1663
- name: "punctuation.definition.string.begin.ruby"
1664
- }
1665
- },
1666
- end: "[)\\]}>]\\2|\\1\\2",
1667
- endCaptures: {
1668
- "0": {
1669
- name: "punctuation.definition.string.end.ruby"
1670
- }
1671
- },
1672
- name: "string.quoted.other.ruby",
1673
- patterns: [
1674
- {
1675
- begin: "\\G(?<=\\()(?!\\))",
1676
- end: "(?=\\))",
1677
- patterns: [
1678
- {
1679
- include: "#parens"
1680
- }
1681
- ]
1682
- },
1683
- {
1684
- begin: "\\G(?<=\\[)(?!\\])",
1685
- end: "(?=\\])",
1686
- patterns: [
1687
- {
1688
- include: "#brackets"
1689
- }
1690
- ]
1691
- },
1692
- {
1693
- begin: "\\G(?<=\\{)(?!\\})",
1694
- end: "(?=\\})",
1695
- patterns: [
1696
- {
1697
- include: "#braces"
1698
- }
1699
- ]
1700
- },
1701
- {
1702
- begin: "\\G(?<=<)(?!>)",
1703
- end: "(?=>)",
1704
- patterns: [
1705
- {
1706
- include: "#angles"
1707
- }
1708
- ]
1709
- }
1710
- ],
1711
- repository: {
1712
- angles: {
1713
- patterns: [
1714
- {
1715
- match: "\\\\<|\\\\>|\\\\\\\\",
1716
- name: "constant.character.escape.ruby"
1717
- },
1718
- {
1719
- begin: "<",
1720
- end: ">",
1721
- patterns: [
1722
- {
1723
- include: "#angles"
1724
- }
1725
- ]
1726
- }
1727
- ]
1728
- },
1729
- braces: {
1730
- patterns: [
1731
- {
1732
- match: "\\\\\\{|\\\\\\}|\\\\\\\\",
1733
- name: "constant.character.escape.ruby"
1734
- },
1735
- {
1736
- begin: "\\{",
1737
- end: "\\}",
1738
- patterns: [
1739
- {
1740
- include: "#braces"
1741
- }
1742
- ]
1743
- }
1744
- ]
1745
- },
1746
- brackets: {
1747
- patterns: [
1748
- {
1749
- match: "\\\\\\[|\\\\\\]|\\\\\\\\",
1750
- name: "constant.character.escape.ruby"
1751
- },
1752
- {
1753
- begin: "\\[",
1754
- end: "\\]",
1755
- patterns: [
1756
- {
1757
- include: "#brackets"
1758
- }
1759
- ]
1760
- }
1761
- ]
1762
- },
1763
- parens: {
1764
- patterns: [
1765
- {
1766
- match: "\\\\\\(|\\\\\\)|\\\\\\\\",
1767
- name: "constant.character.escape.ruby"
1768
- },
1769
- {
1770
- begin: "\\(",
1771
- end: "\\)",
1772
- patterns: [
1773
- {
1774
- include: "#parens"
1775
- }
1776
- ]
1777
- }
1778
- ]
1779
- }
1780
- }
1781
- },
1782
- {
1783
- begin: "%Q?(?:([(\\[{<])|([^\\w\\s=]|_))",
1784
- beginCaptures: {
1785
- "0": {
1786
- name: "punctuation.definition.string.begin.ruby"
1787
- }
1788
- },
1789
- end: "[)\\]}>]\\2|\\1\\2",
1790
- endCaptures: {
1791
- "0": {
1792
- name: "punctuation.definition.string.end.ruby"
1793
- }
1794
- },
1795
- name: "string.quoted.other.interpolated.ruby",
1796
- patterns: [
1797
- {
1798
- begin: "\\G(?<=\\()(?!\\))",
1799
- end: "(?=\\))",
1800
- patterns: [
1801
- {
1802
- include: "#parens"
1803
- }
1804
- ]
1805
- },
1806
- {
1807
- begin: "\\G(?<=\\[)(?!\\])",
1808
- end: "(?=\\])",
1809
- patterns: [
1810
- {
1811
- include: "#brackets"
1812
- }
1813
- ]
1814
- },
1815
- {
1816
- begin: "\\G(?<=\\{)(?!\\})",
1817
- end: "(?=\\})",
1818
- patterns: [
1819
- {
1820
- include: "#braces"
1821
- }
1822
- ]
1823
- },
1824
- {
1825
- begin: "\\G(?<=<)(?!>)",
1826
- end: "(?=>)",
1827
- patterns: [
1828
- {
1829
- include: "#angles"
1830
- }
1831
- ]
1832
- },
1833
- {
1834
- include: "#escaped_char"
1835
- },
1836
- {
1837
- include: "#interpolated_ruby"
1838
- }
1839
- ],
1840
- repository: {
1841
- angles: {
1842
- patterns: [
1843
- {
1844
- include: "#escaped_char"
1845
- },
1846
- {
1847
- include: "#interpolated_ruby"
1848
- },
1849
- {
1850
- begin: "<",
1851
- end: ">",
1852
- patterns: [
1853
- {
1854
- include: "#angles"
1855
- }
1856
- ]
1857
- }
1858
- ]
1859
- },
1860
- braces: {
1861
- patterns: [
1862
- {
1863
- include: "#escaped_char"
1864
- },
1865
- {
1866
- include: "#interpolated_ruby"
1867
- },
1868
- {
1869
- begin: "\\{",
1870
- end: "\\}",
1871
- patterns: [
1872
- {
1873
- include: "#braces"
1874
- }
1875
- ]
1876
- }
1877
- ]
1878
- },
1879
- brackets: {
1880
- patterns: [
1881
- {
1882
- include: "#escaped_char"
1883
- },
1884
- {
1885
- include: "#interpolated_ruby"
1886
- },
1887
- {
1888
- begin: "\\[",
1889
- end: "\\]",
1890
- patterns: [
1891
- {
1892
- include: "#brackets"
1893
- }
1894
- ]
1895
- }
1896
- ]
1897
- },
1898
- parens: {
1899
- patterns: [
1900
- {
1901
- include: "#escaped_char"
1902
- },
1903
- {
1904
- include: "#interpolated_ruby"
1905
- },
1906
- {
1907
- begin: "\\(",
1908
- end: "\\)",
1909
- patterns: [
1910
- {
1911
- include: "#parens"
1912
- }
1913
- ]
1914
- }
1915
- ]
1916
- }
1917
- }
1918
- },
1919
- {
1920
- begin: "%r(?:([(\\[{<])|([^\\w\\s]|_))",
1921
- beginCaptures: {
1922
- "0": {
1923
- name: "punctuation.definition.string.begin.ruby"
1924
- }
1925
- },
1926
- end: "([)\\]}>]\\2|\\1\\2)[eimnosux]*",
1927
- endCaptures: {
1928
- "0": {
1929
- name: "punctuation.definition.string.end.ruby"
1930
- }
1931
- },
1932
- name: "string.regexp.percent.ruby",
1933
- patterns: [
1934
- {
1935
- begin: "\\G(?<=\\()(?!\\))",
1936
- end: "(?=\\))",
1937
- patterns: [
1938
- {
1939
- include: "#parens"
1940
- }
1941
- ]
1942
- },
1943
- {
1944
- begin: "\\G(?<=\\[)(?!\\])",
1945
- end: "(?=\\])",
1946
- patterns: [
1947
- {
1948
- include: "#brackets"
1949
- }
1950
- ]
1951
- },
1952
- {
1953
- begin: "\\G(?<=\\{)(?!\\})",
1954
- end: "(?=\\})",
1955
- patterns: [
1956
- {
1957
- include: "#braces"
1958
- }
1959
- ]
1960
- },
1961
- {
1962
- begin: "\\G(?<=<)(?!>)",
1963
- end: "(?=>)",
1964
- patterns: [
1965
- {
1966
- include: "#angles"
1967
- }
1968
- ]
1969
- },
1970
- {
1971
- include: "#regex_sub"
1972
- }
1973
- ],
1974
- repository: {
1975
- angles: {
1976
- patterns: [
1977
- {
1978
- include: "#regex_sub"
1979
- },
1980
- {
1981
- begin: "<",
1982
- end: ">",
1983
- patterns: [
1984
- {
1985
- include: "#angles"
1986
- }
1987
- ]
1988
- }
1989
- ]
1990
- },
1991
- braces: {
1992
- patterns: [
1993
- {
1994
- include: "#regex_sub"
1995
- },
1996
- {
1997
- begin: "\\{",
1998
- end: "\\}",
1999
- patterns: [
2000
- {
2001
- include: "#braces"
2002
- }
2003
- ]
2004
- }
2005
- ]
2006
- },
2007
- brackets: {
2008
- patterns: [
2009
- {
2010
- include: "#regex_sub"
2011
- },
2012
- {
2013
- begin: "\\[",
2014
- end: "\\]",
2015
- patterns: [
2016
- {
2017
- include: "#brackets"
2018
- }
2019
- ]
2020
- }
2021
- ]
2022
- },
2023
- parens: {
2024
- patterns: [
2025
- {
2026
- include: "#regex_sub"
2027
- },
2028
- {
2029
- begin: "\\(",
2030
- end: "\\)",
2031
- patterns: [
2032
- {
2033
- include: "#parens"
2034
- }
2035
- ]
2036
- }
2037
- ]
2038
- }
2039
- }
2040
- },
2041
- {
2042
- begin: "%s(?:([(\\[{<])|([^\\w\\s]|_))",
2043
- beginCaptures: {
2044
- "0": {
2045
- name: "punctuation.definition.constant.begin.ruby"
2046
- }
2047
- },
2048
- end: "[)\\]}>]\\2|\\1\\2",
2049
- endCaptures: {
2050
- "0": {
2051
- name: "punctuation.definition.constant.end.ruby"
2052
- }
2053
- },
2054
- name: "constant.other.symbol.percent.ruby",
2055
- patterns: [
2056
- {
2057
- begin: "\\G(?<=\\()(?!\\))",
2058
- end: "(?=\\))",
2059
- patterns: [
2060
- {
2061
- include: "#parens"
2062
- }
2063
- ]
2064
- },
2065
- {
2066
- begin: "\\G(?<=\\[)(?!\\])",
2067
- end: "(?=\\])",
2068
- patterns: [
2069
- {
2070
- include: "#brackets"
2071
- }
2072
- ]
2073
- },
2074
- {
2075
- begin: "\\G(?<=\\{)(?!\\})",
2076
- end: "(?=\\})",
2077
- patterns: [
2078
- {
2079
- include: "#braces"
2080
- }
2081
- ]
2082
- },
2083
- {
2084
- begin: "\\G(?<=<)(?!>)",
2085
- end: "(?=>)",
2086
- patterns: [
2087
- {
2088
- include: "#angles"
2089
- }
2090
- ]
2091
- }
2092
- ],
2093
- repository: {
2094
- angles: {
2095
- patterns: [
2096
- {
2097
- match: "\\\\<|\\\\>|\\\\\\\\",
2098
- name: "constant.character.escape.ruby"
2099
- },
2100
- {
2101
- begin: "<",
2102
- end: ">",
2103
- patterns: [
2104
- {
2105
- include: "#angles"
2106
- }
2107
- ]
2108
- }
2109
- ]
2110
- },
2111
- braces: {
2112
- patterns: [
2113
- {
2114
- match: "\\\\\\{|\\\\\\}|\\\\\\\\",
2115
- name: "constant.character.escape.ruby"
2116
- },
2117
- {
2118
- begin: "\\{",
2119
- end: "\\}",
2120
- patterns: [
2121
- {
2122
- include: "#braces"
2123
- }
2124
- ]
2125
- }
2126
- ]
2127
- },
2128
- brackets: {
2129
- patterns: [
2130
- {
2131
- match: "\\\\\\[|\\\\\\]|\\\\\\\\",
2132
- name: "constant.character.escape.ruby"
2133
- },
2134
- {
2135
- begin: "\\[",
2136
- end: "\\]",
2137
- patterns: [
2138
- {
2139
- include: "#brackets"
2140
- }
2141
- ]
2142
- }
2143
- ]
2144
- },
2145
- parens: {
2146
- patterns: [
2147
- {
2148
- match: "\\\\\\(|\\\\\\)|\\\\\\\\",
2149
- name: "constant.character.escape.ruby"
2150
- },
2151
- {
2152
- begin: "\\(",
2153
- end: "\\)",
2154
- patterns: [
2155
- {
2156
- include: "#parens"
2157
- }
2158
- ]
2159
- }
2160
- ]
2161
- }
2162
- }
2163
- },
2164
- {
2165
- begin: "%w(?:([(\\[{<])|([^\\w\\s]|_))",
2166
- beginCaptures: {
2167
- "0": {
2168
- name: "punctuation.section.array.begin.ruby"
2169
- }
2170
- },
2171
- end: "[)\\]}>]\\2|\\1\\2",
2172
- endCaptures: {
2173
- "0": {
2174
- name: "punctuation.section.array.end.ruby"
2175
- }
2176
- },
2177
- name: "meta.array.string.ruby",
2178
- patterns: [
2179
- {
2180
- begin: "\\G(?<=\\()(?!\\))",
2181
- end: "(?=\\))",
2182
- patterns: [
2183
- {
2184
- include: "#parens"
2185
- },
2186
- {
2187
- include: "#string"
2188
- }
2189
- ]
2190
- },
2191
- {
2192
- begin: "\\G(?<=\\[)(?!\\])",
2193
- end: "(?=\\])",
2194
- patterns: [
2195
- {
2196
- include: "#brackets"
2197
- },
2198
- {
2199
- include: "#string"
2200
- }
2201
- ]
2202
- },
2203
- {
2204
- begin: "\\G(?<=\\{)(?!\\})",
2205
- end: "(?=\\})",
2206
- patterns: [
2207
- {
2208
- include: "#braces"
2209
- },
2210
- {
2211
- include: "#string"
2212
- }
2213
- ]
2214
- },
2215
- {
2216
- begin: "\\G(?<=<)(?!>)",
2217
- end: "(?=>)",
2218
- patterns: [
2219
- {
2220
- include: "#angles"
2221
- },
2222
- {
2223
- include: "#string"
2224
- }
2225
- ]
2226
- },
2227
- {
2228
- include: "#string"
2229
- }
2230
- ],
2231
- repository: {
2232
- angles: {
2233
- patterns: [
2234
- {
2235
- captures: {
2236
- "0": {
2237
- name: "constant.character.escape.ruby"
2238
- }
2239
- },
2240
- match: "\\\\<|\\\\>",
2241
- name: "string.other.ruby"
2242
- },
2243
- {
2244
- begin: "<",
2245
- captures: {
2246
- "0": {
2247
- name: "string.other.ruby"
2248
- }
2249
- },
2250
- end: ">",
2251
- patterns: [
2252
- {
2253
- include: "#angles"
2254
- },
2255
- {
2256
- include: "#string"
2257
- }
2258
- ]
2259
- }
2260
- ]
2261
- },
2262
- braces: {
2263
- patterns: [
2264
- {
2265
- captures: {
2266
- "0": {
2267
- name: "constant.character.escape.ruby"
2268
- }
2269
- },
2270
- match: "\\\\\\{|\\\\\\}",
2271
- name: "string.other.ruby"
2272
- },
2273
- {
2274
- begin: "\\{",
2275
- captures: {
2276
- "0": {
2277
- name: "string.other.ruby"
2278
- }
2279
- },
2280
- end: "\\}",
2281
- patterns: [
2282
- {
2283
- include: "#braces"
2284
- },
2285
- {
2286
- include: "#string"
2287
- }
2288
- ]
2289
- }
2290
- ]
2291
- },
2292
- brackets: {
2293
- patterns: [
2294
- {
2295
- captures: {
2296
- "0": {
2297
- name: "constant.character.escape.ruby"
2298
- }
2299
- },
2300
- match: "\\\\\\[|\\\\\\]",
2301
- name: "string.other.ruby"
2302
- },
2303
- {
2304
- begin: "\\[",
2305
- captures: {
2306
- "0": {
2307
- name: "string.other.ruby"
2308
- }
2309
- },
2310
- end: "\\]",
2311
- patterns: [
2312
- {
2313
- include: "#brackets"
2314
- },
2315
- {
2316
- include: "#string"
2317
- }
2318
- ]
2319
- }
2320
- ]
2321
- },
2322
- parens: {
2323
- patterns: [
2324
- {
2325
- captures: {
2326
- "0": {
2327
- name: "constant.character.escape.ruby"
2328
- }
2329
- },
2330
- match: "\\\\\\(|\\\\\\)",
2331
- name: "string.other.ruby"
2332
- },
2333
- {
2334
- begin: "\\(",
2335
- captures: {
2336
- "0": {
2337
- name: "string.other.ruby"
2338
- }
2339
- },
2340
- end: "\\)",
2341
- patterns: [
2342
- {
2343
- include: "#parens"
2344
- },
2345
- {
2346
- include: "#string"
2347
- }
2348
- ]
2349
- }
2350
- ]
2351
- },
2352
- string: {
2353
- patterns: [
2354
- {
2355
- captures: {
2356
- "0": {
2357
- name: "constant.character.escape.ruby"
2358
- }
2359
- },
2360
- match: "\\\\\\\\|\\\\[ ]",
2361
- name: "string.other.ruby"
2362
- },
2363
- {
2364
- match: "\\S\\w*",
2365
- name: "string.other.ruby"
2366
- }
2367
- ]
2368
- }
2369
- }
2370
- },
2371
- {
2372
- begin: "%W(?:([(\\[{<])|([^\\w\\s]|_))",
2373
- beginCaptures: {
2374
- "0": {
2375
- name: "punctuation.section.array.begin.ruby"
2376
- }
2377
- },
2378
- end: "[)\\]}>]\\2|\\1\\2",
2379
- endCaptures: {
2380
- "0": {
2381
- name: "punctuation.section.array.end.ruby"
2382
- }
2383
- },
2384
- name: "meta.array.string.interpolated.ruby",
2385
- patterns: [
2386
- {
2387
- begin: "\\G(?<=\\()(?!\\))",
2388
- end: "(?=\\))",
2389
- patterns: [
2390
- {
2391
- include: "#parens"
2392
- },
2393
- {
2394
- include: "#string"
2395
- }
2396
- ]
2397
- },
2398
- {
2399
- begin: "\\G(?<=\\[)(?!\\])",
2400
- end: "(?=\\])",
2401
- patterns: [
2402
- {
2403
- include: "#brackets"
2404
- },
2405
- {
2406
- include: "#string"
2407
- }
2408
- ]
2409
- },
2410
- {
2411
- begin: "\\G(?<=\\{)(?!\\})",
2412
- end: "(?=\\})",
2413
- patterns: [
2414
- {
2415
- include: "#braces"
2416
- },
2417
- {
2418
- include: "#string"
2419
- }
2420
- ]
2421
- },
2422
- {
2423
- begin: "\\G(?<=<)(?!>)",
2424
- end: "(?=>)",
2425
- patterns: [
2426
- {
2427
- include: "#angles"
2428
- },
2429
- {
2430
- include: "#string"
2431
- }
2432
- ]
2433
- },
2434
- {
2435
- include: "#string"
2436
- }
2437
- ],
2438
- repository: {
2439
- angles: {
2440
- patterns: [
2441
- {
2442
- begin: "<",
2443
- captures: {
2444
- "0": {
2445
- name: "string.other.ruby"
2446
- }
2447
- },
2448
- end: ">",
2449
- patterns: [
2450
- {
2451
- include: "#angles"
2452
- },
2453
- {
2454
- include: "#string"
2455
- }
2456
- ]
2457
- }
2458
- ]
2459
- },
2460
- braces: {
2461
- patterns: [
2462
- {
2463
- begin: "\\{",
2464
- captures: {
2465
- "0": {
2466
- name: "string.other.ruby"
2467
- }
2468
- },
2469
- end: "\\}",
2470
- patterns: [
2471
- {
2472
- include: "#braces"
2473
- },
2474
- {
2475
- include: "#string"
2476
- }
2477
- ]
2478
- }
2479
- ]
2480
- },
2481
- brackets: {
2482
- patterns: [
2483
- {
2484
- begin: "\\[",
2485
- captures: {
2486
- "0": {
2487
- name: "string.other.ruby"
2488
- }
2489
- },
2490
- end: "\\]",
2491
- patterns: [
2492
- {
2493
- include: "#brackets"
2494
- },
2495
- {
2496
- include: "#string"
2497
- }
2498
- ]
2499
- }
2500
- ]
2501
- },
2502
- parens: {
2503
- patterns: [
2504
- {
2505
- begin: "\\(",
2506
- captures: {
2507
- "0": {
2508
- name: "string.other.ruby"
2509
- }
2510
- },
2511
- end: "\\)",
2512
- patterns: [
2513
- {
2514
- include: "#parens"
2515
- },
2516
- {
2517
- include: "#string"
2518
- }
2519
- ]
2520
- }
2521
- ]
2522
- },
2523
- string: {
2524
- patterns: [
2525
- {
2526
- begin: "(?=\\\\|#\\{)",
2527
- end: "(?!\\G)",
2528
- name: "string.other.ruby",
2529
- patterns: [
2530
- {
2531
- include: "#escaped_char"
2532
- },
2533
- {
2534
- include: "#interpolated_ruby"
2535
- }
2536
- ]
2537
- },
2538
- {
2539
- match: "\\S\\w*",
2540
- name: "string.other.ruby"
2541
- }
2542
- ]
2543
- }
2544
- }
2545
- },
2546
- {
2547
- begin: "%x(?:([(\\[{<])|([^\\w\\s]|_))",
2548
- beginCaptures: {
2549
- "0": {
2550
- name: "punctuation.definition.string.begin.ruby"
2551
- }
2552
- },
2553
- end: "[)\\]}>]\\2|\\1\\2",
2554
- endCaptures: {
2555
- "0": {
2556
- name: "punctuation.definition.string.end.ruby"
2557
- }
2558
- },
2559
- name: "string.interpolated.percent.ruby",
2560
- patterns: [
2561
- {
2562
- begin: "\\G(?<=\\()(?!\\))",
2563
- end: "(?=\\))",
2564
- patterns: [
2565
- {
2566
- include: "#parens"
2567
- }
2568
- ]
2569
- },
2570
- {
2571
- begin: "\\G(?<=\\[)(?!\\])",
2572
- end: "(?=\\])",
2573
- patterns: [
2574
- {
2575
- include: "#brackets"
2576
- }
2577
- ]
2578
- },
2579
- {
2580
- begin: "\\G(?<=\\{)(?!\\})",
2581
- end: "(?=\\})",
2582
- patterns: [
2583
- {
2584
- include: "#braces"
2585
- }
2586
- ]
2587
- },
2588
- {
2589
- begin: "\\G(?<=<)(?!>)",
2590
- end: "(?=>)",
2591
- patterns: [
2592
- {
2593
- include: "#angles"
2594
- }
2595
- ]
2596
- },
2597
- {
2598
- include: "#escaped_char"
2599
- },
2600
- {
2601
- include: "#interpolated_ruby"
2602
- }
2603
- ],
2604
- repository: {
2605
- angles: {
2606
- patterns: [
2607
- {
2608
- include: "#escaped_char"
2609
- },
2610
- {
2611
- include: "#interpolated_ruby"
2612
- },
2613
- {
2614
- begin: "<",
2615
- end: ">",
2616
- patterns: [
2617
- {
2618
- include: "#angles"
2619
- }
2620
- ]
2621
- }
2622
- ]
2623
- },
2624
- braces: {
2625
- patterns: [
2626
- {
2627
- include: "#escaped_char"
2628
- },
2629
- {
2630
- include: "#interpolated_ruby"
2631
- },
2632
- {
2633
- begin: "\\{",
2634
- end: "\\}",
2635
- patterns: [
2636
- {
2637
- include: "#braces"
2638
- }
2639
- ]
2640
- }
2641
- ]
2642
- },
2643
- brackets: {
2644
- patterns: [
2645
- {
2646
- include: "#escaped_char"
2647
- },
2648
- {
2649
- include: "#interpolated_ruby"
2650
- },
2651
- {
2652
- begin: "\\[",
2653
- end: "\\]",
2654
- patterns: [
2655
- {
2656
- include: "#brackets"
2657
- }
2658
- ]
2659
- }
2660
- ]
2661
- },
2662
- parens: {
2663
- patterns: [
2664
- {
2665
- include: "#escaped_char"
2666
- },
2667
- {
2668
- include: "#interpolated_ruby"
2669
- },
2670
- {
2671
- begin: "\\(",
2672
- end: "\\)",
2673
- patterns: [
2674
- {
2675
- include: "#parens"
2676
- }
2677
- ]
2678
- }
2679
- ]
2680
- }
2681
- }
2682
- }
2683
- ]
2684
- },
2685
- regex_sub: {
2686
- patterns: [
2687
- {
2688
- include: "#interpolated_ruby"
2689
- },
2690
- {
2691
- include: "#escaped_char"
2692
- },
2693
- {
2694
- captures: {
2695
- "1": {
2696
- name: "punctuation.definition.quantifier.begin.ruby"
2697
- },
2698
- "3": {
2699
- name: "punctuation.definition.quantifier.end.ruby"
2700
- }
2701
- },
2702
- match: "(\\{)\\d+(,\\d+)?(\\})",
2703
- name: "keyword.operator.quantifier.ruby"
2704
- },
2705
- {
2706
- begin: "\\[\\^?",
2707
- beginCaptures: {
2708
- "0": {
2709
- name: "punctuation.definition.character-class.begin.ruby"
2710
- }
2711
- },
2712
- end: "\\]",
2713
- endCaptures: {
2714
- "0": {
2715
- name: "punctuation.definition.character-class.end.ruby"
2716
- }
2717
- },
2718
- name: "constant.other.character-class.set.ruby",
2719
- patterns: [
2720
- {
2721
- include: "#escaped_char"
2722
- }
2723
- ]
2724
- },
2725
- {
2726
- begin: "\\(\\?#",
2727
- beginCaptures: {
2728
- "0": {
2729
- name: "punctuation.definition.comment.begin.ruby"
2730
- }
2731
- },
2732
- end: "\\)",
2733
- endCaptures: {
2734
- "0": {
2735
- name: "punctuation.definition.comment.end.ruby"
2736
- }
2737
- },
2738
- name: "comment.line.number-sign.ruby",
2739
- patterns: [
2740
- {
2741
- include: "#escaped_char"
2742
- }
2743
- ]
2744
- },
2745
- {
2746
- begin: "\\(",
2747
- captures: {
2748
- "0": {
2749
- name: "punctuation.definition.group.ruby"
2750
- }
2751
- },
2752
- end: "\\)",
2753
- name: "meta.group.regexp.ruby",
2754
- patterns: [
2755
- {
2756
- include: "#regex_sub"
2757
- }
2758
- ]
2759
- },
2760
- {
2761
- begin: "(?<=^|\\s)(#)\\s(?=[[a-zA-Z0-9,. \\t?!-][^\\x{00}-\\x{7F}]]*$)",
2762
- beginCaptures: {
2763
- "1": {
2764
- name: "punctuation.definition.comment.ruby"
2765
- }
2766
- },
2767
- comment: "We are restrictive in what we allow to go after the comment character to avoid false positives, since the availability of comments depend on regexp flags.",
2768
- end: "$\\n?",
2769
- name: "comment.line.number-sign.ruby"
2770
- }
2771
- ]
2772
- }
2773
- };
2774
- var ruby_tmLanguage = {
2775
- information_for_contributors: information_for_contributors,
2776
- version: version,
2777
- name: name,
2778
- scopeName: scopeName,
2779
- comment: comment,
2780
- patterns: patterns,
2781
- repository: repository
2782
- };
2783
-
2784
- export { comment, ruby_tmLanguage as default, information_for_contributors, name, patterns, repository, scopeName, version };