vimsyntax-highlighting

How to change the color of the selected code (Vim scheme)?


How do I change the color of the selected code in Vim?

There are three selection modes, Visual Line mode or Visual Block mode, and selecting with the mouse).

  hi CursorLine guibg=#DDDDDD gui=none
  hi CursorColumn guibg=#EEEEEE gui=none
  hi MatchParen guifg=#f6f3e8 guibg=#857b6f gui=none
  hi Pmenu   guifg=#f6f3e8 guibg=#DDDDDD gui=none
  hi PmenuSel  guifg=#000000 guibg=#DDDDDD gui=none
endif

" General colors
hi Cursor   guifg=NONE    guibg=#656565 gui=none
hi Normal   guifg=#000000 guibg=#FFFFFF gui=none
hi NonText   guifg=#808080 guibg=#FFFFFF gui=none
hi LineNr   guifg=#857b6f guibg=#FFFFFF gui=none
hi StatusLine  guifg=#000000 guibg=#FFFFFF gui=none
hi StatusLineNC guifg=#857b6f guibg=#FFFFFF gui=none
hi VertSplit  guifg=#444444 guibg=#FFFFFF gui=none
hi Folded   guibg=#AAAAAA guifg=#FFFFFF gui=none
hi Title  guifg=#000000 guibg=NONE gui=none
hi Visual  guifg=#000000 guibg=#FFFFFF gui=none
hi SpecialKey guifg=#808080 guibg=#FFFFFF gui=none

How do I know which line it is?


Solution

  • Selection color for gvim is set by the following line:

    hi Visual  guifg=#000000 guibg=#FFFFFF gui=none
    

    You can use named color values instead of the #nnnnnn RGB codes. Your existing line is set for black foreground and white background, just as you observed.

    For example, if you want a light blue background with white foreground:

    hi Visual  guifg=White guibg=LightBlue gui=none
    

    Be sure the color file you are editing is in the vim7x/colors directory so both vim and gvim can find it. Its exact location can vary a bit depending on your OS platform.