a8fe22d422
zsh version 5.2 and lower don't support ISEARCHMATCH_ACTIVE and we are unable to re-apply zle_highlight on top. Therefore it is impossible to see the underlined matched area. Since that information is more important, completely disable highlighting in isearch in that case. To do that, we need to make sure we are actually called when something changes in isearch. Trumps #257. The FAQ entry presupposes #245 will be fixed (in time for the release) too.
68 lines
2.1 KiB
Markdown
68 lines
2.1 KiB
Markdown
zsh-syntax-highlighting
|
||
=======================
|
||
|
||
**[Fish shell][fish]-like like syntax highlighting for [Zsh][zsh].**
|
||
|
||
*Requirements: zsh 4.3.17+.*
|
||
|
||
[fish]: http://www.fishshell.com/
|
||
[zsh]: http://www.zsh.org/
|
||
|
||
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.
|
||
|
||
[![Screenshot](images/preview-smaller.png)](images/preview.png)
|
||
|
||
|
||
How to install
|
||
--------------
|
||
|
||
See [INSTALL.md](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.
|
||
|
||
### Why does syntax highlighting not work while searching history?
|
||
|
||
_This problem is fixed in zsh 5.3 and newer._
|
||
|
||
Highlighting the command line during an incremental history search
|
||
(with the `history-incremental-search-backward` widget, which is
|
||
bound by default to <kbd>Ctrl+R</kbd> 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][i288] for details.
|
||
|
||
[i288]: https://github.com/zsh-users/zsh-syntax-highlighting/pull/288
|
||
|
||
### How are new releases announced?
|
||
|
||
There is currently no "push" announcements channel. However, the following
|
||
alternatives exist:
|
||
|
||
- 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/
|
||
|
||
|
||
How to tweak
|
||
------------
|
||
|
||
Syntax highlighting is done by pluggable highlighter scripts. See the
|
||
[documentation on highlighters](docs/highlighters.md) for details and
|
||
configuration settings.
|