59 lines
1.8 KiB
JSON
59 lines
1.8 KiB
JSON
{
|
|
"fileTypes": [
|
|
"tst"
|
|
],
|
|
"name": "TST",
|
|
"patterns": [
|
|
{
|
|
"include": "#instruction"
|
|
},
|
|
{
|
|
"include": "#comment"
|
|
}
|
|
],
|
|
"repository": {
|
|
"instruction": {
|
|
"patterns": [
|
|
{
|
|
"comment": "Everything which is not a comment is a function",
|
|
"begin": "\\b",
|
|
"end": "(,|;)",
|
|
"patterns": [
|
|
{
|
|
"comment": "Every actual instruction starts with a function",
|
|
"name": "support.function",
|
|
"match": "(output-file|compare-to|output-list|set|eval|output|load)\\b"
|
|
},
|
|
{
|
|
"comment": "A single bit",
|
|
"name": "constant.numeric",
|
|
"match": "\\s(1|0)|%B(\\d|\\.)+"
|
|
},
|
|
{
|
|
"comment": "Filename with a known extension",
|
|
"name": "string.interpolated",
|
|
"match": "\\w+\\.(hdl|out|cmp)"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"comment": {
|
|
"patterns": [
|
|
{
|
|
"comment": "Inline comment",
|
|
"begin": "\\/\\/",
|
|
"end": "\\n",
|
|
"name": "comment.line.double-slash"
|
|
},
|
|
{
|
|
"comment": "Multiline comment",
|
|
"begin": "\\/\\*",
|
|
"end": "\\*\\/",
|
|
"name": "comment.block"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"scopeName": "source.tst"
|
|
} |