You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
1.3 KiB
37 lines
1.3 KiB
#
|
|
# Integrates zsh-syntax-highlighting into Prezto.
|
|
#
|
|
# Authors:
|
|
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
|
#
|
|
|
|
# Return if requirements are not found.
|
|
if ! zstyle -t ':prezto:module:syntax-highlighting' color; then
|
|
return 1
|
|
fi
|
|
|
|
# Source module files.
|
|
source "${0:h}/external/zsh-syntax-highlighting.zsh" || return 1
|
|
|
|
# Set highlighters.
|
|
zstyle -a ':prezto:module:syntax-highlighting' highlighters 'ZSH_HIGHLIGHT_HIGHLIGHTERS'
|
|
if (( ${#ZSH_HIGHLIGHT_HIGHLIGHTERS[@]} == 0 )); then
|
|
ZSH_HIGHLIGHT_HIGHLIGHTERS=(main)
|
|
fi
|
|
|
|
# Set highlighting styles.
|
|
typeset -A syntax_highlighting_styles
|
|
zstyle -a ':prezto:module:syntax-highlighting' styles 'syntax_highlighting_styles'
|
|
for syntax_highlighting_style in "${(k)syntax_highlighting_styles[@]}"; do
|
|
ZSH_HIGHLIGHT_STYLES[$syntax_highlighting_style]="$syntax_highlighting_styles[$syntax_highlighting_style]"
|
|
done
|
|
unset syntax_highlighting_style{s,}
|
|
|
|
# Set highlighting patterns
|
|
typeset -A syntax_highlighting_patterns
|
|
zstyle -a ':prezto:module:syntax-highlighting' patterns 'syntax_highlighting_patterns'
|
|
for syntax_highlighting_pattern in "${(k)syntax_highlighting_patterns[@]}"; do
|
|
ZSH_HIGHLIGHT_PATTERNS[$syntax_highlighting_pattern]="$syntax_highlighting_patterns[$syntax_highlighting_pattern]"
|
|
done
|
|
unset syntax_highlighting_pattern{s,}
|