Это то, что у меня есть в моем .bashrc
if [ -n "$DISPLAY" -a "$TERM" == "xterm" ]; then
export TERM=xterm-256color
fi
В моем .vimrc у меня есть:
set t_Co=256
echo $ TERM печатает xterm-256color
tput colours распечатывает 256
Я также запустил скрипт с именем 256colors2.pl, и все цвета напечатаны правильно. Тем не менее, то, что я вижу в своем терминале, таково (это тема «пустыни»):
Также файл colortest.vim не отображается должным образом:
Видимо, он показывает только цветовую палитру моего терминала по умолчанию.
:verbose set term?
" (с вопросительным знаком как часть команды)?:set term=xterm-color
в Vim?Ответы:
Вам нужно перейти в настройки терминала xfce, перейти на вкладку «Совместимость» и убедиться, что для параметра эмуляции задано «xterm-256color», а не «xterm»
Основную причину проблемы можно найти в этой статье: https://codeyarns.com/2015/03/18/how-to-set-term-to-xterm-256color/
По сути, вам нужно, чтобы терминалы на основе VTE или GNOME устанавливали
term
переменную среды перед вызовом оболочки. Приведенные выше настройки приведут к тому, что это произойдет в терминале XFCEисточник