548f6d789e8c90ecad888f1d2085bd51ea4d3c6d
tree-sitter-hcl
tree-sitter grammar for the HCL language
Example
Highlighting example/example.hcl:
Developing
It is recommended to use nix to fulfill all development dependencies. To activate the development environment simply run nix-shell in the project root.
Running Tests
To run tests simply run nix-shell --run 'tree-sitter test'.
Quoted Template Expressions
In principle it is allowed to contain arbitary expressions in quoted template interpolations. Consider for example:
foo = "prefix-${func(\"bar\"}"
To make parsing a little easier, this parser only checks for valid escape sequences and template chars. When using this parser one would have to take the content of a template interpolation, unescape it and parse it again to get the syntax tree. The same applies to template directives.
Todo
- use Unicode® Standard Annex #31 (augmented with '-') for identifiers
- add template expressions
- add quoted templates
- add quoted template interpolations
- add quoted template directives
- add heredoc templates
- add quoted templates
Description
Languages
HCL
82.1%
C
17.4%
C++
0.3%
JavaScript
0.2%
