Fish shell like syntax highlighting for Zsh.
Go to file
Daniel Shahaf 2e95ffc08f Merge remote-tracking branch 'upstream/master' into 0.5.x
* upstream/master:
  README: Set alt="" attributes.
  README: Add a third image.
  README: Add another image.
  README: Use a more minimal example iamge.
  README: Add before/after images
  changelog: Update through 28d7056a7a.
  'main': Escape '!' within double-quoted strings.
  [REVERTED] Post-branch version number bump.
    This reverts commit 1bdb88aee1.
2016-10-22 17:43:05 +00:00
docs 'main': Introduce style fallback for the command word. 2016-09-28 13:25:05 +00:00
highlighters 'main': Escape '!' within double-quoted strings. 2016-10-19 23:56:25 +00:00
images README: Add a third image. 2016-10-20 01:02:27 +00:00
tests dev tools: Automagically handle newlines (\n) in $BUFFER. 2016-09-27 22:55:16 +00:00
.gitattributes versionstamp: Set up '.revision-hash' file. 2015-10-19 07:21:20 +00:00
.gitignore docs: Create all.md 2015-11-24 00:22:26 -06:00
.revision-hash versionstamp: Set up '.revision-hash' file. 2015-10-19 07:21:20 +00:00
.version Post-branch version number bump. 2016-10-19 23:08:18 +00:00
changelog.md changelog: Update through 28d7056a7a. 2016-10-20 00:00:58 +00:00
COPYING.md Bump copyright years. 2016-04-30 02:11:17 +00:00
HACKING.md dev docs: Document a useful tab completion setting. 2016-06-03 08:46:30 +00:00
INSTALL.md docs: Honour $ZDOTDIR in code examples. 2016-05-12 13:29:10 +00:00
Makefile tests: Add a 'print failures only' mode to 'make test', called 'make quiet-test'. 2016-01-02 21:22:01 +00:00
README.md README: Set alt="" attributes. 2016-10-20 01:04:41 +00:00
release.md release.md: Record the specific command I used. 2016-10-18 22:53:17 +00:00
zsh-syntax-highlighting.plugin.zsh driver: Stop requiring function_argzero. 2016-06-10 15:18:46 +00:00
zsh-syntax-highlighting.zsh Revert "apply suffix and isearch zle_highlights on top" 2016-10-19 23:03:19 +00:00

zsh-syntax-highlighting

Fish shell-like like syntax highlighting for Zsh.

Requirements: zsh 4.3.17+.

This package provides syntax highlighing for the shell zsh. It enables
highlighing 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

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.

Highlighting the command line during an incremental history search
(with the history-incremental-search-backward widget, which is
bound by default to Ctrl+R in zsh's emacs keymap) requires zsh 5.3
or newer.

Under zsh 5.2 and older, 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 issue #288 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.