Mercurial > vim
comparison runtime/syntax/css.vim @ 6823:0303182665d5
Updated runtime files.
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Tue, 09 Jun 2015 19:44:55 +0200 |
parents | 7818ca6de3d0 |
children | 43efa4f5a8ea |
comparison
equal
deleted
inserted
replaced
6822:856ac8b406e6 | 6823:0303182665d5 |
---|---|
4 " Claudio Fleiner <claudio@fleiner.com> (Maintainer) | 4 " Claudio Fleiner <claudio@fleiner.com> (Maintainer) |
5 " Yeti (Add full CSS2, HTML4 support) | 5 " Yeti (Add full CSS2, HTML4 support) |
6 " Nikolai Weibull (Add CSS2 support) | 6 " Nikolai Weibull (Add CSS2 support) |
7 " Maintainer: Jules Wang <w.jq0722@gmail.com> | 7 " Maintainer: Jules Wang <w.jq0722@gmail.com> |
8 " URL: https://github.com/JulesWang/css.vim | 8 " URL: https://github.com/JulesWang/css.vim |
9 " Last Change: 2013 Nov.27 | 9 " Last Change: 2015 Apr.17 |
10 | 10 |
11 " For version 5.x: Clear all syntax items | 11 " For version 5.x: Clear all syntax items |
12 " For version 6.x: Quit when a syntax file was already loaded | 12 " For version 6.x: Quit when a syntax file was already loaded |
13 if !exists("main_syntax") | 13 if !exists("main_syntax") |
14 if version < 600 | 14 if version < 600 |
24 let s:cpo_save = &cpo | 24 let s:cpo_save = &cpo |
25 set cpo&vim | 25 set cpo&vim |
26 | 26 |
27 syn case ignore | 27 syn case ignore |
28 | 28 |
29 " All HTML4 tags | 29 " HTML4 tags |
30 syn keyword cssTagName abbr acronym address applet area a b base | 30 syn keyword cssTagName abbr address area a b base |
31 syn keyword cssTagName basefont bdo big blockquote body br button | 31 syn keyword cssTagName bdo blockquote body br button |
32 syn keyword cssTagName caption center cite code col colgroup dd del | 32 syn keyword cssTagName caption cite code col colgroup dd del |
33 syn keyword cssTagName dfn dir div dl dt em fieldset font form frame | 33 syn keyword cssTagName dfn div dl dt em fieldset form |
34 syn keyword cssTagName frameset h1 h2 h3 h4 h5 h6 head hr html img i | 34 syn keyword cssTagName h1 h2 h3 h4 h5 h6 head hr html img i |
35 syn keyword cssTagName iframe img input ins isindex kbd label legend li | 35 syn keyword cssTagName iframe input ins isindex kbd label legend li |
36 syn keyword cssTagName link map menu meta noframes noscript ol optgroup | 36 syn keyword cssTagName link map menu meta noscript ol optgroup |
37 syn keyword cssTagName option p param pre q s samp script select small | 37 syn keyword cssTagName option p param pre q s samp script small |
38 syn keyword cssTagName span strike strong style sub sup table tbody td | 38 syn keyword cssTagName span strong sub sup tbody td |
39 syn keyword cssTagName textarea tfoot th thead title tr tt ul u var | 39 syn keyword cssTagName textarea tfoot th thead title tr ul u var |
40 syn keyword cssTagName object svg | 40 syn keyword cssTagName object svg |
41 syn match cssTagName /\<select\>\|\<style\>\|\<table\>/ | |
41 | 42 |
42 " 34 HTML5 tags | 43 " 34 HTML5 tags |
43 syn keyword cssTagName article aside audio bdi canvas command data | 44 syn keyword cssTagName article aside audio bdi canvas command data |
44 syn keyword cssTagName datalist details dialog embed figcaption figure footer | 45 syn keyword cssTagName datalist details dialog embed figcaption figure footer |
45 syn keyword cssTagName header hgroup keygen main mark menuitem meter nav | 46 syn keyword cssTagName header hgroup keygen main mark menuitem meter nav |
46 syn keyword cssTagName output progress rt rp ruby section | 47 syn keyword cssTagName output progress rt rp ruby section |
47 syn keyword cssTagName source summary time track video wbr | 48 syn keyword cssTagName source summary time track video wbr |
48 | 49 |
49 " Tags not supported in HTML5 | 50 " Tags not supported in HTML5 |
50 syn keyword cssDeprecated acronym applet basefont big center dir | 51 " acronym applet basefont big center dir |
51 syn keyword cssDeprecated font frame frameset noframes strike tt | 52 " font frame frameset noframes strike tt |
52 | 53 |
53 syn match cssTagName "\*" | 54 syn match cssTagName "\*" |
54 | 55 |
55 " selectors | 56 " selectors |
56 syn match cssSelectorOp "[,>+~]" | 57 syn match cssSelectorOp "[,>+~]" |
68 endtry | 69 endtry |
69 | 70 |
70 " digits | 71 " digits |
71 syn match cssValueInteger contained "[-+]\=\d\+" contains=cssUnitDecorators | 72 syn match cssValueInteger contained "[-+]\=\d\+" contains=cssUnitDecorators |
72 syn match cssValueNumber contained "[-+]\=\d\+\(\.\d*\)\=" contains=cssUnitDecorators | 73 syn match cssValueNumber contained "[-+]\=\d\+\(\.\d*\)\=" contains=cssUnitDecorators |
73 syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=\(%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|rem\|dpi\|dppx\|dpcm\)" contains=cssUnitDecorators | 74 syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=\(%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|rem\|dpi\|dppx\|dpcm\)\>" contains=cssUnitDecorators |
74 syn match cssValueAngle contained "[-+]\=\d\+\(\.\d*\)\=\(deg\|grad\|rad\)" contains=cssUnitDecorators | 75 syn match cssValueAngle contained "[-+]\=\d\+\(\.\d*\)\=\(deg\|grad\|rad\)\>" contains=cssUnitDecorators |
75 syn match cssValueTime contained "+\=\d\+\(\.\d*\)\=\(ms\|s\)" contains=cssUnitDecorators | 76 syn match cssValueTime contained "+\=\d\+\(\.\d*\)\=\(ms\|s\)\>" contains=cssUnitDecorators |
76 syn match cssValueFrequency contained "+\=\d\+\(\.\d*\)\=\(Hz\|kHz\)" contains=cssUnitDecorators | 77 syn match cssValueFrequency contained "+\=\d\+\(\.\d*\)\=\(Hz\|kHz\)\>" contains=cssUnitDecorators |
77 | 78 |
78 | 79 |
79 syn match cssIncludeKeyword /@\(-[a-z]+-\)\=\(media\|keyframes\|import\|charset\|namespace\|page\)/ contained | 80 syn match cssIncludeKeyword /@\(-[a-z]\+-\)\=\(media\|keyframes\|import\|charset\|namespace\|page\)/ contained |
80 " @media | 81 " @media |
81 syn region cssInclude start=/@media\>/ end=/\ze{/ skipwhite skipnl contains=cssMediaProp,cssValueLength,cssMediaKeyword,cssValueInteger,cssMediaAttr,cssVendor,cssMediaType,cssIncludeKeyword,cssMediaComma,cssComment nextgroup=cssMediaBlock | 82 syn region cssInclude start=/@media\>/ end=/\ze{/ skipwhite skipnl contains=cssMediaProp,cssValueLength,cssMediaKeyword,cssValueInteger,cssMediaAttr,cssVendor,cssMediaType,cssIncludeKeyword,cssMediaComma,cssComment nextgroup=cssMediaBlock |
82 syn keyword cssMediaType contained screen print aural braille embossed handheld projection tty tv speech all contained skipwhite skipnl | 83 syn keyword cssMediaType contained screen print aural braille embossed handheld projection tty tv speech all contained skipwhite skipnl |
83 syn keyword cssMediaKeyword only not and contained | 84 syn keyword cssMediaKeyword only not and contained |
84 syn 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 | 85 syn 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 |
85 syn match cssMediaComma "," skipwhite skipnl contained | 86 syn match cssMediaComma "," skipwhite skipnl contained |
86 | 87 |
87 " Reference: http://www.w3.org/TR/css3-mediaqueries/ | 88 " Reference: http://www.w3.org/TR/css3-mediaqueries/ |
88 syn keyword cssMediaProp contained width height orientation scan grid | 89 syn keyword cssMediaProp contained width height orientation scan grid |
89 syn match cssMediaProp contained /\(\(device\)-\)\=aspect-ratio/ | 90 syn match cssMediaProp contained /\(\(max\|min\)-\)\=\(\(device\)-\)\=aspect-ratio/ |
90 syn match cssMediaProp contained /\(\(max\|min\)-\)\=device-pixel-ratio/ | 91 syn match cssMediaProp contained /\(\(max\|min\)-\)\=device-pixel-ratio/ |
91 syn match cssMediaProp contained /\(\(max\|min\)-\)\=device-\(height\|width\)/ | 92 syn match cssMediaProp contained /\(\(max\|min\)-\)\=device-\(height\|width\)/ |
92 syn match cssMediaProp contained /\(\(max\|min\)-\)\=\(height\|width\|resolution\|monochrome\|color\(-index\)\=\)/ | 93 syn match cssMediaProp contained /\(\(max\|min\)-\)\=\(height\|width\|resolution\|monochrome\|color\(-index\)\=\)/ |
93 syn keyword cssMediaAttr contained portrait landscape progressive interlace | 94 syn keyword cssMediaAttr contained portrait landscape progressive interlace |
94 | 95 |
102 " http://www.w3.org/TR/CSS2/page.html#break-inside | 103 " http://www.w3.org/TR/CSS2/page.html#break-inside |
103 syn keyword cssPageProp contained orphans widows | 104 syn keyword cssPageProp contained orphans widows |
104 | 105 |
105 " @keyframe | 106 " @keyframe |
106 " http://www.w3.org/TR/css3-animations/#keyframes | 107 " http://www.w3.org/TR/css3-animations/#keyframes |
107 syn match cssKeyFrame "@\(-[a-z]+-\)\=keyframes\>[^{]*{\@=" nextgroup=cssKeyFrameWrap contains=cssVendor,cssIncludeKeyword skipwhite skipnl transparent | 108 syn match cssKeyFrame "@\(-[a-z]\+-\)\=keyframes\>[^{]*{\@=" nextgroup=cssKeyFrameWrap contains=cssVendor,cssIncludeKeyword skipwhite skipnl transparent |
108 syn region cssKeyFrameWrap contained transparent matchgroup=cssBraces start="{" end="}" contains=cssKeyFrameSelector | 109 syn region cssKeyFrameWrap contained transparent matchgroup=cssBraces start="{" end="}" contains=cssKeyFrameSelector |
109 syn match cssKeyFrameSelector /\(\d*%\|from\|to\)\=/ contained skipwhite skipnl nextgroup=cssDefinition | 110 syn match cssKeyFrameSelector /\(\d*%\|from\|to\)\=/ contained skipwhite skipnl nextgroup=cssDefinition |
110 | 111 |
111 " @import | 112 " @import |
112 syn region cssInclude start=/@import\>/ end=/\ze;/ transparent contains=cssStringQ,cssStringQQ,cssUnicodeEscape,cssComment,cssIncludeKeyword,cssURL,cssMediaProp,cssValueLength,cssMediaKeyword,cssValueInteger,cssMediaAttr,cssVendor,cssMediaType | 113 syn region cssInclude start=/@import\>/ end=/\ze;/ transparent contains=cssStringQ,cssStringQQ,cssUnicodeEscape,cssComment,cssIncludeKeyword,cssURL,cssMediaProp,cssValueLength,cssMediaKeyword,cssValueInteger,cssMediaAttr,cssVendor,cssMediaType |
114 syn region cssInclude start=/@namespace\>/ end=/\ze;/ transparent contains=cssStringQ,cssStringQQ,cssUnicodeEscape,cssComment,cssIncludeKeyword | 115 syn region cssInclude start=/@namespace\>/ end=/\ze;/ transparent contains=cssStringQ,cssStringQQ,cssUnicodeEscape,cssComment,cssIncludeKeyword |
115 | 116 |
116 " @font-face | 117 " @font-face |
117 " http://www.w3.org/TR/css3-fonts/#at-font-face-rule | 118 " http://www.w3.org/TR/css3-fonts/#at-font-face-rule |
118 syn match cssFontDescriptor "@font-face\>" nextgroup=cssFontDescriptorBlock skipwhite skipnl | 119 syn match cssFontDescriptor "@font-face\>" nextgroup=cssFontDescriptorBlock skipwhite skipnl |
119 syn region cssFontDescriptorBlock contained transparent matchgroup=cssBraces start="{" end="}" contains=cssComment,cssError,cssUnicodeEscape,cssFontProp,cssFontAttr,cssCommonAttr,cssStringQ,cssStringQQ,cssFontDescriptorProp,cssValue.*,cssFontDescriptorFunction,cssUnicodeRange,cssFontDescriptorAttr | 120 syn region cssFontDescriptorBlock contained transparent matchgroup=cssBraces start="{" end="}" contains=cssComment,cssError,cssUnicodeEscape,cssCommonAttr,cssFontDescriptorProp,cssValue.*,cssFontDescriptorFunction,cssFontDescriptorAttr,cssNoise |
120 "syn match cssFontDescriptorProp contained "\<\(unicode-range\|unit-per-em\|panose-1\|cap-height\|x-height\|definition-src\)\>" | 121 |
121 "syn keyword cssFontDescriptorProp contained src stemv stemh slope ascent descent widths bbox baseline centerline mathline topline | 122 syn match cssFontDescriptorProp contained "\<font-family\>" |
122 syn keyword cssFontDescriptorProp contained src | 123 syn keyword cssFontDescriptorProp contained src |
124 syn match cssFontDescriptorProp contained "\<font-\(style\|weight\|stretch\)\>" | |
123 syn match cssFontDescriptorProp contained "\<unicode-range\>" | 125 syn match cssFontDescriptorProp contained "\<unicode-range\>" |
124 syn keyword cssFontDescriptorAttr contained all | 126 syn match cssFontDescriptorProp contained "\<font-\(variant\|feature-settings\)\>" |
127 | |
128 " src functions | |
125 syn region cssFontDescriptorFunction contained matchgroup=cssFunctionName start="\<\(uri\|url\|local\|format\)\s*(" end=")" contains=cssStringQ,cssStringQQ oneline keepend | 129 syn region cssFontDescriptorFunction contained matchgroup=cssFunctionName start="\<\(uri\|url\|local\|format\)\s*(" end=")" contains=cssStringQ,cssStringQQ oneline keepend |
126 syn match cssUnicodeRange contained "U+[0-9A-Fa-f?]\+" | 130 " font-sytle and font-weight attributes |
127 syn match cssUnicodeRange contained "U+\x\+-\x\+" | 131 syn keyword cssFontDescriptorAttr contained normal italic oblique bold |
132 " font-stretch attributes | |
133 syn match cssFontDescriptorAttr contained "\<\(\(ultra\|extra\|semi\)-\)\=\(condensed\|expanded\)\>" | |
134 " unicode-range attributes | |
135 syn match cssFontDescriptorAttr contained "U+[0-9A-Fa-f?]\+" | |
136 syn match cssFontDescriptorAttr contained "U+\x\+-\x\+" | |
137 " font-feature-settings attributes | |
138 syn keyword cssFontDescriptorAttr contained on off | |
139 | |
140 | |
128 | 141 |
129 " The 16 basic color names | 142 " The 16 basic color names |
130 syn keyword cssColor contained aqua black blue fuchsia gray green lime maroon navy olive purple red silver teal yellow | 143 syn keyword cssColor contained aqua black blue fuchsia gray green lime maroon navy olive purple red silver teal yellow |
131 | 144 |
132 " 130 more color names | 145 " 130 more color names |
133 syn keyword cssColor contained aliceblue antiquewhite aquamarine azure | 146 syn keyword cssColor contained aliceblue antiquewhite aquamarine azure |
134 syn keyword cssColor contained beige bisque blanchedalmond blueviolet brown burlywood | 147 syn keyword cssColor contained beige bisque blanchedalmond blueviolet brown burlywood |
135 syn keyword cssColor contained cadetblue chartreuse chocolate coral cornflowerblue cornsilk crimson cyan | 148 syn keyword cssColor contained cadetblue chartreuse chocolate coral cornflowerblue cornsilk crimson cyan |
136 syn match cssColor contained /dark\(blue\|cyan\|goldenrod\|gray\|green\|grey\|khaki\)/ | 149 syn match cssColor contained /\<dark\(blue\|cyan\|goldenrod\|gray\|green\|grey\|khaki\)\>/ |
137 syn match cssColor contained /dark\(magenta\|olivegreen\|orange\|orchid\|red\|salmon\|seagreen\)/ | 150 syn match cssColor contained /\<dark\(magenta\|olivegreen\|orange\|orchid\|red\|salmon\|seagreen\)\>/ |
138 syn match cssColor contained /darkslate\(blue\|gray\|grey\)/ | 151 syn match cssColor contained /\<darkslate\(blue\|gray\|grey\)\>/ |
139 syn match cssColor contained /dark\(turquoise\|violet\)/ | 152 syn match cssColor contained /\<dark\(turquoise\|violet\)\>/ |
140 syn keyword cssColor contained deeppink deepskyblue dimgray dimgrey dodgerblue firebrick | 153 syn keyword cssColor contained deeppink deepskyblue dimgray dimgrey dodgerblue firebrick |
141 syn keyword cssColor contained floralwhite forestgreen gainsboro ghostwhite gold | 154 syn keyword cssColor contained floralwhite forestgreen gainsboro ghostwhite gold |
142 syn keyword cssColor contained goldenrod greenyellow grey honeydew hotpink | 155 syn keyword cssColor contained goldenrod greenyellow grey honeydew hotpink |
143 syn keyword cssColor contained indianred indigo ivory khaki lavender lavenderblush lawngreen | 156 syn keyword cssColor contained indianred indigo ivory khaki lavender lavenderblush lawngreen |
144 syn keyword cssColor contained lemonchiffon limegreen linen magenta | 157 syn keyword cssColor contained lemonchiffon limegreen linen magenta |
145 syn match cssColor contained /light\(blue\|coral\|cyan\|goldenrodyellow\|gray\|green\)/ | 158 syn match cssColor contained /\<light\(blue\|coral\|cyan\|goldenrodyellow\|gray\|green\)\>/ |
146 syn match cssColor contained /light\(grey\|pink\|salmon\|seagreen\|skyblue\|yellow\)/ | 159 syn match cssColor contained /\<light\(grey\|pink\|salmon\|seagreen\|skyblue\|yellow\)\>/ |
147 syn match cssColor contained /light\(slategray\|slategrey\|steelblue\)/ | 160 syn match cssColor contained /\<light\(slategray\|slategrey\|steelblue\)\>/ |
148 syn match cssColor contained /medium\(aquamarine\|blue\|orchid\|purple\|seagreen\)/ | 161 syn match cssColor contained /\<medium\(aquamarine\|blue\|orchid\|purple\|seagreen\)\>/ |
149 syn match cssColor contained /medium\(slateblue\|springgreen\|turquoise\|violetred\)/ | 162 syn match cssColor contained /\<medium\(slateblue\|springgreen\|turquoise\|violetred\)\>/ |
150 syn keyword cssColor contained midnightblue mintcream mistyrose moccasin navajowhite | 163 syn keyword cssColor contained midnightblue mintcream mistyrose moccasin navajowhite |
151 syn keyword cssColor contained oldlace olivedrab orange orangered orchid | 164 syn keyword cssColor contained oldlace olivedrab orange orangered orchid |
152 syn match cssColor contained /pale\(goldenrod\|green\|turquoise\|violetred\)/ | 165 syn match cssColor contained /\<pale\(goldenrod\|green\|turquoise\|violetred\)\>/ |
153 syn keyword cssColor contained papayawhip peachpuff peru pink plum powderblue | 166 syn keyword cssColor contained papayawhip peachpuff peru pink plum powderblue |
154 syn keyword cssColor contained rosybrown royalblue saddlebrown salmon sandybrown | 167 syn keyword cssColor contained rosybrown royalblue saddlebrown salmon sandybrown |
155 syn keyword cssColor contained seagreen seashell sienna skyblue slateblue | 168 syn keyword cssColor contained seagreen seashell sienna skyblue slateblue |
156 syn keyword cssColor contained slategray slategrey snow springgreen steelblue tan | 169 syn keyword cssColor contained slategray slategrey snow springgreen steelblue tan |
157 syn keyword cssColor contained thistle tomato turquoise violet wheat | 170 syn keyword cssColor contained thistle tomato turquoise violet wheat |
165 syn case ignore | 178 syn case ignore |
166 | 179 |
167 syn match cssImportant contained "!\s*important\>" | 180 syn match cssImportant contained "!\s*important\>" |
168 | 181 |
169 syn match cssColor contained "\<transparent\>" | 182 syn match cssColor contained "\<transparent\>" |
183 syn match cssColor contained "\<currentColor\>" | |
170 syn match cssColor contained "\<white\>" | 184 syn match cssColor contained "\<white\>" |
171 syn match cssColor contained "#[0-9A-Fa-f]\{3\}\>" contains=cssUnitDecorators | 185 syn match cssColor contained "#[0-9A-Fa-f]\{3\}\>" contains=cssUnitDecorators |
172 syn match cssColor contained "#[0-9A-Fa-f]\{6\}\>" contains=cssUnitDecorators | 186 syn match cssColor contained "#[0-9A-Fa-f]\{6\}\>" contains=cssUnitDecorators |
173 | 187 |
174 syn region cssURL contained matchgroup=cssFunctionName start="\<url\s*(" end=")" oneline extend | 188 syn region cssURL contained matchgroup=cssFunctionName start="\<url\s*(" end=")" contains=cssStringQ,cssStringQQ oneline |
175 syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgb\|clip\|attr\|counter\|rect\|cubic-bezier\|steps\)\s*(" end=")" oneline contains=cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma | 189 syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgb\|clip\|attr\|counter\|rect\|cubic-bezier\|steps\)\s*(" end=")" oneline contains=cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma |
176 syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgba\|hsl\|hsla\|color-stop\|from\|to\)\s*(" end=")" oneline contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma,cssFunction | 190 syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgba\|hsl\|hsla\|color-stop\|from\|to\)\s*(" end=")" oneline contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma,cssFunction |
177 syn region cssFunction contained matchgroup=cssFunctionName start="\<\(linear-\|radial-\)\=\gradient\s*(" end=")" oneline contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunction,cssGradientAttr,cssFunctionComma | 191 syn region cssFunction contained matchgroup=cssFunctionName start="\<\(linear-\|radial-\)\=\gradient\s*(" end=")" oneline contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunction,cssGradientAttr,cssFunctionComma |
178 syn 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 | 192 syn 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 |
179 syn keyword cssGradientAttr contained top bottom left right cover center middle ellipse at | 193 syn keyword cssGradientAttr contained top bottom left right cover center middle ellipse at |
194 " animation-fill-mode attributes | 208 " animation-fill-mode attributes |
195 syn keyword cssAnimationAttr contained forwards backwards both | 209 syn keyword cssAnimationAttr contained forwards backwards both |
196 | 210 |
197 " animation-play-state attributes | 211 " animation-play-state attributes |
198 syn keyword cssAnimationAttr contained running paused | 212 syn keyword cssAnimationAttr contained running paused |
213 | |
214 " animation-iteration-count attributes | |
215 syn keyword cssAnimationAttr contained infinite | |
199 "------------------------------------------------ | 216 "------------------------------------------------ |
200 " CSS Backgrounds and Borders Module Level 3 | 217 " CSS Backgrounds and Borders Module Level 3 |
201 " http://www.w3.org/TR/css3-background/ | 218 " http://www.w3.org/TR/css3-background/ |
202 syn match cssBackgroundProp contained "\<background\(-\(attachment\|clip\|color\|image\|origin\|position\|repeat\|size\)\)\=\>" | 219 syn match cssBackgroundProp contained "\<background\(-\(attachment\|clip\|color\|image\|origin\|position\|repeat\|size\)\)\=\>" |
203 " background-attachment attributes | 220 " background-attachment attributes |
251 | 268 |
252 " shadow and sizing are in other property groups | 269 " shadow and sizing are in other property groups |
253 syn match cssFlexibleBoxProp contained "\<box-\(align\|direction\|flex\|ordinal-group\|orient\|pack\|shadow\|sizing\)\>" | 270 syn match cssFlexibleBoxProp contained "\<box-\(align\|direction\|flex\|ordinal-group\|orient\|pack\|shadow\|sizing\)\>" |
254 syn keyword cssFlexibleBoxAttr contained start end baseline | 271 syn keyword cssFlexibleBoxAttr contained start end baseline |
255 syn keyword cssFlexibleBoxAttr contained reverse | 272 syn keyword cssFlexibleBoxAttr contained reverse |
256 syn keyword cssFlexibleBoxAttr contained single mulitple | 273 syn keyword cssFlexibleBoxAttr contained single multiple |
257 syn keyword cssFlexibleBoxAttr contained horizontal | 274 syn keyword cssFlexibleBoxAttr contained horizontal |
258 syn match cssFlexibleBoxAttr contained "\<vertical\(-align\)\@!\>" "escape vertical-align | 275 syn match cssFlexibleBoxAttr contained "\<vertical\(-align\)\@!\>" "escape vertical-align |
259 syn match cssFlexibleBoxAttr contained "\<\(inline\|block\)-axis\>" | 276 syn match cssFlexibleBoxAttr contained "\<\(inline\|block\)-axis\>" |
260 | 277 |
261 " CSS Fonts Module Level 3 | 278 " CSS Fonts Module Level 3 |
262 " http://www.w3.org/TR/css-fonts-3/ | 279 " http://www.w3.org/TR/css-fonts-3/ |
263 syn match cssFontProp contained "\<font\(-\(family\|\|feature-settings\|kerning\|language-override\|size\(-adjust\)\=\|stretch\|style\|synthesis\|variant\(-\(alternates\|caps\|east-asian\|ligatures\|numeric\|position\)\)\=\|weight\)\)\=\>" | 280 syn match cssFontProp contained "\<font\(-\(family\|\|feature-settings\|kerning\|language-override\|size\(-adjust\)\=\|stretch\|style\|synthesis\|variant\(-\(alternates\|caps\|east-asian\|ligatures\|numeric\|position\)\)\=\|weight\)\)\=\>" |
281 | |
264 " font attributes | 282 " font attributes |
265 syn keyword cssFontAttr contained icon menu caption | 283 syn keyword cssFontAttr contained icon menu caption |
266 syn match cssFontAttr contained "\<small-\(caps\|caption\)\>" | 284 syn match cssFontAttr contained "\<small-\(caps\|caption\)\>" |
267 syn match cssFontAttr contained "\<message-box\>" | 285 syn match cssFontAttr contained "\<message-box\>" |
268 syn match cssFontAttr contained "\<status-bar\>" | 286 syn match cssFontAttr contained "\<status-bar\>" |
269 syn keyword cssFontAttr contained larger smaller | 287 syn keyword cssFontAttr contained larger smaller |
270 syn match cssFontAttr contained "\<\(x\{1,2\}-\)\=\(large\|small\)\>" | 288 syn match cssFontAttr contained "\<\(x\{1,2\}-\)\=\(large\|small\)\>" |
271 | |
272 " font-family attributes | 289 " font-family attributes |
273 syn match cssFontAttr contained "\<\(sans-\)\=serif\>" | 290 syn match cssFontAttr contained "\<\(sans-\)\=serif\>" |
274 syn 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 Unicode Verdana Webdings Wingdings York Zapf | 291 syn 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 |
275 syn keyword cssFontAttr contained cursive fantasy monospace | 292 syn keyword cssFontAttr contained cursive fantasy monospace |
276 | |
277 " font-feature-settings attributes | 293 " font-feature-settings attributes |
278 syn keyword cssFontAttr contained on off | 294 syn keyword cssFontAttr contained on off |
279 | |
280 " font-stretch attributes | 295 " font-stretch attributes |
281 syn match cssFontAttr contained "\<\(\(ultra\|extra\|semi\)-\)\=\(condensed\|expanded\)\>" | 296 syn match cssFontAttr contained "\<\(\(ultra\|extra\|semi\)-\)\=\(condensed\|expanded\)\>" |
282 | |
283 " font-style attributes | 297 " font-style attributes |
284 syn keyword cssFontAttr contained italic oblique | 298 syn keyword cssFontAttr contained italic oblique |
285 | 299 " font-synthesis attributes |
286 " font-variant-caps attributes | 300 syn keyword cssFontAttr contained weight style |
287 syn match cssFontAttr contained "\<\(all-\)\=\(small-\|petite-\|titling-\)caps\>" | |
288 syn keyword cssFontAttr contained unicase | |
289 | |
290 " font-weight attributes | 301 " font-weight attributes |
291 syn keyword cssFontAttr contained bold bolder lighter | 302 syn keyword cssFontAttr contained bold bolder lighter |
303 " TODO: font-variant-* attributes | |
292 "------------------------------------------------ | 304 "------------------------------------------------ |
293 | 305 |
294 " Webkit specific property/attributes | 306 " Webkit specific property/attributes |
295 syn match cssFontProp contained "\<font-smooth\>" | 307 syn match cssFontProp contained "\<font-smooth\>" |
296 syn match cssFontAttr contained "\<\(subpixel-\)\=\antialiased\>" | 308 syn match cssFontAttr contained "\<\(subpixel-\)\=\antialiased\>" |
446 | 458 |
447 | 459 |
448 | 460 |
449 syn match cssBraces contained "[{}]" | 461 syn match cssBraces contained "[{}]" |
450 syn match cssError contained "{@<>" | 462 syn match cssError contained "{@<>" |
451 syn region cssDefinition transparent matchgroup=cssBraces start='{' end='}' contains=cssAttrRegion,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition,cssHacks keepend fold | 463 syn 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 |
452 syn match cssBraceError "}" | 464 syn match cssBraceError "}" |
453 syn match cssAttrComma "," | 465 syn match cssAttrComma "," |
454 | 466 |
455 " Pseudo class | 467 " Pseudo class |
456 " http://www.w3.org/TR/css3-selectors/ | 468 " http://www.w3.org/TR/css3-selectors/ |
464 " Vendor specific properties | 476 " Vendor specific properties |
465 syn match cssPseudoClassId contained "\<selection\>" | 477 syn match cssPseudoClassId contained "\<selection\>" |
466 syn match cssPseudoClassId contained "\<focus\(-inner\)\=\>" | 478 syn match cssPseudoClassId contained "\<focus\(-inner\)\=\>" |
467 syn match cssPseudoClassId contained "\<\(input-\)\=placeholder\>" | 479 syn match cssPseudoClassId contained "\<\(input-\)\=placeholder\>" |
468 | 480 |
481 " Misc highlight groups | |
482 syntax 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 | |
483 syntax match cssNoise contained /\(:\|;\|\/\)/ | |
469 | 484 |
470 " Comment | 485 " Comment |
471 syn region cssComment start="/\*" end="\*/" contains=@Spell fold | 486 syn region cssComment start="/\*" end="\*/" contains=@Spell fold |
472 | 487 |
473 syn match cssUnicodeEscape "\\\x\{1,6}\s\?" | 488 syn match cssUnicodeEscape "\\\x\{1,6}\s\?" |
485 " This is purely decorative and therefore we assign to the same highlight | 500 " This is purely decorative and therefore we assign to the same highlight |
486 " group to cssVendor, for more information: | 501 " group to cssVendor, for more information: |
487 " http://www.paulirish.com/2009/browser-specific-css-hacks/ | 502 " http://www.paulirish.com/2009/browser-specific-css-hacks/ |
488 syn match cssHacks contained /\(_\|*\)/ | 503 syn match cssHacks contained /\(_\|*\)/ |
489 | 504 |
490 " Misc highlight groups | |
491 syntax match cssUnitDecorators /\(#\|-\|%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|rem\|dpi\|dppx\|dpcm\|Hz\|kHz\|s\|ms\|deg\|grad\|rad\)/ contained | |
492 syntax match cssNoise contained /\(:\|;\|\/\)/ | |
493 | |
494 " Attr Enhance | 505 " Attr Enhance |
495 " Some keywords are both Prop and Attr, so we have to handle them | 506 " Some keywords are both Prop and Attr, so we have to handle them |
496 syn region cssAttrRegion start=/:/ end=/;/ contained keepend contains=css.*Attr,cssColor,cssImportant,cssValue.*,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssAttrComma,cssNoise | 507 syn region cssAttrRegion start=/:/ end=/\ze\(;\|)\|}\)/ contained contains=css.*Attr,cssColor,cssImportant,cssValue.*,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssAttrComma,cssNoise |
497 | 508 |
498 " Hack for transition | 509 " Hack for transition |
499 " The 'transition' Prop has Props after ':'. | 510 " 'transition' has Props after ':'. |
500 syn region cssAttrRegion start=/transition\s*:/ end=/;/ contained keepend contains=css.*Prop,css.*Attr,cssColor,cssImportant,cssValue.*,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssAttrComma,cssNoise | 511 syn 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 |
501 | 512 |
502 | 513 |
503 if main_syntax == "css" | 514 if main_syntax == "css" |
504 syn sync minlines=10 | 515 syn sync minlines=10 |
505 endif | 516 endif |
633 HiLink cssClassNameDot Function | 644 HiLink cssClassNameDot Function |
634 HiLink cssProp StorageClass | 645 HiLink cssProp StorageClass |
635 HiLink cssAttr Constant | 646 HiLink cssAttr Constant |
636 HiLink cssUnitDecorators Number | 647 HiLink cssUnitDecorators Number |
637 HiLink cssNoise Noise | 648 HiLink cssNoise Noise |
638 HiLink atKeyword Comment | 649 HiLink atKeyword PreProc |
639 delcommand HiLink | 650 delcommand HiLink |
640 endif | 651 endif |
641 | 652 |
642 let b:current_syntax = "css" | 653 let b:current_syntax = "css" |
643 | 654 |