Skip to content
Fish shell like syntax highlighting for Zsh.
Shell Other
  1. Shell 99.3%
  2. Other 0.7%
Branch: master
Clone or download

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs 'main': Let AUTO_CD directories be highlighted with their own style. Mar 19, 2020
highlighters 'main': precommands += ionice(1) (from util-linux) Apr 1, 2020
images Highlight redirections by default, and add that to the examples in RE… Feb 28, 2020
tests test harness: Fix the pretty-printer's padding implementation. Mar 20, 2020
.editorconfig editorconfig += Makefile Mar 15, 2020
.gitattributes versionstamp: Set up '.revision-hash' file. Oct 19, 2015
.gitignore docs: Create all.md Nov 24, 2015
.revision-hash versionstamp: Set up '.revision-hash' file. Oct 19, 2015
.travis.yml Revert "test harness: Rewrite the columnar pretty-printer without ext… Mar 20, 2020
.version Post-release version number bump. Feb 28, 2020
COPYING.md Bump copyright years. Jan 16, 2020
HACKING.md docs: Enable Syntax Highlighting for Code Snippits Jan 13, 2019
INSTALL.md docs: Track FreeBSD port rename Jan 23, 2020
Makefile make test: Re-enable syntax highlighting of TAP output in interactive… Mar 15, 2020
README.md Highlight redirections by default, and add that to the examples in RE… Feb 28, 2020
changelog.md 'main': Support the 'env' precommand. Mar 21, 2020
release.md release.md: Update with the step that was missed in 0.7.0. Feb 28, 2020
zsh-syntax-highlighting.plugin.zsh driver: Stop requiring function_argzero. Jun 10, 2016
zsh-syntax-highlighting.zsh driver: Simplify initialization of $zsyh_user_options in the fallback… Mar 29, 2020

README.md

zsh-syntax-highlighting Build Status

Fish shell-like syntax highlighting for Zsh.

Requirements: zsh 4.3.11+.

This package provides syntax highlighting for the shell zsh. It enables highlighting of commands whilst they are typed at a zsh prompt into an interactive terminal. This helps in reviewing commands before running them, particularly in catching syntax errors.

Some examples:

Before: Screenshot #1.1
After:  Screenshot #1.2

Before: Screenshot #2.1
After:  Screenshot #2.2

Before: Screenshot #3.1
After:  Screenshot #3.2

Before: Screenshot #4.1
After:  Screenshot #4.2

How to install

See INSTALL.md.

FAQ

Why must zsh-syntax-highlighting.zsh be sourced at the end of the .zshrc file?

zsh-syntax-highlighting.zsh wraps ZLE widgets. It must be sourced after all custom widgets have been created (i.e., after all zle -N calls and after running compinit). Widgets created later will work, but will not update the syntax highlighting.

Does syntax highlighting work during incremental history search?

Highlighting the command line during an incremental history search (by default bound to to Ctrl+R in zsh's emacs keymap) requires zsh 5.4 or newer.

Under zsh versions older than 5.4, the zsh-default underlining of the matched portion of the buffer remains available, but zsh-syntax-highlighting's additional highlighting is unavailable. (Those versions of zsh do not provide enough information to allow computing the highlighting correctly.)

See issues #288 and #415 for details.

How are new releases announced?

There is currently no "push" announcements channel. However, the following alternatives exist:

How to tweak

Syntax highlighting is done by pluggable highlighter scripts. See the documentation on highlighters for details and configuration settings.

You can’t perform that action at this time.