Existem dois problemas:
-
O comando
:highlight
não avaliactermfg
valores como expressões. Aceita apenas um número de cor literal ou um nome de cor (consulte:help cterm-colors
). Você obtém E421 porques:base00
não é um número nem um nome de cor válido.Você pode usar
execute 'highlight GroupName ctermfg=' . s:base00
para criar uma cadeia de comando e executá-la (basicamente, o quecolors/solarized.vim
faz); no entanto, há um problema adicional. -
Variáveis que começam com
s:
são variáveis locais de script (consulte:help s:var
), portanto, elas não estão acessíveis em.vimrc
(ou em qualquer lugar, exceto o script em que estão definidas:colors/solarized.vim
). / p>O script de definição “exporta” os valores de cor como parte dos grupos de realce que ele define, mas não parece exportar os valores individuais de cterm / gui que ele usa para cada cor Solarizada. Se você quiser criar seu próprio grupo de realce que usa esses valores, provavelmente será necessário editá-lo na sua cópia de
colors/solarized.vim
(embora você queira usars:fg_base00
/s:bg_base00
em vez des:base00
, pois antiga capaguifg
vs.ctermfg
para que seu grupo trabalhasse automaticamente em GUIs e terminais).