É isso que eu tenho no meu .bashrc
if [ -n "$DISPLAY" -a "$TERM" == "xterm" ]; then
export TERM=xterm-256color
fi
No meu .vimrc eu tenho:
set t_Co=256
echo $ TERM imprime xterm-256color
cores tput imprime 256
Também executei um script chamado 256colors2.pl e todas as cores são impressas corretamente. Ainda o que vejo no meu terminal é este (esse é o tema "deserto"):
Além disso, o arquivo colortest.vim não é exibido corretamente:
Aparentemente, ele mostra apenas a paleta de cores padrão do meu terminal.
:verbose set term?
" (com o ponto de interrogação como parte do comando)?:set term=xterm-color
no Vim?Respostas:
Você precisa acessar as preferências do terminal xfce, clicar na guia Compatibilidade e verificar se a configuração de emulação é "xterm-256color" e não "xterm"
O motivo básico do problema pode ser encontrado neste artigo: https://codeyarns.com/2015/03/18/how-to-set-term-to-xterm-256color/
Basicamente, você precisa ter terminais baseados em VTE ou GNOME para definir a
term
variável de ambiente antes que o shell seja chamado. As configurações acima farão isso acontecer no terminal XFCEfonte