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
|
|
|
|
2011-12-04 02:36:21 +08:00
|
|
|
### Using packages
|
|
|
|
|
2015-11-17 11:02:39 +08:00
|
|
|
* Arch Linux: [community/zsh-syntax-highlighting][arch-package] / [AUR/zsh-syntax-highlighting-git][AUR-package]
|
|
|
|
* Gentoo: [mv overlay][gentoo-overlay]
|
|
|
|
* Mac OS X / Homebrew: [brew install zsh-syntax-highlighting][brew-package]
|
|
|
|
|
|
|
|
[arch-package]: https://www.archlinux.org/packages/zsh-syntax-highlighting
|
|
|
|
[AUR-package]: https://aur.archlinux.org/packages/zsh-syntax-highlighting-git
|
|
|
|
[gentoo-overlay]: http://gpo.zugaina.org/app-shells/zsh-syntax-highlighting
|
|
|
|
[brew-package]: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/zsh-syntax-highlighting.rb
|
|
|
|
|
2011-12-04 02:36:21 +08:00
|
|
|
|
2011-01-02 00:34:35 +08:00
|
|
|
### In your ~/.zshrc
|
2010-12-26 05:10:50 +08:00
|
|
|
|
2015-09-01 01:26:57 +08:00
|
|
|
* Clone this repository:
|
2010-12-26 05:10:50 +08:00
|
|
|
|
2011-07-21 18:45:21 +08:00
|
|
|
git clone git://github.com/zsh-users/zsh-syntax-highlighting.git
|
2010-12-26 05:10:50 +08:00
|
|
|
|
2015-11-17 11:02:39 +08:00
|
|
|
If `git` is not installed, you could download a snapshot of the latest
|
|
|
|
development tree from:
|
|
|
|
|
|
|
|
https://github.com/zsh-users/zsh-syntax-highlighting/archive/master.tar.gz
|
2015-09-01 01:26:57 +08:00
|
|
|
|
2011-01-06 06:11:24 +08:00
|
|
|
* Source the script **at the end** of `~/.zshrc`:
|
2010-12-26 01:47:12 +08:00
|
|
|
|
2011-06-13 04:57:14 +08:00
|
|
|
source /path/to/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
|
2010-12-30 23:35:55 +08:00
|
|
|
|
2011-01-02 00:34:35 +08:00
|
|
|
* Source `~/.zshrc` to take changes into account:
|
2010-12-30 23:35:55 +08:00
|
|
|
|
2011-06-13 04:57:14 +08:00
|
|
|
source ~/.zshrc
|
2010-12-30 23:35:55 +08:00
|
|
|
|
|
|
|
|
2011-01-02 00:34:35 +08:00
|
|
|
### With oh-my-zsh
|
2010-12-30 23:35:55 +08:00
|
|
|
|
2015-11-17 11:02:39 +08:00
|
|
|
Oh-my-zsh is a zsh configuration framework. It lives at
|
|
|
|
<http://github.com/robbyrussell/oh-my-zsh>.
|
|
|
|
|
|
|
|
To install zsh-syntax-highlighting under oh-my-zsh:
|
|
|
|
|
2015-11-17 11:02:39 +08:00
|
|
|
1. Clone this repository in oh-my-zsh's plugins directory:
|
2011-01-02 00:34:35 +08:00
|
|
|
|
2015-10-20 06:10:24 +08:00
|
|
|
git clone git://github.com/zsh-users/zsh-syntax-highlighting.git ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting
|
2011-01-02 00:34:35 +08:00
|
|
|
|
2015-11-17 11:02:39 +08:00
|
|
|
2. Activate the plugin in `~/.zshrc`:
|
2011-01-02 00:34:35 +08:00
|
|
|
|
2011-06-13 04:57:14 +08:00
|
|
|
plugins=( [plugins...] zsh-syntax-highlighting)
|
2011-01-02 00:34:35 +08:00
|
|
|
|
2015-11-17 11:02:39 +08:00
|
|
|
3. Source `~/.zshrc` to take changes into account:
|
2013-02-27 09:59:53 +08:00
|
|
|
|
2011-06-13 04:57:14 +08:00
|
|
|
source ~/.zshrc
|
2011-01-02 00:34:35 +08:00
|
|
|
|
2015-10-18 20:46:20 +08:00
|
|
|
Note that `zsh-syntax-highlighting` must be the last plugin sourced,
|
|
|
|
so make it the last element of the `$plugins` array.
|
2011-01-06 06:07:22 +08:00
|
|
|
|
2015-11-17 11:02:39 +08:00
|
|
|
|
2015-10-23 12:45:18 +08:00
|
|
|
### System-wide installation
|
|
|
|
|
2015-11-17 11:02:39 +08:00
|
|
|
Either of the above methods is suitable for a single-user installation,
|
|
|
|
which requires no special privileges. If, however, you desire to install
|
|
|
|
zsh-syntax-highlighting system-wide, you may do so by running `make install`
|
|
|
|
and directing your users to add
|
|
|
|
`source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh`
|
2015-10-23 12:45:18 +08:00
|
|
|
in their `.zshrc`s.
|
|
|
|
|
|
|
|
|
2015-01-26 17:08:31 +08:00
|
|
|
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
|
2015-09-25 02:45:35 +08:00
|
|
|
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.
|
2015-01-26 17:08:31 +08:00
|
|
|
|
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
|
|
|
|
[`highlighters` directory](./highlighters) for documentation and configuration
|
|
|
|
settings.
|