mirror of
https://github.com/gko/vim-coloresque.git
synced 2025-12-08 13:44:59 +08:00
2x boost performance+new cache/restore way
This commit is contained in:
@@ -9,7 +9,10 @@
|
|||||||
" vim:et:ts=2 sw=2 sts=2
|
" vim:et:ts=2 sw=2 sts=2
|
||||||
|
|
||||||
let s:hex={}
|
let s:hex={}
|
||||||
let w:matchescache = {}
|
let b:matchescache = {}
|
||||||
|
let b:color_pattern = {}
|
||||||
|
|
||||||
|
let w:colorDictRegExp=''
|
||||||
for i in range(0, 255)
|
for i in range(0, 255)
|
||||||
let s:hex[ printf( '%02x', i ) ] = i
|
let s:hex[ printf( '%02x', i ) ] = i
|
||||||
endfor
|
endfor
|
||||||
@@ -26,10 +29,24 @@ function! s:FGForBG(color)
|
|||||||
return r*30 + g*59 + b*11 > 12000 ? s:black : s:white
|
return r*30 + g*59 + b*11 > 12000 ? s:black : s:white
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
"let b:color_pattern = {}
|
|
||||||
let s:color_prefix = 'gui'
|
let s:color_prefix = 'gui'
|
||||||
let s:fg_color_calc = 'let color = "#" . toupper(a:color)'
|
let s:fg_color_calc = 'let color = "#" . toupper(a:color)'
|
||||||
|
|
||||||
|
function! s:RestoreColors()
|
||||||
|
for part in keys(b:color_pattern)
|
||||||
|
let group = 'cssColor' . tolower(strpart(b:color_pattern[part], 1))
|
||||||
|
"exe 'syn match' group '/'.escape(pattern, '/').'/ contained'
|
||||||
|
exe 'syn cluster cssColors add='.group
|
||||||
|
exe 'hi' group s:color_prefix.'bg='.b:color_pattern[part] s:color_prefix.'fg='.s:FGForBG(strpart(b:color_pattern[part], 1))
|
||||||
|
|
||||||
|
if !exists('b:matchescache')
|
||||||
|
let b:matchescache={}
|
||||||
|
endif
|
||||||
|
|
||||||
|
let b:matchescache[part] = matchadd(group, part)
|
||||||
|
endfor
|
||||||
|
endfunction
|
||||||
|
|
||||||
function! s:MatchColorValue(color, pattern, part)
|
function! s:MatchColorValue(color, pattern, part)
|
||||||
if ! len(a:color) | return | endif
|
if ! len(a:color) | return | endif
|
||||||
|
|
||||||
@@ -38,13 +55,18 @@ function! s:MatchColorValue(color, pattern, part)
|
|||||||
if pattern =~ '\>$' | let pattern .= '\>' | endif
|
if pattern =~ '\>$' | let pattern .= '\>' | endif
|
||||||
|
|
||||||
let group = 'cssColor' . tolower(a:color)
|
let group = 'cssColor' . tolower(a:color)
|
||||||
|
if !exists('b:color_pattern[a:part]')
|
||||||
|
let b:color_pattern[a:part]='#'.toupper(a:color)
|
||||||
"exe 'syn match' group '/'.escape(pattern, '/').'/ contained'
|
"exe 'syn match' group '/'.escape(pattern, '/').'/ contained'
|
||||||
exe 'syn cluster cssColors add='.group
|
exe 'syn cluster cssColors add='.group
|
||||||
exe s:fg_color_calc
|
exe s:fg_color_calc
|
||||||
exe 'hi' group s:color_prefix.'bg='.color s:color_prefix.'fg='.s:FGForBG(a:color)
|
exe 'hi' group s:color_prefix.'bg='.color s:color_prefix.'fg='.s:FGForBG(a:color)
|
||||||
|
endif
|
||||||
|
|
||||||
if !exists("w:matchescache[a:part]")
|
if !exists('b:matchescache')
|
||||||
let w:matchescache[a:part] = matchadd(group, a:part)
|
let b:matchescache = {}
|
||||||
|
elseif !exists('b:matchescache[a:part]')
|
||||||
|
let b:matchescache[a:part] = matchadd(group, a:part)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
return ''
|
return ''
|
||||||
@@ -78,13 +100,13 @@ function! s:HexForHSLValue(h,s,l)
|
|||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:ClearMatches()
|
function! s:ClearMatches()
|
||||||
if !exists('w:matchescache')
|
if !exists('b:matchescache')
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
for i in values(w:matchescache)
|
"for i in values(b:matchescache)
|
||||||
call matchdelete(i)
|
"call matchdelete(i)
|
||||||
endfor
|
"endfor
|
||||||
unlet w:matchescache
|
unlet b:matchescache
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:VimCssInit(update)
|
function! s:VimCssInit(update)
|
||||||
@@ -92,16 +114,195 @@ function! s:VimCssInit(update)
|
|||||||
call s:ClearMatches()
|
call s:ClearMatches()
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let w:matchescache = {}
|
if exists('b:color_pattern')&&len(keys(b:color_pattern))>0
|
||||||
|
call s:RestoreColors()
|
||||||
|
return
|
||||||
|
endif
|
||||||
|
|
||||||
for i in range(1, line("$"))
|
"let b:matchescache = {}
|
||||||
call s:PreviewCSSColorInLine(i)
|
|
||||||
endfor
|
call s:AdditionalColors()
|
||||||
|
|
||||||
|
"for i in range(1, line("$"))
|
||||||
|
call s:PreviewCSSColor(join(getline(1,'$'), "\n"))
|
||||||
|
"endfor
|
||||||
|
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:PreviewCSSColorInLine(w)
|
function! s:AdditionalColors()
|
||||||
let line=getline(a:w)
|
if exists('&w:colorDictRegExp')&&w:colorDictRegExp!=''
|
||||||
|
return
|
||||||
|
endif
|
||||||
|
|
||||||
|
" w3c Colors
|
||||||
|
" plus extra colors
|
||||||
|
let w:colorDict = {
|
||||||
|
\'black': '#000000',
|
||||||
|
\'red': '#ff0000',
|
||||||
|
\'silver': '#c0c0c0',
|
||||||
|
\'gray': '#808080',
|
||||||
|
\'white': '#ffffff',
|
||||||
|
\'maroon': '#800000',
|
||||||
|
\'purple': '#800080',
|
||||||
|
\'fuchsia': '#ff00ff',
|
||||||
|
\'green': '#008000',
|
||||||
|
\'lime': '#00ff00',
|
||||||
|
\'olive': '#808000',
|
||||||
|
\'yellow': '#ffff00',
|
||||||
|
\'navy': '#000080',
|
||||||
|
\'blue': '#0000ff',
|
||||||
|
\'teal': '#008080',
|
||||||
|
\'aqua': '#00ffff',
|
||||||
|
\'aliceblue': '#f0f8ff',
|
||||||
|
\'antiquewhite': '#faebd7',
|
||||||
|
\'aquamarine': '#7fffd4',
|
||||||
|
\'azure': '#f0ffff',
|
||||||
|
\'beige': '#f5f5dc',
|
||||||
|
\'bisque': '#ffe4c4',
|
||||||
|
\'blanchedalmond': '#ffebcd',
|
||||||
|
\'blueviolet': '#8a2be2',
|
||||||
|
\'brown': '#a52a2a',
|
||||||
|
\'burlywood': '#deb887',
|
||||||
|
\'cadetblue': '#5f9ea0',
|
||||||
|
\'chartreuse': '#7fff00',
|
||||||
|
\'chocolate': '#d2691e',
|
||||||
|
\'coral': '#ff7f50',
|
||||||
|
\'cornflowerblue': '#6495ed',
|
||||||
|
\'cornsilk': '#fff8dc',
|
||||||
|
\'crimson': '#dc143c',
|
||||||
|
\'cyan': '#00ffff',
|
||||||
|
\'darkblue': '#00008b',
|
||||||
|
\'darkcyan': '#008b8b',
|
||||||
|
\'darkgoldenrod': '#b8860b',
|
||||||
|
\'darkgray': '#a9a9a9',
|
||||||
|
\'darkgreen': '#006400',
|
||||||
|
\'darkgrey': '#a9a9a9',
|
||||||
|
\'darkkhaki': '#bdb76b',
|
||||||
|
\'darkmagenta': '#8b008b',
|
||||||
|
\'darkolivegreen': '#556b2f',
|
||||||
|
\'darkorchid': '#9932cc',
|
||||||
|
\'darkred': '#8b0000',
|
||||||
|
\'darksalmon': '#e9967a',
|
||||||
|
\'darkseagreen': '#8fbc8f',
|
||||||
|
\'darkslateblue': '#483d8b',
|
||||||
|
\'darkslategray': '#2f4f4f',
|
||||||
|
\'darkslategrey': '#2f4f4f',
|
||||||
|
\'darkturquoise': '#00ced1',
|
||||||
|
\'darkviolet': '#9400d3',
|
||||||
|
\'darkorange': '#ff8c00',
|
||||||
|
\'deeppink': '#ff1493',
|
||||||
|
\'deepskyblue': '#00bfff',
|
||||||
|
\'dimgray': '#696969',
|
||||||
|
\'dimgrey': '#696969',
|
||||||
|
\'dodgerblue': '#1e90ff',
|
||||||
|
\'firebrick': '#b22222',
|
||||||
|
\'floralwhite': '#fffaf0',
|
||||||
|
\'forestgreen': '#228b22',
|
||||||
|
\'gainsboro': '#dcdcdc',
|
||||||
|
\'ghostwhite': '#f8f8ff',
|
||||||
|
\'gold': '#ffd700',
|
||||||
|
\'goldenrod': '#daa520',
|
||||||
|
\'greenyellow': '#adff2f',
|
||||||
|
\'grey': '#808080',
|
||||||
|
\'honeydew': '#f0fff0',
|
||||||
|
\'hotpink': '#ff69b4',
|
||||||
|
\'indianred': '#cd5c5c',
|
||||||
|
\'indigo': '#4b0082',
|
||||||
|
\'ivory': '#fffff0',
|
||||||
|
\'khaki': '#f0e68c',
|
||||||
|
\'lavender': '#e6e6fa',
|
||||||
|
\'lavenderblush': '#fff0f5',
|
||||||
|
\'lawngreen': '#7cfc00',
|
||||||
|
\'lemonchiffon': '#fffacd',
|
||||||
|
\'lightblue': '#add8e6',
|
||||||
|
\'lightcoral': '#f08080',
|
||||||
|
\'lightcyan': '#e0ffff',
|
||||||
|
\'lightgoldenrodyellow': '#fafad2',
|
||||||
|
\'lightgray': '#d3d3d3',
|
||||||
|
\'lightgreen': '#90ee90',
|
||||||
|
\'lightgrey': '#d3d3d3',
|
||||||
|
\'lightpink': '#ffb6c1',
|
||||||
|
\'lightsalmon': '#ffa07a',
|
||||||
|
\'lightseagreen': '#20b2aa',
|
||||||
|
\'lightskyblue': '#87cefa',
|
||||||
|
\'lightslategray': '#778899',
|
||||||
|
\'lightslategrey': '#778899',
|
||||||
|
\'lightsteelblue': '#b0c4de',
|
||||||
|
\'lightyellow': '#ffffe0',
|
||||||
|
\'limegreen': '#32cd32',
|
||||||
|
\'linen': '#faf0e6',
|
||||||
|
\'magenta': '#ff00ff',
|
||||||
|
\'mediumaquamarine': '#66cdaa',
|
||||||
|
\'mediumblue': '#0000cd',
|
||||||
|
\'mediumorchid': '#ba55d3',
|
||||||
|
\'mediumpurple': '#9370d8',
|
||||||
|
\'mediumseagreen': '#3cb371',
|
||||||
|
\'mediumslateblue': '#7b68ee',
|
||||||
|
\'mediumspringgreen': '#00fa9a',
|
||||||
|
\'mediumturquoise': '#48d1cc',
|
||||||
|
\'mediumvioletred': '#c71585',
|
||||||
|
\'midnightblue': '#191970',
|
||||||
|
\'mintcream': '#f5fffa',
|
||||||
|
\'mistyrose': '#ffe4e1',
|
||||||
|
\'moccasin': '#ffe4b5',
|
||||||
|
\'navajowhite': '#ffdead',
|
||||||
|
\'oldlace': '#fdf5e6',
|
||||||
|
\'olivedrab': '#6b8e23',
|
||||||
|
\'orange': '#ffa500',
|
||||||
|
\'orangered': '#ff4500',
|
||||||
|
\'orchid': '#da70d6',
|
||||||
|
\'palegoldenrod': '#eee8aa',
|
||||||
|
\'palegreen': '#98fb98',
|
||||||
|
\'paleturquoise': '#afeeee',
|
||||||
|
\'palevioletred': '#d87093',
|
||||||
|
\'papayawhip': '#ffefd5',
|
||||||
|
\'peachpuff': '#ffdab9',
|
||||||
|
\'peru': '#cd853f',
|
||||||
|
\'pink': '#ffc0cb',
|
||||||
|
\'plum': '#dda0dd',
|
||||||
|
\'powderblue': '#b0e0e6',
|
||||||
|
\'rosybrown': '#bc8f8f',
|
||||||
|
\'royalblue': '#4169e1',
|
||||||
|
\'saddlebrown': '#8b4513',
|
||||||
|
\'salmon': '#fa8072',
|
||||||
|
\'sandybrown': '#f4a460',
|
||||||
|
\'seagreen': '#2e8b57',
|
||||||
|
\'seashell': '#fff5ee',
|
||||||
|
\'sienna': '#a0522d',
|
||||||
|
\'skyblue': '#87ceeb',
|
||||||
|
\'slateblue': '#6a5acd',
|
||||||
|
\'slategray': '#708090',
|
||||||
|
\'slategrey': '#708090',
|
||||||
|
\'snow': '#fffafa',
|
||||||
|
\'springgreen': '#00ff7f',
|
||||||
|
\'steelblue': '#4682b4',
|
||||||
|
\'tan': '#d2b48c',
|
||||||
|
\'thistle': '#d8bfd8',
|
||||||
|
\'tomato': '#ff6347',
|
||||||
|
\'turquoise': '#40e0d0',
|
||||||
|
\'violet': '#ee82ee',
|
||||||
|
\'wheat': '#f5deb3',
|
||||||
|
\'whitesmoke': '#f5f5f5',
|
||||||
|
\'yellowgreen': '#9acd32',
|
||||||
|
\}
|
||||||
|
|
||||||
|
let w:colorDictRegExp = '\('
|
||||||
|
for _color in keys(w:colorDict)
|
||||||
|
let w:colorDictRegExp.='\<'._color.'\>\|'
|
||||||
|
endfor
|
||||||
|
let w:colorDictRegExp=strpart(w:colorDictRegExp, 0, len(w:colorDictRegExp)-2).'\)\c'
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! s:ProcessByLine(w)
|
||||||
|
call s:PreviewCSSColor(getline(a:w))
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! s:PreviewCSSColor(str)
|
||||||
|
if !exists('&w:colorDictRegExp')
|
||||||
|
call s:AdditionalColors()
|
||||||
|
endif
|
||||||
|
|
||||||
|
let line=a:str "getline(a:w)
|
||||||
let colorexps = {
|
let colorexps = {
|
||||||
\ 'hex3' : '#\(\x\)\(\x\)\(\x\)\>',
|
\ 'hex3' : '#\(\x\)\(\x\)\(\x\)\>',
|
||||||
\ 'hex' : '#\(\x\{6}\)\>',
|
\ 'hex' : '#\(\x\{6}\)\>',
|
||||||
@@ -116,8 +317,8 @@ function! s:PreviewCSSColorInLine(w)
|
|||||||
let place=0
|
let place=0
|
||||||
|
|
||||||
while 1
|
while 1
|
||||||
let foundcolor = matchstr(line, colorexps[exp], place)
|
let foundcolor = matchstr(a:str, colorexps[exp], place)
|
||||||
let place = matchend(line, colorexps[exp], place)
|
let place = matchend(a:str, colorexps[exp], place)
|
||||||
|
|
||||||
if empty(foundcolor)
|
if empty(foundcolor)
|
||||||
break
|
break
|
||||||
@@ -403,167 +604,10 @@ if has("gui_running") || &t_Co==256
|
|||||||
hi cssColorfffff0 guibg=#FFFFF0 guifg=#000000 ctermbg=15 ctermfg=16 | syn cluster cssColors add=cssColorfffff0
|
hi cssColorfffff0 guibg=#FFFFF0 guifg=#000000 ctermbg=15 ctermfg=16 | syn cluster cssColors add=cssColorfffff0
|
||||||
hi cssColorffffff guibg=#FFFFFF guifg=#000000 ctermbg=231 ctermfg=16 | syn cluster cssColors add=cssColorffffff
|
hi cssColorffffff guibg=#FFFFFF guifg=#000000 ctermbg=231 ctermfg=16 | syn cluster cssColors add=cssColorffffff
|
||||||
|
|
||||||
" w3c Colors
|
|
||||||
" plus extra colors
|
|
||||||
let w:colorDict = {
|
|
||||||
\'black': '#000000',
|
|
||||||
\'red': '#ff0000',
|
|
||||||
\'silver': '#c0c0c0',
|
|
||||||
\'gray': '#808080',
|
|
||||||
\'white': '#ffffff',
|
|
||||||
\'maroon': '#800000',
|
|
||||||
\'purple': '#800080',
|
|
||||||
\'fuchsia': '#ff00ff',
|
|
||||||
\'green': '#008000',
|
|
||||||
\'lime': '#00ff00',
|
|
||||||
\'olive': '#808000',
|
|
||||||
\'yellow': '#ffff00',
|
|
||||||
\'navy': '#000080',
|
|
||||||
\'blue': '#0000ff',
|
|
||||||
\'teal': '#008080',
|
|
||||||
\'aqua': '#00ffff',
|
|
||||||
\'aliceblue': '#f0f8ff',
|
|
||||||
\'antiquewhite': '#faebd7',
|
|
||||||
\'aquamarine': '#7fffd4',
|
|
||||||
\'azure': '#f0ffff',
|
|
||||||
\'beige': '#f5f5dc',
|
|
||||||
\'bisque': '#ffe4c4',
|
|
||||||
\'blanchedalmond': '#ffebcd',
|
|
||||||
\'blueviolet': '#8a2be2',
|
|
||||||
\'brown': '#a52a2a',
|
|
||||||
\'burlywood': '#deb887',
|
|
||||||
\'cadetblue': '#5f9ea0',
|
|
||||||
\'chartreuse': '#7fff00',
|
|
||||||
\'chocolate': '#d2691e',
|
|
||||||
\'coral': '#ff7f50',
|
|
||||||
\'cornflowerblue': '#6495ed',
|
|
||||||
\'cornsilk': '#fff8dc',
|
|
||||||
\'crimson': '#dc143c',
|
|
||||||
\'cyan': '#00ffff',
|
|
||||||
\'darkblue': '#00008b',
|
|
||||||
\'darkcyan': '#008b8b',
|
|
||||||
\'darkgoldenrod': '#b8860b',
|
|
||||||
\'darkgray': '#a9a9a9',
|
|
||||||
\'darkgreen': '#006400',
|
|
||||||
\'darkgrey': '#a9a9a9',
|
|
||||||
\'darkkhaki': '#bdb76b',
|
|
||||||
\'darkmagenta': '#8b008b',
|
|
||||||
\'darkolivegreen': '#556b2f',
|
|
||||||
\'darkorchid': '#9932cc',
|
|
||||||
\'darkred': '#8b0000',
|
|
||||||
\'darksalmon': '#e9967a',
|
|
||||||
\'darkseagreen': '#8fbc8f',
|
|
||||||
\'darkslateblue': '#483d8b',
|
|
||||||
\'darkslategray': '#2f4f4f',
|
|
||||||
\'darkslategrey': '#2f4f4f',
|
|
||||||
\'darkturquoise': '#00ced1',
|
|
||||||
\'darkviolet': '#9400d3',
|
|
||||||
\'darkorange': '#ff8c00',
|
|
||||||
\'deeppink': '#ff1493',
|
|
||||||
\'deepskyblue': '#00bfff',
|
|
||||||
\'dimgray': '#696969',
|
|
||||||
\'dimgrey': '#696969',
|
|
||||||
\'dodgerblue': '#1e90ff',
|
|
||||||
\'firebrick': '#b22222',
|
|
||||||
\'floralwhite': '#fffaf0',
|
|
||||||
\'forestgreen': '#228b22',
|
|
||||||
\'gainsboro': '#dcdcdc',
|
|
||||||
\'ghostwhite': '#f8f8ff',
|
|
||||||
\'gold': '#ffd700',
|
|
||||||
\'goldenrod': '#daa520',
|
|
||||||
\'greenyellow': '#adff2f',
|
|
||||||
\'grey': '#808080',
|
|
||||||
\'honeydew': '#f0fff0',
|
|
||||||
\'hotpink': '#ff69b4',
|
|
||||||
\'indianred': '#cd5c5c',
|
|
||||||
\'indigo': '#4b0082',
|
|
||||||
\'ivory': '#fffff0',
|
|
||||||
\'khaki': '#f0e68c',
|
|
||||||
\'lavender': '#e6e6fa',
|
|
||||||
\'lavenderblush': '#fff0f5',
|
|
||||||
\'lawngreen': '#7cfc00',
|
|
||||||
\'lemonchiffon': '#fffacd',
|
|
||||||
\'lightblue': '#add8e6',
|
|
||||||
\'lightcoral': '#f08080',
|
|
||||||
\'lightcyan': '#e0ffff',
|
|
||||||
\'lightgoldenrodyellow': '#fafad2',
|
|
||||||
\'lightgray': '#d3d3d3',
|
|
||||||
\'lightgreen': '#90ee90',
|
|
||||||
\'lightgrey': '#d3d3d3',
|
|
||||||
\'lightpink': '#ffb6c1',
|
|
||||||
\'lightsalmon': '#ffa07a',
|
|
||||||
\'lightseagreen': '#20b2aa',
|
|
||||||
\'lightskyblue': '#87cefa',
|
|
||||||
\'lightslategray': '#778899',
|
|
||||||
\'lightslategrey': '#778899',
|
|
||||||
\'lightsteelblue': '#b0c4de',
|
|
||||||
\'lightyellow': '#ffffe0',
|
|
||||||
\'limegreen': '#32cd32',
|
|
||||||
\'linen': '#faf0e6',
|
|
||||||
\'magenta': '#ff00ff',
|
|
||||||
\'mediumaquamarine': '#66cdaa',
|
|
||||||
\'mediumblue': '#0000cd',
|
|
||||||
\'mediumorchid': '#ba55d3',
|
|
||||||
\'mediumpurple': '#9370d8',
|
|
||||||
\'mediumseagreen': '#3cb371',
|
|
||||||
\'mediumslateblue': '#7b68ee',
|
|
||||||
\'mediumspringgreen': '#00fa9a',
|
|
||||||
\'mediumturquoise': '#48d1cc',
|
|
||||||
\'mediumvioletred': '#c71585',
|
|
||||||
\'midnightblue': '#191970',
|
|
||||||
\'mintcream': '#f5fffa',
|
|
||||||
\'mistyrose': '#ffe4e1',
|
|
||||||
\'moccasin': '#ffe4b5',
|
|
||||||
\'navajowhite': '#ffdead',
|
|
||||||
\'oldlace': '#fdf5e6',
|
|
||||||
\'olivedrab': '#6b8e23',
|
|
||||||
\'orange': '#ffa500',
|
|
||||||
\'orangered': '#ff4500',
|
|
||||||
\'orchid': '#da70d6',
|
|
||||||
\'palegoldenrod': '#eee8aa',
|
|
||||||
\'palegreen': '#98fb98',
|
|
||||||
\'paleturquoise': '#afeeee',
|
|
||||||
\'palevioletred': '#d87093',
|
|
||||||
\'papayawhip': '#ffefd5',
|
|
||||||
\'peachpuff': '#ffdab9',
|
|
||||||
\'peru': '#cd853f',
|
|
||||||
\'pink': '#ffc0cb',
|
|
||||||
\'plum': '#dda0dd',
|
|
||||||
\'powderblue': '#b0e0e6',
|
|
||||||
\'rosybrown': '#bc8f8f',
|
|
||||||
\'royalblue': '#4169e1',
|
|
||||||
\'saddlebrown': '#8b4513',
|
|
||||||
\'salmon': '#fa8072',
|
|
||||||
\'sandybrown': '#f4a460',
|
|
||||||
\'seagreen': '#2e8b57',
|
|
||||||
\'seashell': '#fff5ee',
|
|
||||||
\'sienna': '#a0522d',
|
|
||||||
\'skyblue': '#87ceeb',
|
|
||||||
\'slateblue': '#6a5acd',
|
|
||||||
\'slategray': '#708090',
|
|
||||||
\'slategrey': '#708090',
|
|
||||||
\'snow': '#fffafa',
|
|
||||||
\'springgreen': '#00ff7f',
|
|
||||||
\'steelblue': '#4682b4',
|
|
||||||
\'tan': '#d2b48c',
|
|
||||||
\'thistle': '#d8bfd8',
|
|
||||||
\'tomato': '#ff6347',
|
|
||||||
\'turquoise': '#40e0d0',
|
|
||||||
\'violet': '#ee82ee',
|
|
||||||
\'wheat': '#f5deb3',
|
|
||||||
\'whitesmoke': '#f5f5f5',
|
|
||||||
\'yellowgreen': '#9acd32',
|
|
||||||
\}
|
|
||||||
|
|
||||||
let w:colorDictRegExp = '\('
|
|
||||||
for _color in keys(w:colorDict)
|
|
||||||
let w:colorDictRegExp.='\<'._color.'\>\|'
|
|
||||||
endfor
|
|
||||||
let w:colorDictRegExp=strpart(w:colorDictRegExp, 0, len(w:colorDictRegExp)-2).'\)\c'
|
|
||||||
|
|
||||||
call s:VimCssInit(1)
|
call s:VimCssInit(1)
|
||||||
|
|
||||||
autocmd CursorMoved <buffer> silent call s:PreviewCSSColorInLine('.')
|
autocmd CursorMoved <buffer> silent call s:ProcessByLine('.')
|
||||||
autocmd CursorMovedI <buffer> silent call s:PreviewCSSColorInLine('.')
|
autocmd CursorMovedI <buffer> silent call s:ProcessByLine('.')
|
||||||
autocmd ColorScheme <buffer> silent call s:VimCssInit(1)
|
autocmd ColorScheme <buffer> silent call s:VimCssInit(1)
|
||||||
|
autocmd BufEnter <buffer> silent call s:VimCssInit(1)
|
||||||
endif
|
endif
|
||||||
|
|||||||
Reference in New Issue
Block a user