Fix meta.embedded vs. meta.interpolation #34
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR...
fixes #33
{{ ... }}
interpolation in attribute values, quoted strings and CDATA content tags, including inline styles or code of possible<style>
tags.{{ ... }}
meta.embedded.expression
to distinguish from control flow statements.meta.embedded.statement
to control flow statements such as@if
,@for
, etc.meta.template.ngx
to align with Jinja2, Twig, Vue and others.Note: We could also scope
{{...}}
meta.interpolation
as those actually inject expression evaluation results into output text. However it is not easy in all template languages to make that distinction. Hence in favor of consistent scopingmeta.embedded.expression
is used. It also allows simpler snippet/completion selectors targeting both, statements and interpolation viameta.template.ngx meta.embedded
. Jinja2, Twig, Svelte already use that schema as well.