Vim открывает терминал с профилем, отличным от профиля по умолчанию

#vim

#vim

Вопрос:

Я работаю на macOS Catalina и использую vim 8.2

Единственный профиль, настроенный в моем iterm2 профиле, — это the Default one.

введите описание изображения здесь

который был настроен на использование слегка настроенной темы solarized, как показано ниже

введите описание изображения здесь

Сейчас я открываю vim (который также был настроен на использование его аналога solarized colorscheme).

введите описание изображения здесь

Мой вопрос в том, почему, когда я открываю :terminal в vim, это открывается на черном фоне (я не думаю, что вообще существует профиль с такой настройкой)

введите описание изображения здесь

Ответ №1:

Это произойдет, когда у вас будет запущен Vim с 'termguicolors' включенным. (Вы можете подтвердить это и посмотреть, где он включен :verb set tgc? .) Так же, как и при запуске в графическом интерфейсе пользователя (не в терминале), он будет указывать Vim использовать 24-битные цвета и использовать цветовую схему с полными цветовыми спецификациями RGB, а не использовать цветовую палитру терминала.

В таких ситуациях цвета Vim полностью отделяются от цветов терминала, на котором запущен Vim, поэтому встроенный терминал Vim больше не имеет доступа к фактическим цветам терминала.

Вы можете установить определенные цвета для использования во встроенном терминале Vim с g:terminal_ansi_colors помощью переменной ( :help g:terminal_ansi_colors подробнее см.).

В качестве альтернативы, отключение 'termguicolors' также должно работать. Предполагая, что цветовая схема Vim была построена таким образом, чтобы использовать цветовую схему терминала для воспроизведения одних и тех же цветов, она может не иметь других побочных эффектов в том, как цвета Vim выглядят иначе.

Ответ №2:

Удаление строки

установите termguicolors

из .vimrc исправлено