mirror of
https://github.com/angular/angular.git
synced 2026-09-14 13:54:52 +08:00
1d9e445d1a
The TextMate grammars for inline templates and inline styles ended the string at the first occurrence of the delimiter, so an escaped delimiter (e.g. \`) terminated the highlighting prematurely and the rest of the template was no longer highlighted as HTML. Escape sequences are now consumed before delegating to the HTML/CSS grammars, so escaped delimiters no longer end the string. Also removes the stray pipes from the string delimiter character class, which unintentionally matched a literal '|'. Fixes #65493
190 lines
9.7 KiB
Plaintext
190 lines
9.7 KiB
Plaintext
>/* clang-format off */
|
|
#^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng
|
|
>
|
|
>@Component({
|
|
#^^^^^^^^^^^^^ inline-styles.ng
|
|
>//// Property key/value test
|
|
#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng
|
|
> styles: [ '.example { width: 100px; }' ],
|
|
#^^ inline-styles.ng
|
|
# ^^^^^^ inline-styles.ng meta.object-literal.key.ts
|
|
# ^ inline-styles.ng meta.object-literal.key.ts punctuation.separator.key-value.ts
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.array.literal.ts meta.brace.square.ts
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng string
|
|
# ^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng source.css.scss
|
|
# ^ inline-styles.ng string
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.array.literal.ts meta.brace.square.ts
|
|
# ^^ inline-styles.ng
|
|
>
|
|
>//// Multiple styles test
|
|
#^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng
|
|
> styles: [
|
|
#^^ inline-styles.ng
|
|
# ^^^^^^ inline-styles.ng meta.object-literal.key.ts
|
|
# ^ inline-styles.ng meta.object-literal.key.ts punctuation.separator.key-value.ts
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.array.literal.ts meta.brace.square.ts
|
|
> '.example { width: 100px; }',
|
|
#^^^^ inline-styles.ng
|
|
# ^ inline-styles.ng string
|
|
# ^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng source.css.scss
|
|
# ^ inline-styles.ng string
|
|
# ^^ inline-styles.ng
|
|
> '.example { height: 100px; }',
|
|
#^^^^ inline-styles.ng
|
|
# ^ inline-styles.ng string
|
|
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng source.css.scss
|
|
# ^ inline-styles.ng string
|
|
# ^^ inline-styles.ng
|
|
> ],
|
|
#^^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.array.literal.ts meta.brace.square.ts
|
|
# ^^ inline-styles.ng
|
|
>
|
|
>//// String delimiter tests
|
|
#^^^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng
|
|
> styles: [ `.example { width: 100px; }` ],
|
|
#^^ inline-styles.ng
|
|
# ^^^^^^ inline-styles.ng meta.object-literal.key.ts
|
|
# ^ inline-styles.ng meta.object-literal.key.ts punctuation.separator.key-value.ts
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.array.literal.ts meta.brace.square.ts
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng string
|
|
# ^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng source.css.scss
|
|
# ^ inline-styles.ng string
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.array.literal.ts meta.brace.square.ts
|
|
# ^^ inline-styles.ng
|
|
> styles: [ ".example { width: 100px; }" ],
|
|
#^^ inline-styles.ng
|
|
# ^^^^^^ inline-styles.ng meta.object-literal.key.ts
|
|
# ^ inline-styles.ng meta.object-literal.key.ts punctuation.separator.key-value.ts
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.array.literal.ts meta.brace.square.ts
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng string
|
|
# ^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng source.css.scss
|
|
# ^ inline-styles.ng string
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.array.literal.ts meta.brace.square.ts
|
|
# ^^ inline-styles.ng
|
|
> styles: [ '.example { width: 100px; }' ],
|
|
#^^ inline-styles.ng
|
|
# ^^^^^^ inline-styles.ng meta.object-literal.key.ts
|
|
# ^ inline-styles.ng meta.object-literal.key.ts punctuation.separator.key-value.ts
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.array.literal.ts meta.brace.square.ts
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng string
|
|
# ^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng source.css.scss
|
|
# ^ inline-styles.ng string
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.array.literal.ts meta.brace.square.ts
|
|
# ^^ inline-styles.ng
|
|
>
|
|
>//// Parenthesization tests
|
|
#^^^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng
|
|
> styles: ( (( [ ( '.example { width: 100px; }' ) ] )) ),
|
|
#^^ inline-styles.ng
|
|
# ^^^^^^ inline-styles.ng meta.object-literal.key.ts
|
|
# ^ inline-styles.ng meta.object-literal.key.ts punctuation.separator.key-value.ts
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.brace.round.ts
|
|
# ^^^^^^^ inline-styles.ng
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng string
|
|
# ^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng source.css.scss
|
|
# ^ inline-styles.ng string
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.brace.round.ts
|
|
# ^^^^^^^ inline-styles.ng
|
|
# ^^ inline-styles.ng
|
|
>//// styles string
|
|
#^^^^^^^^^^^^^^^^^^^ inline-styles.ng
|
|
> styles: ( (( ( '.example { width: 100px; }' ) )) ),
|
|
#^^ inline-styles.ng
|
|
# ^^^^^^ inline-styles.ng meta.object-literal.key.ts
|
|
# ^ inline-styles.ng meta.object-literal.key.ts punctuation.separator.key-value.ts
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.brace.round.ts
|
|
# ^^^^^^ inline-styles.ng
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng string
|
|
# ^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng source.css.scss
|
|
# ^ inline-styles.ng string
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.brace.round.ts
|
|
# ^^^^^^ inline-styles.ng
|
|
# ^^ inline-styles.ng
|
|
> styles: `.example { width: 100px; }` ,
|
|
#^^ inline-styles.ng
|
|
# ^^^^^^ inline-styles.ng meta.object-literal.key.ts
|
|
# ^ inline-styles.ng meta.object-literal.key.ts punctuation.separator.key-value.ts
|
|
# ^^ inline-styles.ng
|
|
# ^ inline-styles.ng string
|
|
# ^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng source.css.scss
|
|
# ^ inline-styles.ng string
|
|
# ^ inline-styles.ng
|
|
# ^^ inline-styles.ng
|
|
> styles: ".example { width: 100px; }" ,
|
|
#^^ inline-styles.ng
|
|
# ^^^^^^ inline-styles.ng meta.object-literal.key.ts
|
|
# ^ inline-styles.ng meta.object-literal.key.ts punctuation.separator.key-value.ts
|
|
# ^^ inline-styles.ng
|
|
# ^ inline-styles.ng string
|
|
# ^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng source.css.scss
|
|
# ^ inline-styles.ng string
|
|
# ^ inline-styles.ng
|
|
# ^^ inline-styles.ng
|
|
> styles: '.example { width: 100px; }' ,
|
|
#^^ inline-styles.ng
|
|
# ^^^^^^ inline-styles.ng meta.object-literal.key.ts
|
|
# ^ inline-styles.ng meta.object-literal.key.ts punctuation.separator.key-value.ts
|
|
# ^^ inline-styles.ng
|
|
# ^ inline-styles.ng string
|
|
# ^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng source.css.scss
|
|
# ^ inline-styles.ng string
|
|
# ^ inline-styles.ng
|
|
# ^^ inline-styles.ng
|
|
>
|
|
>//// Escaped delimiter tests
|
|
#^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng
|
|
> styles: [ `.example::before { content: '\`'; }` ],
|
|
#^^ inline-styles.ng
|
|
# ^^^^^^ inline-styles.ng meta.object-literal.key.ts
|
|
# ^ inline-styles.ng meta.object-literal.key.ts punctuation.separator.key-value.ts
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.array.literal.ts meta.brace.square.ts
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng string
|
|
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng source.css.scss
|
|
# ^^ inline-styles.ng source.css.scss constant.character.escape.ts
|
|
# ^^^^ inline-styles.ng source.css.scss
|
|
# ^ inline-styles.ng string
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.array.literal.ts meta.brace.square.ts
|
|
# ^^ inline-styles.ng
|
|
> styles: [ '.example::before { content: "\'"; }' ],
|
|
#^^ inline-styles.ng
|
|
# ^^^^^^ inline-styles.ng meta.object-literal.key.ts
|
|
# ^ inline-styles.ng meta.object-literal.key.ts punctuation.separator.key-value.ts
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.array.literal.ts meta.brace.square.ts
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng string
|
|
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng source.css.scss
|
|
# ^^ inline-styles.ng source.css.scss constant.character.escape.ts
|
|
# ^^^^ inline-styles.ng source.css.scss
|
|
# ^ inline-styles.ng string
|
|
# ^ inline-styles.ng
|
|
# ^ inline-styles.ng meta.array.literal.ts meta.brace.square.ts
|
|
# ^^ inline-styles.ng
|
|
>})
|
|
#^^^ inline-styles.ng
|
|
>export class TMComponent{}
|
|
#^^^^^^^^^^^^^^^^^^^^^^^^^^^ inline-styles.ng
|
|
> |