Skip to content

Commit fd26301

Browse files
committed
Remove embedded_rules, add cascade layers
Since all browser support embedded rules now, lets just go ahead and make that the standard
1 parent 6a82e5a commit fd26301

File tree

6 files changed

+12
-22
lines changed

6 files changed

+12
-22
lines changed

after/syntax/javascript.vim

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,7 @@ endif
1717
" unlet b:current_syntax
1818
" endif
1919

20-
let b:embedded_rules = 1
2120
runtime! syntax/css.vim
22-
unlet b:embedded_rules
2321

2422
syntax match jsStyledKeyword /\<styled\>/ skipwhite skipempty nextgroup=jsStyledDot,jsStyledParens
2523
" NOTE: This specific re-definition of jsFuncCall is to overwrite the current one

after/syntax/typescript.vim

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,7 @@ endif
1717
" unlet b:current_syntax
1818
" endif
1919

20-
let b:embedded_rules = 1
2120
runtime! syntax/css.vim
22-
unlet b:embedded_rules
2321

2422
syntax match tsStyledKeyword /\<styled\>/ skipwhite skipempty nextgroup=tsStyledDot,tsStyledParens
2523
" NOTE: This specific re-definition of tsFuncCall is to overwrite the current one

syntax/css.vim

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,6 @@ if exists('b:current_syntax') && b:current_syntax ==# 'css'
1111
finish
1212
endif
1313

14-
if !exists('b:embedded_rules') && main_syntax !=# 'css'
15-
syntax clear
16-
endif
17-
1814
let s:cpo_save = &cpoptions
1915
set cpoptions&vim
2016

@@ -32,7 +28,8 @@ syntax match cssBracketError /}\|]/ containedin=ALLBUT,cssComment,cssGridNamedCo
3228
syntax match cssBrowserPrefix contained /\%(-webkit-\|-moz-\|-ms-\|-o-\)/ nextgroup=cssProp
3329
syntax match cssValueNoise contained /,/
3430

35-
syntax match cssAtRule /@\(media\|page\|import\|charset\|namespace\)/ skipwhite skipempty nextgroup=cssAtRuleString
31+
syntax match cssAtRule /@\(media\|\|page\|import\|charset\|namespace\)/ skipwhite skipempty nextgroup=cssAtRuleString
32+
3633
syntax region cssAtRuleString contained start=/"/ skip=/\\\\\|\\"/ end=/"/ contained skipwhite skipempty oneline nextgroup=cssAtRuleNoise
3734
syntax region cssAtRuleString contained start=/'/ skip=/\\\\\|\\'/ end=/'/ contained skipwhite skipempty oneline nextgroup=cssAtRuleNoise
3835
syntax match cssAtRuleNoise /;/ contained
@@ -52,7 +49,7 @@ syntax match cssClassSelectorDot /\./ contained
5249
syntax match cssClassSelectorEscapeChar /\\/ contained
5350

5451
syntax match cssPseudoSelector /:\{1,2\}/ nextgroup=cssPseudoKeyword,cssPseudoFunction,cssPseudoFunctionType
55-
syntax match cssPseudoKeyword contained /\<active\|after\|before\|checked\|disabled\|empty\|first-child\|first-letter\|first-line\|first-of-type\|focus-within\|focus\|hover\|input-placeholder\|last-child\|last-line\|last-of-type\|left\|link\|only-child\|only-of-type\|placeholder\|right\|selection\|visited\|scrollbar-track-piece\|scrollbar-button\|scrollbar-corner\|scrollbar\>/ nextgroup=@cssSelectors,cssDefinitionBlock skipwhite skipempty
52+
syntax match cssPseudoKeyword contained /\<active\|after\|before\|checked\|disabled\|empty\|first-child\|first-letter\|first-line\|first-of-type\|focus-within\|focus\|hover\|input-placeholder\|last-child\|last-line\|last-of-type\|left\|link\|only-child\|only-of-type\|placeholder\|right\|selection\|visited\|scrollbar-track-piece\|scrollbar-button\|scrollbar-corner\|scrollbar\|root\>/ nextgroup=@cssSelectors,cssDefinitionBlock skipwhite skipempty
5653

5754
syntax region cssPseudoFunction contained start=/[a-zA-Z0-9-_]\+(/ end=/)/ keepend extend nextgroup=@cssSelectors,cssDefinitionBlock skipwhite skipempty contains=cssPseudoFunctionNot,cssPseudoFunctionDir,cssPseudoFunctionLang,cssPseudoFunctionType
5855
syntax region cssPseudoFunctionNot contained matchgroup=cssFunctionDelimiters start=/not(/ end=/)/ contains=@cssSelectors
@@ -67,11 +64,7 @@ syntax match cssPseudoFunctionTypeOperators contained /\%(+\|-\|n\)/
6764

6865
syntax match cssPseudoKeyword contained /\%(-webkit-\|-moz-\|-ms-\|-o-\)\%(input-placeholder\|search-cancel-button\|search-decoration\|focus-inner\|resizer\|placeholder\|inner-spin-button\|outer-spin-button\|expand\|scrollbar-track-piece\|scrollbar-track\|scrollbar-thumb\|scrollbar-button\|scrollbar-corner\|scrollbar\|full-screen\|media-controls-enclosure\|file-upload-button\)/ contains=cssBrowserPrefix nextgroup=@cssSelectors,cssDefinitionBlock skipwhite skipempty
6966

70-
if exists('b:embedded_rules')
71-
syntax region cssDefinitionBlock contained matchgroup=cssDefinitionBraces start=/{/ end=/}/ extend contains=cssPropDefinition,@cssSelectors,cssMediaDefinition keepend extend fold
72-
else
73-
syntax region cssDefinitionBlock matchgroup=cssDefinitionBraces start=/{/ end=/}/ extend contains=cssPropDefinition keepend fold
74-
endif
67+
syntax region cssDefinitionBlock contained matchgroup=cssDefinitionBraces start=/{/ end=/}/ extend contains=cssPropDefinition,@cssSelectors,cssMediaDefinition keepend extend fold
7568

7669
syntax region cssAttributeSelector matchgroup=cssAttributeSelectorBraces start=/\[/ end=/\]/ nextgroup=@cssSelectors,cssDefinitionBlock skipwhite skipempty
7770
if exists('b:current_syntax')
@@ -218,6 +211,10 @@ syntax region cssCalcPrens contained start=/(/ end=/)/ matchgroup=cssFuncDelimit
218211
syntax region cssGridNamedColumns matchgroup=cssGridNamedColumnBrackets contained start=/\[/ end=/\]/ contains=cssColumnName extend keepend
219212
syntax match cssColumnName contained /\<[a-zA-Z0-9-]\+\>/ extend
220213

214+
syntax match cssLayerComma contained /,/ skipwhite skipempty nextgroup=cssLayerName
215+
syntax match cssLayerName contained /\k\+/ skipwhite skipempty nextgroup=cssAttrTypes,cssLayerComma,cssAtRuleNoise,cssDefinitionBlock
216+
syntax match cssLayer /@layer/ skipwhite skipempty nextgroup=cssLayerName,cssLayerComma,cssDefinitionBlock
217+
221218
" syntax region cssFunction contained start=/\<[a-zA-Z0-9-]\+\>\+(/ end=/)/ contains=cssFuncName keepend
222219
syntax match cssFuncName /\<[a-zA-Z0-9-]\+\>(\@=/ nextgroup=cssFuncArgs,cssFuncUrlArgs,cssFuncVar,cssFuncAttrArgs,cssFuncEffectArgs,cssFuncCalcArgs
223220
syntax region cssFuncArgs contained matchgroup=cssFuncDelimiters start=/(/ end=/)/ contains=cssFunction,cssString,cssNumber,cssHexColor,cssColor,cssOperators,cssValueNoise,cssFuncCalcArgs,cssFuncName,cssSafeAreaInsets,cssFuncArgs extend keepend
@@ -234,7 +231,7 @@ syntax match cssAttrTypes contained /\%(string\|integer\|color\|url\|integer
234231
syntax match cssAttrComma contained /,/ skipwhite skipempty nextgroup=cssString,cssNumber
235232
syntax match cssOperators contained /\%(+\|-\|*\|\/\)/
236233

237-
syntax cluster cssSelectors contains=cssTagSelector,cssIDSelector,cssSelectorOperator,cssSelectorSeparator,cssStarSelector,cssClassSelector,cssPseudoSelector,cssAttributeSelector,cssPseudoFunction
234+
syntax cluster cssSelectors contains=cssTagSelector,cssIDSelector,cssSelectorOperator,cssSelectorSeparator,cssStarSelector,cssClassSelector,cssPseudoSelector,cssAttributeSelector,cssPseudoFunction,cssPseudoSelector
238235
syntax cluster cssRules contains=cssPropDefinition
239236
syntax cluster cssValues contains=cssFunction,cssString,cssNumber,cssHexColor,cssImportant,cssColor,cssValueKeyword,cssValueNoise,cssFuncName,cssGridNamedColumns
240237

@@ -259,13 +256,15 @@ highlight default link cssAtRulePage PreProc
259256
highlight default link cssKeyframesDefinition PreProc
260257
highlight default link cssFontFaceDefinition PreProc
261258
highlight default link cssAtRule PreProc
259+
highlight default link cssLayer PreProc
262260
highlight default link cssBrowserPrefix Comment
263261
highlight default link cssNumber Number
264262
highlight default link cssHexColor Number
265263
highlight default link cssTagSelector Statement
266264
highlight default link cssPseudoKeyword Special
267265
highlight default link cssPagePseudos Special
268266
highlight default link cssValueKeyword Constant
267+
highlight default link cssLayerName Constant
269268
highlight default link cssColor Constant
270269
highlight default link cssUnits Operator
271270
highlight default link cssNumberNoise Number
@@ -281,6 +280,7 @@ highlight default link cssFontBlock Constant
281280
highlight default link cssFontOperator Operator
282281
highlight default link cssValueNoise Noise
283282
highlight default link cssKeyframeComma Noise
283+
highlight default link cssLayerComma Noise
284284
highlight default link cssAnimationBlock Constant
285285
highlight default link cssPageDefinition Constant
286286
highlight default link cssKeyframe Constant

syntax/module.vim

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,7 @@ endif
1414
syntax clear
1515
syntax match cssmVariable /\<[_a-zA-Z$]\+[_a-zA-Z0-9-]*\>/ containedin=cssValueBlock,cssTransitionBlock
1616

17-
let b:embedded_rules = 1
1817
runtime! syntax/css.vim
19-
unlet b:embedded_rules
2018

2119
syntax region cssmImport matchgroup=cssmImportKeywords start=/import/ end=/from/ contains=cssmClass skipwhite skipempty nextgroup=cssString
2220
syntax match cssmNoise /;/

syntax/scss.vim

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,7 @@ if exists("b:current_syntax") && b:current_syntax == "scss"
1111
finish
1212
endif
1313

14-
let b:embedded_rules = 1
1514
runtime! syntax/css.vim
16-
unlet b:embedded_rules
1715

1816
syntax match scssAmpersand containedin=cssDefinitionBlock /&/ nextgroup=@cssSelectors,cssDefinitionBlock skipwhite skipempty
1917
syntax match scssComment /\/\/.*/ contains=@Spell containedin=cssDefinitionBlock

syntax/stylus.vim

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,7 @@ endif
1414
syntax clear
1515
syntax match stylusVariable /\<[_a-zA-Z$]\+[_a-zA-Z0-9-]*\>/ containedin=cssValueBlock,cssTransitionBlock
1616

17-
let b:embedded_rules = 1
1817
runtime! syntax/css.vim
19-
unlet b:embedded_rules
2018

2119
setlocal iskeyword+=$
2220

0 commit comments

Comments
 (0)