diff --git a/autoload/airline.vim b/autoload/airline.vim index 9c9258e5..5e66ba48 100644 --- a/autoload/airline.vim +++ b/autoload/airline.vim @@ -21,18 +21,20 @@ function! airline#switch_theme(name) endfunction function! airline#switch_matching_theme() - let v:errmsg = '' - silent! let palette = g:airline#themes#{g:colors_name}#palette - if empty(v:errmsg) - call airline#switch_theme(g:colors_name) - return 1 - else - for map in items(g:airline_theme_map) - if match(g:colors_name, map[0]) > -1 - call airline#switch_theme(map[1]) - return 1 - endif - endfor + if exists('g:colors_name') + let v:errmsg = '' + silent! let palette = g:airline#themes#{g:colors_name}#palette + if empty(v:errmsg) + call airline#switch_theme(g:colors_name) + return 1 + else + for map in items(g:airline_theme_map) + if match(g:colors_name, map[0]) > -1 + call airline#switch_theme(map[1]) + return 1 + endif + endfor + endif endif return 0 endfunction