set highlight after ColorScheme

This commit is contained in:
itchyny
2013-08-22 19:07:29 +09:00
parent 0ff5550d60
commit 6d154d7eef
2 changed files with 13 additions and 12 deletions

View File

@@ -3,7 +3,7 @@
" Version: 0.0 " Version: 0.0
" Author: itchyny " Author: itchyny
" License: MIT License " License: MIT License
" Last Change: 2013/08/22 19:01:04. " Last Change: 2013/08/22 19:05:48.
" ============================================================================= " =============================================================================
let s:save_cpo = &cpo let s:save_cpo = &cpo
@@ -89,9 +89,7 @@ function! lightline#init()
let g:lightline.colorscheme = 'default' let g:lightline.colorscheme = 'default'
let g:lightline.palette = g:lightline#colorscheme#{g:lightline.colorscheme}#palette let g:lightline.palette = g:lightline#colorscheme#{g:lightline.colorscheme}#palette
finally finally
for m in ['normal', 'insert', 'replace', 'visual', 'inactive', 'command'] call lightline#highlight()
call lightline#highlight(m)
endfor
let s:_ = 0 let s:_ = 0
endtry endtry
endfunction endfunction
@@ -127,8 +125,9 @@ function! s:gui2cui(rgb, fallback)
return rgb[0] + rgb[1] + rgb[2] return rgb[0] + rgb[1] + rgb[2]
endfunction endfunction
function! lightline#highlight(mode) function! lightline#highlight()
let d = has_key(g:lightline.palette, a:mode) ? a:mode : 'normal' for mode in ['normal', 'insert', 'replace', 'visual', 'inactive', 'command']
let d = has_key(g:lightline.palette, mode) ? mode : 'normal'
let c = g:lightline.palette let c = g:lightline.palette
let left = d == 'inactive' ? g:lightline.inactive.left : g:lightline.active.left let left = d == 'inactive' ? g:lightline.inactive.left : g:lightline.active.left
let right = d == 'inactive' ? g:lightline.inactive.right : g:lightline.active.right let right = d == 'inactive' ? g:lightline.inactive.right : g:lightline.active.right
@@ -148,17 +147,18 @@ function! lightline#highlight(mode)
for i in range(len(left)) for i in range(len(left))
let li = i < len(l) ? l[i] : l[-1] let li = i < len(l) ? l[i] : l[-1]
let lj = i + 1 < len(l) ? l[i + 1] : l[-1] let lj = i + 1 < len(l) ? l[i + 1] : l[-1]
exec printf('hi LightLineLeft_%s_%d guifg=%s guibg=%s ctermfg=%d ctermbg=%d %s', a:mode, i, li[0], li[1], li[2], li[3], s:term(li)) exec printf('hi LightLineLeft_%s_%d guifg=%s guibg=%s ctermfg=%d ctermbg=%d %s', mode, i, li[0], li[1], li[2], li[3], s:term(li))
exec printf('hi LightLineLeft_%s_%d_%d guifg=%s guibg=%s ctermfg=%d ctermbg=%d', a:mode, exec printf('hi LightLineLeft_%s_%d_%d guifg=%s guibg=%s ctermfg=%d ctermbg=%d', mode,
\ i, i + 1, li[1], i == len(left) - 1 ? m[1] : lj[1], li[3], i == len(left) - 1 ? m[3] : lj[3]) \ i, i + 1, li[1], i == len(left) - 1 ? m[1] : lj[1], li[3], i == len(left) - 1 ? m[3] : lj[3])
endfor endfor
exec printf('hi LightLineMiddle_%s guifg=%s guibg=%s ctermfg=%d ctermbg=%d %s', a:mode, m[0], m[1], m[2], m[3], s:term(m)) exec printf('hi LightLineMiddle_%s guifg=%s guibg=%s ctermfg=%d ctermbg=%d %s', mode, m[0], m[1], m[2], m[3], s:term(m))
for i in reverse(range(len(right))) for i in reverse(range(len(right)))
let ri = i < len(r) ? r[i] : r[-1] let ri = i < len(r) ? r[i] : r[-1]
let rj = i + 1 < len(r) ? r[i + 1] : r[-1] let rj = i + 1 < len(r) ? r[i + 1] : r[-1]
exec printf('hi LightLineRight_%s_%d_%d guifg=%s guibg=%s ctermfg=%d ctermbg=%d', a:mode, exec printf('hi LightLineRight_%s_%d_%d guifg=%s guibg=%s ctermfg=%d ctermbg=%d', mode,
\ i, i + 1, ri[1], i == len(right) - 1 ? m[1] : rj[1], ri[3], i == len(right) - 1 ? m[3] : rj[3]) \ i, i + 1, ri[1], i == len(right) - 1 ? m[1] : rj[1], ri[3], i == len(right) - 1 ? m[3] : rj[3])
exec printf('hi LightLineRight_%s_%d guifg=%s guibg=%s ctermfg=%d ctermbg=%d %s', a:mode, i, ri[0], ri[1], ri[2], ri[3], s:term(ri)) exec printf('hi LightLineRight_%s_%d guifg=%s guibg=%s ctermfg=%d ctermbg=%d %s', mode, i, ri[0], ri[1], ri[2], ri[3], s:term(ri))
endfor
endfor endfor
endfunction endfunction

View File

@@ -3,7 +3,7 @@
" Version: 0.0 " Version: 0.0
" Author: itchyny " Author: itchyny
" License: MIT License " License: MIT License
" Last Change: 2013/08/22 04:53:26. " Last Change: 2013/08/22 19:06:29.
" ============================================================================= " =============================================================================
let s:save_cpo = &cpo let s:save_cpo = &cpo
@@ -11,6 +11,7 @@ set cpo&vim
augroup LightLine augroup LightLine
autocmd! autocmd!
autocmd ColorScheme * call lightline#highlight()
autocmd WinEnter,BufWinEnter * call lightline#update() autocmd WinEnter,BufWinEnter * call lightline#update()
autocmd CursorMoved,FileType * call lightline#update_once() autocmd CursorMoved,FileType * call lightline#update_once()
autocmd InsertLeave * call lightline#update(1) autocmd InsertLeave * call lightline#update(1)