You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This parser is a complete rewrite of steelsojka's tree-sitter-angular.
This parser extends tree-sitter-html because the new Control Flow syntax is not valid HTML code.
Supported Features
Structural Directives
Property binding
Event binding
String interpolation
If-statements (v17)
For-statements (v17)
Switch-statements (v17)
Defer-statements (v17)
Let-expression (v18.1)
ICU message format
Untagged Template Literals (v19.2)
Exponentiation (**) and in operators (v20)
Requirements
Neovim v 0.11.x required (as it includes the filetype detection of Angular Templates)
Filetype
Since neovim release 0.11.x, the filetype detection for Angular templates is included. It will detect Angular HTML templates, based on it's contents, and set the filetype to htmlangular.
Older versions
If you are using an older version, you must set the filetype yourself.
E.g. mark the file as htmlangular if it matches the pattern *.component.html:
Create a plugin in ~/.config/nvim/plugin/angular.lua with the following:
vim.filetype.add({
pattern= {
[".*%.component%.html"] ="htmlangular", -- Sets the filetype to `htmlangular` if it matches the pattern
},
})
Next, create a ftplugin for htmlangular that does the following:
runtime! ftplugin/html.vim!
Or, in lua:
vim.cmd('runtime! ftplugin/html.vim!')
LSP's or other plugins
You may need to include this new filetype (htmlangular) for other plugins, like LSP for example: