mirror of
https://github.com/zsh-users/zsh-syntax-highlighting.git
synced 2025-10-23 15:46:27 +08:00
by extending the already in place mechanism of checking for the first histchar to check for the second as well |
||
|---|---|---|
| .. | ||
| test-data | ||
| main-highlighter.zsh | ||
| README.md | ||
zsh-syntax-highlighting / highlighters / main
This is the main highlighter, that highlights:
- Commands
- Options
- Arguments
- Paths
- Strings
How to activate it
To activate it, add it to ZSH_HIGHLIGHT_HIGHLIGHTERS:
ZSH_HIGHLIGHT_HIGHLIGHTERS=( [...] main)
This highlighter is active by default.
How to tweak it
This highlighter defines the following styles:
unknown-token- unknown tokens / errorsreserved-word- shell reserved wordsalias- aliasesbuiltin- shell builtin commandsfunction- functionscommand- commandsprecommand- precommands (i.e. exec, builtin, ...)commandseparator- command separation tokenshashed-command- hashed commandspath- pathspath_prefix- path prefixespath_approx- approximated pathsglobbing- globbing expressionshistory-expansion- history expansion expressionssingle-hyphen-option- single hyphen optionsdouble-hyphen-option- double hyphen optionsback-quoted-argument- backquoted expressionssingle-quoted-argument- single quoted argumentsdouble-quoted-argument- double quoted argumentsdollar-double-quoted-argument- dollar double quoted argumentsback-double-quoted-argument- back double quoted argumentsassign- variable assignmentsdefault- parts of the buffer that do not match anything
To override one of those styles, change its entry in ZSH_HIGHLIGHT_STYLES, for example in ~/.zshrc:
# To differentiate aliases from other command types
ZSH_HIGHLIGHT_STYLES[alias]='fg=magenta,bold'
# To have paths colored instead of underlined
ZSH_HIGHLIGHT_STYLES[path]='fg=cyan'
# To disable highlighting of globbing expressions
ZSH_HIGHLIGHT_STYLES[globbing]='none'
The syntax for declaring styles is documented here.