UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

51 lines 82 kB
import { t as c_default } from "./c-CfYypmEa.js";
import { t as cpp_default } from "./cpp-3UOObbhp.js";
import { t as sql_default } from "./sql-DQmPy5AS.js";
import { t as css_default } from "./css-ZdR2Dr52.js";
import { t as javascript_default } from "./javascript-CAioWVQP.js";
import { t as html_default } from "./html-Cel0DI8S.js";
import { t as jsx_default } from "./jsx-DpJFZLOr.js";
import { t as lua_default } from "./lua-LuhUd3yg.js";
import { t as xml_default } from "./xml-DikTAId6.js";
import { t as typescript_default } from "./typescript-DEfwErn2.js";
import { t as tsx_default } from "./tsx-CIKmbz9L.js";
import { t as shellscript_default } from "./shellscript-Cz5Od0Rs.js";
import { t as yaml_default } from "./yaml-Cz5hDgoz.js";
//#region node_modules/@shikijs/langs/dist/haml.mjs
const lang$2 = Object.freeze(JSON.parse("{\"displayName\":\"Ruby Haml\",\"fileTypes\":[\"haml\",\"html.haml\"],\"foldingStartMarker\":\"^\\\\s*([-#%.:=\\\\w].*)\\\\s$\",\"foldingStopMarker\":\"^\\\\s*$\",\"name\":\"haml\",\"patterns\":[{\"begin\":\"^(\\\\s*)==\",\"contentName\":\"string.quoted.double.ruby\",\"end\":\"$\\\\n*\",\"patterns\":[{\"include\":\"#interpolated_ruby\"}]},{\"begin\":\"^(\\\\s*):ruby\",\"end\":\"^(?!\\\\1\\\\s+|$\\\\n*)\",\"name\":\"source.ruby.embedded.filter.haml\",\"patterns\":[{\"include\":\"source.ruby\"}]},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.prolog.haml\"}},\"match\":\"^(!!!)($|\\\\s.*)\",\"name\":\"meta.prolog.haml\"},{\"begin\":\"^(\\\\s*):javascript\",\"end\":\"^(?!\\\\1\\\\s+|$\\\\n*)\",\"name\":\"js.haml\",\"patterns\":[{\"include\":\"source.js\"}]},{\"begin\":\"^(\\\\s*)%script\",\"end\":\"^(?!\\\\1\\\\s+|$\\\\n*)\",\"name\":\"js.inline.haml\",\"patterns\":[{\"include\":\"source.js\"}]},{\"begin\":\"^(\\\\s*):ruby$\",\"end\":\"^(?!\\\\1\\\\s+|$\\\\n*)\",\"name\":\"source.ruby.embedded.filter.haml\",\"patterns\":[{\"include\":\"source.ruby\"}]},{\"captures\":{\"1\":{\"name\":\"punctuation.section.comment.haml\"}},\"match\":\"^(\\\\s*)(/\\\\[[^]].*?$\\\\n?)\",\"name\":\"comment.line.slash.haml\"},{\"begin\":\"^(\\\\s*)(-#|/|-\\\\s*/\\\\*+)\",\"beginCaptures\":{\"2\":{\"name\":\"punctuation.section.comment.haml\"}},\"end\":\"^(?!\\\\1\\\\s+|\\\\n)\",\"name\":\"comment.block.haml\",\"patterns\":[{\"include\":\"text.haml\"}]},{\"begin\":\"^\\\\s*(?:((%)([-:\\\\w]+))|(?=[#.]))\",\"captures\":{\"1\":{\"name\":\"meta.tag.haml\"},\"2\":{\"name\":\"punctuation.definition.tag.haml\"},\"3\":{\"name\":\"entity.name.tag.haml\"}},\"end\":\"$|(?![#(.\\\\[{]|&amp;|[-=~]|!=|&=|/)\",\"patterns\":[{\"begin\":\"==\",\"contentName\":\"string.quoted.double.ruby\",\"end\":\"$\\\\n?\",\"patterns\":[{\"include\":\"#interpolated_ruby\"}]},{\"captures\":{\"1\":{\"name\":\"entity.other.attribute-name.class\"}},\"match\":\"(\\\\.[-:\\\\w]+)\",\"name\":\"meta.selector.css\"},{\"captures\":{\"1\":{\"name\":\"entity.other.attribute-name.id\"}},\"match\":\"(#[-\\\\w]+)\",\"name\":\"meta.selector.css\"},{\"begin\":\"(?<!#)\\\\{(?=.*(,|(do)|[{|}]|(#.*)|\\\\R)\\\\s*)\",\"end\":\"\\\\s*}(?!\\\\s*,)(?!\\\\s*\\\\|)(?!#\\\\{.*})\",\"name\":\"meta.section.attributes.haml\",\"patterns\":[{\"include\":\"source.ruby\"},{\"include\":\"#continuation\"},{\"include\":\"#rubyline\"}]},{\"begin\":\"\\\\(\",\"end\":\"\\\\)\",\"name\":\"meta.section.attributes.plain.haml\",\"patterns\":[{\"match\":\"([-\\\\w]+)\",\"name\":\"constant.other.symbol.ruby\"},{\"match\":\"=\",\"name\":\"punctuation\"},{\"include\":\"#variables\"},{\"begin\":\"\\\"\",\"end\":\"\\\"\",\"name\":\"string.quoted.double.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\(x\\\\h{2}|[012][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.)\",\"name\":\"constant.character.escape.ruby\"},{\"include\":\"#interpolated_ruby\"}]},{\"include\":\"#interpolated_ruby\"}]},{\"begin\":\"\\\\[(?=.+([],\\\\[|]|(#.*))\\\\s*)\",\"end\":\"\\\\s*](?!.*(?!#\\\\[)])\",\"name\":\"meta.section.object.haml\",\"patterns\":[{\"include\":\"source.ruby\"},{\"include\":\"#continuation\"},{\"include\":\"#rubyline\"}]},{\"include\":\"#interpolated_ruby_line\"},{\"include\":\"#rubyline\"},{\"match\":\"/\",\"name\":\"punctuation.terminator.tag.haml\"}]},{\"begin\":\"^(\\\\s*):(ruby|opal)$\",\"end\":\"^(?!\\\\1\\\\s+|$\\\\n*)\",\"name\":\"source.ruby.embedded.filter.haml\",\"patterns\":[{\"include\":\"source.ruby\"}]},{\"begin\":\"^(\\\\s*):ruby$\",\"end\":\"^(?!\\\\1\\\\s+|$\\\\n*)\",\"name\":\"source.ruby.embedded.filter.haml\",\"patterns\":[{\"include\":\"source.ruby\"}]},{\"begin\":\"^(\\\\s*):(s(?:tyle|ass))$\",\"end\":\"^(?=\\\\1\\\\s+|$\\\\n*)\",\"name\":\"source.sass.embedded.filter.haml\",\"patterns\":[{\"include\":\"source.sass\"}]},{\"begin\":\"^(\\\\s*):coffee(script)?\",\"end\":\"^(?!\\\\1\\\\s+|$\\\\n*)\",\"name\":\"source.coffee.embedded.filter.haml\",\"patterns\":[{\"include\":\"source.coffee\"}]},{\"begin\":\"^(\\\\s*):plain$\",\"end\":\"^(?=\\\\1\\\\s+|$\\\\n*)\",\"name\":\"text.plain.embedded.filter.haml\",\"patterns\":[{\"include\":\"text.plain\"}]},{\"begin\":\"^(\\\\s*)(:ruby)\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.control.filter.haml\"}},\"end\":\"(?m:(?<=\\\\n)(?!\\\\1\\\\s+|$\\\\n*))\",\"name\":\"source.ruby.embedded.filter.haml\",\"patterns\":[{\"include\":\"source.ruby\"}]},{\"begin\":\"^(\\\\s*)(:sass)\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.control.filter.haml\"}},\"end\":\"^(?!\\\\1\\\\s+|$\\\\n*)\",\"name\":\"source.embedded.filter.sass\",\"patterns\":[{\"include\":\"source.sass\"}]},{\"begin\":\"^(\\\\s*):(s(?:tyles|ass))$\",\"end\":\"^(?=\\\\1\\\\s+|$\\\\n*)\",\"name\":\"source.sass.embedded.filter.haml\",\"patterns\":[{\"include\":\"source.sass\"}]},{\"begin\":\"^(\\\\s*):plain$\",\"end\":\"^(?=\\\\1\\\\s+|$\\\\n*)\",\"name\":\"text.plain.embedded.filter.haml\",\"patterns\":[{\"include\":\"text.plain\"}]},{\"captures\":{\"1\":{\"name\":\"meta.escape.haml\"}},\"match\":\"^\\\\s*(\\\\.)\"},{\"begin\":\"^\\\\s*(?=[-=~]|!=|&=)\",\"end\":\"$\",\"patterns\":[{\"include\":\"#interpolated_ruby_line\"},{\"include\":\"#rubyline\"}]},{\"begin\":\"^(\\\\s*)(:php)\",\"captures\":{\"2\":{\"name\":\"entity.name.tag.haml\"}},\"end\":\"^(?!\\\\1\\\\s+|$\\\\n*)\",\"name\":\"meta.embedded.php\",\"patterns\":[{\"include\":\"text.html.php#language\"}]},{\"begin\":\"^(\\\\s*)(:markdown)\",\"captures\":{\"2\":{\"name\":\"entity.name.tag.haml\"}},\"end\":\"^(?!\\\\1\\\\s+|$\\\\n*)\",\"name\":\"meta.embedded.markdown\",\"patterns\":[{\"include\":\"text.html.markdown\"}]},{\"begin\":\"^(\\\\s*)(:(css|styles?))$\",\"captures\":{\"2\":{\"name\":\"entity.name.tag.haml\"}},\"end\":\"^(?!\\\\1\\\\s+|$\\\\n*)\",\"name\":\"meta.embedded.css\",\"patterns\":[{\"include\":\"source.css\"}]},{\"begin\":\"^(\\\\s*)(:sass)$\",\"captures\":{\"2\":{\"name\":\"entity.name.tag.haml\"}},\"end\":\"^(?!\\\\1\\\\s+|$\\\\n*)\",\"name\":\"meta.embedded.sass\",\"patterns\":[{\"include\":\"source.sass\"}]},{\"begin\":\"^(\\\\s*)(:scss)$\",\"captures\":{\"2\":{\"name\":\"entity.name.tag.haml\"}},\"end\":\"^(?!\\\\1\\\\s+|$\\\\n*)\",\"name\":\"meta.embedded.scss\",\"patterns\":[{\"include\":\"source.scss\"}]}],\"repository\":{\"continuation\":{\"captures\":{\"1\":{\"name\":\"punctuation.separator.continuation.haml\"}},\"match\":\"(\\\\|)\\\\s*\\\\n\"},\"interpolated_ruby\":{\"patterns\":[{\"captures\":{\"0\":{\"name\":\"punctuation.section.embedded.ruby\"},\"1\":{\"name\":\"source.ruby.embedded.source.empty\"}},\"match\":\"#\\\\{(})\",\"name\":\"source.ruby.embedded.source\"},{\"begin\":\"#\\\\{\",\"captures\":{\"0\":{\"name\":\"punctuation.section.embedded.ruby\"}},\"end\":\"(})\",\"name\":\"source.ruby.embedded.source\",\"patterns\":[{\"include\":\"#nest_curly_and_self\"},{\"include\":\"source.ruby\"}]},{\"include\":\"#variables\"}]},\"interpolated_ruby_line\":{\"begin\":\"!?==\",\"contentName\":\"string.source.ruby.embedded.haml\",\"end\":\"$\",\"name\":\"meta.line.ruby.interpolated.haml\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"source.ruby#escaped_char\"}]},\"nest_curly_and_self\":{\"patterns\":[{\"begin\":\"\\\\{\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.ruby\"}},\"end\":\"}\",\"patterns\":[{\"include\":\"#nest_curly_and_self\"},{\"include\":\"source.ruby\"}]}]},\"rubyline\":{\"begin\":\"(&amp|!)?([-=~])\",\"contentName\":\"source.ruby.embedded.haml\",\"end\":\"((do|\\\\{)( \\\\|[*.]+\\\\|)?)$|$|^(?!.*\\\\|\\\\s*)$\\\\n?\",\"endCaptures\":{\"1\":{\"name\":\"source.ruby.embedded.html\"},\"2\":{\"name\":\"keyword.control.ruby.start-block\"}},\"name\":\"meta.line.ruby.haml\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.php\"}},\"match\":\"\\\\s+((elseif|foreach|switch|declare|default|use))(?=[(\\\\s])\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.import.include.php\"}},\"match\":\"\\\\s+((?:requir|includ)e_once)(?=[(\\\\s])\"},{\"match\":\"\\\\s+(catch|try|throw|exception|finally|die)(?=[(\\\\s]|\\\\n*)\",\"name\":\"keyword.control.exception.php\"},{\"captures\":{\"1\":{\"name\":\"storage.type.function.php\"}},\"match\":\"\\\\s+(function\\\\s*)((?=\\\\())\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.php\"}},\"match\":\"\\\\s+(use\\\\s*)((?=\\\\())\"},{\"match\":\"([,<|]|do|\\\\{)\\\\s*(#.*)?$\\\\n*\",\"name\":\"source.ruby\",\"patterns\":[{\"include\":\"#rubyline\"}]},{\"match\":\"#.*$\",\"name\":\"comment.line.number-sign.ruby\"},{\"include\":\"source.ruby\"},{\"include\":\"#continuation\"}]},\"variables\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.ruby\"}},\"match\":\"(#@)[A-Z_a-z]\\\\w*\",\"name\":\"variable.other.readwrite.instance.ruby\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.ruby\"}},\"match\":\"(#@@)[A-Z_a-z]\\\\w*\",\"name\":\"variable.other.readwrite.class.ruby\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.ruby\"}},\"match\":\"(#\\\\$)[A-Z_a-z]\\\\w*\",\"name\":\"variable.other.readwrite.global.ruby\"}]}},\"scopeName\":\"text.haml\",\"embeddedLangs\":[\"javascript\",\"css\"],\"embeddedLangsLazy\":[\"ruby\",\"sass\",\"coffee\",\"markdown\"]}"));
var haml_default = [
	...javascript_default,
	...css_default,
	lang$2
];
//#endregion
//#region node_modules/@shikijs/langs/dist/graphql.mjs
const lang$1 = Object.freeze(JSON.parse("{\"displayName\":\"GraphQL\",\"fileTypes\":[\"graphql\",\"graphqls\",\"gql\",\"graphcool\"],\"name\":\"graphql\",\"patterns\":[{\"include\":\"#graphql\"}],\"repository\":{\"graphql\":{\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-fragment-definition\"},{\"include\":\"#graphql-directive-definition\"},{\"include\":\"#graphql-type-interface\"},{\"include\":\"#graphql-enum\"},{\"include\":\"#graphql-scalar\"},{\"include\":\"#graphql-union\"},{\"include\":\"#graphql-schema\"},{\"include\":\"#graphql-operation-def\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-ampersand\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.logical.graphql\"}},\"match\":\"\\\\s*(&)\"},\"graphql-arguments\":{\"begin\":\"\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"meta.brace.round.directive.graphql\"}},\"end\":\"\\\\s*(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"meta.brace.round.directive.graphql\"}},\"name\":\"meta.arguments.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"begin\":\"\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.parameter.graphql\"},\"2\":{\"name\":\"punctuation.colon.graphql\"}},\"end\":\"(?=\\\\s*(?:([A-Z_a-z][0-9A-Z_a-z]*)\\\\s*(:)|\\\\)))|\\\\s*(,)\",\"endCaptures\":{\"3\":{\"name\":\"punctuation.comma.graphql\"}},\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-value\"},{\"include\":\"#graphql-skip-newlines\"}]},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-boolean-value\":{\"captures\":{\"1\":{\"name\":\"constant.language.boolean.graphql\"}},\"match\":\"\\\\s*\\\\b(true|false)\\\\b\"},\"graphql-colon\":{\"captures\":{\"1\":{\"name\":\"punctuation.colon.graphql\"}},\"match\":\"\\\\s*(:)\"},\"graphql-comma\":{\"captures\":{\"1\":{\"name\":\"punctuation.comma.graphql\"}},\"match\":\"\\\\s*(,)\"},\"graphql-comment\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.graphql\"}},\"match\":\"(\\\\s*)(#).*\",\"name\":\"comment.line.graphql.js\"},{\"begin\":\"(\\\"\\\"\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.graphql\"}},\"end\":\"(\\\"\\\"\\\")\",\"name\":\"comment.line.graphql.js\"},{\"begin\":\"(\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.graphql\"}},\"end\":\"(\\\")\",\"name\":\"comment.line.graphql.js\"}]},\"graphql-description-docstring\":{\"begin\":\"\\\"\\\"\\\"\",\"end\":\"\\\"\\\"\\\"\",\"name\":\"comment.block.graphql\"},\"graphql-description-singleline\":{\"match\":\"#(?=([^\\\"]*\\\"[^\\\"]*\\\")*[^\\\"]*$).*$\",\"name\":\"comment.line.number-sign.graphql\"},\"graphql-directive\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*((@)\\\\s*([A-Z_a-z][0-9A-Z_a-z]*))\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.directive.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-arguments\"},{\"include\":\"#literal-quasi-embedded\"},{\"include\":\"#graphql-skip-newlines\"}]},\"graphql-directive-definition\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*\\\\b(directive)\\\\b\\\\s*(@[A-Z_a-z][0-9A-Z_a-z]*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.directive.graphql\"},\"2\":{\"name\":\"entity.name.function.directive.graphql\"},\"3\":{\"name\":\"keyword.on.graphql\"},\"4\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-variable-definitions\"},{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*\\\\b(on)\\\\b\\\\s*([A-Z_a-z]*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.on.graphql\"},\"2\":{\"name\":\"support.type.location.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#graphql-comment\"},{\"include\":\"#literal-quasi-embedded\"},{\"captures\":{\"2\":{\"name\":\"support.type.location.graphql\"}},\"match\":\"\\\\s*(\\\\|)\\\\s*([A-Z_a-z]*)\"}]},{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#graphql-comment\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-enum\":{\"begin\":\"\\\\s*+\\\\b(enum)\\\\b\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.enum.graphql\"},\"2\":{\"name\":\"support.type.enum.graphql\"}},\"end\":\"(?<=})\",\"name\":\"meta.enum.graphql\",\"patterns\":[{\"begin\":\"\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"end\":\"\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"name\":\"meta.type.object.graphql\",\"patterns\":[{\"include\":\"#graphql-object-type\"},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-enum-value\"},{\"include\":\"#literal-quasi-embedded\"}]},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"}]},\"graphql-enum-value\":{\"match\":\"\\\\s*(?!=\\\\b(true|false|null)\\\\b)([A-Z_a-z][0-9A-Z_a-z]*)\",\"name\":\"constant.character.enum.graphql\"},\"graphql-field\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"string.unquoted.alias.graphql\"},\"2\":{\"name\":\"punctuation.colon.graphql\"}},\"match\":\"\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)\\\\s*(:)\"},{\"captures\":{\"1\":{\"name\":\"variable.graphql\"}},\"match\":\"\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)\"},{\"include\":\"#graphql-arguments\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-selection-set\"},{\"include\":\"#literal-quasi-embedded\"},{\"include\":\"#graphql-skip-newlines\"}]},\"graphql-float-value\":{\"captures\":{\"1\":{\"name\":\"constant.numeric.float.graphql\"}},\"match\":\"\\\\s*(-?(0|[1-9][0-9]*)(\\\\.[0-9]+)?(([Ee])([-+])?[0-9]+)?)\"},\"graphql-fragment-definition\":{\"begin\":\"\\\\s*\\\\b(fragment)\\\\b\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)?\\\\s*\\\\b(on)\\\\b\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)\",\"captures\":{\"1\":{\"name\":\"keyword.fragment.graphql\"},\"2\":{\"name\":\"entity.name.fragment.graphql\"},\"3\":{\"name\":\"keyword.on.graphql\"},\"4\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?<=})\",\"name\":\"meta.fragment.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-selection-set\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-fragment-spread\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*(\\\\.\\\\.\\\\.)\\\\s*(?!\\\\bon\\\\b)([A-Z_a-z][0-9A-Z_a-z]*)\",\"captures\":{\"1\":{\"name\":\"keyword.operator.spread.graphql\"},\"2\":{\"name\":\"variable.fragment.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-selection-set\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#literal-quasi-embedded\"},{\"include\":\"#graphql-skip-newlines\"}]},\"graphql-ignore-spaces\":{\"match\":\"\\\\s*\"},\"graphql-inline-fragment\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*(\\\\.\\\\.\\\\.)\\\\s*(?:\\\\b(on)\\\\b\\\\s*([A-Z_a-z][0-9A-Z_a-z]*))?\",\"captures\":{\"1\":{\"name\":\"keyword.operator.spread.graphql\"},\"2\":{\"name\":\"keyword.on.graphql\"},\"3\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-selection-set\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-input-types\":{\"patterns\":[{\"include\":\"#graphql-scalar-type\"},{\"captures\":{\"1\":{\"name\":\"support.type.graphql\"},\"2\":{\"name\":\"keyword.operator.nulltype.graphql\"}},\"match\":\"\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)(?:\\\\s*(!))?\"},{\"begin\":\"\\\\s*(\\\\[)\",\"captures\":{\"1\":{\"name\":\"meta.brace.square.graphql\"},\"2\":{\"name\":\"keyword.operator.nulltype.graphql\"}},\"end\":\"\\\\s*(])(?:\\\\s*(!))?\",\"name\":\"meta.type.list.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-input-types\"},{\"include\":\"#graphql-comma\"},{\"include\":\"#literal-quasi-embedded\"}]}]},\"graphql-list-value\":{\"patterns\":[{\"begin\":\"\\\\s*+(\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"meta.brace.square.graphql\"}},\"end\":\"\\\\s*(])\",\"endCaptures\":{\"1\":{\"name\":\"meta.brace.square.graphql\"}},\"name\":\"meta.listvalues.graphql\",\"patterns\":[{\"include\":\"#graphql-value\"}]}]},\"graphql-name\":{\"captures\":{\"1\":{\"name\":\"entity.name.function.graphql\"}},\"match\":\"\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)\"},\"graphql-null-value\":{\"captures\":{\"1\":{\"name\":\"constant.language.null.graphql\"}},\"match\":\"\\\\s*\\\\b(null)\\\\b\"},\"graphql-object-field\":{\"captures\":{\"1\":{\"name\":\"constant.object.key.graphql\"},\"2\":{\"name\":\"string.unquoted.graphql\"},\"3\":{\"name\":\"punctuation.graphql\"}},\"match\":\"\\\\s*(([A-Z_a-z][0-9A-Z_a-z]*))\\\\s*(:)\"},\"graphql-object-value\":{\"patterns\":[{\"begin\":\"\\\\s*+(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"meta.brace.curly.graphql\"}},\"end\":\"\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"meta.brace.curly.graphql\"}},\"name\":\"meta.objectvalues.graphql\",\"patterns\":[{\"include\":\"#graphql-object-field\"},{\"include\":\"#graphql-value\"}]}]},\"graphql-operation-def\":{\"patterns\":[{\"include\":\"#graphql-query-mutation\"},{\"include\":\"#graphql-name\"},{\"include\":\"#graphql-variable-definitions\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-selection-set\"}]},\"graphql-query-mutation\":{\"captures\":{\"1\":{\"name\":\"keyword.operation.graphql\"}},\"match\":\"\\\\s*\\\\b(query|mutation)\\\\b\"},\"graphql-scalar\":{\"captures\":{\"1\":{\"name\":\"keyword.scalar.graphql\"},\"2\":{\"name\":\"entity.scalar.graphql\"}},\"match\":\"\\\\s*\\\\b(scalar)\\\\b\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)\"},\"graphql-scalar-type\":{\"captures\":{\"1\":{\"name\":\"support.type.builtin.graphql\"},\"2\":{\"name\":\"keyword.operator.nulltype.graphql\"}},\"match\":\"\\\\s*\\\\b(Int|Float|String|Boolean|ID)\\\\b(?:\\\\s*(!))?\"},\"graphql-schema\":{\"begin\":\"\\\\s*\\\\b(schema)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.schema.graphql\"}},\"end\":\"(?<=})\",\"patterns\":[{\"begin\":\"\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"end\":\"\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"patterns\":[{\"begin\":\"\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)(?=\\\\s*\\\\(|:)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.arguments.graphql\"}},\"end\":\"(?=\\\\s*(([A-Z_a-z][0-9A-Z_a-z]*)\\\\s*([(:])|(})))|\\\\s*(,)\",\"endCaptures\":{\"5\":{\"name\":\"punctuation.comma.graphql\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"support.type.graphql\"}},\"match\":\"\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)\"},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-colon\"},{\"include\":\"#graphql-skip-newlines\"}]},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-skip-newlines\"}]},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-skip-newlines\"}]},\"graphql-selection-set\":{\"begin\":\"\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"end\":\"\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"name\":\"meta.selectionset.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-field\"},{\"include\":\"#graphql-fragment-spread\"},{\"include\":\"#graphql-inline-fragment\"},{\"include\":\"#graphql-comma\"},{\"include\":\"#native-interpolation\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-skip-newlines\":{\"match\":\"\\\\s*\\\\n\"},\"graphql-string-content\":{\"patterns\":[{\"match\":\"\\\\\\\\[\\\"'/\\\\\\\\bfnrt]\",\"name\":\"constant.character.escape.graphql\"},{\"match\":\"\\\\\\\\u(\\\\h{4})\",\"name\":\"constant.character.escape.graphql\"}]},\"graphql-string-value\":{\"begin\":\"\\\\s*+((\\\"))\",\"beginCaptures\":{\"1\":{\"name\":\"string.quoted.double.graphql\"},\"2\":{\"name\":\"punctuation.definition.string.begin.graphql\"}},\"contentName\":\"string.quoted.double.graphql\",\"end\":\"\\\\s*+(?:((\\\"))|(\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"string.quoted.double.graphql\"},\"2\":{\"name\":\"punctuation.definition.string.end.graphql\"},\"3\":{\"name\":\"invalid.illegal.newline.graphql\"}},\"patterns\":[{\"include\":\"#graphql-string-content\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-type-definition\":{\"begin\":\"\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)(?=\\\\s*\\\\(|:)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.graphql\"}},\"end\":\"(?=\\\\s*(([A-Z_a-z][0-9A-Z_a-z]*)\\\\s*([(:])|(})))|\\\\s*(,)\",\"endCaptures\":{\"5\":{\"name\":\"punctuation.comma.graphql\"}},\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-variable-definitions\"},{\"include\":\"#graphql-type-object\"},{\"include\":\"#graphql-colon\"},{\"include\":\"#graphql-input-types\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-type-interface\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*\\\\b(?:(extends?)?\\\\b\\\\s*\\\\b(type)|(interface)|(input))\\\\b\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)?\",\"captures\":{\"1\":{\"name\":\"keyword.type.graphql\"},\"2\":{\"name\":\"keyword.type.graphql\"},\"3\":{\"name\":\"keyword.interface.graphql\"},\"4\":{\"name\":\"keyword.input.graphql\"},\"5\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?=.)\",\"name\":\"meta.type.interface.graphql\",\"patterns\":[{\"begin\":\"\\\\s*\\\\b(implements)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.implements.graphql\"}},\"end\":\"\\\\s*(?=\\\\{)\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"support.type.graphql\"}},\"match\":\"\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)\"},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-ampersand\"},{\"include\":\"#graphql-comma\"}]},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-type-object\"},{\"include\":\"#literal-quasi-embedded\"},{\"include\":\"#graphql-ignore-spaces\"}]},\"graphql-type-object\":{\"begin\":\"\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"end\":\"\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"name\":\"meta.type.object.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-object-type\"},{\"include\":\"#graphql-type-definition\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-union\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*\\\\b(union)\\\\b\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)\",\"captures\":{\"1\":{\"name\":\"keyword.union.graphql\"},\"2\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*(=)\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)\",\"captures\":{\"1\":{\"name\":\"punctuation.assignment.graphql\"},\"2\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#literal-quasi-embedded\"},{\"captures\":{\"1\":{\"name\":\"punctuation.or.graphql\"},\"2\":{\"name\":\"support.type.graphql\"}},\"match\":\"\\\\s*(\\\\|)\\\\s*([A-Z_a-z][0-9A-Z_a-z]*)\"}]},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-union-mark\":{\"captures\":{\"1\":{\"name\":\"punctuation.union.graphql\"}},\"match\":\"\\\\s*(\\\\|)\"},\"graphql-value\":{\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-variable-name\"},{\"include\":\"#graphql-float-value\"},{\"include\":\"#graphql-string-value\"},{\"include\":\"#graphql-boolean-value\"},{\"include\":\"#graphql-null-value\"},{\"include\":\"#graphql-enum-value\"},{\"include\":\"#graphql-list-value\"},{\"include\":\"#graphql-object-value\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-variable-assignment\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s(=)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.assignment.graphql\"}},\"end\":\"(?=[\\\\n),])\",\"patterns\":[{\"include\":\"#graphql-value\"}]},\"graphql-variable-definition\":{\"begin\":\"\\\\s*(\\\\$?[A-Z_a-z][0-9A-Z_a-z]*)(?=\\\\s*\\\\(|:)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.parameter.graphql\"}},\"end\":\"(?=\\\\s*((\\\\$?[A-Z_a-z][0-9A-Z_a-z]*)\\\\s*([(:])|([)}])))|\\\\s*(,)\",\"endCaptures\":{\"5\":{\"name\":\"punctuation.comma.graphql\"}},\"name\":\"meta.variables.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-colon\"},{\"include\":\"#graphql-input-types\"},{\"include\":\"#graphql-variable-assignment\"},{\"include\":\"#literal-quasi-embedded\"},{\"include\":\"#graphql-skip-newlines\"}]},\"graphql-variable-definitions\":{\"begin\":\"\\\\s*(\\\\()\",\"captures\":{\"1\":{\"name\":\"meta.brace.round.graphql\"}},\"end\":\"\\\\s*(\\\\))\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-variable-definition\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-variable-name\":{\"captures\":{\"1\":{\"name\":\"variable.graphql\"}},\"match\":\"\\\\s*(\\\\$[A-Z_a-z][0-9A-Z_a-z]*)\"},\"native-interpolation\":{\"begin\":\"\\\\s*(\\\\$\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.substitution.begin\"}},\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.other.substitution.end\"}},\"name\":\"native.interpolation\",\"patterns\":[{\"include\":\"source.js\"},{\"include\":\"source.ts\"},{\"include\":\"source.js.jsx\"},{\"include\":\"source.tsx\"}]}},\"scopeName\":\"source.graphql\",\"embeddedLangs\":[\"javascript\",\"typescript\",\"jsx\",\"tsx\"],\"aliases\":[\"gql\"]}"));
var graphql_default = [
	...javascript_default,
	...typescript_default,
	...jsx_default,
	...tsx_default,
	lang$1
];
//#endregion
//#region node_modules/@shikijs/langs/dist/ruby.mjs
const lang = Object.freeze(JSON.parse("{\"displayName\":\"Ruby\",\"name\":\"ruby\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.class.ruby\"},\"2\":{\"name\":\"entity.name.type.class.ruby\"},\"5\":{\"name\":\"punctuation.separator.namespace.ruby\"},\"7\":{\"name\":\"punctuation.separator.inheritance.ruby\"},\"8\":{\"name\":\"entity.other.inherited-class.ruby\"},\"11\":{\"name\":\"punctuation.separator.namespace.ruby\"}},\"match\":\"\\\\b(class)\\\\s+(([0-9A-Z_a-z]+)((::)[0-9A-Z_a-z]+)*)\\\\s*((<)\\\\s*(([0-9A-Z_a-z]+)((::)[0-9A-Z_a-z]+)*))?\",\"name\":\"meta.class.ruby\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.module.ruby\"},\"2\":{\"name\":\"entity.name.type.module.ruby\"},\"5\":{\"name\":\"punctuation.separator.namespace.ruby\"}},\"match\":\"\\\\b(module)\\\\s+(([0-9A-Z_a-z]+)((::)[0-9A-Z_a-z]+)*)\",\"name\":\"meta.module.ruby\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.class.ruby\"},\"2\":{\"name\":\"punctuation.separator.inheritance.ruby\"}},\"match\":\"\\\\b(class)\\\\s*(<<)\\\\s*\",\"name\":\"meta.class.ruby\"},{\"match\":\"(?<!\\\\.)\\\\belse(\\\\s)+if\\\\b\",\"name\":\"invalid.deprecated.ruby\"},{\"captures\":{\"1\":{\"name\":\"variable.ruby\"},\"2\":{\"name\":\"keyword.operator.assignment.augmented.ruby\"}},\"match\":\"^\\\\s*([_a-z][0-9A-Z_a-z]*)\\\\s*((&&|\\\\|\\\\|)=)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.ruby\"},\"3\":{\"name\":\"variable.ruby\"},\"4\":{\"name\":\"keyword.operator.assignment.augmented.ruby\"}},\"match\":\"(?<!\\\\.)\\\\b(case|if|elsif|unless|until|while)\\\\b\\\\s*(\\\\()*?\\\\s*([_a-z][0-9A-Z_a-z]*)\\\\s*((&&|\\\\|\\\\|)=)\"},{\"captures\":{\"1\":{\"name\":\"variable.ruby\"},\"2\":{\"name\":\"keyword.operator.assignment.augmented.ruby\"}},\"match\":\"^\\\\s*([_a-z][0-9A-Z_a-z]*)\\\\s*(([-%*+/]|\\\\*\\\\*|[\\\\&^|]|<<|>>)=)\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.ruby\"},\"3\":{\"name\":\"variable.ruby\"},\"4\":{\"name\":\"keyword.operator.assignment.augmented.ruby\"}},\"match\":\"(?<!\\\\.)\\\\b(case|if|elsif|unless|until|while)\\\\b\\\\s*(\\\\()*?\\\\s*([_a-z][0-9A-Z_a-z]*)\\\\s*(([-%*+/]|\\\\*\\\\*|[\\\\&^|]|<<|>>)=)\"},{\"captures\":{\"1\":{\"name\":\"variable.ruby\"}},\"match\":\"^\\\\s*([_a-z][0-9A-Z_a-z]*)\\\\s*(?==[^=>])\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.ruby\"},\"3\":{\"name\":\"variable.ruby\"}},\"match\":\"(?<!\\\\.)\\\\b(case|if|elsif|unless|until|while)\\\\b\\\\s*(\\\\()*?\\\\s*([_a-z][0-9A-Z_a-z]*)\\\\s*=[^=>]\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.hashkey.ruby\"}},\"match\":\"(?>[A-Z_a-z]\\\\w*[!?]?)(:)(?!:)\",\"name\":\"constant.language.symbol.hashkey.ruby\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.ruby\"}},\"match\":\"(?<!:)(:)(?>[A-Z_a-z]\\\\w*[!?]?)(?=\\\\s*=>)\",\"name\":\"constant.language.symbol.hashkey.ruby\"},{\"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\"},{\"match\":\"(?<!\\\\.)\\\\bdo\\\\b\",\"name\":\"keyword.control.start-block.ruby\"},{\"match\":\"(?<=\\\\{)(\\\\s+)\",\"name\":\"meta.syntax.ruby.start-block\"},{\"match\":\"(?<!\\\\.)\\\\b(alias|alias_method|break|next|redo|retry|return|super|undef|yield)\\\\b(?![!?])|\\\\bdefined\\\\?|\\\\b(block_given|iterator)\\\\?\",\"name\":\"keyword.control.pseudo-method.ruby\"},{\"match\":\"\\\\bnil\\\\b(?![!?])\",\"name\":\"constant.language.nil.ruby\"},{\"match\":\"\\\\b(true|false)\\\\b(?![!?])\",\"name\":\"constant.language.boolean.ruby\"},{\"match\":\"\\\\b(__(FILE|LINE)__)\\\\b(?![!?])\",\"name\":\"variable.language.ruby\"},{\"match\":\"\\\\bself\\\\b(?![!?])\",\"name\":\"variable.language.self.ruby\"},{\"match\":\"\\\\b(initialize|new|loop|include|extend|prepend|raise|fail|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(?:|_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-Z_a-z]\\\\w*\",\"name\":\"variable.other.readwrite.instance.ruby\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.ruby\"}},\"match\":\"(@@)[A-Z_a-z]\\\\w*\",\"name\":\"variable.other.readwrite.class.ruby\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.ruby\"}},\"match\":\"(\\\\$)[A-Z_a-z]\\\\w*\",\"name\":\"variable.other.readwrite.global.ruby\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.ruby\"}},\"match\":\"(\\\\$)([!\\\\&'+@`]|\\\\d+|[\\\"$*,./:-?\\\\\\\\_~]|-[0FIadilpv])\",\"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|fork|format|gets|global_variables|gsub|lambda|load|local_variables|open|p|printf??|proc|putc|puts|rand|readlines??|select|set_trace_func|sleep|spawn|sprintf|srand|sub|syscall|system|test|trace_var|trap|untrace_var|warn)\\\\b(?![!?])|autoload\\\\?|exit!)\",\"name\":\"support.function.kernel.ruby\"},{\"match\":\"\\\\b[A-Z_]\\\\w*\\\\b\",\"name\":\"variable.other.constant.ruby\"},{\"begin\":\"(->)\\\\(\",\"beginCaptures\":{\"1\":{\"name\":\"support.function.kernel.ruby\"}},\"end\":\"\\\\)\",\"patterns\":[{\"begin\":\"(?=[\\\\&*A-Z_a-z])\",\"end\":\"(?=[),])\",\"patterns\":[{\"include\":\"#method_parameters\"}]},{\"include\":\"#method_parameters\"}]},{\"begin\":\"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\s+((?>[A-Z_a-z]\\\\w*(?>\\\\.|::))?(?>[A-Z_a-z]\\\\w*(?>[!?]|=(?!>))?|===?|!=|>[=>]?|<=>|<[<=]?|[%\\\\&/`|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?))\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.def.ruby\"},\"2\":{\"name\":\"entity.name.function.ruby\"},\"3\":{\"name\":\"punctuation.definition.parameters.ruby\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.parameters.ruby\"}},\"name\":\"meta.function.method.with-arguments.ruby\",\"patterns\":[{\"begin\":\"(?=[\\\\&*A-Z_a-z])\",\"end\":\"(?=[),])\",\"patterns\":[{\"include\":\"#method_parameters\"}]},{\"include\":\"#method_parameters\"}]},{\"begin\":\"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\s+((?>[A-Z_a-z]\\\\w*(?>\\\\.|::))?(?>[A-Z_a-z]\\\\w*(?>[!?]|=(?!>))?|===?|!=|>[=>]?|<=>|<[<=]?|[%\\\\&/`|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?))[\\\\t ](?=[\\\\t ]*[^#;\\\\s])\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.def.ruby\"},\"2\":{\"name\":\"entity.name.function.ruby\"}},\"end\":\"(?=;)|(?<=[]!\\\"')?`}\\\\w])(?=\\\\s*#|\\\\s*$)\",\"name\":\"meta.function.method.with-arguments.ruby\",\"patterns\":[{\"begin\":\"(?=[\\\\&*A-Z_a-z])\",\"end\":\"(?=[,;]|\\\\s*#|\\\\s*$)\",\"patterns\":[{\"include\":\"#method_parameters\"}]},{\"include\":\"#method_parameters\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.def.ruby\"},\"3\":{\"name\":\"entity.name.function.ruby\"}},\"match\":\"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\b(\\\\s+((?>[A-Z_a-z]\\\\w*(?>\\\\.|::))?(?>[A-Z_a-z]\\\\w*(?>[!?]|=(?!>))?|===?|!=|>[=>]?|<=>|<[<=]?|[%\\\\&/`|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?)))?\",\"name\":\"meta.function.method.without-arguments.ruby\"},{\"match\":\"\\\\b(\\\\d(?>_?\\\\d)*(\\\\.(?![^\\\\s\\\\d])(?>_?\\\\d)*)?([Ee][-+]?\\\\d(?>_?\\\\d)*)?|0(?:[Xx]\\\\h(?>_?\\\\h)*|[Oo]?[0-7](?>_?[0-7])*|[Bb][01](?>_?[01])*|[Dd]\\\\d(?>_?\\\\d)*))\\\\b\",\"name\":\"constant.numeric.ruby\"},{\"begin\":\":'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.symbol.begin.ruby\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.symbol.end.ruby\"}},\"name\":\"constant.language.symbol.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\['\\\\\\\\]\",\"name\":\"constant.character.escape.ruby\"}]},{\"begin\":\":\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.symbol.begin.ruby\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.symbol.end.ruby\"}},\"name\":\"constant.language.symbol.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"}]},{\"match\":\"(?<!\\\\()/=\",\"name\":\"keyword.operator.assignment.augmented.ruby\"},{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.ruby\"}},\"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\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.ruby\"}},\"name\":\"string.quoted.double.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"(?<!\\\\.)`\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.ruby\"}},\"end\":\"`\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.ruby\"}},\"name\":\"string.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"(?<![)\\\\w])((/))(?![*+?])(?!\\\\s*$)(?=(?:\\\\\\\\/|[^/])*+/[eimnosux]*\\\\s*(?:[]#),.:?}]|\\\\|\\\\||&&|<=>|=>|==|=~|!~|!=|;|$|if|else|elsif|then|do|end|unless|while|until|or|and))\",\"captures\":{\"1\":{\"name\":\"string.regexp.interpolated.ruby\"},\"2\":{\"name\":\"punctuation.section.regexp.ruby\"}},\"contentName\":\"string.regexp.interpolated.ruby\",\"end\":\"((/[eimnosux]*))\",\"patterns\":[{\"include\":\"#regex_sub\"}]},{\"begin\":\"%r\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.regexp.begin.ruby\"}},\"end\":\"}[eimnosux]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.regexp.end.ruby\"}},\"name\":\"string.regexp.interpolated.ruby\",\"patterns\":[{\"include\":\"#regex_sub\"},{\"include\":\"#nest_curly_r\"}]},{\"begin\":\"%r\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.regexp.begin.ruby\"}},\"end\":\"][eimnosux]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.regexp.end.ruby\"}},\"name\":\"string.regexp.interpolated.ruby\",\"patterns\":[{\"include\":\"#regex_sub\"},{\"include\":\"#nest_brackets_r\"}]},{\"begin\":\"%r\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.regexp.begin.ruby\"}},\"end\":\"\\\\)[eimnosux]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.regexp.end.ruby\"}},\"name\":\"string.regexp.interpolated.ruby\",\"patterns\":[{\"include\":\"#regex_sub\"},{\"include\":\"#nest_parens_r\"}]},{\"begin\":\"%r<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.regexp.begin.ruby\"}},\"end\":\">[eimnosux]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.regexp.end.ruby\"}},\"name\":\"string.regexp.interpolated.ruby\",\"patterns\":[{\"include\":\"#regex_sub\"},{\"include\":\"#nest_ltgt_r\"}]},{\"begin\":\"%r(\\\\W)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.regexp.begin.ruby\"}},\"end\":\"\\\\1[eimnosux]*\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.regexp.end.ruby\"}},\"name\":\"string.regexp.interpolated.ruby\",\"patterns\":[{\"include\":\"#regex_sub\"}]},{\"begin\":\"%I\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"constant.language.symbol.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"},{\"include\":\"#nest_brackets_i\"}]},{\"begin\":\"%I\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"constant.language.symbol.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"},{\"include\":\"#nest_parens_i\"}]},{\"begin\":\"%I<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"constant.language.symbol.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"},{\"include\":\"#nest_ltgt_i\"}]},{\"begin\":\"%I\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"constant.language.symbol.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"},{\"include\":\"#nest_curly_i\"}]},{\"begin\":\"%I(\\\\W)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\"\\\\1\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"constant.language.symbol.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"%i\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"constant.language.symbol.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\[]\\\\\\\\]\",\"name\":\"constant.character.escape.ruby\"},{\"include\":\"#nest_brackets\"}]},{\"begin\":\"%i\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"constant.language.symbol.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\[)\\\\\\\\]\",\"name\":\"constant.character.escape.ruby\"},{\"include\":\"#nest_parens\"}]},{\"begin\":\"%i<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"constant.language.symbol.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\[>\\\\\\\\]\",\"name\":\"constant.character.escape.ruby\"},{\"include\":\"#nest_ltgt\"}]},{\"begin\":\"%i\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"constant.language.symbol.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\[\\\\\\\\}]\",\"name\":\"constant.character.escape.ruby\"},{\"include\":\"#nest_curly\"}]},{\"begin\":\"%i(\\\\W)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\"\\\\1\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"constant.language.symbol.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\.\"}]},{\"begin\":\"%W\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"string.quoted.other.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"},{\"include\":\"#nest_brackets_i\"}]},{\"begin\":\"%W\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"string.quoted.other.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"},{\"include\":\"#nest_parens_i\"}]},{\"begin\":\"%W<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"string.quoted.other.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"},{\"include\":\"#nest_ltgt_i\"}]},{\"begin\":\"%W\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"string.quoted.other.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"},{\"include\":\"#nest_curly_i\"}]},{\"begin\":\"%W(\\\\W)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\"\\\\1\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"string.quoted.other.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"%w\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"string.quoted.other.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\[]\\\\\\\\]\",\"name\":\"constant.character.escape.ruby\"},{\"include\":\"#nest_brackets\"}]},{\"begin\":\"%w\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"string.quoted.other.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\[)\\\\\\\\]\",\"name\":\"constant.character.escape.ruby\"},{\"include\":\"#nest_parens\"}]},{\"begin\":\"%w<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"string.quoted.other.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\[>\\\\\\\\]\",\"name\":\"constant.character.escape.ruby\"},{\"include\":\"#nest_ltgt\"}]},{\"begin\":\"%w\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"string.quoted.other.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\[\\\\\\\\}]\",\"name\":\"constant.character.escape.ruby\"},{\"include\":\"#nest_curly\"}]},{\"begin\":\"%w(\\\\W)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\"\\\\1\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"name\":\"string.quoted.other.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\.\"}]},{\"begin\":\"%[Qx]?\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.ruby\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.ruby\"}},\"name\":\"string.quoted.other.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"},{\"include\":\"#nest_parens_i\"}]},{\"begin\":\"%[Qx]?\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.ruby\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.ruby\"}},\"name\":\"string.quoted.other.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"},{\"include\":\"#nest_brackets_i\"}]},{\"begin\":\"%[Qx]?\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.ruby\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.ruby\"}},\"name\":\"string.quoted.other.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"},{\"include\":\"#nest_curly_i\"}]},{\"begin\":\"%[Qx]?<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.ruby\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.ruby\"}},\"name\":\"string.quoted.other.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"},{\"include\":\"#nest_ltgt_i\"}]},{\"begin\":\"%[Qx](\\\\W)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.ruby\"}},\"end\":\"\\\\1\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.ruby\"}},\"name\":\"string.quoted.other.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"%([^=\\\\w\\\\s])\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.ruby\"}},\"end\":\"\\\\1\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.ruby\"}},\"name\":\"string.quoted.other.interpolated.ruby\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"%q\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.ruby\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.ruby\"}},\"name\":\"string.quoted.other.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\[)\\\\\\\\]\",\"name\":\"constant.character.escape.ruby\"},{\"include\":\"#nest_parens\"}]},{\"begin\":\"%q<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.ruby\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.ruby\"}},\"name\":\"string.quoted.other.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\[>\\\\\\\\]\",\"name\":\"constant.character.escape.ruby\"},{\"include\":\"#nest_ltgt\"}]},{\"begin\":\"%q\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.ruby\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.ruby\"}},\"name\":\"string.quoted.other.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\[]\\\\\\\\]\",\"name\":\"constant.character.escape.ruby\"},{\"include\":\"#nest_brackets\"}]},{\"begin\":\"%q\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.ruby\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.ruby\"}},\"name\":\"string.quoted.other.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\[\\\\\\\\}]\",\"name\":\"constant.character.escape.ruby\"},{\"include\":\"#nest_curly\"}]},{\"begin\":\"%q(\\\\W)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.ruby\"}},\"end\":\"\\\\1\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.ruby\"}},\"name\":\"string.quoted.other.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\.\"}]},{\"begin\":\"%s\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.symbol.begin.ruby\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.symbol.end.ruby\"}},\"name\":\"constant.language.symbol.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\[)\\\\\\\\]\",\"name\":\"constant.character.escape.ruby\"},{\"include\":\"#nest_parens\"}]},{\"begin\":\"%s<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.symbol.begin.ruby\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.symbol.end.ruby\"}},\"name\":\"constant.language.symbol.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\[>\\\\\\\\]\",\"name\":\"constant.character.escape.ruby\"},{\"include\":\"#nest_ltgt\"}]},{\"begin\":\"%s\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.symbol.begin.ruby\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.symbol.end.ruby\"}},\"name\":\"constant.language.symbol.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\[]\\\\\\\\]\",\"name\":\"constant.character.escape.ruby\"},{\"include\":\"#nest_brackets\"}]},{\"begin\":\"%s\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.symbol.begin.ruby\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.symbol.end.ruby\"}},\"name\":\"constant.language.symbol.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\[\\\\\\\\}]\",\"name\":\"constant.character.escape.ruby\"},{\"include\":\"#nest_curly\"}]},{\"begin\":\"%s(\\\\W)\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.symbol.begin.ruby\"}},\"end\":\"\\\\1\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.symbol.end.ruby\"}},\"name\":\"constant.language.symbol.ruby\",\"patterns\":[{\"match\":\"\\\\\\\\.\"}]},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.ruby\"}},\"match\":\"(?<!:)(:)(?>[$A-Z_a-z]\\\\w*(?>[!?]|=(?![=>]))?|===?|<=>|>[=>]?|<[<=]?|[%\\\\&/`|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?|@@?[A-Z_a-z]\\\\w*)\",\"name\":\"constant.language.symbol.ruby\"},{\"begin\":\"^=begin\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.ruby\"}},\"end\":\"^=end\",\"name\":\"comment.block.documentation.ruby\"},{\"include\":\"#yard\"},{\"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\"}]},{\"match\":\"(?<!\\\\w)\\\\?(\\\\\\\\(x\\\\h{1,2}(?!\\\\h)\\\\b|0[0-7]{0,2}(?![0-7])\\\\b|[^0CMx])|(\\\\\\\\[CM]-)+\\\\w|[^\\\\\\\\\\\\s])\",\"name\":\"constant.numeric.ruby\"},{\"begin\":\"^__END__\\\\n\",\"captures\":{\"0\":{\"name\":\"string.unquoted.program-block.ruby\"}},\"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\"}]}]},{\"begin\":\"(?=(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)HTML)\\\\b\\\\1))\",\"end\":\"^\\\\s*((?:[_\\\\w]+_|)HTML)$\\\\n?\",\"endCaptures\":{\"0\":{\"name\":\"string.definition.end.ruby\"}},\"name\":\"meta.embedded.block.html\",\"patterns\":[{\"begin\":\"(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)HTML)\\\\b\\\\1)\",\"beginCaptures\":{\"0\":{\"name\":\"string.definition.begin.ruby\"}},\"contentName\":\"text.html\",\"patterns\":[{\"include\":\"#heredoc\"},{\"include\":\"#interpolated_ruby\"},{\"include\":\"text.html.basic\"},{\"include\":\"#escaped_char\"}],\"while\":\"^(?!\\\\s*((?:[_\\\\w]+_|)HTML)\\\\s*$)\"}]},{\"begin\":\"(?=(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)HAML)\\\\b\\\\1))\",\"end\":\"^\\\\s*((?:[_\\\\w]+_|)HAML)$\\\\n?\",\"endCaptures\":{\"0\":{\"name\":\"string.definition.end.ruby\"}},\"name\":\"meta.embedded.block.haml\",\"patterns\":[{\"begin\":\"(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)HAML)\\\\b\\\\1)\",\"beginCaptures\":{\"0\":{\"name\":\"string.definition.begin.ruby\"}},\"contentName\":\"text.haml\",\"patterns\":[{\"include\":\"#heredoc\"},{\"include\":\"#interpolated_ruby\"},{\"include\":\"text.haml\"},{\"include\":\"#escaped_char\"}],\"while\":\"^(?!\\\\s*((?:[_\\\\w]+_|)HAML)\\\\s*$)\"}]},{\"begin\":\"(?=(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)XML)\\\\b\\\\1))\",\"end\":\"^\\\\s*((?:[_\\\\w]+_|)XML)$\\\\n?\",\"endCaptures\":{\"0\":{\"name\":\"string.definition.end.ruby\"}},\"name\":\"meta.embedded.block.xml\",\"patterns\":[{\"begin\":\"(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)XML)\\\\b\\\\1)\",\"beginCaptures\":{\"0\":{\"name\":\"string.definition.begin.ruby\"}},\"contentName\":\"text.xml\",\"patterns\":[{\"include\":\"#heredoc\"},{\"include\":\"#interpolated_ruby\"},{\"include\":\"text.xml\"},{\"include\":\"#escaped_char\"}],\"while\":\"^(?!\\\\s*((?:[_\\\\w]+_|)XML)\\\\s*$)\"}]},{\"begin\":\"(?=(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)SQL)\\\\b\\\\1))\",\"end\":\"^\\\\s*((?:[_\\\\w]+_|)SQL)$\\\\n?\",\"endCaptures\":{\"0\":{\"name\":\"string.definition.end.ruby\"}},\"name\":\"meta.embedded.block.sql\",\"patterns\":[{\"begin\":\"(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)SQL)\\\\b\\\\1)\",\"beginCaptures\":{\"0\":{\"name\":\"string.definition.begin.ruby\"}},\"contentName\":\"source.sql\",\"patterns\":[{\"include\":\"#heredoc\"},{\"include\":\"#interpolated_ruby\"},{\"include\":\"source.sql\"},{\"include\":\"#escaped_char\"}],\"while\":\"^(?!\\\\s*((?:[_\\\\w]+_|)SQL)\\\\s*$)\"}]},{\"begin\":\"(?=(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)G(?:RAPHQL|QL))\\\\b\\\\1))\",\"end\":\"^\\\\s*((?:[_\\\\w]+_|)G(?:RAPHQL|QL))$\\\\n?\",\"endCaptures\":{\"0\":{\"name\":\"string.definition.end.ruby\"}},\"name\":\"meta.embedded.block.graphql\",\"patterns\":[{\"begin\":\"(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)G(?:RAPHQL|QL))\\\\b\\\\1)\",\"beginCaptures\":{\"0\":{\"name\":\"string.definition.begin.ruby\"}},\"contentName\":\"source.graphql\",\"patterns\":[{\"include\":\"#heredoc\"},{\"include\":\"#interpolated_ruby\"},{\"include\":\"source.graphql\"},{\"include\":\"#escaped_char\"}],\"while\":\"^(?!\\\\s*((?:[_\\\\w]+_|)G(?:RAPHQL|QL))\\\\s*$)\"}]},{\"begin\":\"(?=(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)CSS)\\\\b\\\\1))\",\"end\":\"^\\\\s*((?:[_\\\\w]+_|)CSS)$\\\\n?\",\"endCaptures\":{\"0\":{\"name\":\"string.definition.end.ruby\"}},\"name\":\"meta.embedded.block.css\",\"patterns\":[{\"begin\":\"(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)CSS)\\\\b\\\\1)\",\"beginCaptures\":{\"0\":{\"name\":\"string.definition.begin.ruby\"}},\"contentName\":\"source.css\",\"patterns\":[{\"include\":\"#heredoc\"},{\"include\":\"#interpolated_ruby\"},{\"include\":\"source.css\"},{\"include\":\"#escaped_char\"}],\"while\":\"^(?!\\\\s*((?:[_\\\\w]+_|)CSS)\\\\s*$)\"}]},{\"begin\":\"(?=(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)CPP)\\\\b\\\\1))\",\"end\":\"^\\\\s*((?:[_\\\\w]+_|)CPP)$\\\\n?\",\"endCaptures\":{\"0\":{\"name\":\"string.definition.end.ruby\"}},\"name\":\"meta.embedded.block.cpp\",\"patterns\":[{\"begin\":\"(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)CPP)\\\\b\\\\1)\",\"beginCaptures\":{\"0\":{\"name\":\"string.definition.begin.ruby\"}},\"contentName\":\"source.cpp\",\"patterns\":[{\"include\":\"#heredoc\"},{\"include\":\"#interpolated_ruby\"},{\"include\":\"source.cpp\"},{\"include\":\"#escaped_char\"}],\"while\":\"^(?!\\\\s*((?:[_\\\\w]+_|)CPP)\\\\s*$)\"}]},{\"begin\":\"(?=(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)C)\\\\b\\\\1))\",\"end\":\"^\\\\s*((?:[_\\\\w]+_|)C)$\\\\n?\",\"endCaptures\":{\"0\":{\"name\":\"string.definition.end.ruby\"}},\"name\":\"meta.embedded.block.c\",\"patterns\":[{\"begin\":\"(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)C)\\\\b\\\\1)\",\"beginCaptures\":{\"0\":{\"name\":\"string.definition.begin.ruby\"}},\"contentName\":\"source.c\",\"patterns\":[{\"include\":\"#heredoc\"},{\"include\":\"#interpolated_ruby\"},{\"include\":\"source.c\"},{\"include\":\"#escaped_char\"}],\"while\":\"^(?!\\\\s*((?:[_\\\\w]+_|)C)\\\\s*$)\"}]},{\"begin\":\"(?=(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)J(?:S|AVASCRIPT))\\\\b\\\\1))\",\"end\":\"^\\\\s*((?:[_\\\\w]+_|)J(?:S|AVASCRIPT))$\\\\n?\",\"endCaptures\":{\"0\":{\"name\":\"string.definition.end.ruby\"}},\"name\":\"meta.embedded.block.js\",\"patterns\":[{\"begin\":\"(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)J(?:S|AVASCRIPT))\\\\b\\\\1)\",\"beginCaptures\":{\"0\":{\"name\":\"string.definition.begin.ruby\"}},\"contentName\":\"source.js\",\"patterns\":[{\"include\":\"#heredoc\"},{\"include\":\"#interpolated_ruby\"},{\"include\":\"source.js\"},{\"include\":\"#escaped_char\"}],\"while\":\"^(?!\\\\s*((?:[_\\\\w]+_|)J(?:S|AVASCRIPT))\\\\s*$)\"}]},{\"begin\":\"(?=(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)JQUERY)\\\\b\\\\1))\",\"end\":\"^\\\\s*((?:[_\\\\w]+_|)JQUERY)$\\\\n?\",\"endCaptures\":{\"0\":{\"name\":\"string.definition.end.ruby\"}},\"name\":\"meta.embedded.block.js.jquery\",\"patterns\":[{\"begin\":\"(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)JQUERY)\\\\b\\\\1)\",\"beginCaptures\":{\"0\":{\"name\":\"string.definition.begin.ruby\"}},\"contentName\":\"source.js.jquery\",\"patterns\":[{\"include\":\"#heredoc\"},{\"include\":\"#interpolated_ruby\"},{\"include\":\"source.js.jquery\"},{\"include\":\"#escaped_char\"}],\"while\":\"^(?!\\\\s*((?:[_\\\\w]+_|)JQUERY)\\\\s*$)\"}]},{\"begin\":\"(?=(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)SH(?:|ELL))\\\\b\\\\1))\",\"end\":\"^\\\\s*((?:[_\\\\w]+_|)SH(?:|ELL))$\\\\n?\",\"endCaptures\":{\"0\":{\"name\":\"string.definition.end.ruby\"}},\"name\":\"meta.embedded.block.shell\",\"patterns\":[{\"begin\":\"(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)SH(?:|ELL))\\\\b\\\\1)\",\"beginCaptures\":{\"0\":{\"name\":\"string.definition.begin.ruby\"}},\"contentName\":\"source.shell\",\"patterns\":[{\"include\":\"#heredoc\"},{\"include\":\"#interpolated_ruby\"},{\"include\":\"source.shell\"},{\"include\":\"#escaped_char\"}],\"while\":\"^(?!\\\\s*((?:[_\\\\w]+_|)SH(?:|ELL))\\\\s*$)\"}]},{\"begin\":\"(?=(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)LUA)\\\\b\\\\1))\",\"end\":\"^\\\\s*((?:[_\\\\w]+_|)LUA)$\\\\n?\",\"endCaptures\":{\"0\":{\"name\":\"string.definition.end.ruby\"}},\"name\":\"meta.embedded.block.lua\",\"patterns\":[{\"begin\":\"(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)LUA)\\\\b\\\\1)\",\"beginCaptures\":{\"0\":{\"name\":\"string.definition.begin.ruby\"}},\"contentName\":\"source.lua\",\"patterns\":[{\"include\":\"#heredoc\"},{\"include\":\"#interpolated_ruby\"},{\"include\":\"source.lua\"},{\"include\":\"#escaped_char\"}],\"while\":\"^(?!\\\\s*((?:[_\\\\w]+_|)LUA)\\\\s*$)\"}]},{\"begin\":\"(?=(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)RUBY)\\\\b\\\\1))\",\"end\":\"^\\\\s*((?:[_\\\\w]+_|)RUBY)$\\\\n?\",\"endCaptures\":{\"0\":{\"name\":\"string.definition.end.ruby\"}},\"name\":\"meta.embedded.block.ruby\",\"patterns\":[{\"begin\":\"(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)RUBY)\\\\b\\\\1)\",\"beginCaptures\":{\"0\":{\"name\":\"string.definition.begin.ruby\"}},\"contentName\":\"source.ruby\",\"patterns\":[{\"include\":\"#heredoc\"},{\"include\":\"#interpolated_ruby\"},{\"include\":\"source.ruby\"},{\"include\":\"#escaped_char\"}],\"while\":\"^(?!\\\\s*((?:[_\\\\w]+_|)RUBY)\\\\s*$)\"}]},{\"begin\":\"(?=(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)YA?ML)\\\\b\\\\1))\",\"end\":\"^\\\\s*((?:[_\\\\w]+_|)YA?ML)$\\\\n?\",\"endCaptures\":{\"0\":{\"name\":\"string.definition.end.ruby\"}},\"name\":\"meta.embedded.block.yaml\",\"patterns\":[{\"begin\":\"(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)YA?ML)\\\\b\\\\1)\",\"beginCaptures\":{\"0\":{\"name\":\"string.definition.begin.ruby\"}},\"contentName\":\"source.yaml\",\"patterns\":[{\"include\":\"#heredoc\"},{\"include\":\"#interpolated_ruby\"},{\"include\":\"source.yaml\"},{\"include\":\"#escaped_char\"}],\"while\":\"^(?!\\\\s*((?:[_\\\\w]+_|)YA?ML)\\\\s*$)\"}]},{\"begin\":\"(?=(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)SLIM)\\\\b\\\\1))\",\"end\":\"^\\\\s*((?:[_\\\\w]+_|)SLIM)$\\\\n?\",\"endCaptures\":{\"0\":{\"name\":\"string.definition.end.ruby\"}},\"name\":\"meta.embedded.block.slim\",\"patterns\":[{\"begin\":\"(?><<[-~]?([\\\"'`]?)((?:[_\\\\w]+_|)SLIM)\\\\b\\\\1)\",\"beginCaptures\":{\"0\":{\"name\":\"string.definition.begin.ruby\"}},\"contentName\":\"text.slim\",\"patterns\":[{\"include\":\"#heredoc\"},{\"include\":\"#interpolated_ruby\"},{\"include\":\"text.slim\"},{\"include\":\"#escaped_char\"}],\"while\":\"^(?!\\\\s*((?:[_\\\\w]+_|)SLIM)\\\\s*$)\"}]},{\"begin\":\"(?>=\\\\s*<<([\\\"'`]?)(\\\\w+)\\\\1)\",\"beginCaptures\":{\"0\":{\"name\":\"string.definition.begin.ruby\"}},\"contentName\":\"string.unquoted.heredoc.ruby\",\"end\":\"^\\\\2$\",\"endCaptures\":{\"0\":{\"name\":\"string.definition.end.ruby\"}},\"patterns\":[{\"include\":\"#heredoc\"},{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"(?>((<<[-~]?([\\\"'`]?)(\\\\w+)\\\\3,\\\\s?)*<<[-~]?([\\\"'`]?)(\\\\w+)\\\\5))(.*)\",\"beginCaptures\":{\"1\":{\"name\":\"string.definition.begin.ruby\"},\"7\":{\"patterns\":[{\"include\":\"source.ruby\"}]}},\"contentName\":\"string.unquoted.heredoc.ruby\",\"end\":\"^\\\\s*\\\\6$\",\"endCaptures\":{\"0\":{\"name\":\"string.definition.end.ruby\"}},\"patterns\":[{\"include\":\"#heredoc\"},{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"}]},{\"begin\":\"(?<=\\\\{|\\\\{\\\\s+|[^$0-:@-Z_a-z]do|^do|[^$0-:@-Z_a-z]do\\\\s+|^do\\\\s+)(\\\\|)\",\"captures\":{\"1\":{\"name\":\"punctuation.separator.variable.ruby\"}},\"end\":\"(?<!\\\\|)(\\\\|)(?!\\\\|)\",\"name\":\"meta.block.parameters.ruby\",\"patterns\":[{\"begin\":\"(?![(,|\\\\s])\",\"end\":\"(?=,|\\\\|\\\\s*)\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"storage.type.variable.ruby\"},\"2\":{\"name\":\"variable.other.block.ruby\"}},\"match\":\"\\\\G((?:&|\\\\*\\\\*?)?)([A-Z_a-z][_\\\\w]*)\"}]},{\"match\":\",\",\"name\":\"punctuation.separator.variable.ruby\"}]},{\"match\":\"=>\",\"name\":\"punctuation.separator.key-value\"},{\"match\":\"->\",\"name\":\"support.function.kernel.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\"},{\"match\":\"(?<=^|[\\\\t !])!|&&|\\\\|\\\\||\\\\^\",\"name\":\"keyword.operator.logical.ruby\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.logical.ruby\"}},\"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\"}},\"match\":\"(::)\\\\s*(?=[A-Z])\"},{\"captures\":{\"1\":{\"name\":\"punctuation.separator.method.ruby\"}},\"match\":\"(\\\\.|::)\\\\s*(?![A-Z])\"},{\"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\"},{\"begin\":\"(?<=[^.]\\\\.|::)(?=[A-Za-z][!0-9?A-Z_a-z]*[^!0-9?A-Z_a-z])\",\"end\":\"(?<=[!0-9?A-Z_a-z])(?=[^!0-9?A-Z_a-z])\",\"name\":\"meta.function-call.ruby\",\"patterns\":[{\"match\":\"([A-Za-z][!0-9?A-Z_a-z]*)(?=[^!0-9?A-Z_a-z])\",\"name\":\"entity.name.function.ruby\"}]},{\"begin\":\"([A-Za-z]\\\\w*[!?]?)(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.ruby\"},\"2\":{\"name\":\"punctuation.section.function.ruby\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.function.ruby\"}},\"name\":\"meta.function-call.ruby\",\"patterns\":[{\"include\":\"$self\"}]}],\"repository\":{\"escaped_char\":{\"match\":\"\\\\\\\\(?:[0-7]{1,3}|x[A-Fa-f\\\\d]{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\"}},\"name\":\"meta.embedded.line.ruby\",\"patterns\":[{\"include\":\"#nest_curly_and_self\"},{\"include\":\"$self\"}]},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.ruby\"}},\"match\":\"(#@)[A-Z_a-z]\\\\w*\",\"name\":\"variable.other.readwrite.instance.ruby\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.ruby\"}},\"match\":\"(#@@)[A-Z_a-z]\\\\w*\",\"name\":\"variable.other.readwrite.class.ruby\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.ruby\"}},\"match\":\"(#\\\\$)[A-Z_a-z]\\\\w*\",\"name\":\"variable.other.readwrite.global.ruby\"}]},\"method_parameters\":{\"patterns\":[{\"include\":\"#parens\"},{\"include\":\"#braces\"},{\"include\":\"#brackets\"},{\"include\":\"#params\"},{\"include\":\"$self\"}],\"repository\":{\"braces\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.scope.begin.ruby\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.scope.end.ruby\"}},\"patterns\":[{\"include\":\"#parens\"},{\"include\":\"#braces\"},{\"include\":\"#brackets\"},{\"include\":\"$self\"}]},\"brackets\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.array.begin.ruby\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.array.end.ruby\"}},\"patterns\":[{\"include\":\"#parens\"},{\"include\":\"#braces\"},{\"include\":\"#brackets\"},{\"include\":\"$self\"}]},\"params\":{\"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-Z_a-z]\\\\w*[!?]?(:))|([A-Z_a-z]\\\\w*))\"},\"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\":\"#brackets\"},{\"include\":\"$self\"}]}}},\"nest_brackets\":{\"begin\":\"\\\\[\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.ruby\"}},\"end\":\"]\",\"patterns\":[{\"include\":\"#nest_brackets\"}]},\"nest_brackets_i\":{\"begin\":\"\\\\[\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.ruby\"}},\"end\":\"]\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"},{\"include\":\"#nest_brackets_i\"}]},\"nest_brackets_r\":{\"begin\":\"\\\\[\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.ruby\"}},\"end\":\"]\",\"patterns\":[{\"include\":\"#regex_sub\"},{\"include\":\"#nest_brackets_r\"}]},\"nest_curly\":{\"begin\":\"\\\\{\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.ruby\"}},\"end\":\"}\",\"patterns\":[{\"include\":\"#nest_curly\"}]},\"nest_curly_and_self\":{\"patterns\":[{\"begin\":\"\\\\{\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.ruby\"}},\"end\":\"}\",\"patterns\":[{\"include\":\"#nest_curly_and_self\"}]},{\"include\":\"$self\"}]},\"nest_curly_i\":{\"begin\":\"\\\\{\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.ruby\"}},\"end\":\"}\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"},{\"include\":\"#nest_curly_i\"}]},\"nest_curly_r\":{\"begin\":\"\\\\{\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.ruby\"}},\"end\":\"}\",\"patterns\":[{\"include\":\"#regex_sub\"},{\"include\":\"#nest_curly_r\"}]},\"nest_ltgt\":{\"begin\":\"<\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.ruby\"}},\"end\":\">\",\"patterns\":[{\"include\":\"#nest_ltgt\"}]},\"nest_ltgt_i\":{\"begin\":\"<\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.ruby\"}},\"end\":\">\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"},{\"include\":\"#nest_ltgt_i\"}]},\"nest_ltgt_r\":{\"begin\":\"<\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.ruby\"}},\"end\":\">\",\"patterns\":[{\"include\":\"#regex_sub\"},{\"include\":\"#nest_ltgt_r\"}]},\"nest_parens\":{\"begin\":\"\\\\(\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.ruby\"}},\"end\":\"\\\\)\",\"patterns\":[{\"include\":\"#nest_parens\"}]},\"nest_parens_i\":{\"begin\":\"\\\\(\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.ruby\"}},\"end\":\"\\\\)\",\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"},{\"include\":\"#nest_parens_i\"}]},\"nest_parens_r\":{\"begin\":\"\\\\(\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.ruby\"}},\"end\":\"\\\\)\",\"patterns\":[{\"include\":\"#regex_sub\"},{\"include\":\"#nest_parens_r\"}]},\"regex_sub\":{\"patterns\":[{\"include\":\"#interpolated_ruby\"},{\"include\":\"#escaped_char\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.arbitrary-repetition.ruby\"},\"3\":{\"name\":\"punctuation.definition.arbitrary-repetition.ruby\"}},\"match\":\"(\\\\{)\\\\d+(,\\\\d+)?(})\",\"name\":\"string.regexp.arbitrary-repetition.ruby\"},{\"begin\":\"\\\\[(?:\\\\^?])?\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.character-class.ruby\"}},\"end\":\"]\",\"name\":\"string.regexp.character-class.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\":\"string.regexp.group.ruby\",\"patterns\":[{\"include\":\"#regex_sub\"}]},{\"begin\":\"(?<=^|\\\\s)(#)\\\\s(?=[-\\\\t !,.0-9?A-Za-z[^\\\\x00-\\\\x7F]]*$)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.ruby\"}},\"end\":\"$\\\\n?\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.ruby\"}},\"name\":\"comment.line.number-sign.ruby\"}]},\"yard\":{\"patterns\":[{\"include\":\"#yard_comment\"},{\"include\":\"#yard_param_types\"},{\"include\":\"#yard_option\"},{\"include\":\"#yard_tag\"},{\"include\":\"#yard_types\"},{\"include\":\"#yard_directive\"},{\"include\":\"#yard_see\"},{\"include\":\"#yard_macro_attribute\"}]},\"yard_comment\":{\"begin\":\"^(\\\\s*)(#)(\\\\s*)(@)(abstract|api|author|deprecated|example|macro|note|overload|since|todo|version)(?=\\\\s|$)\",\"beginCaptures\":{\"2\":{\"name\":\"punctuation.definition.comment.ruby\"},\"4\":{\"name\":\"comment.line.keyword.punctuation.yard.ruby\"},\"5\":{\"name\":\"comment.line.keyword.yard.ruby\"}},\"contentName\":\"comment.line.string.yard.ruby\",\"end\":\"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)\",\"name\":\"comment.line.number-sign.ruby\",\"patterns\":[{\"include\":\"#yard\"},{\"include\":\"#yard_continuation\"}]},\"yard_continuation\":{\"match\":\"^\\\\s*#\",\"name\":\"punctuation.definition.comment.ruby\"},\"yard_directive\":{\"begin\":\"^(\\\\s*)(#)(\\\\s*)(@!)(endgroup|group|method|parse|scope|visibility)(\\\\s+((\\\\[).+(])))?(?=\\\\s)\",\"beginCaptures\":{\"2\":{\"name\":\"punctuation.definition.comment.ruby\"},\"4\":{\"name\":\"comment.line.keyword.punctuation.yard.ruby\"},\"5\":{\"name\":\"comment.line.keyword.yard.ruby\"},\"7\":{\"name\":\"comment.line.type.yard.ruby\"},\"8\":{\"name\":\"comment.line.punctuation.yard.ruby\"},\"9\":{\"name\":\"comment.line.punctuation.yard.ruby\"}},\"contentName\":\"comment.line.string.yard.ruby\",\"end\":\"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)\",\"name\":\"comment.line.number-sign.ruby\",\"patterns\":[{\"include\":\"#yard\"},{\"include\":\"#yard_continuation\"}]},\"yard_macro_attribute\":{\"begin\":\"^(\\\\s*)(#)(\\\\s*)(@!)(attribute|macro)(\\\\s+((\\\\[).+(])))?(?=\\\\s)(\\\\s+([_a-z]\\\\w*:?))?\",\"beginCaptures\":{\"2\":{\"name\":\"punctuation.definition.comment.ruby\"},\"4\":{\"name\":\"comment.line.keyword.punctuation.yard.ruby\"},\"5\":{\"name\":\"comment.line.keyword.yard.ruby\"},\"7\":{\"name\":\"comment.line.type.yard.ruby\"},\"8\":{\"name\":\"comment.line.punctuation.yard.ruby\"},\"9\":{\"name\":\"comment.line.punctuation.yard.ruby\"},\"11\":{\"name\":\"comment.line.parameter.yard.ruby\"}},\"contentName\":\"comment.line.string.yard.ruby\",\"end\":\"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)\",\"name\":\"comment.line.number-sign.ruby\",\"patterns\":[{\"include\":\"#yard\"},{\"include\":\"#yard_continuation\"}]},\"yard_option\":{\"begin\":\"^(\\\\s*)(#)(\\\\s*)(@)(option)(?=\\\\s)(?>\\\\s+([_a-z]\\\\w*:?))?(?>\\\\s+((\\\\[).+(])))?(?>\\\\s+((\\\\S*)))?(?>\\\\s+((\\\\().+(\\\\))))?\",\"beginCaptures\":{\"2\":{\"name\":\"punctuation.definition.comment.ruby\"},\"4\":{\"name\":\"comment.line.keyword.punctuation.yard.ruby\"},\"5\":{\"name\":\"comment.line.keyword.yard.ruby\"},\"6\":{\"name\":\"comment.line.parameter.yard.ruby\"},\"7\":{\"name\":\"comment.line.type.yard.ruby\"},\"8\":{\"name\":\"comment.line.punctuation.yard.ruby\"},\"9\":{\"name\":\"comment.line.punctuation.yard.ruby\"},\"10\":{\"name\":\"comment.line.keyword.yard.ruby\"},\"11\":{\"name\":\"comment.line.hashkey.yard.ruby\"},\"12\":{\"name\":\"comment.line.defaultvalue.yard.ruby\"},\"13\":{\"name\":\"comment.line.punctuation.yard.ruby\"},\"14\":{\"name\":\"comment.line.punctuation.yard.ruby\"}},\"contentName\":\"comment.line.string.yard.ruby\",\"end\":\"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)\",\"name\":\"comment.line.number-sign.ruby\",\"patterns\":[{\"include\":\"#yard\"},{\"include\":\"#yard_continuation\"}]},\"yard_param_types\":{\"begin\":\"^(\\\\s*)(#)(\\\\s*)(@)(attr|attr_reader|attr_writer|yieldparam|param)(?=\\\\s)(?>\\\\s+(?>([_a-z]\\\\w*:?)|((\\\\[).+(]))))?(?>\\\\s+(?>((\\\\[).+(]))|([_a-z]\\\\w*:?)))?\",\"beginCaptures\":{\"2\":{\"name\":\"punctuation.definition.comment.ruby\"},\"4\":{\"name\":\"comment.line.keyword.punctuation.yard.ruby\"},\"5\":{\"name\":\"comment.line.keyword.yard.ruby\"},\"6\":{\"name\":\"comment.line.parameter.yard.ruby\"},\"7\":{\"name\":\"comment.line.type.yard.ruby\"},\"8\":{\"name\":\"comment.line.punctuation.yard.ruby\"},\"9\":{\"name\":\"comment.line.punctuation.yard.ruby\"},\"10\":{\"name\":\"comment.line.type.yard.ruby\"},\"11\":{\"name\":\"comment.line.punctuation.yard.ruby\"},\"12\":{\"name\":\"comment.line.punctuation.yard.ruby\"},\"13\":{\"name\":\"comment.line.parameter.yard.ruby\"}},\"contentName\":\"comment.line.string.yard.ruby\",\"end\":\"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)\",\"name\":\"comment.line.number-sign.ruby\",\"patterns\":[{\"include\":\"#yard\"},{\"include\":\"#yard_continuation\"}]},\"yard_see\":{\"begin\":\"^(\\\\s*)(#)(\\\\s*)(@)(see)(?=\\\\s)(\\\\s+(.+?))?(?=\\\\s|$)\",\"beginCaptures\":{\"2\":{\"name\":\"punctuation.definition.comment.ruby\"},\"4\":{\"name\":\"comment.line.keyword.punctuation.yard.ruby\"},\"5\":{\"name\":\"comment.line.keyword.yard.ruby\"},\"7\":{\"name\":\"comment.line.parameter.yard.ruby\"}},\"contentName\":\"comment.line.string.yard.ruby\",\"end\":\"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)\",\"name\":\"comment.line.number-sign.ruby\",\"patterns\":[{\"include\":\"#yard\"},{\"include\":\"#yard_continuation\"}]},\"yard_tag\":{\"captures\":{\"2\":{\"name\":\"punctuation.definition.comment.ruby\"},\"4\":{\"name\":\"comment.line.keyword.punctuation.yard.ruby\"},\"5\":{\"name\":\"comment.line.keyword.yard.ruby\"}},\"match\":\"^(\\\\s*)(#)(\\\\s*)(@)(private)$\",\"name\":\"comment.line.number-sign.ruby\"},\"yard_types\":{\"begin\":\"^(\\\\s*)(#)(\\\\s*)(@)(raise|return|yield(?:return)?)(?=\\\\s)(\\\\s+((\\\\[).+(])))?\",\"beginCaptures\":{\"2\":{\"name\":\"punctuation.definition.comment.ruby\"},\"4\":{\"name\":\"comment.line.keyword.punctuation.yard.ruby\"},\"5\":{\"name\":\"comment.line.keyword.yard.ruby\"},\"7\":{\"name\":\"comment.line.type.yard.ruby\"},\"8\":{\"name\":\"comment.line.punctuation.yard.ruby\"},\"9\":{\"name\":\"comment.line.punctuation.yard.ruby\"}},\"contentName\":\"comment.line.string.yard.ruby\",\"end\":\"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)\",\"name\":\"comment.line.number-sign.ruby\",\"patterns\":[{\"include\":\"#yard\"},{\"include\":\"#yard_continuation\"}]}},\"scopeName\":\"source.ruby\",\"embeddedLangs\":[\"html\",\"haml\",\"xml\",\"sql\",\"graphql\",\"css\",\"cpp\",\"c\",\"javascript\",\"shellscript\",\"lua\",\"yaml\"],\"aliases\":[\"rb\"]}"));
var ruby_default = [
	...html_default,
	...haml_default,
	...xml_default,
	...sql_default,
	...graphql_default,
	...css_default,
	...cpp_default,
	...c_default,
	...javascript_default,
	...shellscript_default,
	...lua_default,
	...yaml_default,
	lang
];
//#endregion
export { ruby_default as default };