[HTML] Exclude prototypes from attribute value starts #2910
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 commit adds some
meta_include_prototype: false
rules to attribute value contexts, which may contain unquoted values.Without this rule any ordinary
prototype
context can be injected between assignment operator and beginning of an unquoted value. As a result the unquoted value starts after this injected context is popped or doesn't match anything anymore.What we want is to first push into unquoted-value context and than let inherited syntaxes apply normal string interpolation to maintain proper value boundaries.
Note: It's hard to test without a inheriting syntax at hand.
It is discussed at https://discord.com/channels/280102180189634562/280157067396775936/867802732482920458
Created a Gist with an example at https://gist.github.com/deathaxe/dabcd7575951174d08882b46842dd44a
If contexts in
HTML BUGFIX
section are commented out highlighting fails in combination with ST 4113.