| images | ||
| test | ||
| fast-highlight | ||
| fast-syntax-highlighting.plugin.zsh | ||
| LICENSE | ||
| README.md | ||
Zshell Fast Syntax Highlighting
60 commits that optimized standard zsh-syntax-highlighting to the point that it can edit 10 kB
functions with zed/vared (optimizations done in
history-search-multi-word). Also added:
-
Variable highlighting
-
Colorizing of
${(a)parameter[...]}inside strings (normally only$parameteris colorized) -
Fixed colorizing of function definition, like
abc() { ... }–abcwill not be red -
Fixed colorizing of complex conditions inside
[[, like[[ "$a" || "$b" ]] -
Closing
]]and]are highlighted (see above) -
Paths from
$CDPATHaren't colorized unless the command iscd
Performance differencies can be observed at Asciinema recording, where 10 kB function is being edited:
Updates (2018)
2018-05-22
Assignments are no more one-colour default-white. When used in assignment, highlighted are:
- variables (outside strings),
- strings (double-quoted and single-quoted),
- math-mode (
val=$(( ... ))).
2018-01-06
Math mode is highlighted – expressions (( ... )) and $(( ... )). Empty variables are colorized as red.
There are 3 style names (fields of
FAST_HIGHLIGHT_STYLES
hash) for math-variable, number and empty variable (error): mathvar, mathnum, matherr. You can set
them (like the animation below shows) to change colors.
Installation
The plugin is "standalone", which means that only sourcing it is needed. So to
install, unpack fast-syntax-highlighting somewhere and add
source {where-fsh-is}/fast-syntax-highlighting.plugin.zsh
to zshrc.
If using a plugin manager, then Zplugin is recommended, but you can use any
other too, and also install with Oh My Zsh (by copying directory to
~/.oh-my-zsh/custom/plugins).
Zplugin
Add zplugin light zdharma/fast-syntax-highlighting to your .zshrc file. Zplugin will handle
cloning the plugin for you automatically the next time you start zsh. To update
issue zplugin update zdharma/fast-syntax-highlighting (update --all can also be used).
Zplugin can load f-sy-h in turbo-mode, i.e. after prompt, to speed-up .zshrc processing:
zplugin ice wait"1" # 1 second after prompt
zplugin light zdharma/fast-syntax-highlighting
Antigen
Add antigen bundle zdharma/fast-syntax-highlighting to your .zshrc file. Antigen will handle
cloning the plugin for you automatically the next time you start zsh.
Oh-My-Zsh
cd ~/.oh-my-zsh/custom/pluginsgit clone https://github.com/zdharma/fast-syntax-highlighting.git- Add
fast-syntax-highlightingto your plugin list
Zgen
Add zgen load zdharma/fast-syntax-highlighting to your .zshrc file in the same place you're doing
your other zgen load calls in.







