У вас есть несколько вариантов.
Я думаю, что вам лучше всего загружать одну цветовую схему в .vimrc
, а другую в .gvimrc
(или в вашем случае, просто не загружайте цветовую схему в .vimrc
вообще). Цветовая схема .gvimrc
будет загружена только при использовании версии MacVim с графическим интерфейсом.
Если вы не хотите разбивать свою конфигурацию на несколько файлов, вы также можете использовать условное выражение, подобное этому, в .vimrc
:
if has('gui_running')
colorscheme mycrazycolors
endif
Наконец, если вы действительно хотите узнать количество доступных цветов, вы можете проверить настройку t_Co
:
:echo &t_Co
t_Co
пусто в версии MacVim с графическим интерфейсом, так что вы, вероятно, все еще захотите использовать вариант has()
. На самом деле, по умолчанию .vimrc
делает нечто подобное, чтобы определить, когда включать подсветку синтаксиса:
if &t_Co > 2 || has("gui_running")
syntax on
endif
Для полноты картины я должен упомянуть, что вы также можете расширить свой файл цветовой схемы, включив в него разумные настройки для цветных терминалов. Однако это довольно трудоемкий процесс, и может быть проще просто переключиться на терминальное приложение, поддерживающее больше цветов.
См. Эти темы для получения дополнительной информации:
:help has()
:help termcap
:help termcap-colors