| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482 |
- {
- "aliases": [
- "cr"
- ],
- "lexemes": "[a-zA-Z_]\\w*[!?=]?",
- "keywords": {
- "keyword": "abstract alias annotation as as? asm begin break case class def do else elsif end ensure enum extend for fun if include instance_sizeof is_a? lib macro module next nil? of out pointerof private protected rescue responds_to? return require select self sizeof struct super then type typeof union uninitialized unless until verbatim when while with yield __DIR__ __END_LINE__ __FILE__ __LINE__",
- "literal": "false nil true"
- },
- "contains": [
- {
- "className": "template-variable",
- "variants": [
- {
- "begin": "\\{\\{",
- "end": "\\}\\}"
- },
- {
- "begin": "\\{%",
- "end": "%\\}"
- }
- ],
- "keywords": {
- "$ref": "#keywords"
- },
- "contains": [
- {
- "className": "string",
- "contains": [
- {
- "begin": "\\\\[\\s\\S]",
- "relevance": 0
- },
- {
- "className": "subst",
- "begin": "#{",
- "end": "}",
- "keywords": {
- "$ref": "#keywords"
- },
- "contains": {
- "$ref": "#contains"
- }
- }
- ],
- "variants": [
- {
- "begin": "'",
- "end": "'"
- },
- {
- "begin": "\"",
- "end": "\""
- },
- {
- "begin": "`",
- "end": "`"
- },
- {
- "begin": "%[Qwi]?\\(",
- "end": "\\)",
- "contains": [
- {
- "begin": "\\(",
- "end": "\\)",
- "contains": {
- "$ref": "#contains.0.contains.0.variants.3.contains"
- }
- }
- ]
- },
- {
- "begin": "%[Qwi]?\\[",
- "end": "\\]",
- "contains": [
- {
- "begin": "\\[",
- "end": "\\]",
- "contains": {
- "$ref": "#contains.0.contains.0.variants.4.contains"
- }
- }
- ]
- },
- {
- "begin": "%[Qwi]?{",
- "end": "}",
- "contains": [
- {
- "begin": "{",
- "end": "}",
- "contains": {
- "$ref": "#contains.0.contains.0.variants.5.contains"
- }
- }
- ]
- },
- {
- "begin": "%[Qwi]?<",
- "end": ">",
- "contains": [
- {
- "begin": "<",
- "end": ">",
- "contains": {
- "$ref": "#contains.0.contains.0.variants.6.contains"
- }
- }
- ]
- },
- {
- "begin": "%[Qwi]?\\|",
- "end": "\\|"
- },
- {
- "begin": "<<-\\w+$",
- "end": "^\\s*\\w+$"
- }
- ],
- "relevance": 0
- },
- {
- "className": "string",
- "variants": [
- {
- "begin": "%q\\(",
- "end": "\\)",
- "contains": [
- {
- "begin": "\\(",
- "end": "\\)",
- "contains": {
- "$ref": "#contains.0.contains.1.variants.0.contains"
- }
- }
- ]
- },
- {
- "begin": "%q\\[",
- "end": "\\]",
- "contains": [
- {
- "begin": "\\[",
- "end": "\\]",
- "contains": {
- "$ref": "#contains.0.contains.1.variants.1.contains"
- }
- }
- ]
- },
- {
- "begin": "%q{",
- "end": "}",
- "contains": [
- {
- "begin": "{",
- "end": "}",
- "contains": {
- "$ref": "#contains.0.contains.1.variants.2.contains"
- }
- }
- ]
- },
- {
- "begin": "%q<",
- "end": ">",
- "contains": [
- {
- "begin": "<",
- "end": ">",
- "contains": {
- "$ref": "#contains.0.contains.1.variants.3.contains"
- }
- }
- ]
- },
- {
- "begin": "%q\\|",
- "end": "\\|"
- },
- {
- "begin": "<<-'\\w+'$",
- "end": "^\\s*\\w+$"
- }
- ],
- "relevance": 0
- },
- {
- "className": "regexp",
- "contains": [
- {
- "$ref": "#contains.0.contains.0.contains.0"
- },
- {
- "$ref": "#contains.0.contains.0.contains.1"
- }
- ],
- "variants": [
- {
- "begin": "%r\\(",
- "end": "\\)",
- "contains": [
- {
- "begin": "\\(",
- "end": "\\)",
- "contains": {
- "$ref": "#contains.0.contains.2.variants.0.contains"
- }
- }
- ]
- },
- {
- "begin": "%r\\[",
- "end": "\\]",
- "contains": [
- {
- "begin": "\\[",
- "end": "\\]",
- "contains": {
- "$ref": "#contains.0.contains.2.variants.1.contains"
- }
- }
- ]
- },
- {
- "begin": "%r{",
- "end": "}",
- "contains": [
- {
- "begin": "{",
- "end": "}",
- "contains": {
- "$ref": "#contains.0.contains.2.variants.2.contains"
- }
- }
- ]
- },
- {
- "begin": "%r<",
- "end": ">",
- "contains": [
- {
- "begin": "<",
- "end": ">",
- "contains": {
- "$ref": "#contains.0.contains.2.variants.3.contains"
- }
- }
- ]
- },
- {
- "begin": "%r\\|",
- "end": "\\|"
- }
- ],
- "relevance": 0
- },
- {
- "begin": "(?!%})(!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|\/=|\/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~|\\n|\\b(case|if|select|unless|until|when|while)\\b)\\s*",
- "keywords": "case if select unless until when while",
- "contains": [
- {
- "className": "regexp",
- "contains": [
- {
- "$ref": "#contains.0.contains.0.contains.0"
- },
- {
- "$ref": "#contains.0.contains.0.contains.1"
- }
- ],
- "variants": [
- {
- "begin": "\/\/[a-z]*",
- "relevance": 0
- },
- {
- "begin": "\/(?!\\\/)",
- "end": "\/[a-z]*"
- }
- ]
- }
- ],
- "relevance": 0
- },
- {
- "className": "meta",
- "begin": "@\\[",
- "end": "\\]",
- "contains": [
- {
- "className": "meta-string",
- "begin": "\"",
- "end": "\"",
- "illegal": "\\n",
- "contains": [
- {
- "$ref": "#contains.0.contains.0.contains.0"
- }
- ]
- }
- ]
- },
- {
- "className": "comment",
- "begin": "#",
- "end": "$",
- "contains": [
- {
- "begin": "\\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\\b"
- },
- {
- "className": "doctag",
- "begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
- "relevance": 0
- }
- ]
- },
- {
- "className": "class",
- "beginKeywords": "class module struct",
- "end": "$|;",
- "illegal": "=",
- "contains": [
- {
- "$ref": "#contains.0.contains.5"
- },
- {
- "className": "title",
- "begin": "[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?",
- "relevance": 0
- },
- {
- "begin": "<"
- }
- ]
- },
- {
- "className": "class",
- "beginKeywords": "lib enum union",
- "end": "$|;",
- "illegal": "=",
- "contains": [
- {
- "$ref": "#contains.0.contains.5"
- },
- {
- "className": "title",
- "begin": "[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?",
- "relevance": 0
- }
- ],
- "relevance": 10
- },
- {
- "beginKeywords": "annotation",
- "end": "$|;",
- "illegal": "=",
- "contains": [
- {
- "$ref": "#contains.0.contains.5"
- },
- {
- "className": "title",
- "begin": "[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?",
- "relevance": 0
- }
- ],
- "relevance": 10
- },
- {
- "className": "function",
- "beginKeywords": "def",
- "end": "\\B\\b",
- "contains": [
- {
- "className": "title",
- "begin": "[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|[=!]~|===?|<=>|[<>]=?|\\*\\*|[-\/+%^&*~|]|\/\/|\/\/=|&[-+*]=?|&\\*\\*|\\[\\][=?]?",
- "relevance": 0,
- "endsParent": true
- }
- ]
- },
- {
- "className": "function",
- "beginKeywords": "fun macro",
- "end": "\\B\\b",
- "contains": [
- {
- "className": "title",
- "begin": "[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|[=!]~|===?|<=>|[<>]=?|\\*\\*|[-\/+%^&*~|]|\/\/|\/\/=|&[-+*]=?|&\\*\\*|\\[\\][=?]?",
- "relevance": 0,
- "endsParent": true
- }
- ],
- "relevance": 5
- },
- {
- "className": "symbol",
- "begin": "[a-zA-Z_]\\w*(\\!|\\?)?:",
- "relevance": 0
- },
- {
- "className": "symbol",
- "begin": ":",
- "contains": [
- {
- "$ref": "#contains.0.contains.0"
- },
- {
- "begin": "[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|[=!]~|===?|<=>|[<>]=?|\\*\\*|[-\/+%^&*~|]|\/\/|\/\/=|&[-+*]=?|&\\*\\*|\\[\\][=?]?"
- }
- ],
- "relevance": 0
- },
- {
- "className": "number",
- "variants": [
- {
- "begin": "\\b0b([01_]+)(_*[ui](8|16|32|64|128))?"
- },
- {
- "begin": "\\b0o([0-7_]+)(_*[ui](8|16|32|64|128))?"
- },
- {
- "begin": "\\b0x([A-Fa-f0-9_]+)(_*[ui](8|16|32|64|128))?"
- },
- {
- "begin": "\\b([1-9][0-9_]*[0-9]|[0-9])(\\.[0-9][0-9_]*)?([eE]_*[-+]?[0-9_]*)?(_*f(32|64))?(?!_)"
- },
- {
- "begin": "\\b([1-9][0-9_]*|0)(_*[ui](8|16|32|64|128))?"
- }
- ],
- "relevance": 0
- }
- ]
- },
- {
- "$ref": "#contains.0.contains.0"
- },
- {
- "$ref": "#contains.0.contains.1"
- },
- {
- "$ref": "#contains.0.contains.2"
- },
- {
- "$ref": "#contains.0.contains.3"
- },
- {
- "$ref": "#contains.0.contains.4"
- },
- {
- "$ref": "#contains.0.contains.5"
- },
- {
- "$ref": "#contains.0.contains.6"
- },
- {
- "$ref": "#contains.0.contains.7"
- },
- {
- "$ref": "#contains.0.contains.8"
- },
- {
- "$ref": "#contains.0.contains.9"
- },
- {
- "$ref": "#contains.0.contains.10"
- },
- {
- "$ref": "#contains.0.contains.11"
- },
- {
- "$ref": "#contains.0.contains.12"
- },
- {
- "$ref": "#contains.0.contains.13"
- }
- ]
- }
|