mirror of
https://github.com/gko/vim-coloresque.git
synced 2025-12-06 12:54:27 +08:00
indent stuff
This commit is contained in:
@@ -26,6 +26,7 @@ function! s:FGForBG(color)
|
|||||||
let r = s:hex[color[0:1]]
|
let r = s:hex[color[0:1]]
|
||||||
let g = s:hex[color[2:3]]
|
let g = s:hex[color[2:3]]
|
||||||
let b = s:hex[color[4:5]]
|
let b = s:hex[color[4:5]]
|
||||||
|
|
||||||
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
|
||||||
|
|
||||||
@@ -34,24 +35,7 @@ let s:fg_color_calc = 'let color = "#" . toupper(a:color)'
|
|||||||
|
|
||||||
function! s:RestoreColors()
|
function! s:RestoreColors()
|
||||||
for part in keys(b:color_pattern)
|
for part in keys(b:color_pattern)
|
||||||
|
|
||||||
"if b:color_pattern[part]=="ffffff"
|
|
||||||
"echoe part
|
|
||||||
"endif
|
|
||||||
|
|
||||||
call s:MatchColorValue(b:color_pattern[part], part)
|
call s:MatchColorValue(b:color_pattern[part], part)
|
||||||
"echoe color
|
|
||||||
"echoe b:color_pattern[color]
|
|
||||||
"let group = 'cssColor' . tolower(strpart(b:color_pattern[part]["color"], 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]["bg"] s:color_prefix.'fg='.b:color_pattern[part]["fg"]
|
|
||||||
|
|
||||||
"if !exists('b:matchescache')
|
|
||||||
"let b:matchescache={}
|
|
||||||
"endif
|
|
||||||
|
|
||||||
"let b:matchescache[part] = matchadd(group, part, -1)
|
|
||||||
endfor
|
endfor
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
@@ -73,8 +57,6 @@ function! s:MatchColorValue(color, part)
|
|||||||
let b:matchescache[a:part] = matchadd(group, a:part, -1)
|
let b:matchescache[a:part] = matchadd(group, a:part, -1)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
"call add(w:matchescache, matchadd(group, a:part, -1))
|
|
||||||
|
|
||||||
return ''
|
return ''
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
@@ -111,17 +93,15 @@ function! s:ClearMatches()
|
|||||||
if !exists('b:matchescache')
|
if !exists('b:matchescache')
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
"for i in values(b:matchescache)
|
|
||||||
"call matchdelete(i)
|
|
||||||
"endfor
|
|
||||||
unlet b:matchescache
|
unlet b:matchescache
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:VimCssInit(update)
|
function! s:VimCssInit(update)
|
||||||
|
|
||||||
if a:update==1
|
if a:update==1
|
||||||
call s:ClearMatches()
|
call s:ClearMatches()
|
||||||
endif
|
endif
|
||||||
|
|
||||||
setlocal isk+=-
|
setlocal isk+=-
|
||||||
setlocal isk+=#
|
setlocal isk+=#
|
||||||
setlocal isk+=.
|
setlocal isk+=.
|
||||||
@@ -131,27 +111,17 @@ function! s:VimCssInit(update)
|
|||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
if len(keys(b:color_pattern))>0
|
if len(keys(b:color_pattern))>0
|
||||||
call s:RestoreColors()
|
call s:RestoreColors()
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
|
|
||||||
"let b:matchescache = {}
|
|
||||||
|
|
||||||
call s:AdditionalColors()
|
call s:AdditionalColors()
|
||||||
|
|
||||||
"for i in range(1, line("$"))
|
|
||||||
call s:PreviewCSSColor(join(getline(1,'$'), "\n"))
|
call s:PreviewCSSColor(join(getline(1,'$'), "\n"))
|
||||||
"endfor
|
|
||||||
|
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:AdditionalColors()
|
function! s:AdditionalColors()
|
||||||
"if exists('&b:colorDictRegExp')&&b:colorDictRegExp!=''
|
|
||||||
"return
|
|
||||||
"endif
|
|
||||||
|
|
||||||
" w3c Colors
|
" w3c Colors
|
||||||
" plus extra colors
|
" plus extra colors
|
||||||
let w:colorDict = {
|
let w:colorDict = {
|
||||||
@@ -304,12 +274,10 @@ function! s:AdditionalColors()
|
|||||||
\ 'yellowgreen': '#9acd32'
|
\ 'yellowgreen': '#9acd32'
|
||||||
\ }
|
\ }
|
||||||
|
|
||||||
"let w:colorDictRegExp = '\('
|
|
||||||
for _color in keys(w:colorDict)
|
for _color in keys(w:colorDict)
|
||||||
"let w:colorDictRegExp.='\<'._color.'\>\|'
|
|
||||||
call s:MatchColorValue(strpart(w:colorDict[tolower(_color)], 1), '\<\c'._color.'\>')
|
call s:MatchColorValue(strpart(w:colorDict[tolower(_color)], 1), '\<\c'._color.'\>')
|
||||||
endfor
|
endfor
|
||||||
"let w:colorDictRegExp=strpart(w:colorDictRegExp, 0, len(w:colorDictRegExp)-2).'\)\c'
|
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:ProcessByLine(w)
|
function! s:ProcessByLine(w)
|
||||||
@@ -317,18 +285,12 @@ function! s:ProcessByLine(w)
|
|||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:PreviewCSSColor(str)
|
function! s:PreviewCSSColor(str)
|
||||||
"if !exists('&w:colorDictRegExp')
|
|
||||||
"endif
|
|
||||||
|
|
||||||
let line=a:str "getline(a:w)
|
let line=a:str "getline(a:w)
|
||||||
let colorexps = {
|
let colorexps = {
|
||||||
\ 'hex' : '#[0-9A-Fa-f]\{3\}\>\|#[0-9A-Fa-f]\{6\}\>',
|
\ 'hex' : '#[0-9A-Fa-f]\{3\}\>\|#[0-9A-Fa-f]\{6\}\>',
|
||||||
\ 'rgba' : 'rgba\?(\s*\(\d\{1,3}%\?\)\s*,\s*\(\d\{1,3}%\?\)\s*,\s*\(\d\{1,3}%\?\)\s*\%(,[^)]*\)\?)',
|
\ 'rgba' : 'rgba\?(\s*\(\d\{1,3}%\?\)\s*,\s*\(\d\{1,3}%\?\)\s*,\s*\(\d\{1,3}%\?\)\s*\%(,[^)]*\)\?)',
|
||||||
\ 'hsla' : 'hsla\?(\s*\(\d\{1,3}%\?\)\s*,\s*\(\d\{1,3}%\?\)\s*,\s*\(\d\{1,3}%\?\)\s*\%(,[^)]*\)\?)'
|
\ 'hsla' : 'hsla\?(\s*\(\d\{1,3}%\?\)\s*,\s*\(\d\{1,3}%\?\)\s*,\s*\(\d\{1,3}%\?\)\s*\%(,[^)]*\)\?)'
|
||||||
\ }
|
\ }
|
||||||
"\ 'color': w:colorDictRegExp
|
|
||||||
|
|
||||||
"let foundcolor=''
|
|
||||||
|
|
||||||
for exp in keys(colorexps)
|
for exp in keys(colorexps)
|
||||||
let place=0
|
let place=0
|
||||||
@@ -387,7 +349,6 @@ if has('gui_running') || &t_Co==256
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
if ! has('gui_running')
|
if ! has('gui_running')
|
||||||
|
|
||||||
let s:black = 0
|
let s:black = 0
|
||||||
let s:white = 15
|
let s:white = 15
|
||||||
|
|
||||||
@@ -412,6 +373,7 @@ if has('gui_running') || &t_Co==256
|
|||||||
\ [ 0xFF, 0x00, 0xFF, 13 ],
|
\ [ 0xFF, 0x00, 0xFF, 13 ],
|
||||||
\ [ 0x00, 0xFF, 0xFF, 14 ],
|
\ [ 0x00, 0xFF, 0xFF, 14 ],
|
||||||
\ [ 0xFF, 0xFF, 0xFF, 15 ]]
|
\ [ 0xFF, 0xFF, 0xFF, 15 ]]
|
||||||
|
|
||||||
" grayscale ramp
|
" grayscale ramp
|
||||||
" (value is 8+10*lum for lum in 0..23)
|
" (value is 8+10*lum for lum in 0..23)
|
||||||
let s:xtermcolor += [
|
let s:xtermcolor += [
|
||||||
@@ -451,6 +413,7 @@ if has('gui_running') || &t_Co==256
|
|||||||
\ + repeat([3],40)
|
\ + repeat([3],40)
|
||||||
\ + repeat([4],40)
|
\ + repeat([4],40)
|
||||||
\ + repeat([5],20)
|
\ + repeat([5],20)
|
||||||
|
|
||||||
" tweak the mapping for the exact matches (0 and 1 already correct)
|
" tweak the mapping for the exact matches (0 and 1 already correct)
|
||||||
let s:xvquant[s:cubergb[2]] = 2
|
let s:xvquant[s:cubergb[2]] = 2
|
||||||
let s:xvquant[s:cubergb[3]] = 3
|
let s:xvquant[s:cubergb[3]] = 3
|
||||||
@@ -482,6 +445,7 @@ if has('gui_running') || &t_Co==256
|
|||||||
let smallest_distance = distance
|
let smallest_distance = distance
|
||||||
let best_match = idx
|
let best_match = idx
|
||||||
endfor
|
endfor
|
||||||
|
|
||||||
return best_match
|
return best_match
|
||||||
endfunction
|
endfunction
|
||||||
endif
|
endif
|
||||||
@@ -625,14 +589,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
|
||||||
|
|
||||||
"call s:VimCssInit(1)
|
|
||||||
|
|
||||||
augroup coloresque
|
augroup coloresque
|
||||||
au!
|
au!
|
||||||
autocmd CursorMovedI <buffer> silent call s:ProcessByLine('.')
|
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)
|
autocmd BufEnter <buffer> silent call s:VimCssInit(1)
|
||||||
augroup END
|
augroup END
|
||||||
|
|
||||||
"autocmd CursorMoved <buffer> silent call s:ProcessByLine('.')
|
|
||||||
endif
|
endif
|
||||||
|
|||||||
Reference in New Issue
Block a user