Por que estou vendo apenas 8 cores no terminal (Xterm)?

5

Estou executando o Xubuntu 13.04 e quero usar o Vim como meu editor padrão para tudo. Eu baixei muitos esquemas de cores vim e os testei, mas nem todos parecem com a imagem oficial.

Por exemplo, o próprio esquema de cores do vim - desert deve ter esta aparência:

Mas no meu vim, muitas cores não serão exibidas, por exemplo, o plano de fundo.

Então, isso significa lutar com o Terminal do xfce e não posso forçá-lo a usar 256 cores. o comando tput colors me dá  8.

Ao mesmo tempo, o código

for ((x=0; x<=255; x++));do 
echo -e "${x}:3[48;5;${x}mcolor3[000m"
done 

me mostra lindas cores. Parece que perdi alguma coisa. Se eu correr

echo $TERM

Eu recebo xterm . Deve ser 'xterm-256color'

Quando eu tento

set term=xterm-256color

e

export TERM=xterm-256color

Então: echo $TERM

Eu recebo a mensagem

xterm-256color

Mas depois de assinar / assinar, ainda não estou conseguindo as cores certas no Vim. E vejo o $TERM alterado para xterm novamente.

Eu adicionei:

if $TERM == "xterm-256color" set t_Co=256 endif

e

t_Co=256

ao meu arquivo .vimrc e não pareceu ajudar. Então eu customizava as entradas do xterm; adicionou isto a ~/.Xdefaults :

 *customization: -color
 XTerm*termName: xterm-256color
Add this to ~/.xsession to apply to new terminals:

if [ -f $HOME/.Xdefaults ]; then
   xrdb -merge $HOME/.Xdefaults
fi

Quando alterei as preferências do terminal, emule o ambiente do terminal, o xterm to xterm-256color

Eu recebo a mensagem:

 '*** VTE ***: Failed to load terminal capabilities from '/etc/termcap' 

Quando eu verifico /usr/share/vte/termcap/xterm , o arquivo xterm-256color está faltando. O mesmo na pasta xterm0.0 . Tentei encontrar esse arquivo na internet para baixar e colocar na pasta, mas não consegui encontrá-lo.

Isso está me enlouquecendo o dia inteiro ... Alguém tem sugestões?

    
por Martin Jansen 12.10.2013 / 00:46

1 resposta

1

Dê uma olhada nesta resposta: link
Você deve modificar seu /.bashrc e adicionar descrição de cores aqui.

# Format: set color escape sequence \e]P, color number in hex, RGB color in hex
if [ "$TERM" = "linux" ]; then
    echo -en "\e]P02e3436" #black
    echo -en "\e]P1cc0000" #darkred
    echo -en "\e]P24e9a06" #darkgreen
    echo -en "\e]P3c4a000" #brown
    echo -en "\e]P43465a4" #darkblue
    echo -en "\e]P575507b" #darkmagenta
    echo -en "\e]P606989a" #darkcyan
    echo -en "\e]P7d3d7cf" #lightgrey
    echo -en "\e]P8555753" #darkgrey
    echo -en "\e]P9ef2929" #red
    echo -en "\e]PA8ae234" #green
    echo -en "\e]PBfce94f" #yellow
    echo -en "\e]PC729fcf" #blue
    echo -en "\e]PDad7fa8" #magenta
    echo -en "\e]PE34e2e2" #cyan
    echo -en "\e]PFeeeeec" #white
    clear # Fills terminal with base color
fi

Eu modifiquei as cores para obedecer ao esquema de cores do Ubuntu. Tenha em mente que este código é destinado à instalação padrão do Ubuntu. No seu caso você deve mudar a condição para [ "$TERM" = "xterm" ] , como você usa o Xubuntu.

    
por whtyger 05.09.2014 / 14:17