123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163 |
- {
- "keywords": {
- "literal": "true false null",
- "keyword": "type yield lazy override def with val var sealed abstract private trait object if forSome for while throw finally protected extends import final return else break new catch super class case package default try this match continue throws implicit"
- },
- "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": "string",
- "variants": [
- {
- "begin": "\"",
- "end": "\"",
- "illegal": "\\n",
- "contains": [
- {
- "begin": "\\\\[\\s\\S]",
- "relevance": 0
- }
- ]
- },
- {
- "begin": "\"\"\"",
- "end": "\"\"\"",
- "relevance": 10
- },
- {
- "begin": "[a-z]+\"",
- "end": "\"",
- "illegal": "\\n",
- "contains": [
- {
- "$ref": "#contains.2.variants.0.contains.0"
- },
- {
- "className": "subst",
- "variants": [
- {
- "begin": "\\$[A-Za-z0-9_]+"
- },
- {
- "begin": "\\${",
- "end": "}"
- }
- ]
- }
- ]
- },
- {
- "className": "string",
- "begin": "[a-z]+\"\"\"",
- "end": "\"\"\"",
- "contains": [
- {
- "$ref": "#contains.2.variants.2.contains.1"
- }
- ],
- "relevance": 10
- }
- ]
- },
- {
- "className": "symbol",
- "begin": "'\\w[\\w\\d_]*(?!')"
- },
- {
- "className": "type",
- "begin": "\\b[A-Z][A-Za-z0-9_]*",
- "relevance": 0
- },
- {
- "className": "function",
- "beginKeywords": "def",
- "end": "[:={\\[(\\n;]",
- "excludeEnd": true,
- "contains": [
- {
- "className": "title",
- "begin": "[^0-9\\n\\t \"'(),.`{}\\[\\]:;][^\\n\\t \"'(),.`{}\\[\\]:;]+|[^0-9\\n\\t \"'(),.`{}\\[\\]:;=]",
- "relevance": 0
- }
- ]
- },
- {
- "className": "class",
- "beginKeywords": "class object trait type",
- "end": "[:={\\[\\n;]",
- "excludeEnd": true,
- "contains": [
- {
- "beginKeywords": "extends with",
- "relevance": 10
- },
- {
- "begin": "\\[",
- "end": "\\]",
- "excludeBegin": true,
- "excludeEnd": true,
- "relevance": 0,
- "contains": [
- {
- "$ref": "#contains.4"
- }
- ]
- },
- {
- "className": "params",
- "begin": "\\(",
- "end": "\\)",
- "excludeBegin": true,
- "excludeEnd": true,
- "relevance": 0,
- "contains": [
- {
- "$ref": "#contains.4"
- }
- ]
- },
- {
- "$ref": "#contains.5.contains.0"
- }
- ]
- },
- {
- "className": "number",
- "begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
- "relevance": 0
- },
- {
- "className": "meta",
- "begin": "@[A-Za-z]+"
- }
- ]
- }
|