Issue 17: Update README with "How to override the default styles"
Harmonize variable names
This commit is contained in:
		
							parent
							
								
									e50d47ae1b
								
							
						
					
					
						commit
						90e661bd69
					
				
							
								
								
									
										92
									
								
								README.md
								
								
								
								
							
							
						
						
									
										92
									
								
								README.md
								
								
								
								
							|  | @ -1,61 +1,77 @@ | |||
| zsh-syntax-highlighting | ||||
| ======================= | ||||
| 
 | ||||
| An attempt at providing [Fish shell](http://www.fishshell.org) like syntax highlighting for [Zsh](http://www.zsh.org). | ||||
| [Fish shell](http://www.fishshell.org) like syntax highlighting for [Zsh](http://www.zsh.org). | ||||
| 
 | ||||
| 
 | ||||
| ## Usage | ||||
| ## Try it | ||||
| 
 | ||||
| Here is a one-liner to try it without installing or modifying anything: | ||||
| 
 | ||||
|     wget --no-check-certificate --output-document=/tmp/zsh-syntax-highlighting.zsh https://github.com/nicoulaj/zsh-syntax-highlighting/raw/master/zsh-syntax-highlighting.zsh && . /tmp/zsh-syntax-highlighting.zsh | ||||
| 
 | ||||
| 
 | ||||
| ### From your ~/.zshrc | ||||
| 
 | ||||
| Download the script or clone this repository: | ||||
| 
 | ||||
|     git clone git://github.com/nicoulaj/zsh-syntax-highlighting.git | ||||
| 
 | ||||
| Update your `~/.zshrc` so that the script is sourced: | ||||
| 
 | ||||
|     source /path/to/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh | ||||
| 
 | ||||
| Re-open your terminal, or just reload it to take changes into account: | ||||
| 
 | ||||
|     source ~/.zshrc | ||||
| ## Install it | ||||
| 
 | ||||
| 
 | ||||
| ### With [oh-my-zsh](http://github.com/robbyrussell/oh-my-zsh) | ||||
| ### In your ~/.zshrc | ||||
| 
 | ||||
| Download the script or clone this repository as a oh-my-zsh plugin: | ||||
| * Download the script or clone this repository: | ||||
| 
 | ||||
|     cd ~/.oh-my-zsh/plugins/ | ||||
|     git clone git://github.com/nicoulaj/zsh-syntax-highlighting.git | ||||
|     cd zsh-syntax-highlighting | ||||
|     ln -s zsh-syntax-highlighting.zsh zsh-syntax-highlighting.plugin.zsh | ||||
|         git clone git://github.com/nicoulaj/zsh-syntax-highlighting.git | ||||
| 
 | ||||
| Update your `~/.zshrc` so that the script is sourced: | ||||
| * Source the script at the end of `~/.zshrc`: | ||||
| 
 | ||||
|     plugins=(zsh-syntax-highlighting) | ||||
|         source /path/to/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh | ||||
| 
 | ||||
| Re-open your terminal, or just reload it to take changes into account: | ||||
| * Source `~/.zshrc`  to take changes into account: | ||||
| 
 | ||||
|         source ~/.zshrc | ||||
| 
 | ||||
| 
 | ||||
| ### With oh-my-zsh | ||||
| 
 | ||||
| * Download the script or clone this repository in [oh-my-zsh](http://github.com/robbyrussell/oh-my-zsh) plugins directory: | ||||
| 
 | ||||
|         cd ~/.oh-my-zsh/plugins/ | ||||
|         git clone git://github.com/nicoulaj/zsh-syntax-highlighting.git | ||||
|         cd zsh-syntax-highlighting | ||||
|         ln -s zsh-syntax-highlighting.zsh zsh-syntax-highlighting.plugin.zsh | ||||
| 
 | ||||
| * Activate the plugin in `~/.zshrc` | ||||
| 
 | ||||
|         plugins=(zsh-syntax-highlighting) | ||||
| 
 | ||||
| * Source `~/.zshrc`  to take changes into account: | ||||
|      | ||||
|     source ~/.zshrc | ||||
|         source ~/.zshrc | ||||
| 
 | ||||
| 
 | ||||
| ## References | ||||
| ## Tweak it | ||||
| 
 | ||||
|  * [zsh-users mailing list thread](http://www.zsh.org/mla/users/2010/msg00692.html) | ||||
|  * [Gist 586698](http://gist.github.com/586698) and forks | ||||
| Optionally, you can override the default styles used for highlighting. The styles are declared in the [`ZSH_HIGHLIGHT_STYLES` array](https://github.com/nicoulaj/zsh-syntax-highlighting/blob/master/zsh-syntax-highlighting.zsh#L9). You can override styles this way: | ||||
| 
 | ||||
|     # To differenciate 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' | ||||
| 
 | ||||
| This must be done **after** the script is sourced, otherwise your styles will be overwritten. The syntax for declaring styles is [documented here](http://zsh.sourceforge.net/Doc/Release/Zsh-Line-Editor.html#SEC135). | ||||
| 
 | ||||
| 
 | ||||
| ## Authors / Greetings | ||||
| 
 | ||||
|  * [Roy Zuo](http://github.com/roylez) | ||||
|  * [Julien Nicoulaud](http://github.com/nicoulaj) | ||||
|  * [Dave Ingram](http://github.com/dingram) | ||||
|  * [Mounier Florian](http://github.com/paradoxxxzero) | ||||
|  * [Jonathan Dahan](http://github.com/jedahan) | ||||
|  * [Roy Zuo](https://github.com/roylez) | ||||
|  * [Julien Nicoulaud](https://github.com/nicoulaj) | ||||
|  * [Dave Ingram](https://github.com/dingram) | ||||
|  * [Mounier Florian](https://github.com/paradoxxxzero) | ||||
|  * [Jonathan Dahan](https://github.com/jedahan) | ||||
|  * James Ahlborn | ||||
|  * [Andreas Jaggi](http://github.com/x-way) | ||||
|  * [Wayne Davison](http://github.com/WayneD) | ||||
|  * [Suraj N. Kurapati](http://github.com/sunaku) | ||||
|  * [Takeshi Banse](http://github.com/hchbaw) | ||||
| 
 | ||||
|  * [Andreas Jaggi](https://github.com/x-way) | ||||
|  * [Wayne Davison](https://github.com/WayneD) | ||||
|  * [Suraj N. Kurapati](https://github.com/sunaku) | ||||
|  * [Takeshi Banse](https://github.com/hchbaw) | ||||
|  |  | |||
|  | @ -5,9 +5,8 @@ | |||
| # vim: ft=zsh sw=2 ts=2 et | ||||
| 
 | ||||
| # Token types styles. | ||||
| # See http://zsh.sourceforge.net/Doc/Release/Zsh-Line-Editor.html#SEC135 | ||||
| typeset -A ZSH_SYNTAX_HIGHLIGHTING_STYLES | ||||
| ZSH_SYNTAX_HIGHLIGHTING_STYLES=( | ||||
| typeset -A ZSH_HIGHLIGHT_STYLES | ||||
| ZSH_HIGHLIGHT_STYLES=( | ||||
|   default                       'none' | ||||
|   isearch                       'fg=magenta,standout' | ||||
|   special                       'fg=magenta,standout' | ||||
|  | @ -103,8 +102,8 @@ ZSH_HIGHLIGHT_ZLE_UPDATE_EVENTS=( | |||
| 
 | ||||
| # ZLE highlight types. | ||||
| zle_highlight=( | ||||
|   special:$ZSH_SYNTAX_HIGHLIGHTING_STYLES[special] | ||||
|   isearch:$ZSH_SYNTAX_HIGHLIGHTING_STYLES[isearch] | ||||
|   special:$ZSH_HIGHLIGHT_STYLES[special] | ||||
|   isearch:$ZSH_HIGHLIGHT_STYLES[isearch] | ||||
| ) | ||||
| 
 | ||||
| # Check if the argument is a path. | ||||
|  | @ -125,8 +124,8 @@ _zsh_highlight-string() { | |||
|     (( j = i + start_pos - 1 )) | ||||
|     (( k = j + 1 )) | ||||
|     case "$arg[$i]" in | ||||
|       '$')  style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[dollar-double-quoted-argument];; | ||||
|       "\\") style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[back-double-quoted-argument] | ||||
|       '$')  style=$ZSH_HIGHLIGHT_STYLES[dollar-double-quoted-argument];; | ||||
|       "\\") style=$ZSH_HIGHLIGHT_STYLES[back-double-quoted-argument] | ||||
|             (( k += 1 )) # Color following char too. | ||||
|             (( i += 1 )) # Skip parsing the escaped char. | ||||
|             ;; | ||||
|  | @ -157,42 +156,42 @@ _zsh_highlight-zle-buffer() { | |||
|       new_expression=false | ||||
|       res=$(LC_ALL=C builtin type -w $arg 2>/dev/null) | ||||
|       case $res in | ||||
|         *': reserved')  style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[reserved-word];; | ||||
|         *': alias')     style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[alias] | ||||
|         *': reserved')  style=$ZSH_HIGHLIGHT_STYLES[reserved-word];; | ||||
|         *': alias')     style=$ZSH_HIGHLIGHT_STYLES[alias] | ||||
|                         local aliased_command=${"$(alias $arg)"#*=} | ||||
|                         if [[ ${${ZSH_HIGHLIGHT_TOKENS_FOLLOWED_BY_COMMANDS[(r)$aliased_command]:-}:+yes} = 'yes' && ${${ZSH_HIGHLIGHT_TOKENS_FOLLOWED_BY_COMMANDS[(r)$arg]:-}:+yes} != 'yes' ]]; then | ||||
|                           ZSH_HIGHLIGHT_TOKENS_FOLLOWED_BY_COMMANDS+=($arg) | ||||
|                         fi | ||||
|                         ;; | ||||
|         *': builtin')   style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[builtin];; | ||||
|         *': function')  style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[function];; | ||||
|         *': command')   style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[command];; | ||||
|         *': builtin')   style=$ZSH_HIGHLIGHT_STYLES[builtin];; | ||||
|         *': function')  style=$ZSH_HIGHLIGHT_STYLES[function];; | ||||
|         *': command')   style=$ZSH_HIGHLIGHT_STYLES[command];; | ||||
|         *)              if _zsh_check-path; then | ||||
|                           style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[path] | ||||
|                           style=$ZSH_HIGHLIGHT_STYLES[path] | ||||
|                         elif [[ ${arg:0:1} = ${histchars:0:1} ]]; then | ||||
|                           style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[history-expansion] | ||||
|                           style=$ZSH_HIGHLIGHT_STYLES[history-expansion] | ||||
|                         else | ||||
|                           style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[unknown-token] | ||||
|                           style=$ZSH_HIGHLIGHT_STYLES[unknown-token] | ||||
|                         fi;; | ||||
|       esac | ||||
|     else | ||||
|       case $arg in | ||||
|         '--'*)   style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[double-hyphen-option];; | ||||
|         '-'*)    style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[single-hyphen-option];; | ||||
|         "'"*"'") style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[single-quoted-argument];; | ||||
|         '"'*'"') style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[double-quoted-argument] | ||||
|         '--'*)   style=$ZSH_HIGHLIGHT_STYLES[double-hyphen-option];; | ||||
|         '-'*)    style=$ZSH_HIGHLIGHT_STYLES[single-hyphen-option];; | ||||
|         "'"*"'") style=$ZSH_HIGHLIGHT_STYLES[single-quoted-argument];; | ||||
|         '"'*'"') style=$ZSH_HIGHLIGHT_STYLES[double-quoted-argument] | ||||
|                  region_highlight+=("$start_pos $end_pos $style") | ||||
|                  _zsh_highlight-string | ||||
|                  substr_color=1 | ||||
|                  ;; | ||||
|         '`'*'`') style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[back-quoted-argument];; | ||||
|         *"*"*)   $highlight_glob && style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[globbing] || style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[default];; | ||||
|         '`'*'`') style=$ZSH_HIGHLIGHT_STYLES[back-quoted-argument];; | ||||
|         *"*"*)   $highlight_glob && style=$ZSH_HIGHLIGHT_STYLES[globbing] || style=$ZSH_HIGHLIGHT_STYLES[default];; | ||||
|         *)       if _zsh_check-path; then | ||||
|                    style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[path] | ||||
|                    style=$ZSH_HIGHLIGHT_STYLES[path] | ||||
|                  elif [[ ${arg:0:1} = ${histchars:0:1} ]]; then | ||||
|                    style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[history-expansion] | ||||
|                    style=$ZSH_HIGHLIGHT_STYLES[history-expansion] | ||||
|                  else | ||||
|                    style=$ZSH_SYNTAX_HIGHLIGHTING_STYLES[default] | ||||
|                    style=$ZSH_HIGHLIGHT_STYLES[default] | ||||
|                  fi;; | ||||
|       esac | ||||
|     fi | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue