Fish shell like syntax highlighting for Zsh.
Here is a one-liner to try it without installing or modifying anything:
wget --no-check-certificate --output-document=/tmp/zsh-syntax-highlighting.zsh https://github.com/nicoulaj/zsh-syntax-highlighting/raw/master/zsh-syntax-highlighting.zsh && . /tmp/zsh-syntax-highlighting.zsh
-
Download the script or clone this repository:
git clone git://github.com/nicoulaj/zsh-syntax-highlighting.git
-
Source the script at the end of
~/.zshrc
:source /path/to/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
-
Source
~/.zshrc
to take changes into account:source ~/.zshrc
-
Download the script or clone this repository in oh-my-zsh plugins directory:
cd ~/.oh-my-zsh/plugins/ git clone git://github.com/nicoulaj/zsh-syntax-highlighting.git cd zsh-syntax-highlighting ln -s zsh-syntax-highlighting.zsh zsh-syntax-highlighting.plugin.zsh
-
Activate the plugin in
~/.zshrc
:plugins=(zsh-syntax-highlighting)
-
Source
~/.zshrc
to take changes into account:source ~/.zshrc
Optionally, you can override the default styles used for highlighting. The styles are declared in the ZSH_HIGHLIGHT_STYLES
array. You can override styles this way:
# To differentiate aliases from other command types
ZSH_HIGHLIGHT_STYLES[alias]='fg=magenta,bold'
# To have paths colored instead of underlined
ZSH_HIGHLIGHT_STYLES[path]='fg=cyan'
# To disable highlighting of globbing expressions
ZSH_HIGHLIGHT_STYLES[globbing]='none'
This must be done after the script is sourced, otherwise your styles will be overwritten. The syntax for declaring styles is documented here.