mirror of
https://github.com/vim-airline/vim-airline-themes.git
synced 2026-05-18 06:19:36 +08:00
53b8b71e6b
hybrid.vim theme for airline uses pretty strange palette for both visual
and insert modes. Despite looking *strange*, one may consider it as a
design decision, however, the replace mode uses the same palette for
statusline as the normal mode and hence looks consistent. Visual
comparison could is located here:
http://imgur.com/a/YoeMS
This patch makes things consistent and use the same colors for the
status line, and different colors for mode indicator.
59 lines
3.2 KiB
VimL
59 lines
3.2 KiB
VimL
" vim-airline companion theme of Hybrid
|
|
" (https://github.com/w0ng/vim-hybrid)
|
|
|
|
let g:airline#themes#hybrid#palette = {}
|
|
|
|
function! airline#themes#hybrid#refresh()
|
|
let s:N1 = airline#themes#get_highlight('DiffAdd')
|
|
let s:N2 = airline#themes#get_highlight('CursorLine')
|
|
let s:N3 = airline#themes#get_highlight('PMenu')
|
|
let g:airline#themes#hybrid#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3)
|
|
|
|
let modified_group = airline#themes#get_highlight2(['Text', 'fg'], ['SpellRare', 'bg'], 'bold')
|
|
let g:airline#themes#hybrid#palette.normal_modified = {
|
|
\ 'airline_c': airline#themes#get_highlight2(['Text', 'fg'], ['SpellRare', 'bg'], 'bold')
|
|
\ }
|
|
|
|
let warning_group = airline#themes#get_highlight('SpellRare')
|
|
let g:airline#themes#hybrid#palette.normal.airline_warning = warning_group
|
|
let g:airline#themes#hybrid#palette.normal_modified.airline_warning = warning_group
|
|
|
|
let s:I1 = airline#themes#get_highlight2(['Text', 'fg'], ['DiffText', 'bg'], 'bold')
|
|
let s:I2 = s:N2
|
|
let s:I3 = s:N3
|
|
let g:airline#themes#hybrid#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3)
|
|
let g:airline#themes#hybrid#palette.insert_modified = g:airline#themes#hybrid#palette.normal_modified
|
|
let g:airline#themes#hybrid#palette.insert.airline_warning = g:airline#themes#hybrid#palette.normal.airline_warning
|
|
let g:airline#themes#hybrid#palette.insert_modified.airline_warning = g:airline#themes#hybrid#palette.normal_modified.airline_warning
|
|
|
|
let s:R1 = airline#themes#get_highlight('DiffChange')
|
|
let s:R2 = s:N2
|
|
let s:R3 = s:N3
|
|
let g:airline#themes#hybrid#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3)
|
|
let replace_group = airline#themes#get_highlight('SpellRare')
|
|
let g:airline#themes#hybrid#palette.replace_modified = g:airline#themes#hybrid#palette.normal_modified
|
|
let g:airline#themes#hybrid#palette.replace.airline_warning = g:airline#themes#hybrid#palette.normal.airline_warning
|
|
let g:airline#themes#hybrid#palette.replace_modified.airline_warning = g:airline#themes#hybrid#palette.replace_modified.airline_warning
|
|
|
|
let s:V1 = airline#themes#get_highlight2(['Text', 'fg'], ['DiffDelete', 'bg'], 'bold')
|
|
let s:V2 = s:N2
|
|
let s:V3 = s:N3
|
|
let g:airline#themes#hybrid#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3)
|
|
let g:airline#themes#hybrid#palette.visual_modified = g:airline#themes#hybrid#palette.normal_modified
|
|
let g:airline#themes#hybrid#palette.visual.airline_warning = g:airline#themes#hybrid#palette.normal.airline_warning
|
|
let g:airline#themes#hybrid#palette.visual_modified.airline_warning = g:airline#themes#hybrid#palette.normal_modified.airline_warning
|
|
|
|
let s:IA = airline#themes#get_highlight('StatusLineNC')
|
|
let g:airline#themes#hybrid#palette.inactive = airline#themes#generate_color_map(s:IA, s:IA, s:IA)
|
|
let g:airline#themes#hybrid#palette.inactive_modified = {
|
|
\ 'airline_c': [ modified_group[0], '', modified_group[2], '', '' ]
|
|
\ }
|
|
|
|
let g:airline#themes#hybrid#palette.accents = {
|
|
\ 'red': airline#themes#get_highlight('Constant'),
|
|
\ }
|
|
|
|
endfunction
|
|
|
|
call airline#themes#hybrid#refresh()
|