blob: 23db7b10e899bbe3b5e61f5c8c338779f07230bc [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
Bram Moolenaard09acef2012-09-21 14:54:30 +02002" Language: Cascading Style Sheets
3" Previous Contributor List:
4" Claudio Fleiner <claudio@fleiner.com> (Maintainer)
5" Yeti (Add full CSS2, HTML4 support)
6" Nikolai Weibull (Add CSS2 support)
7" Maintainer: Jules Wang <w.jq0722@gmail.com>
Bram Moolenaar3a0d8092012-10-21 03:02:54 +02008" URL: https://github.com/JulesWang/css.vim
Bram Moolenaar369b6f52017-01-17 12:22:32 +01009" Last Change: 2017 Jan 14
10" cssClassName updated by Ryuichi Hayashida Jan 2016
Bram Moolenaar071d4272004-06-13 20:20:40 +000011
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020012" quit when a syntax file was already loaded
Bram Moolenaar071d4272004-06-13 20:20:40 +000013if !exists("main_syntax")
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020014 if exists("b:current_syntax")
Bram Moolenaare2db6952013-07-24 19:53:36 +020015 finish
16 endif
Bram Moolenaar071d4272004-06-13 20:20:40 +000017 let main_syntax = 'css'
Bram Moolenaare2db6952013-07-24 19:53:36 +020018elseif exists("b:current_syntax") && b:current_syntax == "css"
19 finish
Bram Moolenaar071d4272004-06-13 20:20:40 +000020endif
21
Bram Moolenaar0c5fa7d2012-10-05 22:26:30 +020022let s:cpo_save = &cpo
23set cpo&vim
24
Bram Moolenaar071d4272004-06-13 20:20:40 +000025syn case ignore
26
Bram Moolenaarf2571c62015-06-09 19:44:55 +020027" HTML4 tags
28syn keyword cssTagName abbr address area a b base
29syn keyword cssTagName bdo blockquote body br button
30syn keyword cssTagName caption cite code col colgroup dd del
31syn keyword cssTagName dfn div dl dt em fieldset form
32syn keyword cssTagName h1 h2 h3 h4 h5 h6 head hr html img i
33syn keyword cssTagName iframe input ins isindex kbd label legend li
34syn keyword cssTagName link map menu meta noscript ol optgroup
35syn keyword cssTagName option p param pre q s samp script small
36syn keyword cssTagName span strong sub sup tbody td
37syn keyword cssTagName textarea tfoot th thead title tr ul u var
Bram Moolenaarbaca7f72013-09-22 14:42:24 +020038syn keyword cssTagName object svg
Bram Moolenaarf2571c62015-06-09 19:44:55 +020039syn match cssTagName /\<select\>\|\<style\>\|\<table\>/
Bram Moolenaard09acef2012-09-21 14:54:30 +020040
Bram Moolenaarbaca7f72013-09-22 14:42:24 +020041" 34 HTML5 tags
42syn keyword cssTagName article aside audio bdi canvas command data
43syn keyword cssTagName datalist details dialog embed figcaption figure footer
44syn keyword cssTagName header hgroup keygen main mark menuitem meter nav
Bram Moolenaard09acef2012-09-21 14:54:30 +020045syn keyword cssTagName output progress rt rp ruby section
46syn keyword cssTagName source summary time track video wbr
47
48" Tags not supported in HTML5
Bram Moolenaarf2571c62015-06-09 19:44:55 +020049" acronym applet basefont big center dir
50" font frame frameset noframes strike tt
Bram Moolenaard09acef2012-09-21 14:54:30 +020051
Bram Moolenaar071d4272004-06-13 20:20:40 +000052syn match cssTagName "\*"
53
Bram Moolenaard09acef2012-09-21 14:54:30 +020054" selectors
Bram Moolenaarbaca7f72013-09-22 14:42:24 +020055syn match cssSelectorOp "[,>+~]"
Bram Moolenaard09acef2012-09-21 14:54:30 +020056syn match cssSelectorOp2 "[~|^$*]\?=" contained
Bram Moolenaarbaca7f72013-09-22 14:42:24 +020057syn region cssAttributeSelector matchgroup=cssSelectorOp start="\[" end="]" contains=cssUnicodeEscape,cssSelectorOp2,cssStringQ,cssStringQQ
Bram Moolenaar071d4272004-06-13 20:20:40 +000058
Bram Moolenaard09acef2012-09-21 14:54:30 +020059" .class and #id
Bram Moolenaar369b6f52017-01-17 12:22:32 +010060syn match cssClassName "\.-\=[A-Za-z_][A-Za-z0-9_-]*" contains=cssClassNameDot
Bram Moolenaardfb18412013-12-11 18:53:29 +010061syn match cssClassNameDot contained '\.'
Bram Moolenaard09acef2012-09-21 14:54:30 +020062
Bram Moolenaara5792f52005-11-23 21:25:05 +000063try
Bram Moolenaar293ee4d2004-12-09 21:34:53 +000064syn match cssIdentifier "#[A-Za-zÀ-ÿ_@][A-Za-zÀ-ÿ0-9_@-]*"
Bram Moolenaara5792f52005-11-23 21:25:05 +000065catch /^.*/
66syn match cssIdentifier "#[A-Za-z_@][A-Za-z0-9_@-]*"
67endtry
68
Bram Moolenaarbaca7f72013-09-22 14:42:24 +020069" digits
70syn match cssValueInteger contained "[-+]\=\d\+" contains=cssUnitDecorators
71syn match cssValueNumber contained "[-+]\=\d\+\(\.\d*\)\=" contains=cssUnitDecorators
Bram Moolenaarf2571c62015-06-09 19:44:55 +020072syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=\(%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|rem\|dpi\|dppx\|dpcm\)\>" contains=cssUnitDecorators
73syn match cssValueAngle contained "[-+]\=\d\+\(\.\d*\)\=\(deg\|grad\|rad\)\>" contains=cssUnitDecorators
74syn match cssValueTime contained "+\=\d\+\(\.\d*\)\=\(ms\|s\)\>" contains=cssUnitDecorators
75syn match cssValueFrequency contained "+\=\d\+\(\.\d*\)\=\(Hz\|kHz\)\>" contains=cssUnitDecorators
Bram Moolenaar071d4272004-06-13 20:20:40 +000076
Bram Moolenaardfb18412013-12-11 18:53:29 +010077
Bram Moolenaarf2571c62015-06-09 19:44:55 +020078syn match cssIncludeKeyword /@\(-[a-z]\+-\)\=\(media\|keyframes\|import\|charset\|namespace\|page\)/ contained
Bram Moolenaarbaca7f72013-09-22 14:42:24 +020079" @media
Bram Moolenaardfb18412013-12-11 18:53:29 +010080syn region cssInclude start=/@media\>/ end=/\ze{/ skipwhite skipnl contains=cssMediaProp,cssValueLength,cssMediaKeyword,cssValueInteger,cssMediaAttr,cssVendor,cssMediaType,cssIncludeKeyword,cssMediaComma,cssComment nextgroup=cssMediaBlock
Bram Moolenaar18441ae2013-09-24 23:30:38 +020081syn keyword cssMediaType contained screen print aural braille embossed handheld projection tty tv speech all contained skipwhite skipnl
82syn keyword cssMediaKeyword only not and contained
Bram Moolenaarbaca7f72013-09-22 14:42:24 +020083syn region cssMediaBlock transparent matchgroup=cssBraces start='{' end='}' contains=css.*Attr,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition,cssTagName,cssClassName,cssIdentifier,cssPseudoClass,cssSelectorOp,cssSelectorOp2,cssAttributeSelector fold
Bram Moolenaardfb18412013-12-11 18:53:29 +010084syn match cssMediaComma "," skipwhite skipnl contained
Bram Moolenaarbaca7f72013-09-22 14:42:24 +020085
86" Reference: http://www.w3.org/TR/css3-mediaqueries/
Bram Moolenaar18441ae2013-09-24 23:30:38 +020087syn keyword cssMediaProp contained width height orientation scan grid
Bram Moolenaarf2571c62015-06-09 19:44:55 +020088syn match cssMediaProp contained /\(\(max\|min\)-\)\=\(\(device\)-\)\=aspect-ratio/
Bram Moolenaarbaca7f72013-09-22 14:42:24 +020089syn match cssMediaProp contained /\(\(max\|min\)-\)\=device-pixel-ratio/
90syn match cssMediaProp contained /\(\(max\|min\)-\)\=device-\(height\|width\)/
Bram Moolenaar18441ae2013-09-24 23:30:38 +020091syn match cssMediaProp contained /\(\(max\|min\)-\)\=\(height\|width\|resolution\|monochrome\|color\(-index\)\=\)/
Bram Moolenaarbaca7f72013-09-22 14:42:24 +020092syn keyword cssMediaAttr contained portrait landscape progressive interlace
93
94" @page
Bram Moolenaardfb18412013-12-11 18:53:29 +010095" http://www.w3.org/TR/css3-page/
96syn match cssPage "@page\>[^{]*{\@=" contains=cssPagePseudo,cssIncludeKeyword nextgroup=cssPageWrap transparent skipwhite skipnl
97syn match cssPagePseudo /:\(left\|right\|first\|blank\)/ contained skipwhite skipnl
98syn region cssPageWrap contained transparent matchgroup=cssBraces start="{" end="}" contains=cssPageMargin,cssPageProp,cssAttrRegion,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition,cssHacks
99syn match cssPageMargin /@\(\(top\|left\|right\|bottom\)-\(left\|center\|right\|middle\|bottom\)\)\(-corner\)\=/ contained nextgroup=cssDefinition skipwhite skipnl
100syn keyword cssPageProp contained content size
101" http://www.w3.org/TR/CSS2/page.html#break-inside
102syn keyword cssPageProp contained orphans widows
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200103
104" @keyframe
Bram Moolenaardfb18412013-12-11 18:53:29 +0100105" http://www.w3.org/TR/css3-animations/#keyframes
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200106syn match cssKeyFrame "@\(-[a-z]\+-\)\=keyframes\>[^{]*{\@=" nextgroup=cssKeyFrameWrap contains=cssVendor,cssIncludeKeyword skipwhite skipnl transparent
Bram Moolenaardfb18412013-12-11 18:53:29 +0100107syn region cssKeyFrameWrap contained transparent matchgroup=cssBraces start="{" end="}" contains=cssKeyFrameSelector
108syn match cssKeyFrameSelector /\(\d*%\|from\|to\)\=/ contained skipwhite skipnl nextgroup=cssDefinition
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200109
110" @import
Bram Moolenaardfb18412013-12-11 18:53:29 +0100111syn region cssInclude start=/@import\>/ end=/\ze;/ transparent contains=cssStringQ,cssStringQQ,cssUnicodeEscape,cssComment,cssIncludeKeyword,cssURL,cssMediaProp,cssValueLength,cssMediaKeyword,cssValueInteger,cssMediaAttr,cssVendor,cssMediaType
112syn region cssInclude start=/@charset\>/ end=/\ze;/ transparent contains=cssStringQ,cssStringQQ,cssUnicodeEscape,cssComment,cssIncludeKeyword
113syn region cssInclude start=/@namespace\>/ end=/\ze;/ transparent contains=cssStringQ,cssStringQQ,cssUnicodeEscape,cssComment,cssIncludeKeyword
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200114
115" @font-face
116" http://www.w3.org/TR/css3-fonts/#at-font-face-rule
Bram Moolenaar071d4272004-06-13 20:20:40 +0000117syn match cssFontDescriptor "@font-face\>" nextgroup=cssFontDescriptorBlock skipwhite skipnl
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200118syn region cssFontDescriptorBlock contained transparent matchgroup=cssBraces start="{" end="}" contains=cssComment,cssError,cssUnicodeEscape,cssCommonAttr,cssFontDescriptorProp,cssValue.*,cssFontDescriptorFunction,cssFontDescriptorAttr,cssNoise
119
120syn match cssFontDescriptorProp contained "\<font-family\>"
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200121syn keyword cssFontDescriptorProp contained src
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200122syn match cssFontDescriptorProp contained "\<font-\(style\|weight\|stretch\)\>"
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200123syn match cssFontDescriptorProp contained "\<unicode-range\>"
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200124syn match cssFontDescriptorProp contained "\<font-\(variant\|feature-settings\)\>"
125
126" src functions
Bram Moolenaar071d4272004-06-13 20:20:40 +0000127syn region cssFontDescriptorFunction contained matchgroup=cssFunctionName start="\<\(uri\|url\|local\|format\)\s*(" end=")" contains=cssStringQ,cssStringQQ oneline keepend
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200128" font-sytle and font-weight attributes
129syn keyword cssFontDescriptorAttr contained normal italic oblique bold
130" font-stretch attributes
131syn match cssFontDescriptorAttr contained "\<\(\(ultra\|extra\|semi\)-\)\=\(condensed\|expanded\)\>"
132" unicode-range attributes
133syn match cssFontDescriptorAttr contained "U+[0-9A-Fa-f?]\+"
134syn match cssFontDescriptorAttr contained "U+\x\+-\x\+"
135" font-feature-settings attributes
136syn keyword cssFontDescriptorAttr contained on off
137
138
Bram Moolenaar071d4272004-06-13 20:20:40 +0000139
Bram Moolenaar3a0d8092012-10-21 03:02:54 +0200140" The 16 basic color names
Bram Moolenaar071d4272004-06-13 20:20:40 +0000141syn keyword cssColor contained aqua black blue fuchsia gray green lime maroon navy olive purple red silver teal yellow
Bram Moolenaar3a0d8092012-10-21 03:02:54 +0200142
143" 130 more color names
144syn keyword cssColor contained aliceblue antiquewhite aquamarine azure
145syn keyword cssColor contained beige bisque blanchedalmond blueviolet brown burlywood
146syn keyword cssColor contained cadetblue chartreuse chocolate coral cornflowerblue cornsilk crimson cyan
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200147syn match cssColor contained /\<dark\(blue\|cyan\|goldenrod\|gray\|green\|grey\|khaki\)\>/
148syn match cssColor contained /\<dark\(magenta\|olivegreen\|orange\|orchid\|red\|salmon\|seagreen\)\>/
149syn match cssColor contained /\<darkslate\(blue\|gray\|grey\)\>/
150syn match cssColor contained /\<dark\(turquoise\|violet\)\>/
Bram Moolenaar3a0d8092012-10-21 03:02:54 +0200151syn keyword cssColor contained deeppink deepskyblue dimgray dimgrey dodgerblue firebrick
152syn keyword cssColor contained floralwhite forestgreen gainsboro ghostwhite gold
153syn keyword cssColor contained goldenrod greenyellow grey honeydew hotpink
154syn keyword cssColor contained indianred indigo ivory khaki lavender lavenderblush lawngreen
155syn keyword cssColor contained lemonchiffon limegreen linen magenta
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200156syn match cssColor contained /\<light\(blue\|coral\|cyan\|goldenrodyellow\|gray\|green\)\>/
157syn match cssColor contained /\<light\(grey\|pink\|salmon\|seagreen\|skyblue\|yellow\)\>/
158syn match cssColor contained /\<light\(slategray\|slategrey\|steelblue\)\>/
159syn match cssColor contained /\<medium\(aquamarine\|blue\|orchid\|purple\|seagreen\)\>/
160syn match cssColor contained /\<medium\(slateblue\|springgreen\|turquoise\|violetred\)\>/
Bram Moolenaar3a0d8092012-10-21 03:02:54 +0200161syn keyword cssColor contained midnightblue mintcream mistyrose moccasin navajowhite
162syn keyword cssColor contained oldlace olivedrab orange orangered orchid
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200163syn match cssColor contained /\<pale\(goldenrod\|green\|turquoise\|violetred\)\>/
Bram Moolenaar3a0d8092012-10-21 03:02:54 +0200164syn keyword cssColor contained papayawhip peachpuff peru pink plum powderblue
165syn keyword cssColor contained rosybrown royalblue saddlebrown salmon sandybrown
166syn keyword cssColor contained seagreen seashell sienna skyblue slateblue
167syn keyword cssColor contained slategray slategrey snow springgreen steelblue tan
168syn keyword cssColor contained thistle tomato turquoise violet wheat
169syn keyword cssColor contained whitesmoke yellowgreen
170
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200171" FIXME: These are actually case-insensitive too, but (a) specs recommend using
Bram Moolenaar071d4272004-06-13 20:20:40 +0000172" mixed-case (b) it's hard to highlight the word `Background' correctly in
173" all situations
174syn case match
175syn keyword cssColor contained ActiveBorder ActiveCaption AppWorkspace ButtonFace ButtonHighlight ButtonShadow ButtonText CaptionText GrayText Highlight HighlightText InactiveBorder InactiveCaption InactiveCaptionText InfoBackground InfoText Menu MenuText Scrollbar ThreeDDarkShadow ThreeDFace ThreeDHighlight ThreeDLightShadow ThreeDShadow Window WindowFrame WindowText Background
176syn case ignore
Bram Moolenaard09acef2012-09-21 14:54:30 +0200177
178syn match cssImportant contained "!\s*important\>"
179
Bram Moolenaar071d4272004-06-13 20:20:40 +0000180syn match cssColor contained "\<transparent\>"
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200181syn match cssColor contained "\<currentColor\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000182syn match cssColor contained "\<white\>"
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200183syn match cssColor contained "#[0-9A-Fa-f]\{3\}\>" contains=cssUnitDecorators
184syn match cssColor contained "#[0-9A-Fa-f]\{6\}\>" contains=cssUnitDecorators
Bram Moolenaard09acef2012-09-21 14:54:30 +0200185
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200186syn region cssURL contained matchgroup=cssFunctionName start="\<url\s*(" end=")" contains=cssStringQ,cssStringQQ oneline
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200187syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgb\|clip\|attr\|counter\|rect\|cubic-bezier\|steps\)\s*(" end=")" oneline contains=cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma
188syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgba\|hsl\|hsla\|color-stop\|from\|to\)\s*(" end=")" oneline contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma,cssFunction
189syn region cssFunction contained matchgroup=cssFunctionName start="\<\(linear-\|radial-\)\=\gradient\s*(" end=")" oneline contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunction,cssGradientAttr,cssFunctionComma
190syn region cssFunction contained matchgroup=cssFunctionName start="\<\(matrix\(3d\)\=\|scale\(3d\|X\|Y\|Z\)\=\|translate\(3d\|X\|Y\|Z\)\=\|skew\(X\|Y\)\=\|rotate\(3d\|X\|Y\|Z\)\=\|perspective\)\s*(" end=")" oneline contains=cssValueInteger,cssValueNumber,cssValueLength,cssValueAngle,cssFunctionComma
191syn keyword cssGradientAttr contained top bottom left right cover center middle ellipse at
192syn match cssFunctionComma contained ","
Bram Moolenaar071d4272004-06-13 20:20:40 +0000193
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200194" Common Prop and Attr
195syn keyword cssCommonAttr contained auto none inherit all default normal
196syn keyword cssCommonAttr contained top bottom center stretch hidden visible
197"------------------------------------------------
198" CSS Animations
199" http://www.w3.org/TR/css3-animations/
Bram Moolenaardfb18412013-12-11 18:53:29 +0100200syn match cssAnimationProp contained "\<animation\(-\(delay\|direction\|duration\|fill-mode\|name\|play-state\|timing-function\|iteration-count\)\)\=\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000201
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200202" animation-direction attributes
203syn keyword cssAnimationAttr contained alternate reverse
204syn match cssAnimationAttr contained "\<alternate-reverse\>"
Bram Moolenaard09acef2012-09-21 14:54:30 +0200205
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200206" animation-fill-mode attributes
207syn keyword cssAnimationAttr contained forwards backwards both
Bram Moolenaard09acef2012-09-21 14:54:30 +0200208
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200209" animation-play-state attributes
210syn keyword cssAnimationAttr contained running paused
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200211
212" animation-iteration-count attributes
213syn keyword cssAnimationAttr contained infinite
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200214"------------------------------------------------
215" CSS Backgrounds and Borders Module Level 3
216" http://www.w3.org/TR/css3-background/
217syn match cssBackgroundProp contained "\<background\(-\(attachment\|clip\|color\|image\|origin\|position\|repeat\|size\)\)\=\>"
218" background-attachment attributes
219syn keyword cssBackgroundAttr contained scroll fixed local
Bram Moolenaard09acef2012-09-21 14:54:30 +0200220
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200221" background-position attributes
222syn keyword cssBackgroundAttr contained left center right top bottom
Bram Moolenaard09acef2012-09-21 14:54:30 +0200223
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200224" background-repeat attributes
Bram Moolenaard09acef2012-09-21 14:54:30 +0200225syn match cssBackgroundAttr contained "\<no-repeat\>"
226syn match cssBackgroundAttr contained "\<repeat\(-[xy]\)\=\>"
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200227syn keyword cssBackgroundAttr contained space round
Bram Moolenaard09acef2012-09-21 14:54:30 +0200228
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200229" background-size attributes
230syn keyword cssBackgroundAttr contained cover contain
Bram Moolenaard09acef2012-09-21 14:54:30 +0200231
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200232syn match cssBorderProp contained "\<border\(-\(top\|right\|bottom\|left\)\)\=\(-\(width\|color\|style\)\)\=\>"
233syn match cssBorderProp contained "\<border\(-\(top\|bottom\)-\(left\|right\)\)\=-radius\>"
234syn match cssBorderProp contained "\<border-image\(-\(outset\|repeat\|slice\|source\|width\)\)\=\>"
235syn match cssBorderProp contained "\<box-decoration-break\>"
236syn match cssBorderProp contained "\<box-shadow\>"
Bram Moolenaard09acef2012-09-21 14:54:30 +0200237
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200238" border-image attributes
Bram Moolenaardfb18412013-12-11 18:53:29 +0100239syn keyword cssBorderAttr contained stretch round space fill
Bram Moolenaard09acef2012-09-21 14:54:30 +0200240
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200241" border-style attributes
242syn keyword cssBorderAttr contained dotted dashed solid double groove ridge inset outset
243
244" border-width attributes
245syn keyword cssBorderAttr contained thin thick medium
246
247" box-decoration-break attributes
248syn keyword cssBorderAttr contained clone slice
249"------------------------------------------------
250
251syn match cssBoxProp contained "\<padding\(-\(top\|right\|bottom\|left\)\)\=\>"
252syn match cssBoxProp contained "\<margin\(-\(top\|right\|bottom\|left\)\)\=\>"
Bram Moolenaard09acef2012-09-21 14:54:30 +0200253syn match cssBoxProp contained "\<overflow\(-\(x\|y\|style\)\)\=\>"
Bram Moolenaardfb18412013-12-11 18:53:29 +0100254syn match cssBoxProp contained "\<rotation\(-point\)\=\>"
Bram Moolenaard09acef2012-09-21 14:54:30 +0200255syn keyword cssBoxAttr contained visible hidden scroll auto
256syn match cssBoxAttr contained "\<no-\(display\|content\)\>"
257
258syn keyword cssColorProp contained opacity
259syn match cssColorProp contained "\<color-profile\>"
260syn match cssColorProp contained "\<rendering-intent\>"
261
262
263syn match cssDimensionProp contained "\<\(min\|max\)-\(width\|height\)\>"
264syn keyword cssDimensionProp contained height
265syn keyword cssDimensionProp contained width
266
267" shadow and sizing are in other property groups
268syn match cssFlexibleBoxProp contained "\<box-\(align\|direction\|flex\|ordinal-group\|orient\|pack\|shadow\|sizing\)\>"
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200269syn keyword cssFlexibleBoxAttr contained start end baseline
270syn keyword cssFlexibleBoxAttr contained reverse
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200271syn keyword cssFlexibleBoxAttr contained single multiple
Bram Moolenaard09acef2012-09-21 14:54:30 +0200272syn keyword cssFlexibleBoxAttr contained horizontal
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200273syn match cssFlexibleBoxAttr contained "\<vertical\(-align\)\@!\>" "escape vertical-align
Bram Moolenaard09acef2012-09-21 14:54:30 +0200274syn match cssFlexibleBoxAttr contained "\<\(inline\|block\)-axis\>"
275
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200276" CSS Fonts Module Level 3
277" http://www.w3.org/TR/css-fonts-3/
278syn match cssFontProp contained "\<font\(-\(family\|\|feature-settings\|kerning\|language-override\|size\(-adjust\)\=\|stretch\|style\|synthesis\|variant\(-\(alternates\|caps\|east-asian\|ligatures\|numeric\|position\)\)\=\|weight\)\)\=\>"
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200279
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200280" font attributes
281syn keyword cssFontAttr contained icon menu caption
282syn match cssFontAttr contained "\<small-\(caps\|caption\)\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000283syn match cssFontAttr contained "\<message-box\>"
284syn match cssFontAttr contained "\<status-bar\>"
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200285syn keyword cssFontAttr contained larger smaller
286syn match cssFontAttr contained "\<\(x\{1,2\}-\)\=\(large\|small\)\>"
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200287" font-family attributes
288syn match cssFontAttr contained "\<\(sans-\)\=serif\>"
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200289syn keyword cssFontAttr contained Antiqua Arial Black Book Charcoal Comic Courier Dingbats Gadget Geneva Georgia Grande Helvetica Impact Linotype Lucida MS Monaco Neue New Palatino Roboto Roman Symbol Tahoma Times Trebuchet Verdana Webdings Wingdings York Zapf
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200290syn keyword cssFontAttr contained cursive fantasy monospace
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200291" font-feature-settings attributes
292syn keyword cssFontAttr contained on off
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200293" font-stretch attributes
294syn match cssFontAttr contained "\<\(\(ultra\|extra\|semi\)-\)\=\(condensed\|expanded\)\>"
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200295" font-style attributes
296syn keyword cssFontAttr contained italic oblique
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200297" font-synthesis attributes
298syn keyword cssFontAttr contained weight style
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200299" font-weight attributes
300syn keyword cssFontAttr contained bold bolder lighter
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200301" TODO: font-variant-* attributes
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200302"------------------------------------------------
303
304" Webkit specific property/attributes
305syn match cssFontProp contained "\<font-smooth\>"
306syn match cssFontAttr contained "\<\(subpixel-\)\=\antialiased\>"
307
Bram Moolenaardfb18412013-12-11 18:53:29 +0100308
309" CSS Multi-column Layout Module
310" http://www.w3.org/TR/css3-multicol/
311syn match cssMultiColumnProp contained "\<break-\(after\|before\|inside\)\>"
312syn match cssMultiColumnProp contained "\<column-\(count\|fill\|gap\|rule\(-\(color\|style\|width\)\)\=\|span\|width\)\>"
313syn keyword cssMultiColumnProp contained columns
314syn keyword cssMultiColumnAttr contained balance medium
315syn keyword cssMultiColumnAttr contained always avoid left right page column
316syn match cssMultiColumnAttr contained "\<avoid-\(page\|column\)\>"
317
318" http://www.w3.org/TR/css3-break/#page-break
319syn match cssMultiColumnProp contained "\<page\(-break-\(before\|after\|inside\)\)\=\>"
320
321" TODO find following items in w3c docs.
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200322syn keyword cssGeneratedContentProp contained quotes crop
Bram Moolenaard09acef2012-09-21 14:54:30 +0200323syn match cssGeneratedContentProp contained "\<counter-\(reset\|increment\)\>"
324syn match cssGeneratedContentProp contained "\<move-to\>"
325syn match cssGeneratedContentProp contained "\<page-policy\>"
326syn match cssGeneratedContentAttr contained "\<\(no-\)\=\(open\|close\)-quote\>"
327
Bram Moolenaard09acef2012-09-21 14:54:30 +0200328syn match cssGridProp contained "\<grid-\(columns\|rows\)\>"
329
330syn match cssHyerlinkProp contained "\<target\(-\(name\|new\|position\)\)\=\>"
331
332syn match cssListProp contained "\<list-style\(-\(type\|position\|image\)\)\=\>"
333syn match cssListAttr contained "\<\(lower\|upper\)-\(roman\|alpha\|greek\|latin\)\>"
334syn match cssListAttr contained "\<\(hiragana\|katakana\)\(-iroha\)\=\>"
335syn match cssListAttr contained "\<\(decimal\(-leading-zero\)\=\|cjk-ideographic\)\>"
336syn keyword cssListAttr contained disc circle square hebrew armenian georgian
337syn keyword cssListAttr contained inside outside
338
Bram Moolenaard09acef2012-09-21 14:54:30 +0200339syn keyword cssPositioningProp contained bottom clear clip display float left
340syn keyword cssPositioningProp contained position right top visibility
341syn match cssPositioningProp contained "\<z-index\>"
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200342syn keyword cssPositioningAttr contained block compact
343syn match cssPositioningAttr contained "\<table\(-\(row-group\|\(header\|footer\)-group\|row\|column\(-group\)\=\|cell\|caption\)\)\=\>"
Bram Moolenaard09acef2012-09-21 14:54:30 +0200344syn keyword cssPositioningAttr contained left right both
345syn match cssPositioningAttr contained "\<list-item\>"
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200346syn match cssPositioningAttr contained "\<inline\(-\(block\|box\|table\)\)\=\>"
Bram Moolenaard09acef2012-09-21 14:54:30 +0200347syn keyword cssPositioningAttr contained static relative absolute fixed
348
Bram Moolenaard09acef2012-09-21 14:54:30 +0200349syn keyword cssPrintAttr contained landscape portrait crop cross always avoid
350
351syn match cssTableProp contained "\<\(caption-side\|table-layout\|border-collapse\|border-spacing\|empty-cells\)\>"
352syn keyword cssTableAttr contained fixed collapse separate show hide once always
353
354
355syn keyword cssTextProp contained color direction
Bram Moolenaar071d4272004-06-13 20:20:40 +0000356syn match cssTextProp "\<\(\(word\|letter\)-spacing\|text\(-\(decoration\|transform\|align\|index\|shadow\)\)\=\|vertical-align\|unicode-bidi\|line-height\)\>"
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200357syn match cssTextProp contained "\<text-\(justify\|outline\|warp\|align-last\|size-adjust\|rendering\|stroke\|indent\)\>"
Bram Moolenaard09acef2012-09-21 14:54:30 +0200358syn match cssTextProp contained "\<word-\(break\|\wrap\)\>"
359syn match cssTextProp contained "\<white-space\>"
360syn match cssTextProp contained "\<hanging-punctuation\>"
361syn match cssTextProp contained "\<punctuation-trim\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000362syn match cssTextAttr contained "\<line-through\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000363syn match cssTextAttr contained "\<\(text-\)\=\(top\|bottom\)\>"
Bram Moolenaard09acef2012-09-21 14:54:30 +0200364syn keyword cssTextAttr contained ltr rtl embed nowrap
Bram Moolenaar071d4272004-06-13 20:20:40 +0000365syn keyword cssTextAttr contained underline overline blink sub super middle
Bram Moolenaard09acef2012-09-21 14:54:30 +0200366syn keyword cssTextAttr contained capitalize uppercase lowercase
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200367syn keyword cssTextAttr contained justify baseline sub super
368syn keyword cssTextAttr contained optimizeLegibility optimizeSpeed
Bram Moolenaard09acef2012-09-21 14:54:30 +0200369syn match cssTextAttr contained "\<pre\(-\(line\|wrap\)\)\=\>"
370syn match cssTextAttr contained "\<\(allow\|force\)-end\>"
371syn keyword cssTextAttr contained start end adjacent
372syn match cssTextAttr contained "\<inter-\(word\|ideographic\|cluster\)\>"
373syn keyword cssTextAttr contained distribute kashida first last
374syn keyword cssTextAttr contained clip ellipsis unrestricted suppress
375syn match cssTextAttr contained "\<break-all\>"
376syn match cssTextAttr contained "\<break-word\>"
377syn keyword cssTextAttr contained hyphenate
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200378syn match cssTextAttr contained "\<bidi-override\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000379
Bram Moolenaard09acef2012-09-21 14:54:30 +0200380syn match cssTransformProp contained "\<transform\(-\(origin\|style\)\)\=\>"
381syn match cssTransformProp contained "\<perspective\(-origin\)\=\>"
382syn match cssTransformProp contained "\<backface-visibility\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000383
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200384" CSS Transitions
385" http://www.w3.org/TR/css3-transitions/
Bram Moolenaard09acef2012-09-21 14:54:30 +0200386syn match cssTransitionProp contained "\<transition\(-\(delay\|duration\|property\|timing-function\)\)\=\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000387
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200388" transition-time-function attributes
389syn match cssTransitionAttr contained "\<linear\(-gradient\)\@!\>"
390syn match cssTransitionAttr contained "\<ease\(-\(in-out\|out\|in\)\)\=\>"
391syn match cssTransitionAttr contained "\<step\(-start\|-end\)\=\>"
392"------------------------------------------------
393" CSS Basic User Interface Module Level 3 (CSS3 UI)
394" http://www.w3.org/TR/css3-ui/
Bram Moolenaard09acef2012-09-21 14:54:30 +0200395syn match cssUIProp contained "\<box-sizing\>"
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200396syn match cssUIAttr contained "\<\(content\|padding\|border\)\(-box\)\=\>"
397
398syn keyword cssUIProp contained cursor
399syn match cssUIAttr contained "\<\(\([ns]\=[ew]\=\)\|col\|row\|nesw\|nwse\)-resize\>"
400syn keyword cssUIAttr contained crosshair help move pointer alias copy
401syn keyword cssUIAttr contained progress wait text cell move
402syn match cssUIAttr contained "\<context-menu\>"
403syn match cssUIAttr contained "\<no-drop\>"
404syn match cssUIAttr contained "\<not-allowed\>"
405syn match cssUIAttr contained "\<all-scroll\>"
406syn match cssUIAttr contained "\<\(vertical-\)\=text\>"
407syn match cssUIAttr contained "\<zoom\(-in\|-out\)\=\>"
408
409syn match cssUIProp contained "\<ime-mode\>"
410syn keyword cssUIAttr contained active inactive disabled
411
412syn match cssUIProp contained "\<nav-\(down\|index\|left\|right\|up\)\=\>"
413syn match cssUIProp contained "\<outline\(-\(width\|style\|color\|offset\)\)\=\>"
414syn keyword cssUIAttr contained invert
415
416syn keyword cssUIProp contained icon resize
417syn keyword cssUIAttr contained both horizontal vertical
418
419syn match cssUIProp contained "\<text-overflow\>"
420syn keyword cssUIAttr contained clip ellipsis
421
Bram Moolenaardfb18412013-12-11 18:53:29 +0100422" Already highlighted Props: font content
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200423"------------------------------------------------
424" Webkit/iOS specific attributes
425syn match cssUIAttr contained '\(preserve-3d\)'
426" IE specific attributes
427syn match cssIEUIAttr contained '\(bicubic\)'
428
429" Webkit/iOS specific properties
430syn match cssUIProp contained '\(tap-highlight-color\|user-select\|touch-callout\)'
431" IE specific properties
432syn match cssIEUIProp contained '\(interpolation-mode\|zoom\|filter\)'
433
434" Webkit/Firebox specific properties/attributes
435syn keyword cssUIProp contained appearance
436syn keyword cssUIAttr contained window button field icon document menu
437
Bram Moolenaar071d4272004-06-13 20:20:40 +0000438
439syn match cssAuralProp contained "\<\(pause\|cue\)\(-\(before\|after\)\)\=\>"
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200440syn match cssAuralProp contained "\<\(play-during\|speech-rate\|voice-family\|pitch\(-range\)\=\|speak\(-\(punctuation\|numeral\|header\)\)\=\)\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000441syn keyword cssAuralProp contained volume during azimuth elevation stress richness
442syn match cssAuralAttr contained "\<\(x-\)\=\(soft\|loud\)\>"
443syn keyword cssAuralAttr contained silent
444syn match cssAuralAttr contained "\<spell-out\>"
445syn keyword cssAuralAttr contained non mix
446syn match cssAuralAttr contained "\<\(left\|right\)-side\>"
447syn match cssAuralAttr contained "\<\(far\|center\)-\(left\|center\|right\)\>"
448syn keyword cssAuralAttr contained leftwards rightwards behind
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200449syn keyword cssAuralAttr contained below level above lower higher
450syn match cssAuralAttr contained "\<\(x-\)\=\(slow\|fast\|low\|high\)\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000451syn keyword cssAuralAttr contained faster slower
452syn keyword cssAuralAttr contained male female child code digits continuous
453
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200454" mobile text
455syn match cssMobileTextProp contained "\<text-size-adjust\>"
Bram Moolenaard09acef2012-09-21 14:54:30 +0200456
Bram Moolenaar071d4272004-06-13 20:20:40 +0000457
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200458
Bram Moolenaar071d4272004-06-13 20:20:40 +0000459syn match cssBraces contained "[{}]"
460syn match cssError contained "{@<>"
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200461syn region cssDefinition transparent matchgroup=cssBraces start='{' end='}' contains=cssAttrRegion,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition,cssHacks,cssNoise fold
Bram Moolenaar071d4272004-06-13 20:20:40 +0000462syn match cssBraceError "}"
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200463syn match cssAttrComma ","
Bram Moolenaar071d4272004-06-13 20:20:40 +0000464
Bram Moolenaard09acef2012-09-21 14:54:30 +0200465" Pseudo class
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200466" http://www.w3.org/TR/css3-selectors/
467syn match cssPseudoClass ":[A-Za-z0-9_-]*" contains=cssNoise,cssPseudoClassId,cssUnicodeEscape,cssVendor,cssPseudoClassFn
468syn keyword cssPseudoClassId contained link visited active hover before after left right
469syn keyword cssPseudoClassId contained root empty target enable disabled checked invalid
470syn match cssPseudoClassId contained "\<first-\(line\|letter\)\>"
471syn match cssPseudoClassId contained "\<\(first\|last\|only\)-\(of-type\|child\)\>"
472syn region cssPseudoClassFn contained matchgroup=cssFunctionName start="\<\(not\|lang\|\(nth\|nth-last\)-\(of-type\|child\)\)(" end=")"
473" ------------------------------------
474" Vendor specific properties
475syn match cssPseudoClassId contained "\<selection\>"
476syn match cssPseudoClassId contained "\<focus\(-inner\)\=\>"
477syn match cssPseudoClassId contained "\<\(input-\)\=placeholder\>"
478
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200479" Misc highlight groups
480syntax match cssUnitDecorators /\(#\|-\|%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|ch\|rem\|vh\|vw\|vmin\|vmax\|dpi\|dppx\|dpcm\|Hz\|kHz\|s\|ms\|deg\|grad\|rad\)/ contained
481syntax match cssNoise contained /\(:\|;\|\/\)/
Bram Moolenaar071d4272004-06-13 20:20:40 +0000482
Bram Moolenaard09acef2012-09-21 14:54:30 +0200483" Comment
Bram Moolenaar18441ae2013-09-24 23:30:38 +0200484syn region cssComment start="/\*" end="\*/" contains=@Spell fold
Bram Moolenaar071d4272004-06-13 20:20:40 +0000485
486syn match cssUnicodeEscape "\\\x\{1,6}\s\?"
Bram Moolenaardfb18412013-12-11 18:53:29 +0100487syn match cssSpecialCharQQ +\\\\\|\\"+ contained
488syn match cssSpecialCharQ +\\\\\|\\'+ contained
Bram Moolenaar071d4272004-06-13 20:20:40 +0000489syn region cssStringQQ start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=cssUnicodeEscape,cssSpecialCharQQ
490syn region cssStringQ start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=cssUnicodeEscape,cssSpecialCharQ
Bram Moolenaard09acef2012-09-21 14:54:30 +0200491
492" Vendor Prefix
493syn match cssVendor contained "\(-\(webkit\|moz\|o\|ms\)-\)"
494
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200495" Various CSS Hack characters
496" In earlier versions of IE (6 and 7), one can prefix property names
497" with a _ or * to isolate those definitions to particular versions of IE
498" This is purely decorative and therefore we assign to the same highlight
499" group to cssVendor, for more information:
500" http://www.paulirish.com/2009/browser-specific-css-hacks/
501syn match cssHacks contained /\(_\|*\)/
502
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200503" Attr Enhance
504" Some keywords are both Prop and Attr, so we have to handle them
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200505syn region cssAttrRegion start=/:/ end=/\ze\(;\|)\|}\)/ contained contains=css.*Attr,cssColor,cssImportant,cssValue.*,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssAttrComma,cssNoise
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200506
507" Hack for transition
Bram Moolenaarf2571c62015-06-09 19:44:55 +0200508" 'transition' has Props after ':'.
509syn region cssAttrRegion start=/transition\s*:/ end=/\ze\(;\|)\|}\)/ contained contains=css.*Prop,css.*Attr,cssColor,cssImportant,cssValue.*,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssAttrComma,cssNoise
Bram Moolenaarbaca7f72013-09-22 14:42:24 +0200510
Bram Moolenaar071d4272004-06-13 20:20:40 +0000511
512if main_syntax == "css"
513 syn sync minlines=10
514endif
515
516" Define the default highlighting.
Bram Moolenaar89bcfda2016-08-30 23:26:57 +0200517" Only when an item doesn't have highlighting yet
Bram Moolenaar071d4272004-06-13 20:20:40 +0000518
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200519hi def link cssComment Comment
520hi def link cssVendor Comment
521hi def link cssHacks Comment
522hi def link cssTagName Statement
523hi def link cssDeprecated Error
524hi def link cssSelectorOp Special
525hi def link cssSelectorOp2 Special
526hi def link cssAttrComma Special
Bram Moolenaard09acef2012-09-21 14:54:30 +0200527
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200528hi def link cssAnimationProp cssProp
529hi def link cssBackgroundProp cssProp
530hi def link cssBorderProp cssProp
531hi def link cssBoxProp cssProp
532hi def link cssColorProp cssProp
533hi def link cssContentForPagedMediaProp cssProp
534hi def link cssDimensionProp cssProp
535hi def link cssFlexibleBoxProp cssProp
536hi def link cssFontProp cssProp
537hi def link cssGeneratedContentProp cssProp
538hi def link cssGridProp cssProp
539hi def link cssHyerlinkProp cssProp
540hi def link cssLineboxProp cssProp
541hi def link cssListProp cssProp
542hi def link cssMarqueeProp cssProp
543hi def link cssMultiColumnProp cssProp
544hi def link cssPagedMediaProp cssProp
545hi def link cssPositioningProp cssProp
546hi def link cssPrintProp cssProp
547hi def link cssRubyProp cssProp
548hi def link cssSpeechProp cssProp
549hi def link cssTableProp cssProp
550hi def link cssTextProp cssProp
551hi def link cssTransformProp cssProp
552hi def link cssTransitionProp cssProp
553hi def link cssUIProp cssProp
554hi def link cssIEUIProp cssProp
555hi def link cssAuralProp cssProp
556hi def link cssRenderProp cssProp
557hi def link cssMobileTextProp cssProp
Bram Moolenaard09acef2012-09-21 14:54:30 +0200558
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200559hi def link cssAnimationAttr cssAttr
560hi def link cssBackgroundAttr cssAttr
561hi def link cssBorderAttr cssAttr
562hi def link cssBoxAttr cssAttr
563hi def link cssContentForPagedMediaAttr cssAttr
564hi def link cssDimensionAttr cssAttr
565hi def link cssFlexibleBoxAttr cssAttr
566hi def link cssFontAttr cssAttr
567hi def link cssGeneratedContentAttr cssAttr
568hi def link cssGridAttr cssAttr
569hi def link cssHyerlinkAttr cssAttr
570hi def link cssLineboxAttr cssAttr
571hi def link cssListAttr cssAttr
572hi def link cssMarginAttr cssAttr
573hi def link cssMarqueeAttr cssAttr
574hi def link cssMultiColumnAttr cssAttr
575hi def link cssPaddingAttr cssAttr
576hi def link cssPagedMediaAttr cssAttr
577hi def link cssPositioningAttr cssAttr
578hi def link cssGradientAttr cssAttr
579hi def link cssPrintAttr cssAttr
580hi def link cssRubyAttr cssAttr
581hi def link cssSpeechAttr cssAttr
582hi def link cssTableAttr cssAttr
583hi def link cssTextAttr cssAttr
584hi def link cssTransformAttr cssAttr
585hi def link cssTransitionAttr cssAttr
586hi def link cssUIAttr cssAttr
587hi def link cssIEUIAttr cssAttr
588hi def link cssAuralAttr cssAttr
589hi def link cssRenderAttr cssAttr
590hi def link cssCommonAttr cssAttr
Bram Moolenaard09acef2012-09-21 14:54:30 +0200591
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200592hi def link cssPseudoClassId PreProc
593hi def link cssPseudoClassLang Constant
594hi def link cssValueLength Number
595hi def link cssValueInteger Number
596hi def link cssValueNumber Number
597hi def link cssValueAngle Number
598hi def link cssValueTime Number
599hi def link cssValueFrequency Number
600hi def link cssFunction Constant
601hi def link cssURL String
602hi def link cssFunctionName Function
603hi def link cssFunctionComma Function
604hi def link cssColor Constant
605hi def link cssIdentifier Function
606hi def link cssInclude Include
607hi def link cssIncludeKeyword atKeyword
608hi def link cssImportant Special
609hi def link cssBraces Function
610hi def link cssBraceError Error
611hi def link cssError Error
612hi def link cssUnicodeEscape Special
613hi def link cssStringQQ String
614hi def link cssStringQ String
615hi def link cssAttributeSelector String
616hi def link cssMedia atKeyword
617hi def link cssMediaType Special
618hi def link cssMediaComma Normal
619hi def link cssMediaKeyword Statement
620hi def link cssMediaProp cssProp
621hi def link cssMediaAttr cssAttr
622hi def link cssPage atKeyword
623hi def link cssPagePseudo PreProc
624hi def link cssPageMargin atKeyword
625hi def link cssPageProp cssProp
626hi def link cssKeyFrame atKeyword
627hi def link cssKeyFrameSelector Constant
628hi def link cssFontDescriptor Special
629hi def link cssFontDescriptorFunction Constant
630hi def link cssFontDescriptorProp cssProp
631hi def link cssFontDescriptorAttr cssAttr
632hi def link cssUnicodeRange Constant
633hi def link cssClassName Function
634hi def link cssClassNameDot Function
635hi def link cssProp StorageClass
636hi def link cssAttr Constant
637hi def link cssUnitDecorators Number
638hi def link cssNoise Noise
639hi def link atKeyword PreProc
Bram Moolenaar071d4272004-06-13 20:20:40 +0000640
641let b:current_syntax = "css"
642
643if main_syntax == 'css'
644 unlet main_syntax
645endif
646
Bram Moolenaar0c5fa7d2012-10-05 22:26:30 +0200647let &cpo = s:cpo_save
648unlet s:cpo_save
Bram Moolenaar071d4272004-06-13 20:20:40 +0000649" vim: ts=8
650