72 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
			
		
		
	
	
			72 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
| 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 / errors
 | |
| * `reserved-word` - shell reserved words (`if`, `for`)
 | |
| * `alias` - aliases
 | |
| * `suffix-alias` - suffix aliases (requires zsh 5.1.1 or newer)
 | |
| * `builtin` - shell builtin commands (`shift`, `pwd`, `zstyle`)
 | |
| * `function` - function names
 | |
| * `command` - command names
 | |
| * `precommand` - precommand modifiers (e.g., `noglob`, `builtin`)
 | |
| * `commandseparator` - command separation tokens (`;`, `&&`)
 | |
| * `hashed-command` - hashed commands
 | |
| * `path` - existing filenames
 | |
| * `path_prefix` - prefixes of existing filenames
 | |
| * `globbing` - globbing expressions (`*.txt`)
 | |
| * `history-expansion` - history expansion expressions (`!foo` and `^foo^bar`)
 | |
| * `single-hyphen-option` - single hyphen options (`-o`)
 | |
| * `double-hyphen-option` - double hyphen options (`--option`)
 | |
| * `back-quoted-argument` - backquoted expressions (`` `foo` ``)
 | |
| * `single-quoted-argument` - single quoted arguments (`` 'foo' ``)
 | |
| * `double-quoted-argument` - double quoted arguments (`` "foo" ``)
 | |
| * `dollar-quoted-argument` - dollar quoted arguments (`` $'foo' ``)
 | |
| * `dollar-double-quoted-argument` - parameter expansion inside double quotes (`$foo` inside `""`)
 | |
| * `back-double-quoted-argument` -  back double quoted arguments (`\x` inside `""`)
 | |
| * `back-dollar-quoted-argument` -  back dollar quoted arguments (`\x` inside `$''`)
 | |
| * `assign` - parameter assignments
 | |
| * `redirection` - redirection operators (`<`, `>`, etc)
 | |
| * `comment` - comments, when `setopt INTERACTIVE_COMMENTS` is in effect (`echo # foo`)
 | |
| * `default` - everything else
 | |
| 
 | |
| To override one of those styles, change its entry in `ZSH_HIGHLIGHT_STYLES`,
 | |
| for example in `~/.zshrc`:
 | |
| 
 | |
|     # Declare the variable
 | |
|     typeset -A ZSH_HIGHLIGHT_STYLES
 | |
| 
 | |
|     # 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 in [the `zshzle(1)` manual
 | |
| page](http://zsh.sourceforge.net/Doc/Release/Zsh-Line-Editor.html#SEC135).
 |