2011-06-13 04:57:14 +08:00
|
|
|
zsh-syntax-highlighting
|
|
|
|
=======================
|
2010-12-26 01:47:12 +08:00
|
|
|
|
2015-11-17 11:47:11 +08:00
|
|
|
**[Fish shell][fish]-like like syntax highlighting for [Zsh][zsh].**
|
2011-01-06 06:07:22 +08:00
|
|
|
|
2013-12-24 19:40:35 +08:00
|
|
|
*Requirements: zsh 4.3.17+.*
|
2010-12-26 01:47:12 +08:00
|
|
|
|
2015-11-17 11:47:11 +08:00
|
|
|
[fish]: http://www.fishshell.com/
|
|
|
|
[zsh]: http://www.zsh.org/
|
|
|
|
|
2015-10-20 22:56:10 +08:00
|
|
|
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.
|
|
|
|
|
2015-10-24 17:43:25 +08:00
|
|
|
[![Screenshot](images/preview-smaller.png)](images/preview.png)
|
|
|
|
|
2010-12-30 23:35:55 +08:00
|
|
|
|
2011-06-13 04:57:14 +08:00
|
|
|
How to install
|
|
|
|
--------------
|
2010-12-26 05:10:50 +08:00
|
|
|
|
2015-11-24 15:05:41 +08:00
|
|
|
See [INSTALL.md](INSTALL.md).
|
2015-10-23 12:45:18 +08:00
|
|
|
|
|
|
|
|
2015-01-26 17:08:31 +08:00
|
|
|
FAQ
|
|
|
|
---
|
|
|
|
|
|
|
|
### Why must `zsh-syntax-highlighting.zsh` be sourced at the end of the `.zshrc` file?
|
|
|
|
|
2016-10-07 22:21:57 +08:00
|
|
|
zsh-syntax-highlighting works by hooking into the Zsh Line Editor (ZLE) and
|
|
|
|
computing syntax highlighting for the command-line buffer as it stands at the
|
|
|
|
time z-sy-h's hook is invoked.
|
|
|
|
|
|
|
|
In zsh 5.2 and older,
|
2016-10-07 22:22:23 +08:00
|
|
|
`zsh-syntax-highlighting.zsh` hooks into ZLE by wrapping ZLE widgets. It must
|
|
|
|
be sourced after all custom widgets have been created (i.e., after all `zle -N`
|
|
|
|
calls and after running `compinit`) in order to be able to wrap all of them.
|
2016-10-07 22:21:57 +08:00
|
|
|
Widgets created after z-sy-h is sourced will work, but will not update the
|
2015-09-25 02:45:35 +08:00
|
|
|
syntax highlighting.
|
2015-01-26 17:08:31 +08:00
|
|
|
|
2016-10-07 22:21:57 +08:00
|
|
|
In zsh 5.3 and newer,
|
|
|
|
zsh-syntax-highlighting uses the `add-zle-hook-widget` facility to install
|
|
|
|
a `zle-line-pre-redraw` hook. Hooks are run in order of registration,
|
|
|
|
therefore, z-sy-h must be sourced (and register its hook) after anything else
|
|
|
|
that adds hooks that modify the command-line buffer.
|
|
|
|
|
2015-09-25 06:58:22 +08:00
|
|
|
### How are new releases announced?
|
|
|
|
|
2015-11-17 11:02:39 +08:00
|
|
|
There is currently no "push" announcements channel. However, the following
|
|
|
|
alternatives exist:
|
2015-09-25 06:58:22 +08:00
|
|
|
|
|
|
|
- GitHub's RSS feed of releases: https://github.com/zsh-users/zsh-syntax-highlighting/releases.atom
|
|
|
|
- An anitya entry: https://release-monitoring.org/project/7552/
|
|
|
|
|
2015-11-17 11:02:39 +08:00
|
|
|
|
2011-06-13 04:57:14 +08:00
|
|
|
How to tweak
|
|
|
|
------------
|
2011-01-06 06:07:22 +08:00
|
|
|
|
2015-11-17 11:02:39 +08:00
|
|
|
Syntax highlighting is done by pluggable highlighter scripts. See the
|
2015-11-27 01:33:21 +08:00
|
|
|
[documentation on highlighters](docs/highlighters.md) for details and
|
|
|
|
configuration settings.
|