Mercurial > vim
annotate runtime/syntax/zsh.vim @ 7611:9c420b8db435 v7.4.1105
commit https://github.com/vim/vim/commit/9bbf63dbf8286fadc0cd6b3428010abb67b1b64d
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Jan 16 16:49:28 2016 +0100
patch 7.4.1105
Problem: When using slices there is a mixup of variable name and namespace.
Solution: Recognize variables that can't be a namespace. (Hirohito Higashi)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 16 Jan 2016 17:00:05 +0100 |
parents | 05cf4cc72a9f |
children | 00d64eb49ce1 |
rev | line source |
---|---|
7 | 1 " Vim syntax file |
6823 | 2 " Language: Zsh shell script |
3 " Maintainer: Christian Brabandt <cb@256bit.org> | |
4 " Previous Maintainer: Nikolai Weibull <now@bitwi.se> | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
5 " Latest Revision: 2015-12-25 |
6823 | 6 " License: Vim (see :h license) |
7 " Repository: https://github.com/chrisbra/vim-zsh | |
7 | 8 |
1125 | 9 if exists("b:current_syntax") |
7 | 10 finish |
11 endif | |
12 | |
1125 | 13 let s:cpo_save = &cpo |
14 set cpo&vim | |
15 | |
1624 | 16 setlocal iskeyword+=- |
1125 | 17 |
18 syn keyword zshTodo contained TODO FIXME XXX NOTE | |
19 | |
6823 | 20 syn region zshComment oneline start='\%(^\|\s*\)#' end='$' |
1125 | 21 \ contains=zshTodo,@Spell |
22 | |
23 syn match zshPreProc '^\%1l#\%(!\|compdef\|autoload\).*$' | |
24 | |
25 syn match zshQuoted '\\.' | |
26 syn region zshString matchgroup=zshStringDelimiter start=+"+ end=+"+ | |
27 \ contains=zshQuoted,@zshDerefs,@zshSubst | |
28 syn region zshString matchgroup=zshStringDelimiter start=+'+ end=+'+ | |
29 " XXX: This should probably be more precise, but Zsh seems a bit confused about it itself | |
30 syn region zshPOSIXString matchgroup=zshStringDelimiter start=+\$'+ | |
31 \ end=+'+ contains=zshQuoted | |
32 syn match zshJobSpec '%\(\d\+\|?\=\w\+\|[%+-]\)' | |
33 | |
34 syn keyword zshPrecommand noglob nocorrect exec command builtin - time | |
35 | |
6823 | 36 syn keyword zshDelimiter do done end |
1125 | 37 |
38 syn keyword zshConditional if then elif else fi case in esac select | |
39 | |
1698 | 40 syn keyword zshRepeat while until repeat |
41 | |
42 syn keyword zshRepeat for foreach nextgroup=zshVariable skipwhite | |
1125 | 43 |
44 syn keyword zshException always | |
45 | |
46 syn keyword zshKeyword function nextgroup=zshKSHFunction skipwhite | |
47 | |
48 syn match zshKSHFunction contained '\k\+' | |
49 syn match zshFunction '^\s*\k\+\ze\s*()' | |
50 | |
51 syn match zshOperator '||\|&&\|;\|&!\=' | |
7 | 52 |
1125 | 53 syn match zshRedir '\d\=\(<\|<>\|<<<\|<&\s*[0-9p-]\=\)' |
54 syn match zshRedir '\d\=\(>\|>>\|>&\s*[0-9p-]\=\|&>\|>>&\|&>>\)[|!]\=' | |
55 syn match zshRedir '|&\=' | |
56 | |
1698 | 57 syn region zshHereDoc matchgroup=zshRedir |
58 \ start='<\@<!<<\s*\z([^<]\S*\)' | |
59 \ end='^\z1\>' | |
60 \ contains=@zshSubst | |
61 syn region zshHereDoc matchgroup=zshRedir | |
62 \ start='<\@<!<<\s*\\\z(\S\+\)' | |
63 \ end='^\z1\>' | |
64 \ contains=@zshSubst | |
1125 | 65 syn region zshHereDoc matchgroup=zshRedir |
1698 | 66 \ start='<\@<!<<-\s*\\\=\z(\S\+\)' |
67 \ end='^\s*\z1\>' | |
68 \ contains=@zshSubst | |
1125 | 69 syn region zshHereDoc matchgroup=zshRedir |
6823 | 70 \ start=+<\@<!<<\s*\(["']\)\z(\S\+\)\1+ |
1698 | 71 \ end='^\z1\>' |
72 syn region zshHereDoc matchgroup=zshRedir | |
73 \ start=+<\@<!<<-\s*\(["']\)\z(\S\+\)\1+ | |
1125 | 74 \ end='^\s*\z1\>' |
75 | |
1698 | 76 syn match zshVariable '\<\h\w*' contained |
77 | |
78 syn match zshVariableDef '\<\h\w*\ze+\==' | |
1125 | 79 " XXX: how safe is this? |
1698 | 80 syn region zshVariableDef oneline |
1125 | 81 \ start='\$\@<!\<\h\w*\[' end='\]\ze+\==' |
82 \ contains=@zshSubst | |
83 | |
84 syn cluster zshDerefs contains=zshShortDeref,zshLongDeref,zshDeref | |
7 | 85 |
1125 | 86 if !exists("g:zsh_syntax_variables") |
87 let s:zsh_syntax_variables = 'all' | |
88 else | |
89 let s:zsh_syntax_variables = g:zsh_syntax_variables | |
90 endif | |
91 | |
92 if s:zsh_syntax_variables =~ 'short\|all' | |
93 syn match zshShortDeref '\$[!#$*@?_-]\w\@!' | |
94 syn match zshShortDeref '\$[=^~]*[#+]*\d\+\>' | |
95 endif | |
7 | 96 |
1125 | 97 if s:zsh_syntax_variables =~ 'long\|all' |
98 syn match zshLongDeref '\$\%(ARGC\|argv\|status\|pipestatus\|CPUTYPE\|EGID\|EUID\|ERRNO\|GID\|HOST\|LINENO\|LOGNAME\)' | |
99 syn match zshLongDeref '\$\%(MACHTYPE\|OLDPWD OPTARG\|OPTIND\|OSTYPE\|PPID\|PWD\|RANDOM\|SECONDS\|SHLVL\|signals\)' | |
100 syn match zshLongDeref '\$\%(TRY_BLOCK_ERROR\|TTY\|TTYIDLE\|UID\|USERNAME\|VENDOR\|ZSH_NAME\|ZSH_VERSION\|REPLY\|reply\|TERM\)' | |
101 endif | |
102 | |
103 if s:zsh_syntax_variables =~ 'all' | |
104 syn match zshDeref '\$[=^~]*[#+]*\h\w*\>' | |
105 else | |
1698 | 106 syn match zshDeref transparent contains=NONE '\$[=^~]*[#+]*\h\w*\>' |
1125 | 107 endif |
7 | 108 |
1125 | 109 syn match zshCommands '\%(^\|\s\)[.:]\ze\s' |
110 syn keyword zshCommands alias autoload bg bindkey break bye cap cd | |
111 \ chdir clone comparguments compcall compctl | |
112 \ compdescribe compfiles compgroups compquote | |
113 \ comptags comptry compvalues continue dirs | |
114 \ disable disown echo echotc echoti emulate | |
115 \ enable eval exec exit export false fc fg | |
116 \ functions getcap getln getopts hash history | |
117 \ jobs kill let limit log logout popd print | |
118 \ printf pushd pushln pwd r read readonly | |
119 \ rehash return sched set setcap setopt shift | |
120 \ source stat suspend test times trap true | |
121 \ ttyctl type ulimit umask unalias unfunction | |
122 \ unhash unlimit unset unsetopt vared wait | |
123 \ whence where which zcompile zformat zftp zle | |
124 \ zmodload zparseopts zprof zpty zregexparse | |
125 \ zsocket zstyle ztcp | |
126 | |
6823 | 127 " Options, generated by: echo ${(j:\n:)options[(I)*]} | sort |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
128 " Create a list of option names from zsh source dir: |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
129 " #!/bin/zsh |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
130 " topdir=/path/to/zsh-xxx |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
131 " grep '^pindex([A-Za-z_]*)$' $topdir/Src/Doc/Zsh/optionsyo | |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
132 " while read opt |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
133 " do |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
134 " echo ${${(L)opt#pindex\(}%\)} |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
135 " done |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
136 |
6823 | 137 syn case ignore |
138 syn keyword zshOptions aliases allexport all_export alwayslastprompt | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
139 \ always_last_prompt always_lastprompt alwaystoend always_to_end appendcreate |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
140 \ append_create appendhistory append_history autocd auto_cd autocontinue |
6823 | 141 \ auto_continue autolist auto_list |
142 \ automenu auto_menu autonamedirs auto_name_dirs | |
143 \ autoparamkeys auto_param_keys autoparamslash | |
144 \ auto_param_slash autopushd auto_pushd autoremoveslash | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
145 \ auto_remove_slash autoresume auto_resume badpattern bad_pattern |
6823 | 146 \ banghist bang_hist bareglobqual bare_glob_qual |
147 \ bashautolist bash_auto_list bashrematch bash_rematch | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
148 \ beep bgnice bg_nice braceccl brace_ccl braceexpand brace_expand |
6823 | 149 \ bsdecho bsd_echo caseglob case_glob casematch case_match |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
150 \ cbases c_bases cdablevars cdable_vars cd_able_vars chasedots chase_dots |
6823 | 151 \ chaselinks chase_links checkjobs check_jobs |
152 \ clobber combiningchars combining_chars completealiases | |
153 \ complete_aliases completeinword complete_in_word | |
154 \ continueonerror continue_on_error correct | |
155 \ correctall correct_all cprecedences c_precedences | |
156 \ cshjunkiehistory csh_junkie_history cshjunkieloops | |
157 \ csh_junkie_loops cshjunkiequotes csh_junkie_quotes | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
158 \ csh_nullcmd csh_null_cmd cshnullcmd csh_null_cmd cshnullglob csh_null_glob |
6823 | 159 \ debugbeforecmd debug_before_cmd dotglob dot_glob dvorak |
160 \ emacs equals errexit err_exit errreturn err_return evallineno | |
161 \ eval_lineno exec extendedglob extended_glob extendedhistory | |
162 \ extended_history flowcontrol flow_control forcefloat | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
163 \ force_float functionargzero function_argzero function_arg_zero glob globalexport |
6823 | 164 \ global_export globalrcs global_rcs globassign glob_assign |
165 \ globcomplete glob_complete globdots glob_dots glob_subst | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
166 \ globsubst globstarshort glob_star_short hashall hash_all hashcmds |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
167 \ hash_cmds hashdirs hash_dirs hashexecutablesonly hash_executables_only |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
168 \ hashlistall hash_list_all histallowclobber hist_allow_clobber histappend |
6823 | 169 \ hist_append histbeep hist_beep hist_expand hist_expire_dups_first |
170 \ histexpand histexpiredupsfirst histfcntllock hist_fcntl_lock | |
171 \ histfindnodups hist_find_no_dups histignorealldups | |
172 \ hist_ignore_all_dups histignoredups hist_ignore_dups | |
173 \ histignorespace hist_ignore_space histlexwords hist_lex_words | |
174 \ histnofunctions hist_no_functions histnostore hist_no_store | |
175 \ histreduceblanks hist_reduce_blanks histsavebycopy | |
176 \ hist_save_by_copy histsavenodups hist_save_no_dups | |
177 \ histsubstpattern hist_subst_pattern histverify hist_verify | |
178 \ hup ignorebraces ignore_braces ignoreclosebraces ignore_close_braces | |
179 \ ignoreeof ignore_eof incappendhistory inc_append_history | |
180 \ incappendhistorytime inc_append_history_time interactive | |
181 \ interactivecomments interactive_comments ksharrays ksh_arrays | |
182 \ kshautoload ksh_autoload kshglob ksh_glob kshoptionprint | |
183 \ ksh_option_print kshtypeset ksh_typeset kshzerosubscript | |
184 \ ksh_zero_subscript listambiguous list_ambiguous listbeep | |
185 \ list_beep listpacked list_packed listrowsfirst list_rows_first | |
186 \ listtypes list_types localloops local_loops localoptions | |
187 \ local_options localpatterns local_patterns localtraps | |
188 \ local_traps log login longlistjobs long_list_jobs magicequalsubst | |
189 \ magic_equal_subst mailwarn mail_warn mail_warning mark_dirs | |
190 \ mailwarning markdirs menucomplete menu_complete monitor | |
191 \ multibyte multi_byte multifuncdef multi_func_def multios | |
192 \ multi_os nomatch no_match notify nullglob null_glob numericglobsort | |
193 \ numeric_glob_sort octalzeroes octal_zeroes onecmd one_cmd | |
194 \ overstrike over_strike pathdirs path_dirs pathscript | |
195 \ path_script physical pipefail pipe_fail posixaliases | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
196 \ posix_aliases posixargzero posix_arg_zero posix_argzero posixbuiltins |
6823 | 197 \ posix_builtins posixcd posix_cd posixidentifiers posix_identifiers |
198 \ posixjobs posix_jobs posixstrings posix_strings posixtraps | |
199 \ posix_traps printeightbit print_eight_bit printexitvalue | |
200 \ print_exit_value privileged promptbang prompt_bang promptcr | |
201 \ prompt_cr promptpercent prompt_percent promptsp prompt_sp | |
202 \ promptsubst prompt_subst promptvars prompt_vars pushdignoredups | |
203 \ pushd_ignore_dups pushdminus pushd_minus pushdsilent pushd_silent | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
204 \ pushdtohome pushd_to_home rcexpandparam rc_expandparam rc_expand_param rcquotes |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
205 \ rc_quotes rcs recexact rec_exact rematchpcre re_match_pcre rematch_pcre |
6823 | 206 \ restricted rmstarsilent rm_star_silent rmstarwait rm_star_wait |
207 \ sharehistory share_history shfileexpansion sh_file_expansion | |
208 \ shglob sh_glob shinstdin shin_stdin shnullcmd sh_nullcmd | |
209 \ shoptionletters sh_option_letters shortloops short_loops shwordsplit | |
210 \ sh_word_split singlecommand single_command singlelinezle single_line_zle | |
211 \ sourcetrace source_trace stdin sunkeyboardhack sun_keyboard_hack | |
212 \ trackall track_all transientrprompt transient_rprompt | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
213 \ trapsasync traps_async typesetsilent type_set_silent typeset_silent unset verbose vi |
6823 | 214 \ warncreateglobal warn_create_global xtrace zle |
215 | |
216 syn keyword zshOptions noaliases no_aliases noallexport no_allexport noall_export no_all_export noalwayslastprompt no_alwayslastprompt | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
217 \ noalways_lastprompt no_always_lastprompt no_always_last_prompt noalwaystoend no_alwaystoend noalways_to_end no_always_to_end |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
218 \ noappendcreate no_appendcreate no_append_create noappendhistory no_appendhistory noappend_history no_append_history noautocd |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
219 \ no_autocd no_auto_cd noautocontinue no_autocontinue noauto_continue no_auto_continue noautolist no_autolist noauto_list |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
220 \ no_auto_list noautomenu no_automenu noauto_menu no_auto_menu noautonamedirs no_autonamedirs noauto_name_dirs |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
221 \ no_auto_name_dirs noautoparamkeys no_autoparamkeys noauto_param_keys no_auto_param_keys noautoparamslash no_autoparamslash |
6823 | 222 \ noauto_param_slash no_auto_param_slash noautopushd no_autopushd noauto_pushd no_auto_pushd noautoremoveslash no_autoremoveslash |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
223 \ noauto_remove_slash no_auto_remove_slash noautoresume no_autoresume noauto_resume no_auto_resume nobadpattern no_badpattern no_bad_pattern |
6823 | 224 \ nobanghist no_banghist nobang_hist no_bang_hist nobareglobqual no_bareglobqual nobare_glob_qual no_bare_glob_qual |
225 \ nobashautolist no_bashautolist nobash_auto_list no_bash_auto_list nobashrematch no_bashrematch nobash_rematch no_bash_rematch | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
226 \ nobeep no_beep nobgnice no_bgnice no_bg_nice nobraceccl no_braceccl nobrace_ccl no_brace_ccl nobraceexpand no_braceexpand nobrace_expand no_brace_expand |
6823 | 227 \ nobsdecho no_bsdecho nobsd_echo no_bsd_echo nocaseglob no_caseglob nocase_glob no_case_glob nocasematch no_casematch nocase_match no_case_match |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
228 \ nocbases no_cbases no_c_bases nocdablevars no_cdablevars no_cdable_vars nocd_able_vars no_cd_able_vars nochasedots no_chasedots nochase_dots no_chase_dots |
6823 | 229 \ nochaselinks no_chaselinks nochase_links no_chase_links nocheckjobs no_checkjobs nocheck_jobs no_check_jobs |
230 \ noclobber no_clobber nocombiningchars no_combiningchars nocombining_chars no_combining_chars nocompletealiases no_completealiases | |
231 \ nocomplete_aliases no_complete_aliases nocompleteinword no_completeinword nocomplete_in_word no_complete_in_word | |
232 \ nocontinueonerror no_continueonerror nocontinue_on_error no_continue_on_error nocorrect no_correct | |
233 \ nocorrectall no_correctall nocorrect_all no_correct_all nocprecedences no_cprecedences noc_precedences no_c_precedences | |
234 \ nocshjunkiehistory no_cshjunkiehistory nocsh_junkie_history no_csh_junkie_history nocshjunkieloops no_cshjunkieloops | |
235 \ nocsh_junkie_loops no_csh_junkie_loops nocshjunkiequotes no_cshjunkiequotes nocsh_junkie_quotes no_csh_junkie_quotes | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
236 \ nocshnullcmd no_cshnullcmd no_csh_nullcmd nocsh_null_cmd no_csh_null_cmd nocshnullglob no_cshnullglob nocsh_null_glob no_csh_null_glob |
6823 | 237 \ nodebugbeforecmd no_debugbeforecmd nodebug_before_cmd no_debug_before_cmd nodotglob no_dotglob nodot_glob no_dot_glob nodvorak no_dvorak |
238 \ noemacs no_emacs noequals no_equals noerrexit no_errexit noerr_exit no_err_exit noerrreturn no_errreturn noerr_return no_err_return noevallineno no_evallineno | |
239 \ noeval_lineno no_eval_lineno noexec no_exec noextendedglob no_extendedglob noextended_glob no_extended_glob noextendedhistory no_extendedhistory | |
240 \ noextended_history no_extended_history noflowcontrol no_flowcontrol noflow_control no_flow_control noforcefloat no_forcefloat | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
241 \ noforce_float no_force_float nofunctionargzero no_functionargzero nofunction_arg_zero no_function_argzero no_function_arg_zero noglob no_glob noglobalexport no_globalexport |
6823 | 242 \ noglobal_export no_global_export noglobalrcs no_globalrcs noglobal_rcs no_global_rcs noglobassign no_globassign noglob_assign no_glob_assign |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
243 \ noglobcomplete no_globcomplete noglob_complete no_glob_complete noglobdots no_globdots noglob_dots no_glob_dots |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
244 \ noglobstarshort no_glob_star_short noglob_subst no_glob_subst |
6823 | 245 \ noglobsubst no_globsubst nohashall no_hashall nohash_all no_hash_all nohashcmds no_hashcmds nohash_cmds no_hash_cmds nohashdirs no_hashdirs |
246 \ nohash_dirs no_hash_dirs nohashexecutablesonly no_hashexecutablesonly nohash_executables_only no_hash_executables_only nohashlistall no_hashlistall | |
247 \ nohash_list_all no_hash_list_all nohistallowclobber no_histallowclobber nohist_allow_clobber no_hist_allow_clobber nohistappend no_histappend | |
248 \ nohist_append no_hist_append nohistbeep no_histbeep nohist_beep no_hist_beep nohist_expand no_hist_expand nohist_expire_dups_first no_hist_expire_dups_first | |
249 \ nohistexpand no_histexpand nohistexpiredupsfirst no_histexpiredupsfirst nohistfcntllock no_histfcntllock nohist_fcntl_lock no_hist_fcntl_lock | |
250 \ nohistfindnodups no_histfindnodups nohist_find_no_dups no_hist_find_no_dups nohistignorealldups no_histignorealldups | |
251 \ nohist_ignore_all_dups no_hist_ignore_all_dups nohistignoredups no_histignoredups nohist_ignore_dups no_hist_ignore_dups | |
252 \ nohistignorespace no_histignorespace nohist_ignore_space no_hist_ignore_space nohistlexwords no_histlexwords nohist_lex_words no_hist_lex_words | |
253 \ nohistnofunctions no_histnofunctions nohist_no_functions no_hist_no_functions nohistnostore no_histnostore nohist_no_store no_hist_no_store | |
254 \ nohistreduceblanks no_histreduceblanks nohist_reduce_blanks no_hist_reduce_blanks nohistsavebycopy no_histsavebycopy | |
255 \ nohist_save_by_copy no_hist_save_by_copy nohistsavenodups no_histsavenodups nohist_save_no_dups no_hist_save_no_dups | |
256 \ nohistsubstpattern no_histsubstpattern nohist_subst_pattern no_hist_subst_pattern nohistverify no_histverify nohist_verify no_hist_verify | |
257 \ nohup no_hup noignorebraces no_ignorebraces noignore_braces no_ignore_braces noignoreclosebraces no_ignoreclosebraces noignore_close_braces no_ignore_close_braces | |
258 \ noignoreeof no_ignoreeof noignore_eof no_ignore_eof noincappendhistory no_incappendhistory noinc_append_history no_inc_append_history | |
259 \ noincappendhistorytime no_incappendhistorytime noinc_append_history_time no_inc_append_history_time nointeractive no_interactive | |
260 \ nointeractivecomments no_interactivecomments nointeractive_comments no_interactive_comments noksharrays no_ksharrays noksh_arrays no_ksh_arrays | |
261 \ nokshautoload no_kshautoload noksh_autoload no_ksh_autoload nokshglob no_kshglob noksh_glob no_ksh_glob nokshoptionprint no_kshoptionprint | |
262 \ noksh_option_print no_ksh_option_print nokshtypeset no_kshtypeset noksh_typeset no_ksh_typeset nokshzerosubscript no_kshzerosubscript | |
263 \ noksh_zero_subscript no_ksh_zero_subscript nolistambiguous no_listambiguous nolist_ambiguous no_list_ambiguous nolistbeep no_listbeep | |
264 \ nolist_beep no_list_beep nolistpacked no_listpacked nolist_packed no_list_packed nolistrowsfirst no_listrowsfirst nolist_rows_first no_list_rows_first | |
265 \ nolisttypes no_listtypes nolist_types no_list_types nolocalloops no_localloops nolocal_loops no_local_loops nolocaloptions no_localoptions | |
266 \ nolocal_options no_local_options nolocalpatterns no_localpatterns nolocal_patterns no_local_patterns nolocaltraps no_localtraps | |
267 \ nolocal_traps no_local_traps nolog no_log nologin no_login nolonglistjobs no_longlistjobs nolong_list_jobs no_long_list_jobs nomagicequalsubst no_magicequalsubst | |
268 \ nomagic_equal_subst no_magic_equal_subst nomailwarn no_mailwarn nomail_warn no_mail_warn nomail_warning no_mail_warning nomark_dirs no_mark_dirs | |
269 \ nomailwarning no_mailwarning nomarkdirs no_markdirs nomenucomplete no_menucomplete nomenu_complete no_menu_complete nomonitor no_monitor | |
270 \ nomultibyte no_multibyte nomulti_byte no_multi_byte nomultifuncdef no_multifuncdef nomulti_func_def no_multi_func_def nomultios no_multios | |
271 \ nomulti_os no_multi_os nonomatch no_nomatch nono_match no_no_match nonotify no_notify nonullglob no_nullglob nonull_glob no_null_glob nonumericglobsort no_numericglobsort | |
272 \ nonumeric_glob_sort no_numeric_glob_sort nooctalzeroes no_octalzeroes nooctal_zeroes no_octal_zeroes noonecmd no_onecmd noone_cmd no_one_cmd | |
273 \ nooverstrike no_overstrike noover_strike no_over_strike nopathdirs no_pathdirs nopath_dirs no_path_dirs nopathscript no_pathscript | |
274 \ nopath_script no_path_script nophysical no_physical nopipefail no_pipefail nopipe_fail no_pipe_fail noposixaliases no_posixaliases | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
275 \ noposix_aliases no_posix_aliases noposixargzero no_posixargzero no_posix_argzero noposix_arg_zero no_posix_arg_zero noposixbuiltins no_posixbuiltins |
6823 | 276 \ noposix_builtins no_posix_builtins noposixcd no_posixcd noposix_cd no_posix_cd noposixidentifiers no_posixidentifiers noposix_identifiers no_posix_identifiers |
277 \ noposixjobs no_posixjobs noposix_jobs no_posix_jobs noposixstrings no_posixstrings noposix_strings no_posix_strings noposixtraps no_posixtraps | |
278 \ noposix_traps no_posix_traps noprinteightbit no_printeightbit noprint_eight_bit no_print_eight_bit noprintexitvalue no_printexitvalue | |
279 \ noprint_exit_value no_print_exit_value noprivileged no_privileged nopromptbang no_promptbang noprompt_bang no_prompt_bang nopromptcr no_promptcr | |
280 \ noprompt_cr no_prompt_cr nopromptpercent no_promptpercent noprompt_percent no_prompt_percent nopromptsp no_promptsp noprompt_sp no_prompt_sp | |
281 \ nopromptsubst no_promptsubst noprompt_subst no_prompt_subst nopromptvars no_promptvars noprompt_vars no_prompt_vars nopushdignoredups no_pushdignoredups | |
282 \ nopushd_ignore_dups no_pushd_ignore_dups nopushdminus no_pushdminus nopushd_minus no_pushd_minus nopushdsilent no_pushdsilent nopushd_silent no_pushd_silent | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
283 \ nopushdtohome no_pushdtohome nopushd_to_home no_pushd_to_home norcexpandparam no_rcexpandparam norc_expandparam no_rc_expandparam no_rc_expand_param norcquotes no_rcquotes |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
284 \ norc_quotes no_rc_quotes norcs no_rcs norecexact no_recexact norec_exact no_rec_exact norematchpcre no_rematchpcre nore_match_pcre no_re_match_pcre no_rematch_pcre |
6823 | 285 \ norestricted no_restricted normstarsilent no_rmstarsilent norm_star_silent no_rm_star_silent normstarwait no_rmstarwait norm_star_wait no_rm_star_wait |
286 \ nosharehistory no_sharehistory noshare_history no_share_history noshfileexpansion no_shfileexpansion nosh_file_expansion no_sh_file_expansion | |
287 \ noshglob no_shglob nosh_glob no_sh_glob noshinstdin no_shinstdin noshin_stdin no_shin_stdin noshnullcmd no_shnullcmd nosh_nullcmd no_sh_nullcmd | |
288 \ noshoptionletters no_shoptionletters nosh_option_letters no_sh_option_letters noshortloops no_shortloops noshort_loops no_short_loops noshwordsplit no_shwordsplit | |
289 \ nosh_word_split no_sh_word_split nosinglecommand no_singlecommand nosingle_command no_single_command nosinglelinezle no_singlelinezle nosingle_line_zle no_single_line_zle | |
290 \ nosourcetrace no_sourcetrace nosource_trace no_source_trace nostdin no_stdin nosunkeyboardhack no_sunkeyboardhack nosun_keyboard_hack no_sun_keyboard_hack | |
291 \ notrackall no_trackall notrack_all no_track_all notransientrprompt no_transientrprompt notransient_rprompt no_transient_rprompt | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
292 \ notrapsasync no_trapsasync notrapasync no_trapasync no_traps_async notypesetsilent no_typesetsilent notype_set_silent no_type_set_silent no_typeset_silent \nounset no_unset |
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
293 \ noverbose no_verbose novi no_vi nowarncreateglobal no_warncreateglobal nowarn_create_global no_warn_create_global noxtrace no_xtrace nozle no_zle |
6823 | 294 syn case match |
295 | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
296 syn keyword zshTypes float integer local typeset declare private |
7 | 297 |
1125 | 298 " XXX: this may be too much |
299 " syn match zshSwitches '\s\zs--\=[a-zA-Z0-9-]\+' | |
7 | 300 |
1125 | 301 syn match zshNumber '[+-]\=\<\d\+\>' |
302 syn match zshNumber '[+-]\=\<0x\x\+\>' | |
303 syn match zshNumber '[+-]\=\<0\o\+\>' | |
304 syn match zshNumber '[+-]\=\d\+#[-+]\=\w\+\>' | |
305 syn match zshNumber '[+-]\=\d\+\.\d\+\>' | |
7 | 306 |
1698 | 307 " TODO: $[...] is the same as $((...)), so add that as well. |
1125 | 308 syn cluster zshSubst contains=zshSubst,zshOldSubst,zshMathSubst |
309 syn region zshSubst matchgroup=zshSubstDelim transparent | |
310 \ start='\$(' skip='\\)' end=')' contains=TOP | |
311 syn region zshParentheses transparent start='(' skip='\\)' end=')' | |
312 syn region zshMathSubst matchgroup=zshSubstDelim transparent | |
313 \ start='\$((' skip='\\)' | |
314 \ matchgroup=zshSubstDelim end='))' | |
315 \ contains=zshParentheses,@zshSubst,zshNumber, | |
7477
05cf4cc72a9f
commit https://github.com/vim/vim/commit/fa7353428f705f7a13465a1943dddeede4083023
Christian Brabandt <cb@256bit.org>
parents:
6823
diff
changeset
|
316 \ @zshDerefs,zshString keepend |
1125 | 317 syn region zshBrackets contained transparent start='{' skip='\\}' |
318 \ end='}' | |
319 syn region zshSubst matchgroup=zshSubstDelim start='\${' skip='\\}' | |
1698 | 320 \ end='}' contains=@zshSubst,zshBrackets,zshQuoted,zshString |
1125 | 321 syn region zshOldSubst matchgroup=zshSubstDelim start=+`+ skip=+\\`+ |
322 \ end=+`+ contains=TOP,zshOldSubst | |
7 | 323 |
6823 | 324 syn sync minlines=50 maxlines=90 |
1698 | 325 syn sync match zshHereDocSync grouphere NONE '<<-\=\s*\%(\\\=\S\+\|\(["']\)\S\+\1\)' |
326 syn sync match zshHereDocEndSync groupthere NONE '^\s*EO\a\+\>' | |
327 | |
1125 | 328 hi def link zshTodo Todo |
329 hi def link zshComment Comment | |
330 hi def link zshPreProc PreProc | |
331 hi def link zshQuoted SpecialChar | |
332 hi def link zshString String | |
333 hi def link zshStringDelimiter zshString | |
334 hi def link zshPOSIXString zshString | |
335 hi def link zshJobSpec Special | |
336 hi def link zshPrecommand Special | |
337 hi def link zshDelimiter Keyword | |
338 hi def link zshConditional Conditional | |
339 hi def link zshException Exception | |
340 hi def link zshRepeat Repeat | |
341 hi def link zshKeyword Keyword | |
342 hi def link zshFunction None | |
343 hi def link zshKSHFunction zshFunction | |
344 hi def link zshHereDoc String | |
6823 | 345 hi def link zshOperator None |
346 hi def link zshRedir Operator | |
1125 | 347 hi def link zshVariable None |
1698 | 348 hi def link zshVariableDef zshVariable |
1125 | 349 hi def link zshDereferencing PreProc |
350 if s:zsh_syntax_variables =~ 'short\|all' | |
351 hi def link zshShortDeref zshDereferencing | |
352 else | |
353 hi def link zshShortDeref None | |
354 endif | |
355 if s:zsh_syntax_variables =~ 'long\|all' | |
356 hi def link zshLongDeref zshDereferencing | |
357 else | |
358 hi def link zshLongDeref None | |
359 endif | |
360 if s:zsh_syntax_variables =~ 'all' | |
361 hi def link zshDeref zshDereferencing | |
362 else | |
363 hi def link zshDeref None | |
364 endif | |
365 hi def link zshCommands Keyword | |
6823 | 366 hi def link zshOptions Constant |
1125 | 367 hi def link zshTypes Type |
368 hi def link zshSwitches Special | |
369 hi def link zshNumber Number | |
370 hi def link zshSubst PreProc | |
371 hi def link zshMathSubst zshSubst | |
372 hi def link zshOldSubst zshSubst | |
373 hi def link zshSubstDelim zshSubst | |
7 | 374 |
375 let b:current_syntax = "zsh" | |
376 | |
1125 | 377 let &cpo = s:cpo_save |
378 unlet s:cpo_save |