Highlight variable assignment
This commit is contained in:
		
							parent
							
								
									93c9e6a753
								
							
						
					
					
						commit
						390ab0fc32
					
				|  | @ -53,6 +53,7 @@ ZSH_HIGHLIGHT_STYLES=( | |||
|   dollar-double-quoted-argument 'fg=cyan' | ||||
|   back-double-quoted-argument   'fg=cyan' | ||||
|   bracket-error                 'fg=red,bold' | ||||
|   assign                        'none' | ||||
| ) | ||||
| 
 | ||||
| # Colors for bracket levels. | ||||
|  | @ -77,6 +78,12 @@ zle_highlight=( | |||
|   isearch:$ZSH_HIGHLIGHT_STYLES[isearch] | ||||
| ) | ||||
| 
 | ||||
| # Check if the argument is variable assignment | ||||
| _zsh_check-assign() { | ||||
|     setopt localoptions extended_glob | ||||
|     [[ ${(Q)arg} == [[:alpha:]_]([[:alnum:]_])#=* ]] | ||||
| } | ||||
| 
 | ||||
| # Check if the argument is a path. | ||||
| _zsh_check-path() { | ||||
|   [[ -z ${(Q)arg} ]] && return 1 | ||||
|  | @ -139,7 +146,10 @@ _zsh_highlight-zle-buffer() { | |||
|         *': function')  style=$ZSH_HIGHLIGHT_STYLES[function];; | ||||
|         *': command')   style=$ZSH_HIGHLIGHT_STYLES[command];; | ||||
|         *': hashed')    style=$ZSH_HIGHLIGHT_STYLES[hashed-command];; | ||||
|         *)              if _zsh_check-path; then | ||||
|         *)              if _zsh_check-assign; then | ||||
|                           style=$ZSH_HIGHLIGHT_STYLES[assign] | ||||
|                           new_expression=true | ||||
|                         elif _zsh_check-path; then | ||||
|                           style=$ZSH_HIGHLIGHT_STYLES[path] | ||||
|                         elif [[ $arg[0,1] = $histchars[0,1] ]]; then | ||||
|                           style=$ZSH_HIGHLIGHT_STYLES[history-expansion] | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue