@aquera/nile-elements 0.0.124 → 0.0.125

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 (189) hide show
  1. package/README.md +3 -0
  2. package/dist/abap-1e9762d1.esm.js +1 -0
  3. package/dist/abap-3b3fe406.cjs.js +2 -0
  4. package/dist/abap-3b3fe406.cjs.js.map +1 -0
  5. package/dist/{angular-ts-a70761c6.cjs.js → angular-ts-32bbcd01.cjs.js} +2 -2
  6. package/dist/{angular-ts-a70761c6.cjs.js.map → angular-ts-32bbcd01.cjs.js.map} +1 -1
  7. package/dist/catppuccin-frappe-c0734345.esm.js +1 -0
  8. package/dist/catppuccin-frappe-eb77e95d.cjs.js +2 -0
  9. package/dist/catppuccin-frappe-eb77e95d.cjs.js.map +1 -0
  10. package/dist/catppuccin-latte-471f76fc.cjs.js +2 -0
  11. package/dist/catppuccin-latte-471f76fc.cjs.js.map +1 -0
  12. package/dist/catppuccin-latte-d798493f.esm.js +1 -0
  13. package/dist/catppuccin-macchiato-7ac78e7e.cjs.js +2 -0
  14. package/dist/catppuccin-macchiato-7ac78e7e.cjs.js.map +1 -0
  15. package/dist/catppuccin-macchiato-d78b2ec2.esm.js +1 -0
  16. package/dist/catppuccin-mocha-3b00f8d6.cjs.js +2 -0
  17. package/dist/catppuccin-mocha-3b00f8d6.cjs.js.map +1 -0
  18. package/dist/catppuccin-mocha-6a189a57.esm.js +1 -0
  19. package/dist/cobol-4ed2b235.esm.js +1 -0
  20. package/dist/cobol-c428fca2.cjs.js +2 -0
  21. package/dist/cobol-c428fca2.cjs.js.map +1 -0
  22. package/dist/{cpp-8812199e.cjs.js → cpp-c2442fe2.cjs.js} +2 -2
  23. package/dist/{cpp-8812199e.cjs.js.map → cpp-c2442fe2.cjs.js.map} +1 -1
  24. package/dist/{crystal-5458e62a.cjs.js → crystal-1913e34d.cjs.js} +2 -2
  25. package/dist/{crystal-5458e62a.cjs.js.map → crystal-1913e34d.cjs.js.map} +1 -1
  26. package/dist/{edge-cb04b11b.cjs.js → edge-ef9e682b.cjs.js} +2 -2
  27. package/dist/{edge-cb04b11b.cjs.js.map → edge-ef9e682b.cjs.js.map} +1 -1
  28. package/dist/{elm-53a0b5b4.cjs.js → elm-7fd07d47.cjs.js} +2 -2
  29. package/dist/{elm-53a0b5b4.cjs.js.map → elm-7fd07d47.cjs.js.map} +1 -1
  30. package/dist/{erb-1bc4721c.cjs.js → erb-c813c1f2.cjs.js} +2 -2
  31. package/dist/{erb-1bc4721c.cjs.js.map → erb-c813c1f2.cjs.js.map} +1 -1
  32. package/dist/{fortran-fixed-form-00a9d08f.cjs.js → fortran-fixed-form-c39bf051.cjs.js} +2 -2
  33. package/dist/{fortran-fixed-form-00a9d08f.cjs.js.map → fortran-fixed-form-c39bf051.cjs.js.map} +1 -1
  34. package/dist/{fsharp-661f4f18.cjs.js → fsharp-ba007c9c.cjs.js} +2 -2
  35. package/dist/{fsharp-661f4f18.cjs.js.map → fsharp-ba007c9c.cjs.js.map} +1 -1
  36. package/dist/{gdresource-8fb6a6ad.cjs.js → gdresource-f3068367.cjs.js} +2 -2
  37. package/dist/{gdresource-8fb6a6ad.cjs.js.map → gdresource-f3068367.cjs.js.map} +1 -1
  38. package/dist/{git-commit-9373b48b.cjs.js → git-commit-372b638c.cjs.js} +2 -2
  39. package/dist/{git-commit-9373b48b.cjs.js.map → git-commit-372b638c.cjs.js.map} +1 -1
  40. package/dist/{git-rebase-c3fa2bb9.cjs.js → git-rebase-2cc6f2a3.cjs.js} +2 -2
  41. package/dist/{git-rebase-c3fa2bb9.cjs.js.map → git-rebase-2cc6f2a3.cjs.js.map} +1 -1
  42. package/dist/go-4c55ae2b.esm.js +1 -0
  43. package/dist/go-9bee484b.cjs.js +2 -0
  44. package/dist/go-9bee484b.cjs.js.map +1 -0
  45. package/dist/{graphql-1541cb3c.cjs.js → graphql-74f146e1.cjs.js} +2 -2
  46. package/dist/{graphql-1541cb3c.cjs.js.map → graphql-74f146e1.cjs.js.map} +1 -1
  47. package/dist/{handlebars-39ab86cd.cjs.js → handlebars-864fcb12.cjs.js} +2 -2
  48. package/dist/{handlebars-39ab86cd.cjs.js.map → handlebars-864fcb12.cjs.js.map} +1 -1
  49. package/dist/{http-1cf9a3de.cjs.js → http-08501497.cjs.js} +2 -2
  50. package/dist/{http-1cf9a3de.cjs.js.map → http-08501497.cjs.js.map} +1 -1
  51. package/dist/{hxml-6d54d760.cjs.js → hxml-bbac80e4.cjs.js} +2 -2
  52. package/dist/{hxml-6d54d760.cjs.js.map → hxml-bbac80e4.cjs.js.map} +1 -1
  53. package/dist/hy-431f15f8.cjs.js +2 -0
  54. package/dist/hy-431f15f8.cjs.js.map +1 -0
  55. package/dist/hy-5e43d6c1.esm.js +1 -0
  56. package/dist/index.cjs.js +1 -1
  57. package/dist/index.esm.js +1 -1
  58. package/dist/{julia-0152d8b9.cjs.js → julia-689ac552.cjs.js} +2 -2
  59. package/dist/{julia-0152d8b9.cjs.js.map → julia-689ac552.cjs.js.map} +1 -1
  60. package/dist/{latex-33ebd2ce.cjs.js → latex-4d76e817.cjs.js} +2 -2
  61. package/dist/{latex-33ebd2ce.cjs.js.map → latex-4d76e817.cjs.js.map} +1 -1
  62. package/dist/luau-0b166b7a.cjs.js +2 -0
  63. package/dist/luau-0b166b7a.cjs.js.map +1 -0
  64. package/dist/luau-7d7eaa97.esm.js +1 -0
  65. package/dist/{marko-23ca6223.cjs.js → marko-2880d4ee.cjs.js} +2 -2
  66. package/dist/{marko-23ca6223.cjs.js.map → marko-2880d4ee.cjs.js.map} +1 -1
  67. package/dist/mdc-13285ad6.esm.js +1 -0
  68. package/dist/mdc-a3fe82c5.cjs.js +2 -0
  69. package/dist/mdc-a3fe82c5.cjs.js.map +1 -0
  70. package/dist/{mdx-01dab0d1.cjs.js → mdx-a859ee84.cjs.js} +2 -2
  71. package/dist/{mdx-01dab0d1.cjs.js.map → mdx-a859ee84.cjs.js.map} +1 -1
  72. package/dist/{mdx-0782bcd8.esm.js → mdx-bf2a8fe9.esm.js} +1 -1
  73. package/dist/nextflow-35e5a63d.esm.js +1 -0
  74. package/dist/nextflow-c666e91b.cjs.js +2 -0
  75. package/dist/nextflow-c666e91b.cjs.js.map +1 -0
  76. package/dist/{nginx-1aabec59.cjs.js → nginx-7bc0fc82.cjs.js} +2 -2
  77. package/dist/{nginx-1aabec59.cjs.js.map → nginx-7bc0fc82.cjs.js.map} +1 -1
  78. package/dist/nile-highlighter/nile-highlighter.cjs.js +1 -1
  79. package/dist/nile-highlighter/nile-highlighter.cjs.js.map +1 -1
  80. package/dist/nile-highlighter/nile-highlighter.esm.js +1 -1
  81. package/dist/nile-tour/index.cjs.js +2 -0
  82. package/dist/nile-tour/index.cjs.js.map +1 -0
  83. package/dist/nile-tour/index.esm.js +1 -0
  84. package/dist/nile-tour/nile-tour.cjs.js +10 -0
  85. package/dist/nile-tour/nile-tour.cjs.js.map +1 -0
  86. package/dist/nile-tour/nile-tour.css.cjs.js +2 -0
  87. package/dist/nile-tour/nile-tour.css.cjs.js.map +1 -0
  88. package/dist/nile-tour/nile-tour.css.esm.js +93 -0
  89. package/dist/nile-tour/nile-tour.esm.js +15 -0
  90. package/dist/{nim-55b3acf7.cjs.js → nim-1cf0460c.cjs.js} +2 -2
  91. package/dist/{nim-55b3acf7.cjs.js.map → nim-1cf0460c.cjs.js.map} +1 -1
  92. package/dist/one-dark-pro-9477257e.cjs.js +2 -0
  93. package/dist/one-dark-pro-9477257e.cjs.js.map +1 -0
  94. package/dist/one-dark-pro-deb4f5e9.esm.js +1 -0
  95. package/dist/{razor-57f13c4a.cjs.js → razor-0acc551a.cjs.js} +2 -2
  96. package/dist/{razor-57f13c4a.cjs.js.map → razor-0acc551a.cjs.js.map} +1 -1
  97. package/dist/{rst-4226018b.cjs.js → rst-6b792481.cjs.js} +2 -2
  98. package/dist/{rst-4226018b.cjs.js.map → rst-6b792481.cjs.js.map} +1 -1
  99. package/dist/{ruby-4306ddd1.cjs.js → ruby-578b1ee6.cjs.js} +2 -2
  100. package/dist/{ruby-4306ddd1.cjs.js.map → ruby-578b1ee6.cjs.js.map} +1 -1
  101. package/dist/{shaderlab-2234cd06.cjs.js → shaderlab-606f022b.cjs.js} +2 -2
  102. package/dist/{shaderlab-2234cd06.cjs.js.map → shaderlab-606f022b.cjs.js.map} +1 -1
  103. package/dist/{shellsession-cd95727e.cjs.js → shellsession-cb0df007.cjs.js} +2 -2
  104. package/dist/{shellsession-cd95727e.cjs.js.map → shellsession-cb0df007.cjs.js.map} +1 -1
  105. package/dist/{sparql-197a828d.cjs.js → sparql-589e0308.cjs.js} +2 -2
  106. package/dist/{sparql-197a828d.cjs.js.map → sparql-589e0308.cjs.js.map} +1 -1
  107. package/dist/src/index.d.ts +1 -0
  108. package/dist/src/index.js +1 -0
  109. package/dist/src/index.js.map +1 -1
  110. package/dist/src/nile-tour/index.d.ts +1 -0
  111. package/dist/src/nile-tour/index.js +2 -0
  112. package/dist/src/nile-tour/index.js.map +1 -0
  113. package/dist/src/nile-tour/nile-tour.css.d.ts +12 -0
  114. package/dist/src/nile-tour/nile-tour.css.js +105 -0
  115. package/dist/src/nile-tour/nile-tour.css.js.map +1 -0
  116. package/dist/src/nile-tour/nile-tour.d.ts +47 -0
  117. package/dist/src/nile-tour/nile-tour.js +96 -0
  118. package/dist/src/nile-tour/nile-tour.js.map +1 -0
  119. package/dist/{svelte-5a90df12.cjs.js → svelte-2ae868b6.cjs.js} +2 -2
  120. package/dist/{svelte-5a90df12.cjs.js.map → svelte-2ae868b6.cjs.js.map} +1 -1
  121. package/dist/{svelte-cb8564e6.esm.js → svelte-ac03a3ac.esm.js} +1 -1
  122. package/dist/{system-verilog-c1c6377f.esm.js → system-verilog-2d49210f.esm.js} +1 -1
  123. package/dist/{system-verilog-b3e652eb.cjs.js → system-verilog-7d2d7268.cjs.js} +2 -2
  124. package/dist/{system-verilog-b3e652eb.cjs.js.map → system-verilog-7d2d7268.cjs.js.map} +1 -1
  125. package/dist/{templ-4425132d.cjs.js → templ-2a2d64b7.cjs.js} +2 -2
  126. package/dist/{templ-4425132d.cjs.js.map → templ-2a2d64b7.cjs.js.map} +1 -1
  127. package/dist/{templ-13492ead.esm.js → templ-f2d0dadd.esm.js} +1 -1
  128. package/dist/{tex-d609b400.cjs.js → tex-8addc455.cjs.js} +2 -2
  129. package/dist/{tex-d609b400.cjs.js.map → tex-8addc455.cjs.js.map} +1 -1
  130. package/dist/{ts-tags-ba7eb9e3.cjs.js → ts-tags-e56ee3ee.cjs.js} +2 -2
  131. package/dist/{ts-tags-ba7eb9e3.cjs.js.map → ts-tags-e56ee3ee.cjs.js.map} +1 -1
  132. package/dist/tsconfig.tsbuildinfo +1 -1
  133. package/dist/{twig-e9bb57f2.cjs.js → twig-911808dc.cjs.js} +2 -2
  134. package/dist/{twig-e9bb57f2.cjs.js.map → twig-911808dc.cjs.js.map} +1 -1
  135. package/dist/{vue-16d91bfa.cjs.js → vue-9b06428b.cjs.js} +2 -2
  136. package/dist/{vue-16d91bfa.cjs.js.map → vue-9b06428b.cjs.js.map} +1 -1
  137. package/dist/{vue-html-432cdd7f.cjs.js → vue-html-ca1dd5bf.cjs.js} +2 -2
  138. package/dist/{vue-html-432cdd7f.cjs.js.map → vue-html-ca1dd5bf.cjs.js.map} +1 -1
  139. package/dist/wikitext-b9a7e67b.cjs.js +2 -0
  140. package/dist/wikitext-b9a7e67b.cjs.js.map +1 -0
  141. package/dist/wikitext-c06489b3.esm.js +1 -0
  142. package/package.json +5 -3
  143. package/src/index.ts +2 -1
  144. package/src/nile-tour/index.ts +1 -0
  145. package/src/nile-tour/nile-tour.css.ts +107 -0
  146. package/src/nile-tour/nile-tour.ts +119 -0
  147. package/vscode-html-custom-data.json +10 -0
  148. package/dist/abap-511af2a5.cjs.js +0 -2
  149. package/dist/abap-511af2a5.cjs.js.map +0 -1
  150. package/dist/abap-f2ab40d0.esm.js +0 -1
  151. package/dist/cairo-014ad724.cjs.js +0 -2
  152. package/dist/cairo-014ad724.cjs.js.map +0 -1
  153. package/dist/cairo-9be40999.esm.js +0 -1
  154. package/dist/catppuccin-frappe-52a52bb1.cjs.js +0 -2
  155. package/dist/catppuccin-frappe-52a52bb1.cjs.js.map +0 -1
  156. package/dist/catppuccin-frappe-dbc3161e.esm.js +0 -1
  157. package/dist/catppuccin-latte-d8a0f6a8.cjs.js +0 -2
  158. package/dist/catppuccin-latte-d8a0f6a8.cjs.js.map +0 -1
  159. package/dist/catppuccin-latte-e7591143.esm.js +0 -1
  160. package/dist/catppuccin-macchiato-19a7795e.cjs.js +0 -2
  161. package/dist/catppuccin-macchiato-19a7795e.cjs.js.map +0 -1
  162. package/dist/catppuccin-macchiato-283b424a.esm.js +0 -1
  163. package/dist/catppuccin-mocha-165e830c.esm.js +0 -1
  164. package/dist/catppuccin-mocha-9f9ec5f6.cjs.js +0 -2
  165. package/dist/catppuccin-mocha-9f9ec5f6.cjs.js.map +0 -1
  166. package/dist/cobol-8517cfc1.esm.js +0 -1
  167. package/dist/cobol-922d57ed.cjs.js +0 -2
  168. package/dist/cobol-922d57ed.cjs.js.map +0 -1
  169. package/dist/go-85139440.esm.js +0 -1
  170. package/dist/go-d5ed1b82.cjs.js +0 -2
  171. package/dist/go-d5ed1b82.cjs.js.map +0 -1
  172. package/dist/hy-33aa9c6f.cjs.js +0 -2
  173. package/dist/hy-33aa9c6f.cjs.js.map +0 -1
  174. package/dist/hy-a7a6e9c3.esm.js +0 -1
  175. package/dist/luau-19444703.cjs.js +0 -2
  176. package/dist/luau-19444703.cjs.js.map +0 -1
  177. package/dist/luau-b564b070.esm.js +0 -1
  178. package/dist/mdc-05d87356.esm.js +0 -1
  179. package/dist/mdc-56aefda2.cjs.js +0 -2
  180. package/dist/mdc-56aefda2.cjs.js.map +0 -1
  181. package/dist/nextflow-11e4899f.esm.js +0 -1
  182. package/dist/nextflow-2a4bf0cc.cjs.js +0 -2
  183. package/dist/nextflow-2a4bf0cc.cjs.js.map +0 -1
  184. package/dist/one-dark-pro-3bcc58f7.cjs.js +0 -2
  185. package/dist/one-dark-pro-3bcc58f7.cjs.js.map +0 -1
  186. package/dist/one-dark-pro-4fce25f8.esm.js +0 -1
  187. package/dist/wikitext-2748811a.cjs.js +0 -2
  188. package/dist/wikitext-2748811a.cjs.js.map +0 -1
  189. package/dist/wikitext-c9071578.esm.js +0 -1
@@ -1,2 +1,2 @@
1
- System.register(["./html-3718679d.cjs.js","./xml-496a65af.cjs.js","./sql-e6e7243e.cjs.js","./css-80d60bac.cjs.js","./c-37e019c9.cjs.js","./javascript-ce720697.cjs.js","./shellscript-f4aa09bf.cjs.js","./lua-fe4787ec.cjs.js","./java-103ebcb7.cjs.js"],function(_export,_context){"use strict";var e,n,t,a,r,i,s,c,u;function _toConsumableArray(arr){return _arrayWithoutHoles(arr)||_iterableToArray(arr)||_unsupportedIterableToArray(arr)||_nonIterableSpread();}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o==="string")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(o);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen);}function _iterableToArray(iter){if(typeof Symbol!=="undefined"&&iter[Symbol.iterator]!=null||iter["@@iterator"]!=null)return Array.from(iter);}function _arrayWithoutHoles(arr){if(Array.isArray(arr))return _arrayLikeToArray(arr);}function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++)arr2[i]=arr[i];return arr2;}return{setters:[function(_html00aCjsJs){e=_html00aCjsJs["default"];},function(_xml00hCjsJs){n=_xml00hCjsJs["default"];},function(_sql00zCjsJs){t=_sql00zCjsJs["default"];},function(_css00cCjsJs){a=_css00cCjsJs["default"];},function(_c00ACjsJs){r=_c00ACjsJs["default"];},function(_javascript00bCjsJs){i=_javascript00bCjsJs["default"];},function(_shellscript00PCjsJs){s=_shellscript00PCjsJs["default"];},function(_lua017CjsJs){c=_lua017CjsJs["default"];},function(_java00jCjsJs){}],execute:function execute(){_export("default",u=[].concat(_toConsumableArray(e),_toConsumableArray(n),_toConsumableArray(t),_toConsumableArray(a),_toConsumableArray(r),_toConsumableArray(i),_toConsumableArray(s),_toConsumableArray(c),[Object.freeze(JSON.parse('{"displayName":"Ruby","name":"ruby","patterns":[{"captures":{"1":{"name":"keyword.control.class.ruby"},"2":{"name":"entity.name.type.class.ruby"},"3":{"name":"keyword.operator.other.ruby"},"4":{"name":"entity.other.inherited-class.ruby"},"5":{"name":"keyword.operator.other.ruby"},"6":{"name":"variable.other.object.ruby"}},"match":"^\\\\s*(class)\\\\s+(?:([.a-zA-Z0-9_:]+)(?:\\\\s*(<)\\\\s*([.a-zA-Z0-9_:]+))?|(<<)\\\\s*([.a-zA-Z0-9_:]+))","name":"meta.class.ruby"},{"captures":{"1":{"name":"keyword.control.module.ruby"},"2":{"name":"entity.name.type.module.ruby"},"3":{"name":"entity.other.inherited-class.module.first.ruby"},"4":{"name":"punctuation.separator.inheritance.ruby"},"5":{"name":"entity.other.inherited-class.module.second.ruby"},"6":{"name":"punctuation.separator.inheritance.ruby"},"7":{"name":"entity.other.inherited-class.module.third.ruby"},"8":{"name":"punctuation.separator.inheritance.ruby"}},"match":"^\\\\s*(module)\\\\s+(([A-Z]\\\\w*(::))?([A-Z]\\\\w*(::))?([A-Z]\\\\w*(::))*[A-Z]\\\\w*)","name":"meta.module.ruby"},{"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.","match":"(?<!\\\\.)\\\\belse(\\\\s)+if\\\\b","name":"invalid.deprecated.ruby"},{"captures":{"1":{"name":"punctuation.definition.constant.ruby"}},"comment":"symbols as hash key (1.9 syntax)","match":"(?>[a-zA-Z_]\\\\w*(?>[?!])?)(:)(?!:)","name":"constant.other.symbol.hashkey.ruby"},{"captures":{"1":{"name":"punctuation.definition.constant.ruby"}},"comment":"symbols as hash key (1.8 syntax)","match":"(?<!:)(:)(?>[a-zA-Z_]\\\\w*(?>[?!])?)(?=\\\\s*=>)","name":"constant.other.symbol.hashkey.ruby"},{"comment":"everything being a reserved word, not a value and needing a \'end\' is a..","match":"(?<!\\\\.)\\\\b(BEGIN|begin|case|class|else|elsif|END|end|ensure|for|if|in|module|rescue|then|unless|until|when|while)\\\\b(?![?!])","name":"keyword.control.ruby"},{"comment":"contextual smart pair support for block parameters","match":"(?<!\\\\.)\\\\bdo\\\\b","name":"keyword.control.start-block.ruby"},{"comment":"contextual smart pair support","match":"(?<=\\\\{)(\\\\s+)","name":"meta.syntax.ruby.start-block"},{"match":"(?<!\\\\.)\\\\b(alias|alias_method|block_given[?]|break|defined[?]|iterator[?]|next|redo|retry|return|super|undef|yield)(\\\\b|(?<=[?]))(?![?!])","name":"keyword.control.pseudo-method.ruby"},{"match":"\\\\b(nil|true|false)\\\\b(?![?!])","name":"constant.language.ruby"},{"match":"\\\\b(__(dir|FILE|LINE)__)\\\\b(?![?!])","name":"variable.language.ruby"},{"begin":"^__END__\\\\n","captures":{"0":{"name":"string.unquoted.program-block.ruby"}},"comment":"__END__ marker","contentName":"text.plain","end":"(?=not)impossible","patterns":[{"begin":"(?=<?xml|<(?i:html\\\\b)|!DOCTYPE (?i:html\\\\b))","end":"(?=not)impossible","name":"text.html.embedded.ruby","patterns":[{"include":"text.html.basic"}]}]},{"match":"\\\\b(self)\\\\b(?![?!])","name":"variable.language.self.ruby"},{"comment":" everything being a method but having a special function is a..","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(?![?!])","name":"keyword.other.special-method.ruby"},{"begin":"\\\\b(?<!\\\\.|::)(require|require_relative)\\\\b","captures":{"1":{"name":"keyword.other.special-method.ruby"}},"end":"$|(?=#|\\\\})","name":"meta.require.ruby","patterns":[{"include":"$self"}]},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.instance.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(@@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.class.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(\\\\$)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.global.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(\\\\$)(!|@|&|`|\'|\\\\+|\\\\d+|~|=|/|\\\\\\\\|,|;|\\\\.|<|>|_|\\\\*|\\\\$|\\\\?|:|\\"|-[0adFiIlpvw])","name":"variable.other.readwrite.global.pre-defined.ruby"},{"begin":"\\\\b(ENV)\\\\[","beginCaptures":{"1":{"name":"variable.other.constant.ruby"}},"end":"\\\\]","name":"meta.environment-variable.ruby","patterns":[{"include":"$self"}]},{"match":"\\\\b[A-Z]\\\\w*(?=((\\\\.|::)[A-Za-z]|\\\\[))","name":"support.class.ruby"},{"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|(?<=[?!]))(?![?!])","name":"support.function.kernel.ruby"},{"match":"\\\\b[A-Z]\\\\w*\\\\b","name":"variable.other.constant.ruby"},{"begin":"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|===?|!=|!~|>[>=]?|<=>|<[<=]?|[%&`/\\\\|^]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[\\\\]=?))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.def.ruby"},"2":{"name":"entity.name.function.ruby"},"3":{"name":"punctuation.definition.parameters.ruby"}},"comment":"the method pattern comes from the symbol pattern, see there for a explaination","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.ruby"}},"name":"meta.function.method.with-arguments.ruby","patterns":[{"begin":"(?=[&*_a-zA-Z])","end":"(?=[,)])","patterns":[{"captures":{"1":{"name":"storage.type.variable.ruby"},"2":{"name":"constant.other.symbol.hashkey.parameter.function.ruby"},"3":{"name":"punctuation.definition.constant.ruby"},"4":{"name":"variable.parameter.function.ruby"}},"match":"\\\\G([&*]?)(?:([_a-zA-Z]\\\\w*(:))|([_a-zA-Z]\\\\w*))"},{"include":"#parens"},{"include":"#braces"},{"include":"$self"}]}],"repository":{"braces":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.function.begin.ruby"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.function.end.ruby"}},"patterns":[{"include":"#parens"},{"include":"#braces"},{"include":"$self"}]},"parens":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.function.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.ruby"}},"patterns":[{"include":"#parens"},{"include":"#braces"},{"include":"$self"}]}}},{"begin":"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|===?|!=|!~|>[>=]?|<=>|<[<=]?|[%&`/\\\\|^]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[\\\\]=?))[ \\\\t](?=[ \\\\t]*[^\\\\s#;])","beginCaptures":{"1":{"name":"keyword.control.def.ruby"},"2":{"name":"entity.name.function.ruby"}},"comment":"same as the previous rule, but without parentheses around the arguments","end":"$","name":"meta.function.method.with-arguments.ruby","patterns":[{"begin":"(?![\\\\s,])","end":"(?=,|$)","patterns":[{"captures":{"1":{"name":"storage.type.variable.ruby"},"2":{"name":"constant.other.symbol.hashkey.parameter.function.ruby"},"3":{"name":"punctuation.definition.constant.ruby"},"4":{"name":"variable.parameter.function.ruby"}},"match":"\\\\G([&*]?)(?:([_a-zA-Z]\\\\w*(:))|([_a-zA-Z]\\\\w*))","name":"variable.parameter.function.ruby"},{"include":"$self"}]}]},{"captures":{"1":{"name":"keyword.control.def.ruby"},"3":{"name":"entity.name.function.ruby"}},"comment":" the optional name is just to catch the def also without a method-name","match":"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\b(\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|===?|!=|!~|>[>=]?|<=>|<[<=]?|[%&`/\\\\|^]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[\\\\]=?)))?","name":"meta.function.method.without-arguments.ruby"},{"match":"\\\\b\\\\d(?>_?\\\\d)*(?=\\\\.\\\\d|[eE])(\\\\.\\\\d(?>_?\\\\d)*)?([eE][-+]?\\\\d(?>_?\\\\d)*)?r?i?\\\\b","name":"constant.numeric.float.ruby"},{"match":"\\\\b(0|(0[dD]\\\\d|[1-9])(?>_?\\\\d)*)r?i?\\\\b","name":"constant.numeric.integer.ruby"},{"match":"\\\\b0[xX]\\\\h(?>_?\\\\h)*r?i?\\\\b","name":"constant.numeric.hex.ruby"},{"match":"\\\\b0[bB][01](?>_?[01])*r?i?\\\\b","name":"constant.numeric.binary.ruby"},{"match":"\\\\b0([oO]?[0-7](?>_?[0-7])*)?r?i?\\\\b","name":"constant.numeric.octal.ruby"},{"begin":":\'","captures":{"0":{"name":"punctuation.definition.constant.ruby"}},"end":"\'","name":"constant.other.symbol.single-quoted.ruby","patterns":[{"match":"\\\\\\\\[\'\\\\\\\\]","name":"constant.character.escape.ruby"}]},{"begin":":\\"","captures":{"0":{"name":"punctuation.definition.constant.ruby"}},"end":"\\"","name":"constant.other.symbol.double-quoted.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"comment":"Needs higher precedence than regular expressions.","match":"(?<!\\\\()/=","name":"keyword.operator.assignment.augmented.ruby"},{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"comment":"single quoted string (does not allow interpolation)","end":"\'","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.single.ruby","patterns":[{"match":"\\\\\\\\\'|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"comment":"double quoted string (allows for interpolation)","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.double.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"comment":"execute string (allows for interpolation)","end":"`","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"include":"#percent_literals"},{"begin":"(?:^|(?<=[=>~(?:\\\\[,|&;]|[\\\\s;]if\\\\s|[\\\\s;]elsif\\\\s|[\\\\s;]while\\\\s|[\\\\s;]unless\\\\s|[\\\\s;]when\\\\s|[\\\\s;]assert_match\\\\s|[\\\\s;]or\\\\s|[\\\\s;]and\\\\s|[\\\\s;]not\\\\s|[\\\\s.]index\\\\s|[\\\\s.]scan\\\\s|[\\\\s.]sub\\\\s|[\\\\s.]sub!\\\\s|[\\\\s.]gsub\\\\s|[\\\\s.]gsub!\\\\s|[\\\\s.]match\\\\s)|(?<=^when\\\\s|^if\\\\s|^elsif\\\\s|^while\\\\s|^unless\\\\s))\\\\s*((/))(?![*+{}?])","captures":{"1":{"name":"string.regexp.classic.ruby"},"2":{"name":"punctuation.definition.string.ruby"}},"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","contentName":"string.regexp.classic.ruby","end":"((/[eimnosux]*))","patterns":[{"include":"#regex_sub"}]},{"captures":{"1":{"name":"punctuation.definition.constant.ruby"}},"comment":"symbols","match":"(?<!:)(:)(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?![>=]))?|===?|>[>=]?|<=>|<[<=]?|[%&`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[\\\\]=?|(@@?|\\\\$)[a-zA-Z_]\\\\w*)","name":"constant.other.symbol.ruby"},{"begin":"^=begin","captures":{"0":{"name":"punctuation.definition.comment.ruby"}},"comment":"multiline comments","end":"^=end","name":"comment.block.documentation.ruby"},{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ruby"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.ruby"}},"end":"\\\\n","name":"comment.line.number-sign.ruby"}]},{"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","match":"(?<!\\\\w)\\\\?(\\\\\\\\(x\\\\h{1,2}(?!\\\\h)\\\\b|0[0-7]{0,2}(?![0-7])\\\\b|[^x0MC])|(\\\\\\\\[MC]-)+\\\\w|[^\\\\s\\\\\\\\])","name":"constant.numeric.ruby"},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)HTML)\\\\b\\\\1))","comment":"Heredoc with embedded html","end":"(?!\\\\G)","name":"meta.embedded.block.html","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)HTML)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"text.html","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"text.html.basic"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)XML)\\\\b\\\\1))","comment":"Heredoc with embedded xml","end":"(?!\\\\G)","name":"meta.embedded.block.xml","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)XML)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"text.xml","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"text.xml"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)SQL)\\\\b\\\\1))","comment":"Heredoc with embedded sql","end":"(?!\\\\G)","name":"meta.embedded.block.sql","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)SQL)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.sql","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.sql"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)CSS)\\\\b\\\\1))","comment":"Heredoc with embedded css","end":"(?!\\\\G)","name":"meta.embedded.block.css","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)CSS)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.css","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.css"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)CPP)\\\\b\\\\1))","comment":"Heredoc with embedded c++","end":"(?!\\\\G)","name":"meta.embedded.block.c++","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)CPP)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.c++","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.c++"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)C)\\\\b\\\\1))","comment":"Heredoc with embedded c","end":"(?!\\\\G)","name":"meta.embedded.block.c","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)C)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.c","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.c"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)(?:JS|JAVASCRIPT))\\\\b\\\\1))","comment":"Heredoc with embedded javascript","end":"(?!\\\\G)","name":"meta.embedded.block.js","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)(?:JS|JAVASCRIPT))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.js","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.js"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)JQUERY)\\\\b\\\\1))","comment":"Heredoc with embedded jQuery javascript","end":"(?!\\\\G)","name":"meta.embedded.block.js.jquery","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)JQUERY)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.js.jquery","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.js.jquery"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)(?:SH|SHELL))\\\\b\\\\1))","comment":"Heredoc with embedded shell","end":"(?!\\\\G)","name":"meta.embedded.block.shell","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)(?:SH|SHELL))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.shell","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.shell"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)LUA)\\\\b\\\\1))","comment":"Heredoc with embedded lua","end":"(?!\\\\G)","name":"meta.embedded.block.lua","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)LUA)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.lua","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.lua"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)RUBY)\\\\b\\\\1))","comment":"Heredoc with embedded ruby","end":"(?!\\\\G)","name":"meta.embedded.block.ruby","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)RUBY)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.ruby","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.ruby"},{"include":"#escaped_char"}]}]},{"begin":"(?>=\\\\s*<<(\\\\w+))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"^\\\\1$","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"(?><<[-~](\\\\w+))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"comment":"heredoc with indented terminator","end":"\\\\s*\\\\1$","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"(?<=\\\\{|do|\\\\{\\\\s|do\\\\s)(\\\\|)","captures":{"1":{"name":"punctuation.separator.arguments.ruby"}},"end":"(?<!\\\\|)(\\\\|)(?!\\\\|)","patterns":[{"include":"$self"},{"match":"[_a-zA-Z][_a-zA-Z0-9]*","name":"variable.other.block.ruby"},{"match":",","name":"punctuation.separator.variable.ruby"}]},{"match":"=>","name":"punctuation.separator.key-value"},{"match":"->","name":"support.function.kernel.lambda.ruby"},{"match":"<<=|%=|&{1,2}=|\\\\*=|\\\\*\\\\*=|\\\\+=|-=|\\\\^=|\\\\|{1,2}=|<<","name":"keyword.operator.assignment.augmented.ruby"},{"match":"<=>|<(?!<|=)|>(?!<|=|>)|<=|>=|===|==|=~|!=|!~|(?<=[ \\\\t])\\\\?","name":"keyword.operator.comparison.ruby"},{"match":"(?<!\\\\.)\\\\b(and|not|or)\\\\b(?![?!])","name":"keyword.operator.logical.ruby"},{"comment":"Make sure this goes after assignment and comparison","match":"(?<=^|[ \\\\t])!|&&|\\\\|\\\\||\\\\^","name":"keyword.operator.logical.ruby"},{"captures":{"1":{"name":"punctuation.separator.method.ruby"}},"comment":"Safe navigation operator - Added in 2.3","match":"(&\\\\.)\\\\s*(?![A-Z])"},{"match":"(%|&|\\\\*\\\\*|\\\\*|\\\\+|-|/)","name":"keyword.operator.arithmetic.ruby"},{"match":"=","name":"keyword.operator.assignment.ruby"},{"match":"\\\\||~|>>","name":"keyword.operator.other.ruby"},{"match":";","name":"punctuation.separator.statement.ruby"},{"match":",","name":"punctuation.separator.object.ruby"},{"captures":{"1":{"name":"punctuation.separator.namespace.ruby"}},"comment":"Mark as namespace separator if double colons followed by capital letter","match":"(::)\\\\s*(?=[A-Z])"},{"captures":{"1":{"name":"punctuation.separator.method.ruby"}},"comment":"Mark as method separator if double colons not followed by capital letter","match":"(\\\\.|::)\\\\s*(?![A-Z])"},{"comment":"Must come after method and constant separators to prefer double colons","match":":","name":"punctuation.separator.other.ruby"},{"match":"\\\\{","name":"punctuation.section.scope.begin.ruby"},{"match":"\\\\}","name":"punctuation.section.scope.end.ruby"},{"match":"\\\\[","name":"punctuation.section.array.begin.ruby"},{"match":"\\\\]","name":"punctuation.section.array.end.ruby"},{"match":"\\\\(|\\\\)","name":"punctuation.section.function.ruby"}],"repository":{"escaped_char":{"match":"\\\\\\\\(?:[0-7]{1,3}|x[\\\\da-fA-F]{1,2}|.)","name":"constant.character.escape.ruby"},"heredoc":{"begin":"^<<[-~]?\\\\w+","end":"$","patterns":[{"include":"$self"}]},"interpolated_ruby":{"patterns":[{"begin":"#\\\\{","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.ruby"}},"contentName":"source.ruby","end":"(\\\\})","endCaptures":{"0":{"name":"punctuation.section.embedded.end.ruby"},"1":{"name":"source.ruby"}},"name":"meta.embedded.line.ruby","patterns":[{"include":"#nest_curly_and_self"},{"include":"$self"}],"repository":{"nest_curly_and_self":{"patterns":[{"begin":"\\\\{","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"\\\\}","patterns":[{"include":"#nest_curly_and_self"}]},{"include":"$self"}]}}},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(#@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.instance.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(#@@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.class.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(#\\\\$)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.global.ruby"}]},"percent_literals":{"patterns":[{"begin":"%i(?:([(\\\\[{<])|([^\\\\w\\\\s]|_))","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"[)\\\\]}>]\\\\2|\\\\1\\\\2","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"meta.array.symbol.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"},{"include":"#symbol"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"},{"include":"#symbol"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"},{"include":"#symbol"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"},{"include":"#symbol"}]},{"include":"#symbol"}],"repository":{"angles":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\<|\\\\\\\\>","name":"constant.other.symbol.ruby"},{"begin":"<","captures":{"0":{"name":"constant.other.symbol.ruby"}},"end":">","patterns":[{"include":"#angles"},{"include":"#symbol"}]}]},"braces":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\\\\\{|\\\\\\\\\\\\}","name":"constant.other.symbol.ruby"},{"begin":"\\\\{","captures":{"0":{"name":"constant.other.symbol.ruby"}},"end":"\\\\}","patterns":[{"include":"#braces"},{"include":"#symbol"}]}]},"brackets":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\\\\\[|\\\\\\\\\\\\]","name":"constant.other.symbol.ruby"},{"begin":"\\\\[","captures":{"0":{"name":"constant.other.symbol.ruby"}},"end":"\\\\]","patterns":[{"include":"#brackets"},{"include":"#symbol"}]}]},"parens":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\\\\\(|\\\\\\\\\\\\)","name":"constant.other.symbol.ruby"},{"begin":"\\\\(","captures":{"0":{"name":"constant.other.symbol.ruby"}},"end":"\\\\)","patterns":[{"include":"#parens"},{"include":"#symbol"}]}]},"symbol":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\\\\\\\\\|\\\\\\\\[ ]","name":"constant.other.symbol.ruby"},{"match":"\\\\S\\\\w*","name":"constant.other.symbol.ruby"}]}}},{"begin":"%I(?:([(\\\\[{<])|([^\\\\w\\\\s]|_))","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"[)\\\\]}>]\\\\2|\\\\1\\\\2","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"meta.array.symbol.interpolated.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"},{"include":"#symbol"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"},{"include":"#symbol"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"},{"include":"#symbol"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"},{"include":"#symbol"}]},{"include":"#symbol"}],"repository":{"angles":{"patterns":[{"begin":"<","captures":{"0":{"name":"constant.other.symbol.ruby"}},"end":">","patterns":[{"include":"#angles"},{"include":"#symbol"}]}]},"braces":{"patterns":[{"begin":"\\\\{","captures":{"0":{"name":"constant.other.symbol.ruby"}},"end":"\\\\}","patterns":[{"include":"#braces"},{"include":"#symbol"}]}]},"brackets":{"patterns":[{"begin":"\\\\[","captures":{"0":{"name":"constant.other.symbol.ruby"}},"end":"\\\\]","patterns":[{"include":"#brackets"},{"include":"#symbol"}]}]},"parens":{"patterns":[{"begin":"\\\\(","captures":{"0":{"name":"constant.other.symbol.ruby"}},"end":"\\\\)","patterns":[{"include":"#parens"},{"include":"#symbol"}]}]},"symbol":{"patterns":[{"begin":"(?=\\\\\\\\|#\\\\{)","end":"(?!\\\\G)","name":"constant.other.symbol.ruby","patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"}]},{"match":"\\\\S\\\\w*","name":"constant.other.symbol.ruby"}]}}},{"begin":"%q(?:([(\\\\[{<])|([^\\\\w\\\\s]|_))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"[)\\\\]}>]\\\\2|\\\\1\\\\2","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"}]}],"repository":{"angles":{"patterns":[{"match":"\\\\\\\\<|\\\\\\\\>|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"begin":"<","end":">","patterns":[{"include":"#angles"}]}]},"braces":{"patterns":[{"match":"\\\\\\\\\\\\{|\\\\\\\\\\\\}|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"begin":"\\\\{","end":"\\\\}","patterns":[{"include":"#braces"}]}]},"brackets":{"patterns":[{"match":"\\\\\\\\\\\\[|\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#brackets"}]}]},"parens":{"patterns":[{"match":"\\\\\\\\\\\\(|\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#parens"}]}]}}},{"begin":"%Q?(?:([(\\\\[{<])|([^\\\\w\\\\s=]|_))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"[)\\\\]}>]\\\\2|\\\\1\\\\2","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"}]},{"include":"#escaped_char"},{"include":"#interpolated_ruby"}],"repository":{"angles":{"patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"},{"begin":"<","end":">","patterns":[{"include":"#angles"}]}]},"braces":{"patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"},{"begin":"\\\\{","end":"\\\\}","patterns":[{"include":"#braces"}]}]},"brackets":{"patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"},{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#brackets"}]}]},"parens":{"patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"},{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#parens"}]}]}}},{"begin":"%r(?:([(\\\\[{<])|([^\\\\w\\\\s]|_))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"([)\\\\]}>]\\\\2|\\\\1\\\\2)[eimnosux]*","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.regexp.percent.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"}]},{"include":"#regex_sub"}],"repository":{"angles":{"patterns":[{"include":"#regex_sub"},{"begin":"<","end":">","patterns":[{"include":"#angles"}]}]},"braces":{"patterns":[{"include":"#regex_sub"},{"begin":"\\\\{","end":"\\\\}","patterns":[{"include":"#braces"}]}]},"brackets":{"patterns":[{"include":"#regex_sub"},{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#brackets"}]}]},"parens":{"patterns":[{"include":"#regex_sub"},{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#parens"}]}]}}},{"begin":"%s(?:([(\\\\[{<])|([^\\\\w\\\\s]|_))","beginCaptures":{"0":{"name":"punctuation.definition.constant.begin.ruby"}},"end":"[)\\\\]}>]\\\\2|\\\\1\\\\2","endCaptures":{"0":{"name":"punctuation.definition.constant.end.ruby"}},"name":"constant.other.symbol.percent.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"}]}],"repository":{"angles":{"patterns":[{"match":"\\\\\\\\<|\\\\\\\\>|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"begin":"<","end":">","patterns":[{"include":"#angles"}]}]},"braces":{"patterns":[{"match":"\\\\\\\\\\\\{|\\\\\\\\\\\\}|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"begin":"\\\\{","end":"\\\\}","patterns":[{"include":"#braces"}]}]},"brackets":{"patterns":[{"match":"\\\\\\\\\\\\[|\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#brackets"}]}]},"parens":{"patterns":[{"match":"\\\\\\\\\\\\(|\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#parens"}]}]}}},{"begin":"%w(?:([(\\\\[{<])|([^\\\\w\\\\s]|_))","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"[)\\\\]}>]\\\\2|\\\\1\\\\2","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"meta.array.string.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"},{"include":"#string"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"},{"include":"#string"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"},{"include":"#string"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"},{"include":"#string"}]},{"include":"#string"}],"repository":{"angles":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\<|\\\\\\\\>","name":"string.other.ruby"},{"begin":"<","captures":{"0":{"name":"string.other.ruby"}},"end":">","patterns":[{"include":"#angles"},{"include":"#string"}]}]},"braces":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\\\\\{|\\\\\\\\\\\\}","name":"string.other.ruby"},{"begin":"\\\\{","captures":{"0":{"name":"string.other.ruby"}},"end":"\\\\}","patterns":[{"include":"#braces"},{"include":"#string"}]}]},"brackets":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\\\\\[|\\\\\\\\\\\\]","name":"string.other.ruby"},{"begin":"\\\\[","captures":{"0":{"name":"string.other.ruby"}},"end":"\\\\]","patterns":[{"include":"#brackets"},{"include":"#string"}]}]},"parens":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\\\\\(|\\\\\\\\\\\\)","name":"string.other.ruby"},{"begin":"\\\\(","captures":{"0":{"name":"string.other.ruby"}},"end":"\\\\)","patterns":[{"include":"#parens"},{"include":"#string"}]}]},"string":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\\\\\\\\\|\\\\\\\\[ ]","name":"string.other.ruby"},{"match":"\\\\S\\\\w*","name":"string.other.ruby"}]}}},{"begin":"%W(?:([(\\\\[{<])|([^\\\\w\\\\s]|_))","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"[)\\\\]}>]\\\\2|\\\\1\\\\2","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"meta.array.string.interpolated.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"},{"include":"#string"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"},{"include":"#string"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"},{"include":"#string"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"},{"include":"#string"}]},{"include":"#string"}],"repository":{"angles":{"patterns":[{"begin":"<","captures":{"0":{"name":"string.other.ruby"}},"end":">","patterns":[{"include":"#angles"},{"include":"#string"}]}]},"braces":{"patterns":[{"begin":"\\\\{","captures":{"0":{"name":"string.other.ruby"}},"end":"\\\\}","patterns":[{"include":"#braces"},{"include":"#string"}]}]},"brackets":{"patterns":[{"begin":"\\\\[","captures":{"0":{"name":"string.other.ruby"}},"end":"\\\\]","patterns":[{"include":"#brackets"},{"include":"#string"}]}]},"parens":{"patterns":[{"begin":"\\\\(","captures":{"0":{"name":"string.other.ruby"}},"end":"\\\\)","patterns":[{"include":"#parens"},{"include":"#string"}]}]},"string":{"patterns":[{"begin":"(?=\\\\\\\\|#\\\\{)","end":"(?!\\\\G)","name":"string.other.ruby","patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"}]},{"match":"\\\\S\\\\w*","name":"string.other.ruby"}]}}},{"begin":"%x(?:([(\\\\[{<])|([^\\\\w\\\\s]|_))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"[)\\\\]}>]\\\\2|\\\\1\\\\2","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.interpolated.percent.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"}]},{"include":"#escaped_char"},{"include":"#interpolated_ruby"}],"repository":{"angles":{"patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"},{"begin":"<","end":">","patterns":[{"include":"#angles"}]}]},"braces":{"patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"},{"begin":"\\\\{","end":"\\\\}","patterns":[{"include":"#braces"}]}]},"brackets":{"patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"},{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#brackets"}]}]},"parens":{"patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"},{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#parens"}]}]}}}]},"regex_sub":{"patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"captures":{"1":{"name":"punctuation.definition.quantifier.begin.ruby"},"3":{"name":"punctuation.definition.quantifier.end.ruby"}},"match":"(\\\\{)\\\\d+(,\\\\d+)?(\\\\})","name":"keyword.operator.quantifier.ruby"},{"begin":"\\\\[\\\\^?","beginCaptures":{"0":{"name":"punctuation.definition.character-class.begin.ruby"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.character-class.end.ruby"}},"name":"constant.other.character-class.set.ruby","patterns":[{"include":"#escaped_char"}]},{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.comment.end.ruby"}},"name":"comment.line.number-sign.ruby","patterns":[{"include":"#escaped_char"}]},{"begin":"\\\\(","captures":{"0":{"name":"punctuation.definition.group.ruby"}},"end":"\\\\)","name":"meta.group.regexp.ruby","patterns":[{"include":"#regex_sub"}]},{"begin":"(?<=^|\\\\s)(#)\\\\s(?=[[a-zA-Z0-9,. \\\\t?!-][^\\\\x{00}-\\\\x{7F}]]*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.ruby"}},"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.","end":"$\\\\n?","name":"comment.line.number-sign.ruby"}]}},"scopeName":"source.ruby","embeddedLangs":["html","xml","sql","css","c","javascript","shellscript","lua"],"aliases":["rb"]}'))]));}};});
2
- //# sourceMappingURL=ruby-4306ddd1.cjs.js.map
1
+ System.register(["./html-3718679d.cjs.js","./xml-496a65af.cjs.js","./sql-e6e7243e.cjs.js","./css-80d60bac.cjs.js","./c-37e019c9.cjs.js","./javascript-ce720697.cjs.js","./shellscript-f4aa09bf.cjs.js","./lua-fe4787ec.cjs.js","./java-103ebcb7.cjs.js"],function(_export,_context){"use strict";var e,n,t,a,r,i,s,c,u;function _toConsumableArray(arr){return _arrayWithoutHoles(arr)||_iterableToArray(arr)||_unsupportedIterableToArray(arr)||_nonIterableSpread();}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o==="string")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(o);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen);}function _iterableToArray(iter){if(typeof Symbol!=="undefined"&&iter[Symbol.iterator]!=null||iter["@@iterator"]!=null)return Array.from(iter);}function _arrayWithoutHoles(arr){if(Array.isArray(arr))return _arrayLikeToArray(arr);}function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++)arr2[i]=arr[i];return arr2;}return{setters:[function(_html00aCjsJs){e=_html00aCjsJs["default"];},function(_xml00hCjsJs){n=_xml00hCjsJs["default"];},function(_sql00zCjsJs){t=_sql00zCjsJs["default"];},function(_css00cCjsJs){a=_css00cCjsJs["default"];},function(_c00ACjsJs){r=_c00ACjsJs["default"];},function(_javascript00bCjsJs){i=_javascript00bCjsJs["default"];},function(_shellscript00OCjsJs){s=_shellscript00OCjsJs["default"];},function(_lua016CjsJs){c=_lua016CjsJs["default"];},function(_java00jCjsJs){}],execute:function execute(){_export("default",u=[].concat(_toConsumableArray(e),_toConsumableArray(n),_toConsumableArray(t),_toConsumableArray(a),_toConsumableArray(r),_toConsumableArray(i),_toConsumableArray(s),_toConsumableArray(c),[Object.freeze(JSON.parse('{"displayName":"Ruby","name":"ruby","patterns":[{"captures":{"1":{"name":"keyword.control.class.ruby"},"2":{"name":"entity.name.type.class.ruby"},"3":{"name":"keyword.operator.other.ruby"},"4":{"name":"entity.other.inherited-class.ruby"},"5":{"name":"keyword.operator.other.ruby"},"6":{"name":"variable.other.object.ruby"}},"match":"^\\\\s*(class)\\\\s+(?:([.a-zA-Z0-9_:]+)(?:\\\\s*(<)\\\\s*([.a-zA-Z0-9_:]+))?|(<<)\\\\s*([.a-zA-Z0-9_:]+))","name":"meta.class.ruby"},{"captures":{"1":{"name":"keyword.control.module.ruby"},"2":{"name":"entity.name.type.module.ruby"},"3":{"name":"entity.other.inherited-class.module.first.ruby"},"4":{"name":"punctuation.separator.inheritance.ruby"},"5":{"name":"entity.other.inherited-class.module.second.ruby"},"6":{"name":"punctuation.separator.inheritance.ruby"},"7":{"name":"entity.other.inherited-class.module.third.ruby"},"8":{"name":"punctuation.separator.inheritance.ruby"}},"match":"^\\\\s*(module)\\\\s+(([A-Z]\\\\w*(::))?([A-Z]\\\\w*(::))?([A-Z]\\\\w*(::))*[A-Z]\\\\w*)","name":"meta.module.ruby"},{"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.","match":"(?<!\\\\.)\\\\belse(\\\\s)+if\\\\b","name":"invalid.deprecated.ruby"},{"captures":{"1":{"name":"punctuation.definition.constant.ruby"}},"comment":"symbols as hash key (1.9 syntax)","match":"(?>[a-zA-Z_]\\\\w*(?>[?!])?)(:)(?!:)","name":"constant.other.symbol.hashkey.ruby"},{"captures":{"1":{"name":"punctuation.definition.constant.ruby"}},"comment":"symbols as hash key (1.8 syntax)","match":"(?<!:)(:)(?>[a-zA-Z_]\\\\w*(?>[?!])?)(?=\\\\s*=>)","name":"constant.other.symbol.hashkey.ruby"},{"comment":"everything being a reserved word, not a value and needing a \'end\' is a..","match":"(?<!\\\\.)\\\\b(BEGIN|begin|case|class|else|elsif|END|end|ensure|for|if|in|module|rescue|then|unless|until|when|while)\\\\b(?![?!])","name":"keyword.control.ruby"},{"comment":"contextual smart pair support for block parameters","match":"(?<!\\\\.)\\\\bdo\\\\b","name":"keyword.control.start-block.ruby"},{"comment":"contextual smart pair support","match":"(?<=\\\\{)(\\\\s+)","name":"meta.syntax.ruby.start-block"},{"match":"(?<!\\\\.)\\\\b(alias|alias_method|block_given[?]|break|defined[?]|iterator[?]|next|redo|retry|return|super|undef|yield)(\\\\b|(?<=[?]))(?![?!])","name":"keyword.control.pseudo-method.ruby"},{"match":"\\\\b(nil|true|false)\\\\b(?![?!])","name":"constant.language.ruby"},{"match":"\\\\b(__(dir|FILE|LINE)__)\\\\b(?![?!])","name":"variable.language.ruby"},{"begin":"^__END__\\\\n","captures":{"0":{"name":"string.unquoted.program-block.ruby"}},"comment":"__END__ marker","contentName":"text.plain","end":"(?=not)impossible","patterns":[{"begin":"(?=<?xml|<(?i:html\\\\b)|!DOCTYPE (?i:html\\\\b))","end":"(?=not)impossible","name":"text.html.embedded.ruby","patterns":[{"include":"text.html.basic"}]}]},{"match":"\\\\b(self)\\\\b(?![?!])","name":"variable.language.self.ruby"},{"comment":" everything being a method but having a special function is a..","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(?![?!])","name":"keyword.other.special-method.ruby"},{"begin":"\\\\b(?<!\\\\.|::)(require|require_relative)\\\\b","captures":{"1":{"name":"keyword.other.special-method.ruby"}},"end":"$|(?=#|\\\\})","name":"meta.require.ruby","patterns":[{"include":"$self"}]},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.instance.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(@@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.class.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(\\\\$)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.global.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(\\\\$)(!|@|&|`|\'|\\\\+|\\\\d+|~|=|/|\\\\\\\\|,|;|\\\\.|<|>|_|\\\\*|\\\\$|\\\\?|:|\\"|-[0adFiIlpvw])","name":"variable.other.readwrite.global.pre-defined.ruby"},{"begin":"\\\\b(ENV)\\\\[","beginCaptures":{"1":{"name":"variable.other.constant.ruby"}},"end":"\\\\]","name":"meta.environment-variable.ruby","patterns":[{"include":"$self"}]},{"match":"\\\\b[A-Z]\\\\w*(?=((\\\\.|::)[A-Za-z]|\\\\[))","name":"support.class.ruby"},{"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|(?<=[?!]))(?![?!])","name":"support.function.kernel.ruby"},{"match":"\\\\b[A-Z]\\\\w*\\\\b","name":"variable.other.constant.ruby"},{"begin":"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|===?|!=|!~|>[>=]?|<=>|<[<=]?|[%&`/\\\\|^]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[\\\\]=?))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.def.ruby"},"2":{"name":"entity.name.function.ruby"},"3":{"name":"punctuation.definition.parameters.ruby"}},"comment":"the method pattern comes from the symbol pattern, see there for a explaination","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.ruby"}},"name":"meta.function.method.with-arguments.ruby","patterns":[{"begin":"(?=[&*_a-zA-Z])","end":"(?=[,)])","patterns":[{"captures":{"1":{"name":"storage.type.variable.ruby"},"2":{"name":"constant.other.symbol.hashkey.parameter.function.ruby"},"3":{"name":"punctuation.definition.constant.ruby"},"4":{"name":"variable.parameter.function.ruby"}},"match":"\\\\G([&*]?)(?:([_a-zA-Z]\\\\w*(:))|([_a-zA-Z]\\\\w*))"},{"include":"#parens"},{"include":"#braces"},{"include":"$self"}]}],"repository":{"braces":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.function.begin.ruby"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.function.end.ruby"}},"patterns":[{"include":"#parens"},{"include":"#braces"},{"include":"$self"}]},"parens":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.function.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.ruby"}},"patterns":[{"include":"#parens"},{"include":"#braces"},{"include":"$self"}]}}},{"begin":"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|===?|!=|!~|>[>=]?|<=>|<[<=]?|[%&`/\\\\|^]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[\\\\]=?))[ \\\\t](?=[ \\\\t]*[^\\\\s#;])","beginCaptures":{"1":{"name":"keyword.control.def.ruby"},"2":{"name":"entity.name.function.ruby"}},"comment":"same as the previous rule, but without parentheses around the arguments","end":"$","name":"meta.function.method.with-arguments.ruby","patterns":[{"begin":"(?![\\\\s,])","end":"(?=,|$)","patterns":[{"captures":{"1":{"name":"storage.type.variable.ruby"},"2":{"name":"constant.other.symbol.hashkey.parameter.function.ruby"},"3":{"name":"punctuation.definition.constant.ruby"},"4":{"name":"variable.parameter.function.ruby"}},"match":"\\\\G([&*]?)(?:([_a-zA-Z]\\\\w*(:))|([_a-zA-Z]\\\\w*))","name":"variable.parameter.function.ruby"},{"include":"$self"}]}]},{"captures":{"1":{"name":"keyword.control.def.ruby"},"3":{"name":"entity.name.function.ruby"}},"comment":" the optional name is just to catch the def also without a method-name","match":"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\b(\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|===?|!=|!~|>[>=]?|<=>|<[<=]?|[%&`/\\\\|^]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[\\\\]=?)))?","name":"meta.function.method.without-arguments.ruby"},{"match":"\\\\b\\\\d(?>_?\\\\d)*(?=\\\\.\\\\d|[eE])(\\\\.\\\\d(?>_?\\\\d)*)?([eE][-+]?\\\\d(?>_?\\\\d)*)?r?i?\\\\b","name":"constant.numeric.float.ruby"},{"match":"\\\\b(0|(0[dD]\\\\d|[1-9])(?>_?\\\\d)*)r?i?\\\\b","name":"constant.numeric.integer.ruby"},{"match":"\\\\b0[xX]\\\\h(?>_?\\\\h)*r?i?\\\\b","name":"constant.numeric.hex.ruby"},{"match":"\\\\b0[bB][01](?>_?[01])*r?i?\\\\b","name":"constant.numeric.binary.ruby"},{"match":"\\\\b0([oO]?[0-7](?>_?[0-7])*)?r?i?\\\\b","name":"constant.numeric.octal.ruby"},{"begin":":\'","captures":{"0":{"name":"punctuation.definition.constant.ruby"}},"end":"\'","name":"constant.other.symbol.single-quoted.ruby","patterns":[{"match":"\\\\\\\\[\'\\\\\\\\]","name":"constant.character.escape.ruby"}]},{"begin":":\\"","captures":{"0":{"name":"punctuation.definition.constant.ruby"}},"end":"\\"","name":"constant.other.symbol.double-quoted.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"comment":"Needs higher precedence than regular expressions.","match":"(?<!\\\\()/=","name":"keyword.operator.assignment.augmented.ruby"},{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"comment":"single quoted string (does not allow interpolation)","end":"\'","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.single.ruby","patterns":[{"match":"\\\\\\\\\'|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"comment":"double quoted string (allows for interpolation)","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.double.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"comment":"execute string (allows for interpolation)","end":"`","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"include":"#percent_literals"},{"begin":"(?:^|(?<=[=>~(?:\\\\[,|&;]|[\\\\s;]if\\\\s|[\\\\s;]elsif\\\\s|[\\\\s;]while\\\\s|[\\\\s;]unless\\\\s|[\\\\s;]when\\\\s|[\\\\s;]assert_match\\\\s|[\\\\s;]or\\\\s|[\\\\s;]and\\\\s|[\\\\s;]not\\\\s|[\\\\s.]index\\\\s|[\\\\s.]scan\\\\s|[\\\\s.]sub\\\\s|[\\\\s.]sub!\\\\s|[\\\\s.]gsub\\\\s|[\\\\s.]gsub!\\\\s|[\\\\s.]match\\\\s)|(?<=^when\\\\s|^if\\\\s|^elsif\\\\s|^while\\\\s|^unless\\\\s))\\\\s*((/))(?![*+{}?])","captures":{"1":{"name":"string.regexp.classic.ruby"},"2":{"name":"punctuation.definition.string.ruby"}},"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","contentName":"string.regexp.classic.ruby","end":"((/[eimnosux]*))","patterns":[{"include":"#regex_sub"}]},{"captures":{"1":{"name":"punctuation.definition.constant.ruby"}},"comment":"symbols","match":"(?<!:)(:)(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?![>=]))?|===?|>[>=]?|<=>|<[<=]?|[%&`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[\\\\]=?|(@@?|\\\\$)[a-zA-Z_]\\\\w*)","name":"constant.other.symbol.ruby"},{"begin":"^=begin","captures":{"0":{"name":"punctuation.definition.comment.ruby"}},"comment":"multiline comments","end":"^=end","name":"comment.block.documentation.ruby"},{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ruby"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.ruby"}},"end":"\\\\n","name":"comment.line.number-sign.ruby"}]},{"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","match":"(?<!\\\\w)\\\\?(\\\\\\\\(x\\\\h{1,2}(?!\\\\h)\\\\b|0[0-7]{0,2}(?![0-7])\\\\b|[^x0MC])|(\\\\\\\\[MC]-)+\\\\w|[^\\\\s\\\\\\\\])","name":"constant.numeric.ruby"},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)HTML)\\\\b\\\\1))","comment":"Heredoc with embedded html","end":"(?!\\\\G)","name":"meta.embedded.block.html","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)HTML)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"text.html","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"text.html.basic"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)XML)\\\\b\\\\1))","comment":"Heredoc with embedded xml","end":"(?!\\\\G)","name":"meta.embedded.block.xml","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)XML)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"text.xml","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"text.xml"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)SQL)\\\\b\\\\1))","comment":"Heredoc with embedded sql","end":"(?!\\\\G)","name":"meta.embedded.block.sql","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)SQL)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.sql","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.sql"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)CSS)\\\\b\\\\1))","comment":"Heredoc with embedded css","end":"(?!\\\\G)","name":"meta.embedded.block.css","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)CSS)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.css","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.css"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)CPP)\\\\b\\\\1))","comment":"Heredoc with embedded c++","end":"(?!\\\\G)","name":"meta.embedded.block.c++","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)CPP)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.c++","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.c++"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)C)\\\\b\\\\1))","comment":"Heredoc with embedded c","end":"(?!\\\\G)","name":"meta.embedded.block.c","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)C)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.c","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.c"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)(?:JS|JAVASCRIPT))\\\\b\\\\1))","comment":"Heredoc with embedded javascript","end":"(?!\\\\G)","name":"meta.embedded.block.js","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)(?:JS|JAVASCRIPT))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.js","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.js"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)JQUERY)\\\\b\\\\1))","comment":"Heredoc with embedded jQuery javascript","end":"(?!\\\\G)","name":"meta.embedded.block.js.jquery","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)JQUERY)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.js.jquery","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.js.jquery"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)(?:SH|SHELL))\\\\b\\\\1))","comment":"Heredoc with embedded shell","end":"(?!\\\\G)","name":"meta.embedded.block.shell","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)(?:SH|SHELL))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.shell","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.shell"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)LUA)\\\\b\\\\1))","comment":"Heredoc with embedded lua","end":"(?!\\\\G)","name":"meta.embedded.block.lua","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)LUA)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.lua","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.lua"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~](\\"?)((?:[_\\\\w]+_|)RUBY)\\\\b\\\\1))","comment":"Heredoc with embedded ruby","end":"(?!\\\\G)","name":"meta.embedded.block.ruby","patterns":[{"begin":"(?><<[-~](\\"?)((?:[_\\\\w]+_|)RUBY)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.ruby","end":"\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.ruby"},{"include":"#escaped_char"}]}]},{"begin":"(?>=\\\\s*<<(\\\\w+))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"^\\\\1$","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"(?><<[-~](\\\\w+))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"comment":"heredoc with indented terminator","end":"\\\\s*\\\\1$","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"(?<=\\\\{|do|\\\\{\\\\s|do\\\\s)(\\\\|)","captures":{"1":{"name":"punctuation.separator.arguments.ruby"}},"end":"(?<!\\\\|)(\\\\|)(?!\\\\|)","patterns":[{"include":"$self"},{"match":"[_a-zA-Z][_a-zA-Z0-9]*","name":"variable.other.block.ruby"},{"match":",","name":"punctuation.separator.variable.ruby"}]},{"match":"=>","name":"punctuation.separator.key-value"},{"match":"->","name":"support.function.kernel.lambda.ruby"},{"match":"<<=|%=|&{1,2}=|\\\\*=|\\\\*\\\\*=|\\\\+=|-=|\\\\^=|\\\\|{1,2}=|<<","name":"keyword.operator.assignment.augmented.ruby"},{"match":"<=>|<(?!<|=)|>(?!<|=|>)|<=|>=|===|==|=~|!=|!~|(?<=[ \\\\t])\\\\?","name":"keyword.operator.comparison.ruby"},{"match":"(?<!\\\\.)\\\\b(and|not|or)\\\\b(?![?!])","name":"keyword.operator.logical.ruby"},{"comment":"Make sure this goes after assignment and comparison","match":"(?<=^|[ \\\\t])!|&&|\\\\|\\\\||\\\\^","name":"keyword.operator.logical.ruby"},{"captures":{"1":{"name":"punctuation.separator.method.ruby"}},"comment":"Safe navigation operator - Added in 2.3","match":"(&\\\\.)\\\\s*(?![A-Z])"},{"match":"(%|&|\\\\*\\\\*|\\\\*|\\\\+|-|/)","name":"keyword.operator.arithmetic.ruby"},{"match":"=","name":"keyword.operator.assignment.ruby"},{"match":"\\\\||~|>>","name":"keyword.operator.other.ruby"},{"match":";","name":"punctuation.separator.statement.ruby"},{"match":",","name":"punctuation.separator.object.ruby"},{"captures":{"1":{"name":"punctuation.separator.namespace.ruby"}},"comment":"Mark as namespace separator if double colons followed by capital letter","match":"(::)\\\\s*(?=[A-Z])"},{"captures":{"1":{"name":"punctuation.separator.method.ruby"}},"comment":"Mark as method separator if double colons not followed by capital letter","match":"(\\\\.|::)\\\\s*(?![A-Z])"},{"comment":"Must come after method and constant separators to prefer double colons","match":":","name":"punctuation.separator.other.ruby"},{"match":"\\\\{","name":"punctuation.section.scope.begin.ruby"},{"match":"\\\\}","name":"punctuation.section.scope.end.ruby"},{"match":"\\\\[","name":"punctuation.section.array.begin.ruby"},{"match":"\\\\]","name":"punctuation.section.array.end.ruby"},{"match":"\\\\(|\\\\)","name":"punctuation.section.function.ruby"}],"repository":{"escaped_char":{"match":"\\\\\\\\(?:[0-7]{1,3}|x[\\\\da-fA-F]{1,2}|.)","name":"constant.character.escape.ruby"},"heredoc":{"begin":"^<<[-~]?\\\\w+","end":"$","patterns":[{"include":"$self"}]},"interpolated_ruby":{"patterns":[{"begin":"#\\\\{","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.ruby"}},"contentName":"source.ruby","end":"(\\\\})","endCaptures":{"0":{"name":"punctuation.section.embedded.end.ruby"},"1":{"name":"source.ruby"}},"name":"meta.embedded.line.ruby","patterns":[{"include":"#nest_curly_and_self"},{"include":"$self"}],"repository":{"nest_curly_and_self":{"patterns":[{"begin":"\\\\{","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"\\\\}","patterns":[{"include":"#nest_curly_and_self"}]},{"include":"$self"}]}}},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(#@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.instance.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(#@@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.class.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(#\\\\$)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.global.ruby"}]},"percent_literals":{"patterns":[{"begin":"%i(?:([(\\\\[{<])|([^\\\\w\\\\s]|_))","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"[)\\\\]}>]\\\\2|\\\\1\\\\2","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"meta.array.symbol.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"},{"include":"#symbol"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"},{"include":"#symbol"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"},{"include":"#symbol"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"},{"include":"#symbol"}]},{"include":"#symbol"}],"repository":{"angles":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\<|\\\\\\\\>","name":"constant.other.symbol.ruby"},{"begin":"<","captures":{"0":{"name":"constant.other.symbol.ruby"}},"end":">","patterns":[{"include":"#angles"},{"include":"#symbol"}]}]},"braces":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\\\\\{|\\\\\\\\\\\\}","name":"constant.other.symbol.ruby"},{"begin":"\\\\{","captures":{"0":{"name":"constant.other.symbol.ruby"}},"end":"\\\\}","patterns":[{"include":"#braces"},{"include":"#symbol"}]}]},"brackets":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\\\\\[|\\\\\\\\\\\\]","name":"constant.other.symbol.ruby"},{"begin":"\\\\[","captures":{"0":{"name":"constant.other.symbol.ruby"}},"end":"\\\\]","patterns":[{"include":"#brackets"},{"include":"#symbol"}]}]},"parens":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\\\\\(|\\\\\\\\\\\\)","name":"constant.other.symbol.ruby"},{"begin":"\\\\(","captures":{"0":{"name":"constant.other.symbol.ruby"}},"end":"\\\\)","patterns":[{"include":"#parens"},{"include":"#symbol"}]}]},"symbol":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\\\\\\\\\|\\\\\\\\[ ]","name":"constant.other.symbol.ruby"},{"match":"\\\\S\\\\w*","name":"constant.other.symbol.ruby"}]}}},{"begin":"%I(?:([(\\\\[{<])|([^\\\\w\\\\s]|_))","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"[)\\\\]}>]\\\\2|\\\\1\\\\2","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"meta.array.symbol.interpolated.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"},{"include":"#symbol"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"},{"include":"#symbol"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"},{"include":"#symbol"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"},{"include":"#symbol"}]},{"include":"#symbol"}],"repository":{"angles":{"patterns":[{"begin":"<","captures":{"0":{"name":"constant.other.symbol.ruby"}},"end":">","patterns":[{"include":"#angles"},{"include":"#symbol"}]}]},"braces":{"patterns":[{"begin":"\\\\{","captures":{"0":{"name":"constant.other.symbol.ruby"}},"end":"\\\\}","patterns":[{"include":"#braces"},{"include":"#symbol"}]}]},"brackets":{"patterns":[{"begin":"\\\\[","captures":{"0":{"name":"constant.other.symbol.ruby"}},"end":"\\\\]","patterns":[{"include":"#brackets"},{"include":"#symbol"}]}]},"parens":{"patterns":[{"begin":"\\\\(","captures":{"0":{"name":"constant.other.symbol.ruby"}},"end":"\\\\)","patterns":[{"include":"#parens"},{"include":"#symbol"}]}]},"symbol":{"patterns":[{"begin":"(?=\\\\\\\\|#\\\\{)","end":"(?!\\\\G)","name":"constant.other.symbol.ruby","patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"}]},{"match":"\\\\S\\\\w*","name":"constant.other.symbol.ruby"}]}}},{"begin":"%q(?:([(\\\\[{<])|([^\\\\w\\\\s]|_))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"[)\\\\]}>]\\\\2|\\\\1\\\\2","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"}]}],"repository":{"angles":{"patterns":[{"match":"\\\\\\\\<|\\\\\\\\>|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"begin":"<","end":">","patterns":[{"include":"#angles"}]}]},"braces":{"patterns":[{"match":"\\\\\\\\\\\\{|\\\\\\\\\\\\}|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"begin":"\\\\{","end":"\\\\}","patterns":[{"include":"#braces"}]}]},"brackets":{"patterns":[{"match":"\\\\\\\\\\\\[|\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#brackets"}]}]},"parens":{"patterns":[{"match":"\\\\\\\\\\\\(|\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#parens"}]}]}}},{"begin":"%Q?(?:([(\\\\[{<])|([^\\\\w\\\\s=]|_))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"[)\\\\]}>]\\\\2|\\\\1\\\\2","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"}]},{"include":"#escaped_char"},{"include":"#interpolated_ruby"}],"repository":{"angles":{"patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"},{"begin":"<","end":">","patterns":[{"include":"#angles"}]}]},"braces":{"patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"},{"begin":"\\\\{","end":"\\\\}","patterns":[{"include":"#braces"}]}]},"brackets":{"patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"},{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#brackets"}]}]},"parens":{"patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"},{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#parens"}]}]}}},{"begin":"%r(?:([(\\\\[{<])|([^\\\\w\\\\s]|_))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"([)\\\\]}>]\\\\2|\\\\1\\\\2)[eimnosux]*","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.regexp.percent.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"}]},{"include":"#regex_sub"}],"repository":{"angles":{"patterns":[{"include":"#regex_sub"},{"begin":"<","end":">","patterns":[{"include":"#angles"}]}]},"braces":{"patterns":[{"include":"#regex_sub"},{"begin":"\\\\{","end":"\\\\}","patterns":[{"include":"#braces"}]}]},"brackets":{"patterns":[{"include":"#regex_sub"},{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#brackets"}]}]},"parens":{"patterns":[{"include":"#regex_sub"},{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#parens"}]}]}}},{"begin":"%s(?:([(\\\\[{<])|([^\\\\w\\\\s]|_))","beginCaptures":{"0":{"name":"punctuation.definition.constant.begin.ruby"}},"end":"[)\\\\]}>]\\\\2|\\\\1\\\\2","endCaptures":{"0":{"name":"punctuation.definition.constant.end.ruby"}},"name":"constant.other.symbol.percent.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"}]}],"repository":{"angles":{"patterns":[{"match":"\\\\\\\\<|\\\\\\\\>|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"begin":"<","end":">","patterns":[{"include":"#angles"}]}]},"braces":{"patterns":[{"match":"\\\\\\\\\\\\{|\\\\\\\\\\\\}|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"begin":"\\\\{","end":"\\\\}","patterns":[{"include":"#braces"}]}]},"brackets":{"patterns":[{"match":"\\\\\\\\\\\\[|\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#brackets"}]}]},"parens":{"patterns":[{"match":"\\\\\\\\\\\\(|\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#parens"}]}]}}},{"begin":"%w(?:([(\\\\[{<])|([^\\\\w\\\\s]|_))","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"[)\\\\]}>]\\\\2|\\\\1\\\\2","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"meta.array.string.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"},{"include":"#string"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"},{"include":"#string"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"},{"include":"#string"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"},{"include":"#string"}]},{"include":"#string"}],"repository":{"angles":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\<|\\\\\\\\>","name":"string.other.ruby"},{"begin":"<","captures":{"0":{"name":"string.other.ruby"}},"end":">","patterns":[{"include":"#angles"},{"include":"#string"}]}]},"braces":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\\\\\{|\\\\\\\\\\\\}","name":"string.other.ruby"},{"begin":"\\\\{","captures":{"0":{"name":"string.other.ruby"}},"end":"\\\\}","patterns":[{"include":"#braces"},{"include":"#string"}]}]},"brackets":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\\\\\[|\\\\\\\\\\\\]","name":"string.other.ruby"},{"begin":"\\\\[","captures":{"0":{"name":"string.other.ruby"}},"end":"\\\\]","patterns":[{"include":"#brackets"},{"include":"#string"}]}]},"parens":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\\\\\(|\\\\\\\\\\\\)","name":"string.other.ruby"},{"begin":"\\\\(","captures":{"0":{"name":"string.other.ruby"}},"end":"\\\\)","patterns":[{"include":"#parens"},{"include":"#string"}]}]},"string":{"patterns":[{"captures":{"0":{"name":"constant.character.escape.ruby"}},"match":"\\\\\\\\\\\\\\\\|\\\\\\\\[ ]","name":"string.other.ruby"},{"match":"\\\\S\\\\w*","name":"string.other.ruby"}]}}},{"begin":"%W(?:([(\\\\[{<])|([^\\\\w\\\\s]|_))","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"[)\\\\]}>]\\\\2|\\\\1\\\\2","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"meta.array.string.interpolated.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"},{"include":"#string"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"},{"include":"#string"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"},{"include":"#string"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"},{"include":"#string"}]},{"include":"#string"}],"repository":{"angles":{"patterns":[{"begin":"<","captures":{"0":{"name":"string.other.ruby"}},"end":">","patterns":[{"include":"#angles"},{"include":"#string"}]}]},"braces":{"patterns":[{"begin":"\\\\{","captures":{"0":{"name":"string.other.ruby"}},"end":"\\\\}","patterns":[{"include":"#braces"},{"include":"#string"}]}]},"brackets":{"patterns":[{"begin":"\\\\[","captures":{"0":{"name":"string.other.ruby"}},"end":"\\\\]","patterns":[{"include":"#brackets"},{"include":"#string"}]}]},"parens":{"patterns":[{"begin":"\\\\(","captures":{"0":{"name":"string.other.ruby"}},"end":"\\\\)","patterns":[{"include":"#parens"},{"include":"#string"}]}]},"string":{"patterns":[{"begin":"(?=\\\\\\\\|#\\\\{)","end":"(?!\\\\G)","name":"string.other.ruby","patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"}]},{"match":"\\\\S\\\\w*","name":"string.other.ruby"}]}}},{"begin":"%x(?:([(\\\\[{<])|([^\\\\w\\\\s]|_))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"[)\\\\]}>]\\\\2|\\\\1\\\\2","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.interpolated.percent.ruby","patterns":[{"begin":"\\\\G(?<=\\\\()(?!\\\\))","end":"(?=\\\\))","patterns":[{"include":"#parens"}]},{"begin":"\\\\G(?<=\\\\[)(?!\\\\])","end":"(?=\\\\])","patterns":[{"include":"#brackets"}]},{"begin":"\\\\G(?<=\\\\{)(?!\\\\})","end":"(?=\\\\})","patterns":[{"include":"#braces"}]},{"begin":"\\\\G(?<=<)(?!>)","end":"(?=>)","patterns":[{"include":"#angles"}]},{"include":"#escaped_char"},{"include":"#interpolated_ruby"}],"repository":{"angles":{"patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"},{"begin":"<","end":">","patterns":[{"include":"#angles"}]}]},"braces":{"patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"},{"begin":"\\\\{","end":"\\\\}","patterns":[{"include":"#braces"}]}]},"brackets":{"patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"},{"begin":"\\\\[","end":"\\\\]","patterns":[{"include":"#brackets"}]}]},"parens":{"patterns":[{"include":"#escaped_char"},{"include":"#interpolated_ruby"},{"begin":"\\\\(","end":"\\\\)","patterns":[{"include":"#parens"}]}]}}}]},"regex_sub":{"patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"captures":{"1":{"name":"punctuation.definition.quantifier.begin.ruby"},"3":{"name":"punctuation.definition.quantifier.end.ruby"}},"match":"(\\\\{)\\\\d+(,\\\\d+)?(\\\\})","name":"keyword.operator.quantifier.ruby"},{"begin":"\\\\[\\\\^?","beginCaptures":{"0":{"name":"punctuation.definition.character-class.begin.ruby"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.character-class.end.ruby"}},"name":"constant.other.character-class.set.ruby","patterns":[{"include":"#escaped_char"}]},{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.comment.end.ruby"}},"name":"comment.line.number-sign.ruby","patterns":[{"include":"#escaped_char"}]},{"begin":"\\\\(","captures":{"0":{"name":"punctuation.definition.group.ruby"}},"end":"\\\\)","name":"meta.group.regexp.ruby","patterns":[{"include":"#regex_sub"}]},{"begin":"(?<=^|\\\\s)(#)\\\\s(?=[[a-zA-Z0-9,. \\\\t?!-][^\\\\x{00}-\\\\x{7F}]]*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.ruby"}},"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.","end":"$\\\\n?","name":"comment.line.number-sign.ruby"}]}},"scopeName":"source.ruby","embeddedLangs":["html","xml","sql","css","c","javascript","shellscript","lua"],"aliases":["rb"]}'))]));}};});
2
+ //# sourceMappingURL=ruby-578b1ee6.cjs.js.map