annotate runtime/syntax/zsh.vim @ 648:9032e4668296 v7.0189

updated for version 7.0189
author vimboss
date Mon, 30 Jan 2006 00:14:18 +0000
parents 3fc0f57ecb91
children 96cd8222a819
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1 " Vim syntax file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2 " Language: Z shell (zsh)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3 " Maintainer: Felix von Leitner <leitner@math.fu-berlin.de>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
4 " Heavily based on sh.vim by Lennart Schultz
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
5 " Last Change: 2003 May 11
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
6
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
7 " For version 5.x: Clear all syntax items
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
8 " For version 6.x: Quit when a syntax file was already loaded
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
9 if version < 600
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
10 syntax clear
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
11 elseif exists("b:current_syntax")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
12 finish
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
13 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
14
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
15 " String and Character contstants
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
16 " Highlight special characters (those which have a backslash) differently
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
17 syn match zshSpecial "\\\d\d\d\|\\[abcfnrtv\\']"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
18 syn region zshSinglequote start=+'+ skip=+\\'+ end=+'+
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
19 " A bunch of useful zsh keywords
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
20 " syn keyword zshFunction function
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
21 syn keyword zshStatement bg break cd chdir continue echo eval exec
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
22 syn keyword zshStatement exit export fg getopts hash jobs kill
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
23 syn keyword zshStatement pwd read readonly return set zshift function
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
24 syn keyword zshStatement stop suspend test times trap type ulimit
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
25 syn keyword zshStatement umask unset wait setopt compctl source
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
26 syn keyword zshStatement whence disown shift which unhash unalias
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
27 syn keyword zshStatement alias functions unfunction getln disable
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
28 syn keyword zshStatement vared getopt enable unsetopt autoload
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
29 syn keyword zshStatement bindkey pushln command limit unlimit fc
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
30 syn keyword zshStatement print builtin noglob sched r time
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
31 syn keyword zshStatement typeset declare local integer
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
32
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
33 syn keyword zshConditional if else esac case then elif fi in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
34 syn keyword zshRepeat while for do done
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
35
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
36 " Following is worth to notice: command substitution, file redirection and functions (so these features turns red)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
37 syn match zshFunctionName "\h\w*\s*()"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
38 syn region zshCommandSub start=+`+ skip=+\\`+ end=+`+
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
39 " contains=ALLBUT,zshFunction
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
40 syn match zshRedir "\d\=\(<\|<<\|>\|>>\)\(|\|&\d\)\="
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
41
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
42 syn keyword zshTodo contained TODO
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
43
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
44 syn keyword zshShellVariables USER LOGNAME HOME PATH CDPATH SHELL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
45 syn keyword zshShellVariables LC_TYPE LC_MESSAGE MAIL MAILCHECK
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
46 syn keyword zshShellVariables PS1 PS2 IFS EGID EUID ERRNO GID UID
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
47 syn keyword zshShellVariables HOST LINENO MACHTYPE OLDPWD OPTARG
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
48 syn keyword zshShellVariables OPTIND OSTYPE PPID PWD RANDOM SECONDS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
49 syn keyword zshShellVariables SHLVL TTY signals TTYIDLE USERNAME
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
50 syn keyword zshShellVariables VENDOR ZSH_NAME ZSH_VERSION ARGV0
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
51 syn keyword zshShellVariables BAUD COLUMNS cdpath DIRSTACKSIZE
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
52 syn keyword zshShellVariables FCEDIT fignore fpath histchars HISTCHARS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
53 syn keyword zshShellVariables HISTFILE HISTSIZE KEYTIMEOUT LANG
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
54 syn keyword zshShellVariables LC_ALL LC_COLLATE LC_CTYPE LC_MESSAGES
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
55 syn keyword zshShellVariables LC_TIME LINES LISTMAX LOGCHECK mailpath
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
56 syn keyword zshShellVariables MAILPATH MANPATH manpath module_path
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
57 syn keyword zshShellVariables MODULE_PATH NULLCMD path POSTEDIT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
58 syn keyword zshShellVariables PS3 PS4 PROMPT PROMPT2 PROMPT3 PROMPT4
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
59 syn keyword zshShellVariables psvar PSVAR prompt READNULLCMD
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
60 syn keyword zshShellVariables REPORTTIME RPROMPT RPS1 SAVEHIST
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
61 syn keyword zshShellVariables SPROMPT STTY TIMEFMT TMOUT TMPPREFIX
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
62 syn keyword zshShellVariables watch WATCH WATCHFMT WORDCHARS ZDOTDIR
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
63 syn match zshSpecialShellVar "\$[-#@*$?!0-9]"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
64 syn keyword zshSetVariables ignoreeof noclobber
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
65 syn region zshDerefOpr start="\${" end="}" contains=zshShellVariables
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
66 syn match zshDerefIdentifier "\$[a-zA-Z_][a-zA-Z0-9_]*\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
67 syn match zshOperator "[][}{&;|)(]"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
68
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
69
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
70
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
71 syn match zshNumber "-\=\<\d\+\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
72 syn match zshComment "#.*$" contains=zshNumber,zshTodo
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
73
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
74
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
75 syn match zshTestOpr "-\<[oeaznlg][tfqet]\=\>\|!\==\|-\<[b-gkLprsStuwjxOG]\>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
76 "syn region zshTest start="\[" skip="\\$" end="\]" contains=zshString,zshTestOpr,zshDerefIdentifier,zshDerefOpr
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
77 syn region zshString start=+"+ skip=+\\"+ end=+"+ contains=zshSpecial,zshOperator,zshDerefIdentifier,zshDerefOpr,zshSpecialShellVar,zshSinglequote,zshCommandSub
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
78
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
79 " Define the default highlighting.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
80 " For version 5.7 and earlier: only when not done already
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
81 " For version 5.8 and later: only when an item doesn't have highlighting yet
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
82 if version >= 508 || !exists("did_zsh_syntax_inits")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
83 if version < 508
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
84 let did_zsh_syntax_inits = 1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
85 command -nargs=+ HiLink hi link <args>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
86 else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
87 command -nargs=+ HiLink hi def link <args>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
88 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
89
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
90 HiLink zshSinglequote zshString
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
91 HiLink zshConditional zshStatement
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
92 HiLink zshRepeat zshStatement
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
93 HiLink zshFunctionName zshFunction
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
94 HiLink zshCommandSub zshOperator
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
95 HiLink zshRedir zshOperator
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
96 HiLink zshSetVariables zshShellVariables
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
97 HiLink zshSpecialShellVar zshShellVariables
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
98 HiLink zshTestOpr zshOperator
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
99 HiLink zshDerefOpr zshSpecial
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
100 HiLink zshDerefIdentifier zshShellVariables
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
101 HiLink zshOperator Operator
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
102 HiLink zshStatement Statement
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
103 HiLink zshNumber Number
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
104 HiLink zshString String
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
105 HiLink zshComment Comment
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
106 HiLink zshSpecial Special
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
107 HiLink zshTodo Todo
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
108 HiLink zshShellVariables Special
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
109 " hi zshOperator term=underline ctermfg=6 guifg=Purple gui=bold
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
110 " hi zshShellVariables term=underline ctermfg=2 guifg=SeaGreen gui=bold
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
111 " hi zshFunction term=bold ctermbg=1 guifg=Red
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
112
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
113 delcommand HiLink
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
114 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
115
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
116 let b:current_syntax = "zsh"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
117
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
118 " vim: ts=8