Set vim bracket highlighting colors
VimVim Problem Overview
I'm using :set showmatch
to highlight the matching bracket or brace when the cursor is over one.
I'd like to change the highlight-color so that it's radically different from the cursor color, because I've got the situation shown in the screenshots.
When the cursor is over the second brace:
and when the cursor is to the immediate-right of the brace:
This uses my terminal color scheme, which is taken from Solarized. Unfortunately, it's a bit of a pain to see which highlight is the brace matching and which is the cursor, when the braces are close together.
Is there a vim
setting I can use to change the color of that to, say, the bold magenta
ANSI? I'm not particularly interested in remapping my ANSI colors within the terminal or shell - I'd like a vim
-specific option, if it exists.
Vim Solutions
Solution 1 - Vim
you can change the colors to, e.g., blue over green
hi MatchParen cterm=none ctermbg=green ctermfg=blue
just put it in your vimrc file.
basically, cterm
determines the style, which can be none
, underline
or bold
, while ctermbg
and ctermfg
are, as their names suggest, background and foreground colors, so change them as you see fit.
for your case, you may want
hi MatchParen cterm=bold ctermbg=none ctermfg=magenta
Solution 2 - Vim
I'm using the vividchalk
color scheme with macvim
, and none of the various solutions I tried worked for me. But I searched the file:
~/.vim/colors/vividchalk.vim
for MatchParen
and I found this line:
call s:hibg("MatchParen","#1100AA","DarkBlue",18)
I commented out that line, then I copied that line, and I changed it to:
call s:hibg("MatchParen","#FF0000","Red",18)
which succeeded in highlighting the matching parenthesis in red, which is a LOT easier to see. I hope that helps someone else.
If you want to briefly jump to the opening bracket/paren/brace when you type the closing bracket/paren/brace, then adding:
set showmatch
to ~/.vimrc worked for me.
A very handy trick is setting the cursor on a bracket/paren/brace and then typing %
to jump to the matching bracket/paren/brace. That is especially useful when the matching bracket/paren/brace has scrolled off the page. Typing %
a second time will jump back to where you came from.
Solution 3 - Vim
Try :!ls $VIMRUNTIME/colors
these are default color schemes Vim supply. Than change color scheme :colorscheme name
find color scheme that You like and copy color scheme :!cp $VIMRUNTIME/colors/<name>.vim ~/.vim/colors/new_name.vim
edit it and set with color scheme command or better add colorscheme name
to vimrc file. After changes to color file :colorscheme name
reloads Vim's colors. It's handy :vsp
vim, edit colors file in one half, check changes in other. I used nye17 answer and add hi MatchParen
line to my color_file.vim it work's just fine.
Links:
Vim help
How to control colors
https://codeyarns.com/2015/03/18/how-to-check-colors-supported-by-terminal">About Termianl colors
Solution 4 - Vim
The colours that I use for vim highlighting, (from my ~/.vimrc):
" set sensible highlight matches that don't obscure the text
:highlight MatchParen cterm=underline ctermbg=black ctermfg=NONE
:highlight MatchParen gui=underline guibg=black guifg=NONE
NONE uses the character colour from the
:colourscheme ron
(or which ever you prefer from :!ls $VIMRUNTIME/colors
)