Supondo que o emulador de terminal não pretenda suportar 256 cores ( $ echo $TERM
deve gerar uma string que não contém 256color
) e você não mentiu para o Vim sobre isso ( :echo &t_Co
deve produzir 8
ou 16
), o Vim deve respeitar as cores "ANSI" definidas em seu emulador de terminal.
Todos os esquemas de cores internos usam essas cores "ANSI" - por nome ou por número - por padrão, mas muitos esquemas de cores de terceiros são projetados especificamente para a GUI e / ou para emuladores de terminal de 256 cores. Esses esquemas de cores geralmente não funcionam (ou muito mal) nas configurações de 8/16 cores.
Portanto, você precisará experimentar os esquemas de cores internos e de terceiros para encontrar a combinação "perfeita".
Você pode procurar as dicas abaixo para saber se um esquema de cores funcionará na sua configuração:
ctermfg=red use of names means it works in 8/16 color terminals
ctermfg=7 use of numbers below 16 means it works in 8/16 color terminals
ctermfg=123 use of numbers between 16 and 255 means it works in 256 color terminals
guifg=... means it works in GUI Vim