codekingpro/portable-devtools
115k
1" Vim syntax file2" Language: less3" Maintainer: Alessandro Vioni <jenoma@gmail.com>4" URL: https://github.com/genoma/vim-less5" Last Change: 2020 Sep 296 7if exists("b:current_syntax")8 finish9endif10 11runtime! syntax/css.vim12 13syn case ignore14 15syn cluster lessCssProperties contains=cssFontProp,cssFontDescriptorProp,cssColorProp,cssTextProp,cssBoxProp,cssGeneratedContentProp,cssPagingProp,cssUIProp,cssRenderProp,cssAuralProp,cssTableProp16syn cluster lessCssAttributes contains=css.*Attr,lessEndOfLineComment,lessComment,cssValue.*,cssColor,cssURL,lessDefault,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssRenderProp17 18syn region lessDefinition matchgroup=cssBraces start="{" end="}" contains=TOP19 20syn match lessProperty "\%([{};]\s*\|^\)\@<=\%([[:alnum:]-]\|#{[^{}]*}\)\+\s*:" contains=css.*Prop skipwhite nextgroup=lessCssAttribute contained containedin=lessDefinition21syn match lessProperty "^\s*\zs\s\%(\%([[:alnum:]-]\|#{[^{}]*}\)\+\s*:\|:[[:alnum:]-]\+\)"hs=s+1 contains=css.*Prop skipwhite nextgroup=lessCssAttribute22syn match lessProperty "^\s*\zs\s\%(:\=[[:alnum:]-]\+\s*=\)"hs=s+1 contains=css.*Prop skipwhite nextgroup=lessCssAttribute23syn match lessCssAttribute +\%("\%([^"]\|\\"\)*"\|'\%([^']\|\\'\)*'\|#{[^{}]*}\|[^{};]\)*+ contained contains=@lessCssAttributes,lessVariable,lessFunction,lessInterpolation24syn match lessDefault "!default\>" contained25 26" less variables and media queries27syn match lessVariable "@[[:alnum:]_-]\+" nextgroup=lessCssAttribute skipwhite28syn match lessMedia "@media" nextgroup=lessCssAttribute skipwhite29 30" Less functions31syn match lessFunction "\<\%(escape\|e\|unit\)\>(\@=" contained32syn match lessFunction "\<\%(ceil\|floor\|percentage\|round\|sqrt\|abs\|sin\|asin\|cos\|acos\|tan\|atan\|pi\|pow\|min\|max\)\>(\@=" contained33syn match lessFunction "\<\%(rgb\|rgba\|argb\|argb\|hsl\|hsla\|hsv\|hsva\)\>(\@=" contained34syn match lessFunction "\<\%(hue\|saturation\|lightness\|red\|green\|blue\|alpha\|luma\)\>(\@=" contained35syn match lessFunction "\<\%(saturate\|desaturate\|lighten\|darken\|fadein\|fadeout\|fade\|spin\|mix\|greyscale\|contrast\)\>(\@=" contained36syn match lessFunction "\<\%(multiply\|screen\|overlay\|softlight\|hardlight\|difference\|exclusion\|average\|negation\)\>(\@=" contained37 38" Less id class visualization39syn match lessIdChar "#[[:alnum:]_-]\@=" nextgroup=lessId,lessClassIdCall40syn match lessId "[[:alnum:]_-]\+" contained41syn match lessClassIdCall "[[:alnum:]_-]\+()" contained42 43syn match lessClassChar "\.[[:alnum:]_-]\@=" nextgroup=lessClass,lessClassCall44syn match lessClass "[[:alnum:]_-]\+" contained45syn match lessClassCall "[[:alnum:]_-]\+()" contained46 47syn match lessAmpersand "&" contains=lessIdChar,lessClassChar48 49syn region lessInclude start="@import" end=";\|$" contains=lessComment,cssURL,cssUnicodeEscape,cssMediaType,cssStringQ,cssStringQQ50 51syn keyword lessTodo FIXME NOTE TODO OPTIMIZE XXX contained52syn region lessComment start="^\z(\s*\)//" end="^\%(\z1 \)\@!" contains=lessTodo,@Spell53syn region lessCssComment start="^\z(\s*\)/\*" end="^\%(\z1 \)\@!" contains=lessTodo,@Spell54syn match lessEndOfLineComment "//.*" contains=lessComment,lessTodo,@Spell55 56hi def link lessEndOfLineComment lessComment57hi def link lessCssComment lessComment58hi def link lessComment Comment59hi def link lessDefault cssImportant60hi def link lessVariable Identifier61hi def link lessFunction PreProc62hi def link lessTodo Todo63hi def link lessInclude Include64hi def link lessIdChar Special65hi def link lessClassChar Special66hi def link lessAmpersand Character67hi def link lessId Identifier68hi def link lessClass Type69hi def link lessCssAttribute PreProc70hi def link lessClassCall Type71hi def link lessClassIdCall Type72hi def link lessTagName cssTagName73hi def link lessDeprecated cssDeprecated74hi def link lessMedia cssMedia75 76let b:current_syntax = "less"77 78" vim:set sw=2:79 