You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
164 lines
5.1 KiB
JSON
164 lines
5.1 KiB
JSON
3 years ago
|
{
|
||
|
"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]+"
|
||
|
}
|
||
|
]
|
||
|
}
|