通过 vim-sunset 插件更改 vim-airline colorscheme
Change vim-airline colorscheme via vim-sunset plugin
我最近发现了两个非常有用的 VIM 插件,即 vim-sunset (http://vimawesome.com/plugin/sunset) and vim-airline (http://vimawesome.com/plugin/vim-airline-sad-beautiful-tragic)。
使用 vim-sunset 更改配色方案很容易,但我希望它也能更改我航空公司的颜色。
我试图通过
实现这一目标
function! Sunset_daytime_callback()
" Version 1
let g:airline_theme = 'airline_theme_light'
" Version 2
colorscheme vim_colorscheme_light
autocmd ColorScheme * :AirlineTheme airline_theme_light
" Version 3
autocmd ColorScheme * :AirlineTheme airline_theme_light
colorscheme vim_colorscheme_light
endfunction
(Sunset_nighttime_callback()
也一样)
问题如下:
- 版本 1:我猜变量
airline_theme
设置正确,但它没有更新。此外,我在航空公司文档中找不到任何提及如何 "redraw" 使用新参数的函数。
- 版本 2:这种方法可行,但我必须调用函数
Sunset_daytime_callback()
两次才能更新电力线
- 版本 3:由于插件命令
:AirlineTheme
在首次执行 .vimrc
时尚未准备好而中断
是否有(可能是优雅的)解决方案如何让它工作?我是否可能只是错过了航空公司插件中的一个功能,该功能只是重新绘制了线条?
感谢您的帮助!
好的,所以我自己找到了解决方案:关键是在尝试设置航空公司配色方案时检查航空公司插件是否已经加载。
现在看起来像这样:
function! Sunset_daytime_callback()
" This Works :)
colorscheme vim_colorscheme_light
if exists(':AirlineTheme') " check if the plugin is loaded
:AirlineTheme light
else
let g:airline_theme = 'light'
endif
endfunction
我最近发现了两个非常有用的 VIM 插件,即 vim-sunset (http://vimawesome.com/plugin/sunset) and vim-airline (http://vimawesome.com/plugin/vim-airline-sad-beautiful-tragic)。 使用 vim-sunset 更改配色方案很容易,但我希望它也能更改我航空公司的颜色。 我试图通过
实现这一目标function! Sunset_daytime_callback()
" Version 1
let g:airline_theme = 'airline_theme_light'
" Version 2
colorscheme vim_colorscheme_light
autocmd ColorScheme * :AirlineTheme airline_theme_light
" Version 3
autocmd ColorScheme * :AirlineTheme airline_theme_light
colorscheme vim_colorscheme_light
endfunction
(Sunset_nighttime_callback()
也一样)
问题如下:
- 版本 1:我猜变量
airline_theme
设置正确,但它没有更新。此外,我在航空公司文档中找不到任何提及如何 "redraw" 使用新参数的函数。 - 版本 2:这种方法可行,但我必须调用函数
Sunset_daytime_callback()
两次才能更新电力线 - 版本 3:由于插件命令
:AirlineTheme
在首次执行.vimrc
时尚未准备好而中断
是否有(可能是优雅的)解决方案如何让它工作?我是否可能只是错过了航空公司插件中的一个功能,该功能只是重新绘制了线条?
感谢您的帮助!
好的,所以我自己找到了解决方案:关键是在尝试设置航空公司配色方案时检查航空公司插件是否已经加载。 现在看起来像这样:
function! Sunset_daytime_callback()
" This Works :)
colorscheme vim_colorscheme_light
if exists(':AirlineTheme') " check if the plugin is loaded
:AirlineTheme light
else
let g:airline_theme = 'light'
endif
endfunction