-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathvhdl.tmLanguage.json
40 lines (40 loc) · 2.13 KB
/
vhdl.tmLanguage.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
{
"scopeName": "source.vhdl",
"fileTypes": ["vhdl", "vht"],
"patterns": [
{
"name": "keyword.control.vhdl",
"match": "(?i)\\b(abs|access|after|alias|all|and|architecture|array|assert|assume|assume_guarantee|attribute|begin|block|body|buffer|bus|case|component|configuration|constant|context|cover|default|disconnect|downto|else|elsif|end|endpoint|entity|exit|fairness|file|for|force|function|generate|generic|group|guarded|if|impure|in|inertial|inout|is|label|library|linkage|literal|loop|map|mod|nand|new|next|nor|not|null|of|on|open|or|others|out|package|parameter|port|postponed|private|procedure|process|property|protected|pure|range|record|register|reject|release|rem|report|restrict|restrict_guarantee|return|rol|ror|select|sequence|severity|shared|signal|sla|sll|sra|srl|strong|subtype|then|to|transport|type|unaffected|units|until|use|variable|wait|when|while|with|xnor|xor)\\b"
},
{
"name": "string.quoted.double.vhdl",
"match": "(\\\"([^\\\n\\\r\\\"]|\\\"\\\")*(\\\"|\\\n|\\\r)|%([^\\\n\\\r%]|%%)*(%|\\\n|\\\r))"
},
{
"name": "constant.character.bit_string_literal.vhdl",
"match": "(\\d(_?\\d)*)?(s|S|u|U)?(b|B|o|O|x|X|d|D)(\\\"([^\\\n\\\r\\\"]|\\\"\\\")*(\\\"|\\\n|\\\r)|%([^\\\n\\\r%]|%%)*(%|\\\n|\\\r))"
},
{
"name": "identifier.valid.vhdl",
"match": "((_|[a-z]|[A-Z]|[ß-ö]|[À-Ö]|[ø-ÿ]|[Ø-Ÿ])((_|[a-z]|[A-Z]|[ß-ö]|[À-Ö]|[ø-ÿ]|[Ø-Ÿ])|[0-9])*|\\\\([^\\\\\\\"]|\\\\\\\\)*\\\\)"
},
{
"name": "constant.numeric.abstract_literal.vhdl",
"match": "[0-9](_?[0-9])*((s|S|u|U)?(b|B|o|O|x|X|d|D)(\\\"([^\\\n\\\r\\\"]|\\\"\\\")*(\\\"|\\\n|\\\r)|%([^\\\n\\\r%]|%%)*(%|\\\n|\\\r))|(\\.[0-9](_?[0-9])*|#([0-9]|[a-z]|[A-Z])(_?([0-9]|[a-z]|[A-Z]))*(\\.([0-9]|[a-z]|[A-Z])(_?([0-9]|[a-z]|[A-Z]))*)?#)?((e|E)(\\+|-)?[0-9](_?[0-9])*)?)"
},
{
"name": "comment.line.vhdl",
"match": "--[^\\\n\\\r]*(\\\r?\\\n)?"
},
{
"name": "comment.block.vhdl",
"begin": "/\\*",
"end": "\\*/",
"patterns": []
},
{
"name": "variable.other.constant.tool_directive.vhdl",
"match": "`[^\\\n\\\r]*(\\\r?\\\n)?"
}
]
}