ponepaste/vendor/scrivo/highlight.php/Highlight/languages/coffeescript.json

268 lines
10 KiB
JSON
Raw Normal View History

{
"aliases": [
"coffee",
"cson",
"iced"
],
"keywords": {
"keyword": "in if for while finally new do return else break catch instanceof throw try this switch continue typeof delete debugger super yield import export from as default await then unless until loop of by when and or is isnt not",
"literal": "true false null undefined yes no on off",
"built_in": "npm require console print module global window document"
},
"illegal": "\\\/\\*",
"contains": [
{
"className": "number",
"begin": "\\b(0b[01]+)",
"relevance": 0
},
{
"className": "number",
"begin": "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",
"relevance": 0,
"starts": {
"end": "(\\s*\/)?",
"relevance": 0
}
},
{
"className": "string",
"variants": [
{
"begin": "'''",
"end": "'''",
"contains": [
{
"begin": "\\\\[\\s\\S]",
"relevance": 0
}
]
},
{
"begin": "'",
"end": "'",
"contains": [
{
"$ref": "#contains.2.variants.0.contains.0"
}
]
},
{
"begin": "\"\"\"",
"end": "\"\"\"",
"contains": [
{
"$ref": "#contains.2.variants.0.contains.0"
},
{
"className": "subst",
"begin": "#\\{",
"end": "}",
"keywords": {
"$ref": "#keywords"
},
"contains": [
{
"$ref": "#contains.0"
},
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.2"
},
{
"className": "regexp",
"variants": [
{
"begin": "\/\/\/",
"end": "\/\/\/",
"contains": [
{
"$ref": "#contains.2.variants.2.contains.1"
},
{
"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
}
]
}
]
},
{
"begin": "\/\/[gim]{0,3}(?=\\W)",
"relevance": 0
},
{
"begin": "\\\/(?![ *]).*?(?![\\\\]).\\\/[gim]{0,3}(?=\\W)"
}
]
},
{
"begin": "@[A-Za-z$_][0-9A-Za-z$_]*"
},
{
"subLanguage": "javascript",
"excludeBegin": true,
"excludeEnd": true,
"variants": [
{
"begin": "```",
"end": "```"
},
{
"begin": "`",
"end": "`"
}
]
}
]
}
]
},
{
"begin": "\"",
"end": "\"",
"contains": [
{
"$ref": "#contains.2.variants.0.contains.0"
},
{
"$ref": "#contains.2.variants.2.contains.1"
}
]
}
]
},
{
"$ref": "#contains.2.variants.2.contains.1.contains.3"
},
{
"$ref": "#contains.2.variants.2.contains.1.contains.4"
},
{
"$ref": "#contains.2.variants.2.contains.1.contains.5"
},
{
"className": "comment",
"begin": "###",
"end": "###",
"contains": [
{
"$ref": "#contains.2.variants.2.contains.1.contains.3.variants.0.contains.1.contains.0"
},
{
"className": "doctag",
"begin": "(?:TODO|FIXME|NOTE|BUG|XXX):",
"relevance": 0
}
]
},
{
"$ref": "#contains.2.variants.2.contains.1.contains.3.variants.0.contains.1"
},
{
"className": "function",
"begin": "^\\s*[A-Za-z$_][0-9A-Za-z$_]*\\s*=\\s*(\\(.*\\))?\\s*\\B[-=]>",
"end": "[-=]>",
"returnBegin": true,
"contains": [
{
"className": "title",
"begin": "[A-Za-z$_][0-9A-Za-z$_]*",
"relevance": 0
},
{
"className": "params",
"begin": "\\([^\\(]",
"returnBegin": true,
"contains": [
{
"begin": "\\(",
"end": "\\)",
"keywords": {
"$ref": "#keywords"
},
"contains": [
"self",
{
"$ref": "#contains.0"
},
{
"$ref": "#contains.1"
},
{
"$ref": "#contains.2"
},
{
"$ref": "#contains.2.variants.2.contains.1.contains.3"
},
{
"$ref": "#contains.2.variants.2.contains.1.contains.4"
},
{
"$ref": "#contains.2.variants.2.contains.1.contains.5"
}
]
}
]
}
]
},
{
"begin": "[:\\(,=]\\s*",
"relevance": 0,
"contains": [
{
"className": "function",
"begin": "(\\(.*\\))?\\s*\\B[-=]>",
"end": "[-=]>",
"returnBegin": true,
"contains": [
{
"$ref": "#contains.8.contains.1"
}
]
}
]
},
{
"className": "class",
"beginKeywords": "class",
"end": "$",
"illegal": "[:=\"\\[\\]]",
"contains": [
{
"beginKeywords": "extends",
"endsWithParent": true,
"illegal": "[:=\"\\[\\]]",
"contains": [
{
"$ref": "#contains.8.contains.0"
}
]
},
{
"$ref": "#contains.8.contains.0"
}
]
},
{
"begin": "[A-Za-z$_][0-9A-Za-z$_]*:",
"end": ":",
"returnBegin": true,
"returnEnd": true,
"relevance": 0
}
]
}