Tweaked the indent_guides#cterm_highlight_colors() function

This commit is contained in:
Nate Kane 2010-12-22 21:44:46 +10:00
parent b3656708cb
commit 51436e3677

View File

@ -90,15 +90,19 @@ endfunction
" Automagically calculates and defines the indent highlight colors for
" terminal vim.
"
" NOTE: At the moment this function only supports color numbers and not names.
" For example, `:hi Normal` containing `ctermbg=0` will work, but
" `ctermbg=DarkGrey` will not.
"
function! indent_guides#cterm_highlight_colors()
let hi_search = indent_guides#capture_highlight('Normal')
let hi_normal = indent_guides#capture_highlight('Normal')
let ctermbg_pattern = "ctermbg=\\zs[0-9]\\+\\ze"
let hi_search_ctermbg = ''
let hi_normal_ctermbg = ''
" capture the background color from the search highlight
let hi_search_ctermbg = matchstr(hi_search, ctermbg_pattern)
exe 'hi IndentGuidesEven ctermbg=' . (hi_search_ctermbg + 1)
exe 'hi IndentGuidesOdd ctermbg=' . (hi_search_ctermbg + 2)
" capture the background color from the normal highlight
let hi_normal_ctermbg = matchstr(hi_normal, ctermbg_pattern)
exe 'hi IndentGuidesEven ctermbg=' . (hi_normal_ctermbg + 1)
exe 'hi IndentGuidesOdd ctermbg=' . (hi_normal_ctermbg + 2)
endfunction
"