indent stuff

This commit is contained in:
Konstantin Gorodinskii
2020-04-02 21:19:13 +02:00
parent fc9a70a5a1
commit bf16308507

View File

@@ -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,185 +111,173 @@ 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 = {
\'black': '#000000', \ 'black': '#000000',
\'red': '#ff0000', \ 'red': '#ff0000',
\'silver': '#c0c0c0', \ 'silver': '#c0c0c0',
\'gray': '#808080', \ 'gray': '#808080',
\'white': '#ffffff', \ 'white': '#ffffff',
\'maroon': '#800000', \ 'maroon': '#800000',
\'purple': '#800080', \ 'purple': '#800080',
\'fuchsia': '#ff00ff', \ 'fuchsia': '#ff00ff',
\'green': '#008000', \ 'green': '#008000',
\'lime': '#00ff00', \ 'lime': '#00ff00',
\'olive': '#808000', \ 'olive': '#808000',
\'yellow': '#ffff00', \ 'yellow': '#ffff00',
\'navy': '#000080', \ 'navy': '#000080',
\'blue': '#0000ff', \ 'blue': '#0000ff',
\'teal': '#008080', \ 'teal': '#008080',
\'aqua': '#00ffff', \ 'aqua': '#00ffff',
\'aliceblue': '#f0f8ff', \ 'aliceblue': '#f0f8ff',
\'antiquewhite': '#faebd7', \ 'antiquewhite': '#faebd7',
\'aquamarine': '#7fffd4', \ 'aquamarine': '#7fffd4',
\'azure': '#f0ffff', \ 'azure': '#f0ffff',
\'beige': '#f5f5dc', \ 'beige': '#f5f5dc',
\'bisque': '#ffe4c4', \ 'bisque': '#ffe4c4',
\'blanchedalmond': '#ffebcd', \ 'blanchedalmond': '#ffebcd',
\'blueviolet': '#8a2be2', \ 'blueviolet': '#8a2be2',
\'brown': '#a52a2a', \ 'brown': '#a52a2a',
\'burlywood': '#deb887', \ 'burlywood': '#deb887',
\'cadetblue': '#5f9ea0', \ 'cadetblue': '#5f9ea0',
\'chartreuse': '#7fff00', \ 'chartreuse': '#7fff00',
\'chocolate': '#d2691e', \ 'chocolate': '#d2691e',
\'coral': '#ff7f50', \ 'coral': '#ff7f50',
\'cornflowerblue': '#6495ed', \ 'cornflowerblue': '#6495ed',
\'cornsilk': '#fff8dc', \ 'cornsilk': '#fff8dc',
\'crimson': '#dc143c', \ 'crimson': '#dc143c',
\'cyan': '#00ffff', \ 'cyan': '#00ffff',
\'darkblue': '#00008b', \ 'darkblue': '#00008b',
\'darkcyan': '#008b8b', \ 'darkcyan': '#008b8b',
\'darkgoldenrod': '#b8860b', \ 'darkgoldenrod': '#b8860b',
\'darkgray': '#a9a9a9', \ 'darkgray': '#a9a9a9',
\'darkgreen': '#006400', \ 'darkgreen': '#006400',
\'darkgrey': '#a9a9a9', \ 'darkgrey': '#a9a9a9',
\'darkkhaki': '#bdb76b', \ 'darkkhaki': '#bdb76b',
\'darkmagenta': '#8b008b', \ 'darkmagenta': '#8b008b',
\'darkolivegreen': '#556b2f', \ 'darkolivegreen': '#556b2f',
\'darkorchid': '#9932cc', \ 'darkorchid': '#9932cc',
\'darkred': '#8b0000', \ 'darkred': '#8b0000',
\'darksalmon': '#e9967a', \ 'darksalmon': '#e9967a',
\'darkseagreen': '#8fbc8f', \ 'darkseagreen': '#8fbc8f',
\'darkslateblue': '#483d8b', \ 'darkslateblue': '#483d8b',
\'darkslategray': '#2f4f4f', \ 'darkslategray': '#2f4f4f',
\'darkslategrey': '#2f4f4f', \ 'darkslategrey': '#2f4f4f',
\'darkturquoise': '#00ced1', \ 'darkturquoise': '#00ced1',
\'darkviolet': '#9400d3', \ 'darkviolet': '#9400d3',
\'darkorange': '#ff8c00', \ 'darkorange': '#ff8c00',
\'deeppink': '#ff1493', \ 'deeppink': '#ff1493',
\'deepskyblue': '#00bfff', \ 'deepskyblue': '#00bfff',
\'dimgray': '#696969', \ 'dimgray': '#696969',
\'dimgrey': '#696969', \ 'dimgrey': '#696969',
\'dodgerblue': '#1e90ff', \ 'dodgerblue': '#1e90ff',
\'firebrick': '#b22222', \ 'firebrick': '#b22222',
\'floralwhite': '#fffaf0', \ 'floralwhite': '#fffaf0',
\'forestgreen': '#228b22', \ 'forestgreen': '#228b22',
\'gainsboro': '#dcdcdc', \ 'gainsboro': '#dcdcdc',
\'ghostwhite': '#f8f8ff', \ 'ghostwhite': '#f8f8ff',
\'gold': '#ffd700', \ 'gold': '#ffd700',
\'goldenrod': '#daa520', \ 'goldenrod': '#daa520',
\'greenyellow': '#adff2f', \ 'greenyellow': '#adff2f',
\'grey': '#808080', \ 'grey': '#808080',
\'honeydew': '#f0fff0', \ 'honeydew': '#f0fff0',
\'hotpink': '#ff69b4', \ 'hotpink': '#ff69b4',
\'indianred': '#cd5c5c', \ 'indianred': '#cd5c5c',
\'indigo': '#4b0082', \ 'indigo': '#4b0082',
\'ivory': '#fffff0', \ 'ivory': '#fffff0',
\'khaki': '#f0e68c', \ 'khaki': '#f0e68c',
\'lavender': '#e6e6fa', \ 'lavender': '#e6e6fa',
\'lavenderblush': '#fff0f5', \ 'lavenderblush': '#fff0f5',
\'lawngreen': '#7cfc00', \ 'lawngreen': '#7cfc00',
\'lemonchiffon': '#fffacd', \ 'lemonchiffon': '#fffacd',
\'lightblue': '#add8e6', \ 'lightblue': '#add8e6',
\'lightcoral': '#f08080', \ 'lightcoral': '#f08080',
\'lightcyan': '#e0ffff', \ 'lightcyan': '#e0ffff',
\'lightgoldenrodyellow': '#fafad2', \ 'lightgoldenrodyellow': '#fafad2',
\'lightgray': '#d3d3d3', \ 'lightgray': '#d3d3d3',
\'lightgreen': '#90ee90', \ 'lightgreen': '#90ee90',
\'lightgrey': '#d3d3d3', \ 'lightgrey': '#d3d3d3',
\'lightpink': '#ffb6c1', \ 'lightpink': '#ffb6c1',
\'lightsalmon': '#ffa07a', \ 'lightsalmon': '#ffa07a',
\'lightseagreen': '#20b2aa', \ 'lightseagreen': '#20b2aa',
\'lightskyblue': '#87cefa', \ 'lightskyblue': '#87cefa',
\'lightslategray': '#778899', \ 'lightslategray': '#778899',
\'lightslategrey': '#778899', \ 'lightslategrey': '#778899',
\'lightsteelblue': '#b0c4de', \ 'lightsteelblue': '#b0c4de',
\'lightyellow': '#ffffe0', \ 'lightyellow': '#ffffe0',
\'limegreen': '#32cd32', \ 'limegreen': '#32cd32',
\'linen': '#faf0e6', \ 'linen': '#faf0e6',
\'magenta': '#ff00ff', \ 'magenta': '#ff00ff',
\'mediumaquamarine': '#66cdaa', \ 'mediumaquamarine': '#66cdaa',
\'mediumblue': '#0000cd', \ 'mediumblue': '#0000cd',
\'mediumorchid': '#ba55d3', \ 'mediumorchid': '#ba55d3',
\'mediumpurple': '#9370d8', \ 'mediumpurple': '#9370d8',
\'mediumseagreen': '#3cb371', \ 'mediumseagreen': '#3cb371',
\'mediumslateblue': '#7b68ee', \ 'mediumslateblue': '#7b68ee',
\'mediumspringgreen': '#00fa9a', \ 'mediumspringgreen': '#00fa9a',
\'mediumturquoise': '#48d1cc', \ 'mediumturquoise': '#48d1cc',
\'mediumvioletred': '#c71585', \ 'mediumvioletred': '#c71585',
\'midnightblue': '#191970', \ 'midnightblue': '#191970',
\'mintcream': '#f5fffa', \ 'mintcream': '#f5fffa',
\'mistyrose': '#ffe4e1', \ 'mistyrose': '#ffe4e1',
\'moccasin': '#ffe4b5', \ 'moccasin': '#ffe4b5',
\'navajowhite': '#ffdead', \ 'navajowhite': '#ffdead',
\'oldlace': '#fdf5e6', \ 'oldlace': '#fdf5e6',
\'olivedrab': '#6b8e23', \ 'olivedrab': '#6b8e23',
\'orange': '#ffa500', \ 'orange': '#ffa500',
\'orangered': '#ff4500', \ 'orangered': '#ff4500',
\'orchid': '#da70d6', \ 'orchid': '#da70d6',
\'palegoldenrod': '#eee8aa', \ 'palegoldenrod': '#eee8aa',
\'palegreen': '#98fb98', \ 'palegreen': '#98fb98',
\'paleturquoise': '#afeeee', \ 'paleturquoise': '#afeeee',
\'palevioletred': '#d87093', \ 'palevioletred': '#d87093',
\'papayawhip': '#ffefd5', \ 'papayawhip': '#ffefd5',
\'peachpuff': '#ffdab9', \ 'peachpuff': '#ffdab9',
\'peru': '#cd853f', \ 'peru': '#cd853f',
\'pink': '#ffc0cb', \ 'pink': '#ffc0cb',
\'plum': '#dda0dd', \ 'plum': '#dda0dd',
\'powderblue': '#b0e0e6', \ 'powderblue': '#b0e0e6',
\'rosybrown': '#bc8f8f', \ 'rosybrown': '#bc8f8f',
\'royalblue': '#4169e1', \ 'royalblue': '#4169e1',
\'saddlebrown': '#8b4513', \ 'saddlebrown': '#8b4513',
\'salmon': '#fa8072', \ 'salmon': '#fa8072',
\'sandybrown': '#f4a460', \ 'sandybrown': '#f4a460',
\'seagreen': '#2e8b57', \ 'seagreen': '#2e8b57',
\'seashell': '#fff5ee', \ 'seashell': '#fff5ee',
\'sienna': '#a0522d', \ 'sienna': '#a0522d',
\'skyblue': '#87ceeb', \ 'skyblue': '#87ceeb',
\'slateblue': '#6a5acd', \ 'slateblue': '#6a5acd',
\'slategray': '#708090', \ 'slategray': '#708090',
\'slategrey': '#708090', \ 'slategrey': '#708090',
\'snow': '#fffafa', \ 'snow': '#fffafa',
\'springgreen': '#00ff7f', \ 'springgreen': '#00ff7f',
\'steelblue': '#4682b4', \ 'steelblue': '#4682b4',
\'tan': '#d2b48c', \ 'tan': '#d2b48c',
\'thistle': '#d8bfd8', \ 'thistle': '#d8bfd8',
\'tomato': '#ff6347', \ 'tomato': '#ff6347',
\'turquoise': '#40e0d0', \ 'turquoise': '#40e0d0',
\'violet': '#ee82ee', \ 'violet': '#ee82ee',
\'wheat': '#f5deb3', \ 'wheat': '#f5deb3',
\'whitesmoke': '#f5f5f5', \ 'whitesmoke': '#f5f5f5',
\'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