Add general example and remove details

This adds a general, platform independent example before the more detailed
example.

Also removes details about the reason of the platform dependency of some
non-standard regular expressions, and replaces it with a hyperlink to the related
Zsh document.
This commit is contained in:
Nuri Jung 2020-07-03 15:10:57 +09:00 committed by GitHub
parent 7c5e4a57c9
commit 471b46312f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -10,6 +10,18 @@ patterns.
To use this highlighter, associate regular expressions with styles in the To use this highlighter, associate regular expressions with styles in the
`ZSH_HIGHLIGHT_REGEXP` associative array, for example in `~/.zshrc`: `ZSH_HIGHLIGHT_REGEXP` associative array, for example in `~/.zshrc`:
```zsh
typeset -A ZSH_HIGHLIGHT_REGEXP
ZSH_HIGHLIGHT_REGEXP+=('^rm .*' fg="red",bold)
```
This will highlight the whole line starting with `rm` (for all operating systems,
in contrast to the below example).
Some regex patterns are [subject to the host platform][MAN_ZSH_REGEX], especially
the kernel. To highlight `sudo` only as a complete word, i.e., `sudo cmd`, but
not `sudoedit`:
* GNU-Linux * GNU-Linux
```zsh ```zsh
@ -24,12 +36,7 @@ To use this highlighter, associate regular expressions with styles in the
ZSH_HIGHLIGHT_REGEXP+=('[[:<:]]sudo[[:>:]]' fg=123,bold) ZSH_HIGHLIGHT_REGEXP+=('[[:<:]]sudo[[:>:]]' fg=123,bold)
``` ```
This will highlight "sudo" only as a complete word, i.e., "sudo cmd", but not "sudoedit". Both would give the same results, but do not work on each other's system.
As in the example, some regex patterns are platform-dependent. Refer to the
manual page of `re_format` before applying regular expressions to avoid confusing
results. If portability matters, using only [POSIX ERE (extended regular
expressions)][POSIX_ERE] could be an option.
The syntax for values is the same as the syntax of "types of highlighting" of The syntax for values is the same as the syntax of "types of highlighting" of
the zsh builtin `$zle_highlight` array, which is documented in [the `zshzle(1)` the zsh builtin `$zle_highlight` array, which is documented in [the `zshzle(1)`
@ -38,7 +45,7 @@ manual page][zshzle-Character-Highlighting].
See also: [regular expressions tutorial][perlretut], zsh regexp operator `=~` See also: [regular expressions tutorial][perlretut], zsh regexp operator `=~`
in [the `zshmisc(1)` manual page][zshmisc-Conditional-Expressions] in [the `zshmisc(1)` manual page][zshmisc-Conditional-Expressions]
[POSIX_ERE]: https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap09.html#tag_09_04 [MAN_ZSH_REGEX]: http://zsh.sourceforge.net/Doc/Release/Zsh-Modules.html#The-zsh_002fregex-Module
[zshzle-Character-Highlighting]: http://zsh.sourceforge.net/Doc/Release/Zsh-Line-Editor.html#Character-Highlighting [zshzle-Character-Highlighting]: http://zsh.sourceforge.net/Doc/Release/Zsh-Line-Editor.html#Character-Highlighting
[perlretut]: http://perldoc.perl.org/perlretut.html [perlretut]: http://perldoc.perl.org/perlretut.html
[zshmisc-Conditional-Expressions]: http://zsh.sourceforge.net/Doc/Release/Conditional-Expressions.html#Conditional-Expressions [zshmisc-Conditional-Expressions]: http://zsh.sourceforge.net/Doc/Release/Conditional-Expressions.html#Conditional-Expressions