无人小站

Vim 定时调整色彩配置

JP-Liu Vim

Vim 定时切换色彩配置

之前写过一个 AutoHotkey 脚本,用于根据时间切换 Windows 系统的明暗主题,前几天突然想起来,自用的 Vim 一直使用暗色的主题,于是决定折腾下看看能否实现主题自动切换,搜索了以下,最后结果如下。

" ColorScheme (示例使用 Vim 自带的 wildcharm 主题)
colorscheme wildcharm
if strftime("%H%M") >= 0700 && strftime("%H%M") < 1945
   set background=light
else
   set background=dark
endif

简单说明下,上面的内容加入 vimrc 后,Vim 启动时,会判断当前的时间,当时间在 07:00 至 19:45 之间时,使用 colorscheme 的 light 模式;否则,使用 dark 模式。如果有需要的话,可以使用不同 colorscheme。

请注意,只在 Vim 启动时会判定,启动后只要不关闭 Vim,显示效果不会变更。应该可以用 autocmd 优化,但感觉触发的机会很少,先不改吧。

JP-Liu
懒人一个