Files
centvrion/vscode-extension/syntaxes/cent.tmLanguage.json

114 lines
2.1 KiB
JSON

{
"$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json",
"name": "CENTVRION",
"patterns": [
{
"include": "#comments"
},
{
"include": "#strings"
},
{
"include": "#keywords"
},
{
"include": "#builtins"
},
{
"include": "#constants"
},
{
"include": "#variables"
}
],
"repository": {
"comments": {
"patterns": [
{
"name": "comment.block.cent",
"begin": "/\\*",
"end": "\\*/"
},
{
"name": "comment.line.double-slash.cent",
"match": "//[^\\n]*"
}
]
},
"keywords": {
"patterns": [
{
"name": "keyword.control.cent",
"match": "\\b(ALVID|AVT|DEFINI|DESIGNA|DONICVM|DVM|ERVMPE|ET|FACE|INVOCA|IN|PER|SI|TVNC|VSQVE|VT|CVM)\\b"
},
{
"name": "keyword.operator.comparison.cent",
"match": "\\b(EST|MINVS|PLVS)\\b"
},
{
"name": "keyword.operator.arithmetic.cent",
"match": "(\\*|\\+|-|/)"
}
]
},
"builtins": {
"patterns": [
{
"name": "support.function.builtin.cent",
"match": "\\b(AVDI_NVMERVS|AVDI|DICE|FORTIS_NVMERVS|FORTIS_ELECTIONIS|LONGITVDO|REDI)\\b"
}
]
},
"constants": {
"patterns": [
{
"name": "constant.numeric.roman.cent",
"match": "\\b[IVXLCDM]+\\b"
},
{
"name": "constant.language.roman.cent",
"match": "\\b(VERITAS|FALSITAS)\\b"
},
{
"name": "constant.numeric.nullus.cent",
"match": "\\bNVLLVS\\b"
}
]
},
"strings": {
"patterns": [
{
"name": "string.quoted.double.cent",
"begin": "\"",
"end": "\"",
"patterns": [
{
"name": "constant.character.escape.cent",
"match": "\\\\."
}
]
},
{
"name": "string.quoted.single.cent",
"begin": "'",
"end": "'",
"patterns": [
{
"name": "constant.character.escape.cent",
"match": "\\\\."
}
]
}
]
},
"variables": {
"patterns": [
{
"name": "variable.language.cent",
"match": "\\b[abcdefghiklmnopqrstvxyz_]+\\b"
}
]
}
},
"scopeName": "source.cent"
}