Ответ 1
У меня была эта проблема сама собой.
Однако следующий оператор исправил все, вот как я управляю поддержкой терминала в файле .vimrc: https://github.com/Greduan/dotfiles/blob/8b48b0d788c0fed6fc14720bbe3ae9def31af947/vim/vimrc.vim#L550-L556
if !has('gui_running')
" Compatibility for Terminal
let g:solarized_termtrans=1
" Make Solarized use 16 colors for Terminal support
let g:solarized_termcolors=16
endif
В основном это исправляет его для терминала, если вы используете терминал. Попробуйте использовать :let g:solarized_termcolors = 16
.
Псевдокод:
- Если пользователь не использует графический интерфейс пользователя:
- Затем установите
termtrans
равным единице. - И сообщите Vim, чтобы использовать только 16 цветов или 256, если ваш терминал поддерживает его (не знаю, что делает).
- Затем установите
- Endif
РЕДАКТИРОВАТЬ 1:
Если вы уверены, что используете 256-цветный терминал, вы также можете просто оставить это в покое, и он будет работать отлично. Например: https://github.com/Greduan/dotfiles/blob/6dac113d8281b0201399831bf62a2ea520d28154/vim/vimrc.vim#L551-L561
if !has('gui_running')
" Compatibility for Terminal
let g:solarized_termtrans=1
if (&t_Co >= 256 || $TERM == 'xterm-256color')
" Do nothing, it handles itself.
else
" Make Solarized use 16 colors for Terminal support
let g:solarized_termcolors=16
endif
endif
Что это значит, проверьте, есть ли у вас терминал. Если он установил termtrans
, проверьте, имеет ли ваш терминал 256 цветов, если он оставил его в покое, если он не устанавливает Solarized для использования 16 цветов. Это работает намного лучше.