Изменение цвета Vim CursorLine в режиме вставки

Есть хороший фрагмент для изменения цвета 9X_gvimrc курсора:

if &term =~ "xterm\\|rxvt" " use an orange cursor in insert mode let &t_SI = "\]12;orange\x7" " use a red cursor otherwise let &t_EI = "\]12;red\x7" silent !echo -ne "\033]12;red\007" " reset cursor when vim exits autocmd VimLeave * silent !echo -ne "\033]112\007" " use \003]12;gray\007 for gnome-terminal endif 

Как мне изменить это, чтобы вместо 9X_vimrc курсора CursorLine меняла цвет, например, с 9X_gvim темно-синего на синий?

Моя полная конфигурация 9X_colours - https://bitbucket.org/JackLeo/home-configs/src/5b8faf340f87/.vimrc

27
1

  • Мне нравится отображение ключей arror с ком ...
5
Общее количество ответов: 5

Ответ #1

Ответ на вопрос: Изменение цвета Vim CursorLine в режиме вставки

Вы изучили команду "выделить", которая является 9X_vimscript более простым способом контролировать это.

Например, чтобы 9X_viml изменить CursorLine,

:hi CursorLine guifg=red guibg=blue 

Ссылка:: выделение справки

Для 9X_colours переключения между режимами.

" Enable CursorLine set cursorline " Default Colors for CursorLine highlight CursorLine ctermbg=Yellow ctermfg=None " Change Color when entering Insert Mode autocmd InsertEnter * highlight CursorLine ctermbg=Green ctermfg=Red " Revert Color to default when leaving Insert Mode autocmd InsertLeave * highlight CursorLine ctermbg=Yellow ctermfg=None 

Я могу смешать 9X_gvimrc цвет termcap с autocmd, но IMO, подсветку 9X_vim легче поддерживать в долгосрочной перспективе 9X_vimrc (и в случае, если gVim используется время 9X_vim от времени)

37
2

  • Чтобы уточнить, для gVim и Neovim с `set termguicolors` вам нуж ...

Ответ #2

Ответ на вопрос: Изменение цвета Vim CursorLine в режиме вставки

Это довольно просто, поместите следующее 9X_gvimrc в свой .vimrc или пользовательский файл colorscheme.

set cursorline autocmd InsertEnter * highlight CursorLine guifg=white guibg=blue ctermfg=white ctermbg=blue autocmd InsertLeave * highlight CursorLine guifg=white guibg=darkblue ctermfg=white ctermbg=darkblue 

Для получения 9X_colours дополнительной информации см .:

  • :help 'cursorline'
  • :help :autocmd
  • :help InsertEnter
  • :help :highlight

Примечание. Вы 9X_colors можете использовать тот же метод для изменения 9X_colors цвета курсора без всех этих if-операторов 9X_vimrc и escape-последовательностей (и это также 9X_cursor будет работать в GVim).

8
1

  • другие полезные примеры `cterm = bold`, и вы можете отключить что угодно с помощью` NONE`, например У меня нет выделения, когда ...

Ответ #3

Ответ на вопрос: Изменение цвета Vim CursorLine в режиме вставки

При использовании MacVim с 'Lokaltog/vim-powerline' вы можете настроить 9X_vimscript свои обычные / визуальные / вставные цвета 9X_cursor в соответствии с цветом режима Powerline. Мне 9X_viml очень полезно знать, в каком режиме я нахожусь, не 9X_color читая Powerline, особенно на большом экране.

Вот 9X_gvimrc код, который я использую, на основе ответа 9X_color @Zarick-Lau.

В моем файле colors/molokai.vim:

" Visual Mode Orange Background, Black Text hi Visual guifg=#000000 guibg=#FD971F " Default Colors for CursorLine highlight CursorLine guibg=#3E3D32 highlight Cursor guibg=#A6E22E; " Change Color when entering Insert Mode autocmd InsertEnter * highlight CursorLine guibg=#323D3E autocmd InsertEnter * highlight Cursor guibg=#00AAFF; " Revert Color to default when leaving Insert Mode autocmd InsertLeave * highlight CursorLine guibg=#3E3D32 autocmd InsertLeave * highlight Cursor guibg=#A6E22E; 

Вот пример использования 9X_gvim оригинальной цветовой схемы молокаи.

Нормальный

9X_Изменение цвета Vim CursorLine в режиме вставки_colour

Визуальный

9X_Изменение цвета Vim CursorLine в режиме вставки_color

Вставить

9X_Изменение цвета Vim CursorLine в режиме вставки_lines

Я также 9X_lines считаю полезным настроить ОС на визуальное 9X_line выделение с использованием того же цвета. Например, я 9X_gvimrc изменил цвет выделения на Orange в OSX, и когда 9X_cursor я выделяю текст, он становится оранжевым, а 9X_colors не синим, как в VIM.

9X_Изменение цвета Vim CursorLine в режиме вставки_colour

Пример

Здесь оранжевое выделение 9X_colors используется в текстовом поле, когда я пишу 9X_colour эту запись о переполнении стека. Теперь 9X_lines весь текст, который я выделяю в своей ОС, соответствует 9X_colors настройке VIM.

9X_Изменение цвета Vim CursorLine в режиме вставки_colors

4
0

Ответ #4

Ответ на вопрос: Изменение цвета Vim CursorLine в режиме вставки

Я решил переключить CursorLine и Normal в режим вставки. Сначала 9X_vimrc получите значения с помощью :hi Normal и :hi CursorLine. Затем настройте 9X_line следующие строки:

set cursorline autocmd InsertEnter * highlight Normal ctermbg=7 autocmd InsertEnter * highlight CursorLine ctermbg=15 autocmd InsertLeave * highlight Normal ctermbg=15 autocmd InsertLeave * highlight CursorLine ctermbg=7 

Для солнечного света это 9X_colours выглядит так. Мне нравится эффект «фокусировки».

9X_Изменение цвета Vim CursorLine в режиме вставки_viml 9X_Изменение цвета Vim CursorLine в режиме вставки_colours

2
0

Ответ #5

Ответ на вопрос: Изменение цвета Vim CursorLine в режиме вставки

НЕТ ЦВЕТА в текущей строке, даже если вы входите или выходите из РЕЖИМА ВСТАВКИ

 "set cursorline set noshowmode "Enable CursorLine set nocursorline "Default Colors for CursorLine hi CursorLine cterm=NONE ctermbg=NONE ctermfg=NONE "Change Color when entering Insert Mode autocmd InsertEnter * set nocursorline "Revert Color to default when leaving Insert Mode autocmd InsertLeave * set nocursorline 

9X_gvim

1
0