Лучше цвета, чтобы комментарии не были темно-синими в Vim?


222

В основном я редактирую файлы Ruby, хотя комментарии к файлам сценариев оболочки также #

В настоящее время мои комментарии отображаются темно-синими черными, которые действительно трудно читать.

Смотрите скриншот.

Как я могу изменить их цвет?

Я готов рассмотреть различные схемы для всех цветов, хотя мне нравится черный фон в качестве основы.

Скриншот окна терминала с запущенным Vim.  Комментарии темно-синие на черном фоне, что делает их едва заметными.


4
Мне нравится контрастный фон для комментариев - он выделяет их из кода, например. hi Comment ctermbg=gray ctermfg=darkblue, Вы можете установить свою цветовую схему и затем менять ее постепенно; поместите биты в отдельный файл, и sourceэто в конце вашего vimrc.
Златовласка

1
TL; DR Просто отредактируйте ~ / .vimrc и добавьте строку colorscheme desert
intotecho

Ответы:


230

Существует множество цветовых схем, которые обычно распространяются вместе с vim. Вы можете выбрать их с помощью :colorкоманды.

Вы можете увидеть доступные цветовые схемы в colorsпапке vim , например, в моем случае:

$ ls /usr/share/vim/vimNN/colors/ # where vimNN is vim version, e.g. vim74
blue.vim  darkblue.vim  default.vim  delek.vim  desert.vim  elflord.vim 
evening.vim  koehler.vim  morning.vim  murphy.vim  pablo.vim  peachpuff.vim
README.txt  ron.vim  shine.vim  slate.vim  torte.vim  zellner.vim

Я обычно использую desert. Так что я открываю vim, затем войти :color desertи войти. Чтобы иметь цветовую схему по умолчанию при каждом открытии vim, добавьте :color desertв свой ~/.vimrc.

(Майкл, О.П.) Это было хорошо. Терминал выглядит так:

Пример VIM для файла Ruby с подсветкой синтаксиса различными цветами


25
Вы также можете циклически перебирать доступные цвета с помощью клавиши TAB после ввода :color.
Daddy32

148

Поскольку вы используете темный фон в своем терминале, вам просто нужно установить

:set background=dark

вместо по умолчанию

:set background=light

Цвета автоматически устанавливаются правильно.

Если вы хотите иметь это постоянно, добавьте строку

set background=dark

в ваш $HOME/.vimrcфайл.


12
В то время как принятый ответ имеет полезную информацию, этот ответ гораздо более краткий о коренной причине проблемы для людей как я, которые предпочитают темное оконное окно с темной тематикой.
Марк Эдингтон

4
К сожалению, это все еще использует этот почти нечитаемый темно-синий в некоторых местах.
Роби

2
@rooby Часто вы можете изменить цвета по умолчанию в эмуляторе терминала, см. также другие ответы.
Джофель

3
Кажется довольно странным, что debian (по крайней мере) по умолчанию использует темный фон для своего окна терминала, но vim того же дистрибутива по умолчанию использует предположение о светлом фоне относительно терминала.
Джеймс Бауэри

2
Я думаю, что вы также можете просто использовать bgвместоbackground
abonet

27

Вы можете сделать это вручную с помощью этой команды:

:hi Comment guifg=#ABCDEF

Где ABCDEFсоответствующий цвет шестнадцатеричный код .

Чтобы сделать его постоянным, вам нужно добавить эти строки в ваш ~/.vimrcфайл (на примере зеленого):

syntax on
:highlight Comment ctermfg=green

5
Также возможно увидеть текущие настройки выделения с помощью :hiили :highlight(то есть без каких-либо других аргументов).
evilsoup

1
Вы можете также изменить другие типы , такие как строки в поддержке типов документов, пример:highlight String ctermfg=green
aggregate1166877

14

Один вариант, который я нашел, был в настройках терминала (верхнее меню, а не окно).

У этого есть настройки профиля и затем цветная вкладка, например

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

Помогло изменение Палитры 5 с Темно-синего на Светло-сиреневый. Я наконец выбрал xterm в качестве цветовой схемы и осветил цвет комментария, напримервведите описание изображения здесь


2
Теперь мой единственный вопрос: могу ли я сохранить эти настройки в файле, чтобы они были доступны для новой настройки машины.
Майкл Даррант

2
Я использую xterm и устанавливаю синий цвет на что-то приятное для глаз в .Xresources: "XTerm * color4: светло-голубой".
Holygeek

9

У меня была именно эта проблема некоторое время назад, решение состоит в том, чтобы поместить следующую строку в ваш файл vimrc:

set t_Co=256

И тогда вам может понадобиться добавить следующее в конец вашего ~ / .profile:

#set vim terminal to 256 colors.
if [ -e /usr/share/terminfo/x/xterm-256color ]; then
    export TERM='xterm-256color'
else
    export TERM='xterm-color'
fi

и тогда вы можете установить:

hi Comment      ctermfg=lightblue

в вашем файле vimrc, и тогда у вас будут голубые комментарии.
vimrc 256: http://vim.wikia.com/wiki/256_colors_in_vim

Я также заметил, что экран стал несколько красивее, установив его на 256.


7

Если на темном фоне в Debian, то раскомментируйте set background=darkв /etc/vim/vimrcпомогает тоже.

Или, если вы не хотите вмешиваться в файл конфигурации пакета, а в (новый)
/etc/vim/vimrc.local


4

Вот хороший git-репо с более чем 700 цветовыми схемами для vim

https://github.com/flazz/vim-colorschemes

клонировать его в ~/.vim/

git clone https://github.com/flazz/vim-colorschemes ~/.vim/

Предварительный просмотр схем в vim с

:colorscheme mrkn256

(заменить mrkn256на одно из этих имен ls ~/.vim/colors(без .vimрасширения))

Чтобы установить его постоянно редактировать ~/.vimrcдобавить / изменить

colorscheme mrkn256


3

Может быть, слишком далеко от темы, но здесь идет

Для Windows 10 WSL (Подсистема Windows для Linux)

это сработало для меня (в .vimrc)

синтаксис на

цветная схема пустыни (или любая цветовая схема)


-1
:colo desert

Я использую эту команду, чтобы выделить комментарии, например;)

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.