| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314 |
- {
- "case_insensitive": true,
- "illegal": "[=>'\/<($\"]",
- "contains": [
- {
- "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": "comment",
- "begin": "\/\\*",
- "end": "\\*\/",
- "contains": [
- {
- "$ref": "#contains.0.contains.0"
- },
- {
- "className": "doctag",
- "begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
- "relevance": 0
- }
- ]
- },
- {
- "className": "keyword",
- "begin": "@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",
- "starts": {
- "end": "[;{}]",
- "returnEnd": true,
- "contains": [
- {
- "$ref": "#contains.0"
- },
- {
- "$ref": "#contains.1"
- },
- {
- "className": "string",
- "begin": "~?'.*?'"
- },
- {
- "className": "string",
- "begin": "~?\".*?\""
- },
- {
- "className": "number",
- "begin": "\\b\\d+(\\.\\d+)?(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",
- "relevance": 0
- },
- {
- "begin": "(url|data-uri)\\(",
- "starts": {
- "className": "string",
- "end": "[\\)\\n]",
- "excludeEnd": true
- }
- },
- {
- "className": "number",
- "begin": "#[0-9A-Fa-f]+\\b"
- },
- {
- "begin": "\\(",
- "end": "\\)",
- "contains": {
- "$ref": "#contains.2.starts.contains"
- },
- "relevance": 0
- },
- {
- "className": "variable",
- "begin": "@@?[\\w\\-]+",
- "relevance": 10
- },
- {
- "className": "variable",
- "begin": "@{[\\w\\-]+}"
- },
- {
- "className": "built_in",
- "begin": "~?`[^`]*?`"
- },
- {
- "className": "attribute",
- "begin": "[\\w\\-]+\\s*:",
- "end": ":",
- "returnBegin": true,
- "excludeEnd": true
- },
- {
- "className": "meta",
- "begin": "!important"
- }
- ],
- "relevance": 0
- }
- },
- {
- "className": "variable",
- "variants": [
- {
- "begin": "@[\\w\\-]+\\s*:",
- "relevance": 15
- },
- {
- "begin": "@[\\w\\-]+"
- }
- ],
- "starts": {
- "end": "[;}]",
- "returnEnd": true,
- "contains": [
- {
- "$ref": "#contains.0"
- },
- {
- "$ref": "#contains.1"
- },
- {
- "$ref": "#contains.2.starts.contains.2"
- },
- {
- "$ref": "#contains.2.starts.contains.3"
- },
- {
- "$ref": "#contains.2.starts.contains.4"
- },
- {
- "$ref": "#contains.2.starts.contains.5"
- },
- {
- "$ref": "#contains.2.starts.contains.6"
- },
- {
- "$ref": "#contains.2.starts.contains.7"
- },
- {
- "$ref": "#contains.2.starts.contains.8"
- },
- {
- "$ref": "#contains.2.starts.contains.9"
- },
- {
- "$ref": "#contains.2.starts.contains.10"
- },
- {
- "$ref": "#contains.2.starts.contains.11"
- },
- {
- "$ref": "#contains.2.starts.contains.12"
- },
- {
- "begin": "{",
- "end": "}",
- "contains": {
- "$ref": "#contains"
- }
- }
- ]
- }
- },
- {
- "begin": "([\\w\\-]+|@{[\\w\\-]+})\\s*:",
- "returnBegin": true,
- "end": "[;}]",
- "relevance": 0,
- "contains": [
- {
- "className": "attribute",
- "begin": "([\\w\\-]+|@{[\\w\\-]+})",
- "end": ":",
- "excludeEnd": true,
- "starts": {
- "endsWithParent": true,
- "illegal": "[<=$]",
- "relevance": 0,
- "contains": {
- "$ref": "#contains.2.starts.contains"
- }
- }
- }
- ]
- },
- {
- "variants": [
- {
- "begin": "[\\.#:&\\[>]",
- "end": "[;{}]"
- },
- {
- "begin": "([\\w\\-]+|@{[\\w\\-]+})",
- "end": "{"
- }
- ],
- "returnBegin": true,
- "returnEnd": true,
- "illegal": "[<='$\"]",
- "relevance": 0,
- "contains": [
- {
- "$ref": "#contains.0"
- },
- {
- "$ref": "#contains.1"
- },
- {
- "beginKeywords": "when",
- "endsWithParent": true,
- "contains": [
- {
- "beginKeywords": "and not"
- },
- {
- "$ref": "#contains.0"
- },
- {
- "$ref": "#contains.1"
- },
- {
- "$ref": "#contains.2.starts.contains.2"
- },
- {
- "$ref": "#contains.2.starts.contains.3"
- },
- {
- "$ref": "#contains.2.starts.contains.4"
- },
- {
- "$ref": "#contains.2.starts.contains.5"
- },
- {
- "$ref": "#contains.2.starts.contains.6"
- },
- {
- "$ref": "#contains.2.starts.contains.7"
- },
- {
- "$ref": "#contains.2.starts.contains.8"
- },
- {
- "$ref": "#contains.2.starts.contains.9"
- },
- {
- "$ref": "#contains.2.starts.contains.10"
- },
- {
- "$ref": "#contains.2.starts.contains.11"
- },
- {
- "$ref": "#contains.2.starts.contains.12"
- }
- ]
- },
- {
- "className": "keyword",
- "begin": "all\\b"
- },
- {
- "className": "variable",
- "begin": "@{[\\w\\-]+}"
- },
- {
- "className": "selector-tag",
- "begin": "([\\w\\-]+|@{[\\w\\-]+})%?",
- "relevance": 0
- },
- {
- "className": "selector-id",
- "begin": "#([\\w\\-]+|@{[\\w\\-]+})"
- },
- {
- "className": "selector-class",
- "begin": "\\.([\\w\\-]+|@{[\\w\\-]+})",
- "relevance": 0
- },
- {
- "className": "selector-tag",
- "begin": "&",
- "relevance": 0
- },
- {
- "className": "selector-attr",
- "begin": "\\[",
- "end": "\\]"
- },
- {
- "className": "selector-pseudo",
- "begin": ":(:)?[a-zA-Z0-9\\_\\-\\+\\(\\)\"'.]+"
- },
- {
- "begin": "\\(",
- "end": "\\)",
- "contains": {
- "$ref": "#contains.3.starts.contains"
- }
- },
- {
- "begin": "!important"
- }
- ]
- }
- ]
- }
|