Files

6 lines
11 KiB
JavaScript
Raw Permalink Normal View History

2025-07-26 16:40:29 +08:00
const lang = Object.freeze(JSON.parse("{\"displayName\":\"HashiCorp HCL\",\"fileTypes\":[\"hcl\"],\"name\":\"hcl\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#attribute_definition\"},{\"include\":\"#block\"},{\"include\":\"#expressions\"}],\"repository\":{\"attribute_access\":{\"begin\":\"\\\\.(?!\\\\*)\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.accessor.hcl\"}},\"end\":\"[[:alpha:]][\\\\w-]*|\\\\d*\",\"endCaptures\":{\"0\":{\"patterns\":[{\"match\":\"(?!null|false|true)[[:alpha:]][\\\\w-]*\",\"name\":\"variable.other.member.hcl\"},{\"match\":\"\\\\d+\",\"name\":\"constant.numeric.integer.hcl\"}]}}},\"attribute_definition\":{\"captures\":{\"1\":{\"name\":\"punctuation.section.parens.begin.hcl\"},\"2\":{\"name\":\"variable.other.readwrite.hcl\"},\"3\":{\"name\":\"punctuation.section.parens.end.hcl\"},\"4\":{\"name\":\"keyword.operator.assignment.hcl\"}},\"match\":\"(\\\\()?(\\\\b(?!null\\\\b|false\\\\b|true\\\\b)[[:alpha:]][[:alnum:]_-]*)(\\\\))?\\\\s*(\\\\=(?!\\\\=|\\\\>))\\\\s*\",\"name\":\"variable.declaration.hcl\"},\"attribute_splat\":{\"begin\":\"\\\\.\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.accessor.hcl\"}},\"end\":\"\\\\*\",\"endCaptures\":{\"0\":{\"name\":\"keyword.operator.splat.hcl\"}}},\"block\":{\"begin\":\"([\\\\w][\\\\-\\\\w]*)(([^\\\\S\\\\r\\\\n]+([\\\\w][\\\\-_\\\\w]*|\\\\\\\"[^\\\\\\\"\\\\r\\\\n]*\\\\\\\"))*)[^\\\\S\\\\r\\\\n]*(\\\\{)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"match\":\"\\\\b(?!null|false|true)[[:alpha:]][[:alnum:]_-]*\\\\b\",\"name\":\"entity.name.type.hcl\"}]},\"2\":{\"patterns\":[{\"match\":\"\\\\\\\"[^\\\\\\\"\\\\r\\\\n]*\\\\\\\"\",\"name\":\"variable.other.enummember.hcl\"},{\"match\":\"[[:alpha:]][[:alnum:]_-]*\",\"name\":\"variable.other.enummember.hcl\"}]},\"5\":{\"name\":\"punctuation.section.block.begin.hcl\"}},\"end\":\"\\\\}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.block.end.hcl\"}},\"name\":\"meta.block.hcl\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#attribute_definition\"},{\"include\":\"#expressions\"},{\"include\":\"#block\"}]},\"block_inline_comments\":{\"begin\":\"/\\\\*\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.hcl\"}},\"end\":\"\\\\*/\",\"name\":\"comment.block.hcl\"},\"brackets\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.section.brackets.begin.hcl\"}},\"end\":\"\\\\]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.brackets.end.hcl\"}},\"patterns\":[{\"match\":\"\\\\*\",\"name\":\"keyword.operator.splat.hcl\"},{\"include\":\"#comma\"},{\"include\":\"#comments\"},{\"include\":\"#inline_for_expression\"},{\"include\":\"#inline_if_expression\"},{\"include\":\"#expressions\"},{\"include\":\"#local_identifiers\"}]},\"char_escapes\":{\"match\":\"\\\\\\\\[nrt\\\"\\\\\\\\]|\\\\\\\\u(\\\\h{8}|\\\\h{4})\",\"name\":\"constant.character.escape.hcl\"},\"comma\":{\"match\":\"\\\\,\",\"name\":\"punctuation.separator.hcl\"},\"comments\":{\"patterns\":[{\"include\":\"#hash_line_comments\"},{\"include\":\"#double_slash_line_comments\"},{\"include\":\"#block_inline_comments\"}]},\"double_slash_line_comments\":{\"begin\":\"//\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.hcl\"}},\"end\":\"$\\\\n?\",\"name\":\"comment.line.double-slash.hcl\"},\"expressions\":{\"patterns\":[{\"include\":\"#literal_values\"},{\"include\":\"#operators\"},{\"include\":\"#tuple_for_expression\"},{\"include\":\"#object_for_expression\"},{\"include\":\"#brackets\"},{\"include\":\"#objects\"},{\"include\":\"#attribute_access\"},{\"include\":\"#attribute_splat\"},{\"include\":\"#functions\"},{\"include\":\"#parens\"}]},\"for_expression_body\":{\"patterns\":[{\"match\":\"\\\\bin\\\\b\",\"name\":\"keyword.operator.word.hcl\"},{\"match\":\"\\\\bif\\\\b\",\"name\":\"keyword.control.conditional.hcl\"},{\"match\":\"\\\\:\",\"name\":\"keyword.operator.hcl\"},{\"include\":\"#expressions\"},{\"include\":\"#comments\"},{\"include\":\"#comma\"},{\"include\":\"#local_identifiers\"}]},\"functions\":{\"begin\":\"([:\\\\-\\\\w]+)(\\\\()\",\"beginCaptures\":{\"1\":{\"patterns
export default [
lang
]