zsh-syntax-highlighting/highlighters/brackets
Matthew Martin 341a3ae1f0 highlighters: Use _zsh_highlight_add_highlight
_zsh_highlight_add_highlight appends to region_highlight $1 $2 and the
next non-null parameter. If there is no non-null parameter, do nothing,
This is so that highlighters can add a style with fallbacks if the most
specific style is not defined. If none of the applicable styles are
defined, do the right thing and don't add an invalid entry to
region_highlight.

The pattern highlighter doesn't use this function as it'd need too large
of an API change.
2016-04-29 10:09:16 -05:00
..
test-data tests: Specify the style key instead of the style itself 2016-04-29 09:51:13 -05:00
brackets-highlighter.zsh highlighters: Use _zsh_highlight_add_highlight 2016-04-29 10:09:16 -05:00
README.md docs: Fix broken symlinks 2015-11-24 00:40:09 -06:00

zsh-syntax-highlighting / highlighters / brackets

This is the brackets highlighter, that highlights brackets and parentheses, and matches them.

How to tweak it

This highlighter defines the following styles:

  • bracket-error - unmatched brackets
  • bracket-level-N - brackets with nest level N
  • cursor-matchingbracket - the matching bracket, if cursor is on a bracket

To override one of those styles, change its entry in ZSH_HIGHLIGHT_STYLES, for example in ~/.zshrc:

# To define styles for nested brackets up to level 4
ZSH_HIGHLIGHT_STYLES[bracket-level-1]='fg=blue,bold'
ZSH_HIGHLIGHT_STYLES[bracket-level-2]='fg=red,bold'
ZSH_HIGHLIGHT_STYLES[bracket-level-3]='fg=yellow,bold'
ZSH_HIGHLIGHT_STYLES[bracket-level-4]='fg=magenta,bold'

The syntax for values is the same as the syntax of "types of highlighting" of the zsh builtin $zle_highlight array, which is documented in the zshzle(1) manual page.