我正在破解 vim 的lightline插件(下载版本)。我可以修改每个主题的颜色。我做了一些在 powerline.vim 方案中运行良好的事情(路径~/.vim/pack/plugins/start/lightline/autoload/lightline/colorscheme/powerline.vim
:)
现在我希望在 vim 中改变颜色主题。我在 powerline.vim 的开头添加了这段代码:
10 let s:BSsplitscolor = "'darkestgreen', 'brightgreen'"
11 if g:BSsplitsbool == "1"
12 let s:BSsplitscolor = "'gray4', 'brightorange'"
13 endif
14
15 " ============================== NOTE: below : already there
16
17 let s:p = {'normal': {}, 'inactive': {}, 'insert': {}, 'replace': {}, 'visual': {}, 'tabline': {}}
18 let s:p.normal.left = [ [s:BSsplitscolor, 'bold'], ['white', 'gray4'] ]
这里s:BSsplitscolor
包含我想要的颜色:'gray4', 'brightorange'
如果g:BSsplitsbool
相等1
或'darkestgreen', 'brightgreen'
不相等。就是g:BSsplitsbool
这样的变化。
现在问题出在第 16 行:当我添加s:BSsplitscolor
after[ [
时,当我重新启动 vim 时出现这些错误(从法语翻译):
Error detected while treating functionlightline#update[5]..lightline#colorscheme[18]..lightline#highlight :
line 18 :
E254: can not allocate color darkestgreen
E416: missing '=' : , 'brightgreen' guibg=bold ctermfg=0 ctermbg=0
Error detected while treating function lightline#update :
line 5 :
E171: missing :endif
我想我遗漏了一些东西......我不太擅长 vim 脚本:我可以做一个 if 指令,重新映射,仅此而已。