107 lines
2.2 KiB
Plaintext
107 lines
2.2 KiB
Plaintext
|
{
|
||
|
"fileTypes": [
|
||
|
"tmpl"
|
||
|
],
|
||
|
"name": "HCL Template",
|
||
|
"patterns": [
|
||
|
{
|
||
|
"begin": "[^\\$]?(\\$\\{~?)",
|
||
|
"beginCaptures": {
|
||
|
"1": {
|
||
|
"name": "entity.tag.embedded.start.hcltemplate"
|
||
|
}
|
||
|
},
|
||
|
"comment": "Interpolation Sequences",
|
||
|
"end": "~?}",
|
||
|
"endCaptures": {
|
||
|
"0": {
|
||
|
"name": "entity.tag.embedded.end.hcltemplate"
|
||
|
}
|
||
|
},
|
||
|
"name": "meta.interp.hcltemplate",
|
||
|
"patterns": [
|
||
|
{
|
||
|
"include": "source.hclexpr"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"begin": "[^\\%]?(\\%\\{~?)",
|
||
|
"beginCaptures": {
|
||
|
"1": {
|
||
|
"name": "entity.tag.embedded.start.hcltemplate"
|
||
|
}
|
||
|
},
|
||
|
"comment": "Control Sequences",
|
||
|
"end": "~?}",
|
||
|
"endCaptures": {
|
||
|
"0": {
|
||
|
"name": "entity.tag.embedded.end.hcltemplate"
|
||
|
}
|
||
|
},
|
||
|
"name": "meta.control.hcltemplate",
|
||
|
"patterns": [
|
||
|
{
|
||
|
"include": "#templateif"
|
||
|
},
|
||
|
{
|
||
|
"include": "#templatefor"
|
||
|
},
|
||
|
{
|
||
|
"include": "#templatesimplekw"
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
],
|
||
|
"repository": {
|
||
|
"templatefor": {
|
||
|
"begin": "(for)\\s*(\\w+)\\s*(,\\s*(\\w+)\\s*)?(in)",
|
||
|
"beginCaptures": {
|
||
|
"1": {
|
||
|
"name": "keyword.control.hcltemplate"
|
||
|
},
|
||
|
"2": {
|
||
|
"name": "variable.other.hcl"
|
||
|
},
|
||
|
"4": {
|
||
|
"name": "variable.other.hcl"
|
||
|
},
|
||
|
"5": {
|
||
|
"name": "keyword.control.hcltemplate"
|
||
|
}
|
||
|
},
|
||
|
"end": "(?=~?\\})",
|
||
|
"name": "meta.templatefor.hcltemplate",
|
||
|
"patterns": [
|
||
|
{
|
||
|
"include": "source.hclexpr"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
"templateif": {
|
||
|
"begin": "(if)\\s*",
|
||
|
"beginCaptures": {
|
||
|
"1": {
|
||
|
"name": "keyword.control.hcltemplate"
|
||
|
}
|
||
|
},
|
||
|
"end": "(?=~?\\})",
|
||
|
"name": "meta.templateif.hcltemplate",
|
||
|
"patterns": [
|
||
|
{
|
||
|
"include": "source.hclexpr"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
"templatesimplekw": {
|
||
|
"captures": {
|
||
|
"0": {
|
||
|
"name": "keyword.control.hcl"
|
||
|
}
|
||
|
},
|
||
|
"match": "(else|endif|endfor)"
|
||
|
}
|
||
|
},
|
||
|
"scopeName": "source.hcltemplate",
|
||
|
"uuid": "ac6be18e-d44f-4a73-bd8f-b973fd26df05"
|
||
|
}
|