Я работаю над своим первым компилятором как небольшой учебный проект.Я также хотел бы создать небольшой проект с подсветкой синтаксиса.
Глядя на файл tmLanguage по умолчанию, мне неясно, что вызывает цвет.Например, я вижу, что тип string
фактически вызывает окрашивание строки при отладке, но что вызывает это?«Строки» имя репо?Как это связано с темой окраски?Где я могу увидеть список имен для тем по умолчанию и т. Д.?
Глядя на примеры, они, кажется, перепрыгивают через много информации, поэтому я не уверен, с чего начать.
{
"$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json",
"name": "N",
"patterns": [
{
"include": "#keywords"
},
{
"include": "#strings"
}
],
"repository": {
"keywords":
{
"patterns":
[{
"name": "keyword.control.n",
"match": "\\b(if|while|for|return)\\b"
}]
},
"strings":
{
"name": "string.quoted.double.n",
"begin": "\"",
"end": "\"",
"patterns": [
{
"name": "constant.character.escape.n",
"match": "\\\\."
}
]
}
},
"scopeName": "source.N"
}