Nie mogę zmusić terminalu XFCE do wyświetlania kolorów VIM


10

To właśnie mam w moim .bashrc

if [ -n "$DISPLAY" -a "$TERM" == "xterm" ]; then
    export TERM=xterm-256color
fi

W moim .vimrc mam:

set t_Co=256

echo $ TERM drukuje xterm-256kolor

tput kolory drukuje 256

Uruchomiłem również skrypt o nazwie 256colors2.pl i wszystkie kolory są drukowane poprawnie. Nadal widzę to w moim terminalu (to jest motyw „pustynny”):

pustynia

Również plik colortest.vim nie wyświetla się poprawnie:

Colortest

Najwyraźniej pokazuje tylko domyślną paletę kolorów mojego terminala.


Tylko, aby potwierdzić, co mówi wynik „ :verbose set term?” (ze znakiem zapytania jako częścią polecenia)?
Heptyt

„term = xterm-256color”. Nie wiem co się stanie. Czy terminal xfce przesłania kolory?
Sleeper

Nie powinno tak być.
Heptyt

Czy wiesz, jak to zmienić?
Sleeper

Niestety nie wiem, co jest nie tak, więc nie wiem. To nie powinno mieć znaczenia, ale co się stanie, jeśli zrobisz to :set term=xterm-colorw Vimie?
Heptyt

Odpowiedzi:


1

Musisz przejść do preferencji terminala xfce, kliknąć kartę Zgodność i upewnić się, że ustawienie emulacji to „xterm-256color”, a nie „xterm”

Podstawową przyczynę problemu można znaleźć w tym artykule: https://codeyarns.com/2015/03/18/how-to-set-term-to-xterm-256color/

Zasadniczo musisz mieć terminale oparte na VTE lub GNOME, aby ustawić termzmienną środowiskową przed wywołaniem powłoki. Powyższe ustawienia spowodują, że tak się stanie w terminalu XFCE

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.