Merge #5483 from Shougo/vim-0648142

vim-patch 0648142, 91c4937, 06d2d38, 2685212, 269f595
This commit is contained in:
Justin M. Keyes 2016-10-24 13:17:41 +02:00 committed by GitHub
commit fb503d73da
21 changed files with 310 additions and 287 deletions

View File

@ -1,7 +1,7 @@
" Vim compiler file " Vim compiler file
" Compiler: HTML Tidy " Compiler: HTML Tidy
" Maintainer: Doug Kearns <dougkearns@gmail.com> " Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2013 Jul 7 " Last Change: 2016 Apr 21
if exists("current_compiler") if exists("current_compiler")
finish finish
@ -12,8 +12,8 @@ if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args> command -nargs=* CompilerSet setlocal <args>
endif endif
CompilerSet makeprg=tidy\ -quiet\ -errors\ --gnu-emacs\ yes\ % CompilerSet makeprg=tidy\ -quiet\ -errors\ --gnu-emacs\ yes\ %:S
" sample warning: foo.html:8:1: Warning: inserting missing 'foobar' element " foo.html:8:1: Warning: inserting missing 'foobar' element
" sample error: foo.html:9:2: Error: <foobar> is not recognized! " foo.html:9:2: Error: <foobar> is not recognized!
CompilerSet errorformat=%f:%l:%c:\ Error:%m,%f:%l:%c:\ Warning:%m,%-G%.%# CompilerSet errorformat=%f:%l:%c:\ %trror:%m,%f:%l:%c:\ %tarning:%m,%-G%.%#

View File

@ -1,4 +1,4 @@
*eval.txt* For Vim version 7.4. Last change: 2016 Mar 27 *eval.txt* For Vim version 7.4. Last change: 2016 May 20
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -43,6 +43,7 @@ Number A 32 or 64 bit signed number. |expr-number| *Number*
Float A floating point number. |floating-point-format| *Float* Float A floating point number. |floating-point-format| *Float*
Examples: 123.456 1.15e-6 -1.1e3 Examples: 123.456 1.15e-6 -1.1e3
*E928*
String A NUL terminated string of 8-bit unsigned characters (bytes). String A NUL terminated string of 8-bit unsigned characters (bytes).
|expr-string| Examples: "ab\txx\"--" 'x-z''a,c' |expr-string| Examples: "ab\txx\"--" 'x-z''a,c'
@ -6171,6 +6172,7 @@ setqflist({list} [, {action}[, {title}]]) *setqflist()*
Note that the list is not exactly the same as what Note that the list is not exactly the same as what
|getqflist()| returns. |getqflist()| returns.
*E927*
If {action} is set to 'a', then the items from {list} are If {action} is set to 'a', then the items from {list} are
added to the existing quickfix list. If there is no existing added to the existing quickfix list. If there is no existing
list, then a new list is created. If {action} is set to 'r', list, then a new list is created. If {action} is set to 'r',
@ -7048,8 +7050,9 @@ timer_start({time}, {callback} [, {options}])
{only available when compiled with the |+timers| feature} {only available when compiled with the |+timers| feature}
timer_stop({timer}) *timer_stop()* timer_stop({timer}) *timer_stop()*
Stop a timer. {timer} is an ID returned by timer_start(). Stop a timer. The timer callback will no longer be invoked.
The timer callback will no longer be invoked. {timer} is an ID returned by timer_start(), thus it must be a
Number.
tolower({expr}) *tolower()* tolower({expr}) *tolower()*
The result is a copy of the String given, with all uppercase The result is a copy of the String given, with all uppercase

View File

@ -1,4 +1,4 @@
*message.txt* For Vim version 7.4. Last change: 2016 Feb 27 *message.txt* For Vim version 7.4. Last change: 2016 Jul 14
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -656,6 +656,12 @@ You must be using an awful lot of buffers. It's now possible that two buffers
have the same number, which causes various problems. You might want to exit have the same number, which causes various problems. You might want to exit
Vim and restart it. Vim and restart it.
*E931* >
Buffer cannot be registered
Out of memory or a duplicate buffer number. May habben after W14. Looking up
a buffer will not always work, better restart Vim.
*E296* *E297* > *E296* *E297* >
Seek error in swap file write Seek error in swap file write
Write error in swap file Write error in swap file

View File

@ -1,4 +1,4 @@
*motion.txt* For Vim version 7.4. Last change: 2015 Jun 06 *motion.txt* For Vim version 7.4. Last change: 2016 Jul 12
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -569,7 +569,7 @@ i[ "inner [] block", select [count] '[' ']' blocks. This
When used in Visual mode it is made characterwise. When used in Visual mode it is made characterwise.
a) *v_a)* *a)* *a(* a) *v_a)* *a)* *a(*
a( *v_ab* *v_a(* *ab* a( *vab* *v_ab* *v_a(* *ab*
ab "a block", select [count] blocks, from "[count] [(" to ab "a block", select [count] blocks, from "[count] [(" to
the matching ')', including the '(' and ')' (see the matching ')', including the '(' and ')' (see
|[(|). Does not include white space outside of the |[(|). Does not include white space outside of the
@ -577,7 +577,7 @@ ab "a block", select [count] blocks, from "[count] [(" to
When used in Visual mode it is made characterwise. When used in Visual mode it is made characterwise.
i) *v_i)* *i)* *i(* i) *v_i)* *i)* *i(*
i( *v_ib* *v_i(* *ib* i( *vib* *v_ib* *v_i(* *ib*
ib "inner block", select [count] blocks, from "[count] [(" ib "inner block", select [count] blocks, from "[count] [("
to the matching ')', excluding the '(' and ')' (see to the matching ')', excluding the '(' and ')' (see
|[(|). |[(|).

View File

@ -1,4 +1,4 @@
*options.txt* For Vim version 7.4. Last change: 2016 Mar 19 *options.txt* For Vim version 7.4. Last change: 2016 Jul 12
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -5445,6 +5445,8 @@ A jump table for the options with a short description can be found at |Q_op|.
The |FilterReadPre|, |FilterReadPost| and |FilterWritePre|, The |FilterReadPre|, |FilterReadPost| and |FilterWritePre|,
|FilterWritePost| autocommands event are not triggered when |FilterWritePost| autocommands event are not triggered when
'shelltemp' is off. 'shelltemp' is off.
The `system()` function does not respect this option and always uses
temp files.
*'shellxescape'* *'sxe'* *'shellxescape'* *'sxe'*
'shellxescape' 'sxe' string (default: ""; 'shellxescape' 'sxe' string (default: "";

View File

@ -1,4 +1,4 @@
*pattern.txt* For Vim version 7.4. Last change: 2016 Apr 03 *pattern.txt* For Vim version 7.4. Last change: 2016 Apr 26
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -1071,8 +1071,8 @@ x A single character, with no special meaning, matches itself
belonging to that character class. The following character classes belonging to that character class. The following character classes
are supported: are supported:
Name Contents ~ Name Contents ~
*[:alnum:]* [:alnum:] letters and digits *[:alnum:]* [:alnum:] ASCII letters and digits
*[:alpha:]* [:alpha:] letters *[:alpha:]* [:alpha:] ASCII letters
*[:blank:]* [:blank:] space and tab characters *[:blank:]* [:blank:] space and tab characters
*[:cntrl:]* [:cntrl:] control characters *[:cntrl:]* [:cntrl:] control characters
*[:digit:]* [:digit:] decimal digits *[:digit:]* [:digit:] decimal digits
@ -1080,7 +1080,7 @@ x A single character, with no special meaning, matches itself
*[:lower:]* [:lower:] lowercase letters (all letters when *[:lower:]* [:lower:] lowercase letters (all letters when
'ignorecase' is used) 'ignorecase' is used)
*[:print:]* [:print:] printable characters including space *[:print:]* [:print:] printable characters including space
*[:punct:]* [:punct:] punctuation characters *[:punct:]* [:punct:] ASCII punctuation characters
*[:space:]* [:space:] whitespace characters *[:space:]* [:space:] whitespace characters
*[:upper:]* [:upper:] uppercase letters (all letters when *[:upper:]* [:upper:] uppercase letters (all letters when
'ignorecase' is used) 'ignorecase' is used)
@ -1097,7 +1097,8 @@ x A single character, with no special meaning, matches itself
These items only work for 8-bit characters, except [:lower:] and These items only work for 8-bit characters, except [:lower:] and
[:upper:] also work for multi-byte characters when using the new [:upper:] also work for multi-byte characters when using the new
regexp engine. See |two-engines|. In the future these items may regexp engine. See |two-engines|. In the future these items may
work for multi-byte characters. work for multi-byte characters. For now, to get all "alpha"
characters you can use: [[:lower:][:upper:]].
*/[[=* *[==]* */[[=* *[==]*
- An equivalence class. This means that characters are matched that - An equivalence class. This means that characters are matched that
have almost the same meaning, e.g., when ignoring accents. This have almost the same meaning, e.g., when ignoring accents. This

View File

@ -1,7 +1,7 @@
" Vim support file to detect file types " Vim support file to detect file types
" "
" Maintainer: Bram Moolenaar <Bram@vim.org> " Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2015 Oct 13 " Last Change: 2016 Jul 12
" Listen very carefully, I will say this only once " Listen very carefully, I will say this only once
if exists("did_load_filetypes") if exists("did_load_filetypes")
@ -1617,11 +1617,9 @@ au BufNewFile,BufRead */etc/protocols setf protocols
" Pyrex " Pyrex
au BufNewFile,BufRead *.pyx,*.pxd setf pyrex au BufNewFile,BufRead *.pyx,*.pxd setf pyrex
" Python " Python, Python Shell Startup Files
au BufNewFile,BufRead *.py,*.pyw setf python
" Quixote (Python-based web framework) " Quixote (Python-based web framework)
au BufNewFile,BufRead *.ptl setf python au BufNewFile,BufRead *.py,*.pyw,.pythonstartup,.pythonrc,*.ptl setf python
" Radiance " Radiance
au BufNewFile,BufRead *.rad,*.mat setf radiance au BufNewFile,BufRead *.rad,*.mat setf radiance

View File

@ -0,0 +1,19 @@
" Vim filetype plugin file
" Language: groovy
" Maintainer: Justin M. Keyes <justinkz@gmail.com>
" Last Change: 2016 May 22
if exists('b:did_ftplugin')
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo-=C
let b:undo_ftplugin = 'setlocal commentstring<'
setlocal commentstring=//%s
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@ -1,7 +1,7 @@
" Vim support file to detect file types in scripts " Vim support file to detect file types in scripts
" "
" Maintainer: Bram Moolenaar <Bram@vim.org> " Maintainer: Bram Moolenaar <Bram@vim.org>
" Last change: 2014 Aug 24 " Last change: 2016 May 21
" This file is called by an autocommand for every file that has just been " This file is called by an autocommand for every file that has just been
" loaded into a buffer. It checks if the type of file can be recognized by " loaded into a buffer. It checks if the type of file can be recognized by
@ -240,7 +240,8 @@ else
set ft=xhtml set ft=xhtml
" HTML (e.g.: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN") " HTML (e.g.: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN")
elseif s:line1 =~? '\<DOCTYPE\s\+html\>' " Avoid "doctype html", used by slim.
elseif s:line1 =~? '<!DOCTYPE\s\+html\>'
set ft=html set ft=html
" PDF " PDF

View File

@ -1,7 +1,7 @@
" Vim syntax file " Vim syntax file
" Language: awk, nawk, gawk, mawk " Language: awk, nawk, gawk, mawk
" Maintainer: Antonio Colombo <azc100@gmail.com> " Maintainer: Antonio Colombo <azc100@gmail.com>
" Last Change: 2014 Oct 21 " Last Change: 2016 Jul 15
" AWK ref. is: Alfred V. Aho, Brian W. Kernighan, Peter J. Weinberger " AWK ref. is: Alfred V. Aho, Brian W. Kernighan, Peter J. Weinberger
" The AWK Programming Language, Addison-Wesley, 1988 " The AWK Programming Language, Addison-Wesley, 1988
@ -9,7 +9,7 @@
" GAWK ref. is: Arnold D. Robbins " GAWK ref. is: Arnold D. Robbins
" Effective AWK Programming, Third Edition, O'Reilly, 2001 " Effective AWK Programming, Third Edition, O'Reilly, 2001
" Effective AWK Programming, Fourth Edition, O'Reilly, 2015 " Effective AWK Programming, Fourth Edition, O'Reilly, 2015
" (also available with the gawk source distribution) " (also available and updated with the gawk source distribution)
" MAWK is a "new awk" meaning it implements AWK ref. " MAWK is a "new awk" meaning it implements AWK ref.
" mawk conforms to the Posix 1003.2 (draft 11.3) " mawk conforms to the Posix 1003.2 (draft 11.3)
@ -19,11 +19,8 @@
" TODO: " TODO:
" Dig into the commented out syntax expressions below. " Dig into the commented out syntax expressions below.
" For version 5.x: Clear all syntax items " Quit when a syntax file was already loaded
" For version 6.x: Quit when a syntax file was already loaded if exists("b:current_syntax")
if version < 600
syn clear
elseif exists("b:current_syntax")
finish finish
endif endif
@ -35,13 +32,13 @@ set cpo&vim
syn keyword awkStatement break continue delete exit syn keyword awkStatement break continue delete exit
syn keyword awkStatement function getline next syn keyword awkStatement function getline next
syn keyword awkStatement print printf return syn keyword awkStatement print printf return
" GAWK ref. Chapter 7 " GAWK ref. Chapter 7-9
syn keyword awkStatement nextfile syn keyword awkStatement switch nextfile
syn keyword awkStatement func
" "
" GAWK ref. Chapter 9, Functions " GAWK ref. Chapter 9, Functions
"
" Numeric Functions " Numeric Functions
syn keyword awkFunction atan2 cos div exp int log rand sin sqrt srand syn keyword awkFunction atan2 cos exp int intdiv log rand sin sqrt srand
" String Manipulation Functions " String Manipulation Functions
syn keyword awkFunction asort asort1 gensub gsub index length match syn keyword awkFunction asort asort1 gensub gsub index length match
syn keyword awkFunction patsplit split sprintf strtonum sub substr syn keyword awkFunction patsplit split sprintf strtonum sub substr
@ -52,17 +49,17 @@ syn keyword awkFunction close fflush system
syn keyword awkFunction mktime strftime systime syn keyword awkFunction mktime strftime systime
" Bit Manipulation Functions " Bit Manipulation Functions
syn keyword awkFunction and compl lshift or rshift xor syn keyword awkFunction and compl lshift or rshift xor
" Getting Type Function " Getting Type Functions
syn keyword awkFunction isarray syn keyword awkFunction isarray typeof
" String-Translation Functions " String-Translation Functions
syn keyword awkFunction bindtextdomain dcgettext dcngetext syn keyword awkFunction bindtextdomain dcgettext dcngetext
syn keyword awkConditional if else syn keyword awkConditional if else
syn keyword awkRepeat while for syn keyword awkRepeat while for do
syn keyword awkTodo contained TODO syn keyword awkTodo contained TODO
syn keyword awkPatterns BEGIN END syn keyword awkPatterns BEGIN END BEGINFILE ENDFILE
" GAWK ref. Chapter 7 " GAWK ref. Chapter 7
" Built-in Variables That Control awk " Built-in Variables That Control awk
@ -74,20 +71,18 @@ syn keyword awkVariables ARGC ARGV ARGIND ENVIRON ERRNO FILENAME
syn keyword awkVariables FNR NF FUNCTAB NR PROCINFO RLENGTH RSTART syn keyword awkVariables FNR NF FUNCTAB NR PROCINFO RLENGTH RSTART
syn keyword awkVariables RT SYMTAB syn keyword awkVariables RT SYMTAB
syn keyword awkRepeat do
" Octal format character. " Octal format character.
syn match awkSpecialCharacter display contained "\\[0-7]\{1,3\}" syn match awkSpecialCharacter display contained "\\[0-7]\{1,3\}"
syn keyword awkStatement func nextfile
" Hex format character. " Hex format character.
syn match awkSpecialCharacter display contained "\\x[0-9A-Fa-f]\+" syn match awkSpecialCharacter display contained "\\x[0-9A-Fa-f]\+"
syn match awkFieldVars "\$\d\+" syn match awkFieldVars "\$\d\+"
"catch errors caused by wrong parenthesis " catch errors caused by wrong parenthesis
syn region awkParen transparent start="(" end=")" contains=ALLBUT,awkParenError,awkSpecialCharacter,awkArrayElement,awkArrayArray,awkTodo,awkRegExp,awkBrktRegExp,awkBrackets,awkCharClass syn region awkParen transparent start="(" end=")" contains=ALLBUT,awkParenError,awkSpecialCharacter,awkArrayElement,awkArrayArray,awkTodo,awkRegExp,awkBrktRegExp,awkBrackets,awkCharClass,awkComment
syn match awkParenError display ")" syn match awkParenError display ")"
syn match awkInParen display contained "[{}]" "syn match awkInParen display contained "[{}]"
" 64 lines for complex &&'s, and ||'s in a big "if" " 64 lines for complex &&'s, and ||'s in a big "if"
syn sync ccomment awkParen maxlines=64 syn sync ccomment awkParen maxlines=64
@ -141,7 +136,7 @@ syn match awkExpression "?\|:"
syn keyword awkExpression in syn keyword awkExpression in
" Boolean Logic (OR, AND, NOT) " Boolean Logic (OR, AND, NOT)
"syn match awkBoolLogic "||\|&&\|\!" syn match awkBoolLogic "||\|&&\|\!"
" This is overridden by less-than & greater-than. " This is overridden by less-than & greater-than.
" Put this above those to override them. " Put this above those to override them.
@ -171,63 +166,42 @@ syn region awkArray transparent start="\[" end="\]" contains=awkArray,awkArrayE
" (for the few instances where it would be more than "oneline") " (for the few instances where it would be more than "oneline")
syn sync ccomment awkArray maxlines=10 syn sync ccomment awkArray maxlines=10
" define the default highlighting " Define the default highlighting.
" For version 5.7 and earlier: only when not done already " Only used when an item doesn't have highlighting yet
" For version 5.8 and later: only when an item doesn't have highlighting yet hi def link awkConditional Conditional
if version >= 508 || !exists("did_awk_syn_inits") hi def link awkFunction Function
if version < 508 hi def link awkRepeat Repeat
let did_awk_syn_inits = 1 hi def link awkStatement Statement
command -nargs=+ HiLink hi link <args> hi def link awkString String
else hi def link awkSpecialPrintf Special
command -nargs=+ HiLink hi def link <args> hi def link awkSpecialCharacter Special
endif hi def link awkSearch String
hi def link awkBrackets awkRegExp
HiLink awkConditional Conditional hi def link awkBrktRegExp awkNestRegExp
HiLink awkFunction Function hi def link awkCharClass awkNestRegExp
HiLink awkRepeat Repeat hi def link awkNestRegExp Keyword
HiLink awkStatement Statement hi def link awkRegExp Special
hi def link awkNumber Number
HiLink awkString String hi def link awkFloat Float
HiLink awkSpecialPrintf Special hi def link awkFileIO Special
HiLink awkSpecialCharacter Special hi def link awkOperator Special
hi def link awkExpression Special
HiLink awkSearch String hi def link awkBoolLogic Special
HiLink awkBrackets awkRegExp hi def link awkPatterns Special
HiLink awkBrktRegExp awkNestRegExp hi def link awkVariables Special
HiLink awkCharClass awkNestRegExp hi def link awkFieldVars Special
HiLink awkNestRegExp Keyword hi def link awkLineSkip Special
HiLink awkRegExp Special hi def link awkSemicolon Special
hi def link awkComma Special
HiLink awkNumber Number hi def link awkIdentifier Identifier
HiLink awkFloat Float hi def link awkComment Comment
hi def link awkTodo Todo
HiLink awkFileIO Special " Change this if you want nested array names to be highlighted.
HiLink awkOperator Special hi def link awkArrayArray awkArray
HiLink awkExpression Special hi def link awkArrayElement Special
HiLink awkBoolLogic Special hi def link awkParenError awkError
hi def link awkInParen awkError
HiLink awkPatterns Special hi def link awkError Error
HiLink awkVariables Special
HiLink awkFieldVars Special
HiLink awkLineSkip Special
HiLink awkSemicolon Special
HiLink awkComma Special
"HiLink awkIdentifier Identifier
HiLink awkComment Comment
HiLink awkTodo Todo
" Change this if you want nested array names to be highlighted.
HiLink awkArrayArray awkArray
HiLink awkArrayElement Special
HiLink awkParenError awkError
HiLink awkInParen awkError
HiLink awkError Error
delcommand HiLink
endif
let b:current_syntax = "awk" let b:current_syntax = "awk"

View File

@ -1,8 +1,8 @@
" Vim syntax file " Vim syntax file
" Language: DCL (Digital Command Language - vms) " Language: DCL (Digital Command Language - vms)
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> " Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: Jan 20, 2016 " Last Change: May 02, 2016
" Version: 8 " Version: 9
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_DCL " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_DCL
" For version 5.x: Clear all syntax items " For version 5.x: Clear all syntax items
@ -13,7 +13,7 @@ elseif exists("b:current_syntax")
finish finish
endif endif
if !has("patch-7.4.1141") if !has("patch-7.4.1142")
setlocal iskeyword=$,@,48-57,_ setlocal iskeyword=$,@,48-57,_
else else
syn iskeyword $,@,48-57,_ syn iskeyword $,@,48-57,_

View File

@ -3,7 +3,7 @@
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org> " Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
" Former Maintainers: Gerfried Fuchs <alfie@ist.org> " Former Maintainers: Gerfried Fuchs <alfie@ist.org>
" Wichert Akkerman <wakkerma@debian.org> " Wichert Akkerman <wakkerma@debian.org>
" Last Change: 2015 Oct 24 " Last Change: 2016 Apr 24
" URL: https://anonscm.debian.org/cgit/pkg-vim/vim.git/plain/runtime/syntax/debchangelog.vim " URL: https://anonscm.debian.org/cgit/pkg-vim/vim.git/plain/runtime/syntax/debchangelog.vim
" Standard syntax initialization " Standard syntax initialization
@ -23,7 +23,7 @@ let binNMU='binary-only=yes'
syn match debchangelogName contained "^[[:alnum:]][[:alnum:].+-]\+ " syn match debchangelogName contained "^[[:alnum:]][[:alnum:].+-]\+ "
exe 'syn match debchangelogFirstKV contained "; \('.urgency.'\|'.binNMU.'\)"' exe 'syn match debchangelogFirstKV contained "; \('.urgency.'\|'.binNMU.'\)"'
exe 'syn match debchangelogOtherKV contained ", \('.urgency.'\|'.binNMU.'\)"' exe 'syn match debchangelogOtherKV contained ", \('.urgency.'\|'.binNMU.'\)"'
syn match debchangelogTarget contained "\v %(frozen|unstable|sid|%(testing|%(old)=stable)%(-proposed-updates|-security)=|experimental|squeeze-%(backports%(-sloppy)=|volatile|lts|security)|wheezy-%(backports%(-sloppy)=|security)|jessie%(-backports|-security)=|stretch|%(devel|precise|trusty|vivid|wily|xenial)%(-%(security|proposed|updates|backports|commercial|partner))=)+" syn match debchangelogTarget contained "\v %(frozen|unstable|sid|%(testing|%(old)=stable)%(-proposed-updates|-security)=|experimental|squeeze-%(backports%(-sloppy)=|volatile|lts|security)|wheezy-%(backports%(-sloppy)=|security)|jessie%(-backports|-security)=|stretch|%(devel|precise|trusty|vivid|wily|xenial|yakkety)%(-%(security|proposed|updates|backports|commercial|partner))=)+"
syn match debchangelogVersion contained "(.\{-})" syn match debchangelogVersion contained "(.\{-})"
syn match debchangelogCloses contained "closes:\_s*\(bug\)\=#\=\_s\=\d\+\(,\_s*\(bug\)\=#\=\_s\=\d\+\)*" syn match debchangelogCloses contained "closes:\_s*\(bug\)\=#\=\_s\=\d\+\(,\_s*\(bug\)\=#\=\_s\=\d\+\)*"
syn match debchangelogLP contained "\clp:\s\+#\d\+\(,\s*#\d\+\)*" syn match debchangelogLP contained "\clp:\s\+#\d\+\(,\s*#\d\+\)*"

View File

@ -2,7 +2,7 @@
" Language: Debian sources.list " Language: Debian sources.list
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org> " Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
" Former Maintainer: Matthijs Mohlmann <matthijs@cacholong.nl> " Former Maintainer: Matthijs Mohlmann <matthijs@cacholong.nl>
" Last Change: 2015 Oct 24 " Last Change: 2016 Apr 24
" URL: https://anonscm.debian.org/cgit/pkg-vim/vim.git/plain/runtime/syntax/debsources.vim " URL: https://anonscm.debian.org/cgit/pkg-vim/vim.git/plain/runtime/syntax/debsources.vim
" Standard syntax initialization " Standard syntax initialization
@ -27,7 +27,7 @@ let s:supported = [
\ 'oldstable', 'stable', 'testing', 'unstable', 'experimental', \ 'oldstable', 'stable', 'testing', 'unstable', 'experimental',
\ 'squeeze', 'wheezy', 'jessie', 'stretch', 'sid', 'rc-buggy', \ 'squeeze', 'wheezy', 'jessie', 'stretch', 'sid', 'rc-buggy',
\ \
\ 'precise', 'trusty', 'vivid', 'wily', 'xenial', 'devel' \ 'precise', 'trusty', 'wily', 'xenial', 'yakkety', 'devel'
\ ] \ ]
let s:unsupported = [ let s:unsupported = [
\ 'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato', \ 'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato',
@ -36,7 +36,7 @@ let s:unsupported = [
\ 'warty', 'hoary', 'breezy', 'dapper', 'edgy', 'feisty', \ 'warty', 'hoary', 'breezy', 'dapper', 'edgy', 'feisty',
\ 'gutsy', 'hardy', 'intrepid', 'jaunty', 'karmic', 'lucid', \ 'gutsy', 'hardy', 'intrepid', 'jaunty', 'karmic', 'lucid',
\ 'maverick', 'natty', 'oneiric', 'quantal', 'raring', 'saucy', \ 'maverick', 'natty', 'oneiric', 'quantal', 'raring', 'saucy',
\ 'utopic' \ 'utopic', 'vivid'
\ ] \ ]
let &cpo=s:cpo let &cpo=s:cpo

View File

@ -2,9 +2,9 @@
" Language: Groovy " Language: Groovy
" Original Author: Alessio Pace <billy.corgan@tiscali.it> " Original Author: Alessio Pace <billy.corgan@tiscali.it>
" Maintainer: Tobias Rapp <yahuxo@gmx.de> " Maintainer: Tobias Rapp <yahuxo@gmx.de>
" Version: 0.1.14 " Version: 0.1.16
" URL: http://www.vim.org/scripts/script.php?script_id=945 " URL: http://www.vim.org/scripts/script.php?script_id=945
" Last Change: 2015 Apr 21 " Last Change: 2016 May 23
" THE ORIGINAL AUTHOR'S NOTES: " THE ORIGINAL AUTHOR'S NOTES:
" "
@ -255,8 +255,11 @@ syn region groovyString start=+"+ end=+"+ end=+$+ contains=groovySpeci
syn region groovyString start=+'+ end=+'+ end=+$+ contains=groovySpecialChar,groovySpecialError,@Spell syn region groovyString start=+'+ end=+'+ end=+$+ contains=groovySpecialChar,groovySpecialError,@Spell
syn region groovyString start=+"""+ end=+"""+ contains=groovySpecialChar,groovySpecialError,@Spell,groovyELExpr syn region groovyString start=+"""+ end=+"""+ contains=groovySpecialChar,groovySpecialError,@Spell,groovyELExpr
syn region groovyString start=+'''+ end=+'''+ contains=groovySpecialChar,groovySpecialError,@Spell syn region groovyString start=+'''+ end=+'''+ contains=groovySpecialChar,groovySpecialError,@Spell
" regex string if exists("groovy_regex_strings")
syn region groovyString start='/[^/]' end='/' contains=groovySpecialChar,groovyRegexChar,groovyELExpr " regex strings interfere with the division operator and thus are disabled
" by default
syn region groovyString start='/[^/*]' end='/' contains=groovySpecialChar,groovyRegexChar,groovyELExpr
endif
" syn region groovyELExpr start=+${+ end=+}+ keepend contained " syn region groovyELExpr start=+${+ end=+}+ keepend contained
syn match groovyELExpr /\${.\{-}}/ contained syn match groovyELExpr /\${.\{-}}/ contained
syn match groovyELExpr /\$[a-zA-Z_][a-zA-Z0-9_.]*/ contained syn match groovyELExpr /\$[a-zA-Z_][a-zA-Z0-9_.]*/ contained

View File

@ -1,8 +1,8 @@
" Vim syntax file " Vim syntax file
" Language: Lisp " Language: Lisp
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> " Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: Jan 20, 2016 " Last Change: May 02, 2016
" Version: 24 " Version: 25
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_LISP " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_LISP
" "
" Thanks to F Xavier Noria for a list of 978 Common Lisp symbols taken from HyperSpec " Thanks to F Xavier Noria for a list of 978 Common Lisp symbols taken from HyperSpec
@ -16,7 +16,7 @@ endif
if exists("g:lisp_isk") if exists("g:lisp_isk")
exe "setl isk=".g:lisp_isk exe "setl isk=".g:lisp_isk
elseif !has("patch-7.4.1141") elseif !has("patch-7.4.1142")
setl isk=38,42,43,45,47-58,60-62,64-90,97-122,_ setl isk=38,42,43,45,47-58,60-62,64-90,97-122,_
else else
syn iskeyword 38,42,43,45,47-58,60-62,64-90,97-122,_ syn iskeyword 38,42,43,45,47-58,60-62,64-90,97-122,_

View File

@ -1,8 +1,8 @@
" Vim syntax file " Vim syntax file
" Language: Maple V (based on release 4) " Language: Maple V (based on release 4)
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> " Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: Jan 20, 2016 " Last Change: May 02, 2016
" Version: 12 " Version: 13
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_MAPLE " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_MAPLE
" "
" Package Function Selection: {{{1 " Package Function Selection: {{{1
@ -30,7 +30,7 @@ elseif exists("b:current_syntax")
endif endif
" Iskeyword Effects: {{{1 " Iskeyword Effects: {{{1
if !has("patch-7.4.1141") if !has("patch-7.4.1142")
setl isk=$,48-57,_,a-z,@-Z setl isk=$,48-57,_,a-z,@-Z
else else
syn iskeyword $,48-57,_,a-z,@-Z syn iskeyword $,48-57,_,a-z,@-Z

View File

@ -1,6 +1,6 @@
" Vim syntax file " Vim syntax file
" Language: Scheme (R5RS + some R6RS extras) " Language: Scheme (R5RS + some R6RS extras)
" Last Change: 2012 May 13 " Last Change: 2016 May 23
" Maintainer: Sergey Khorev <sergey.khorev@gmail.com> " Maintainer: Sergey Khorev <sergey.khorev@gmail.com>
" Original author: Dirk van Deun <dirk@igwe.vub.ac.be> " Original author: Dirk van Deun <dirk@igwe.vub.ac.be>
@ -245,6 +245,18 @@ if exists("b:is_mzscheme") || exists("is_mzscheme")
syn region schemeUnquote matchgroup=Delimiter start="#,@\[" end="\]" contains=ALL syn region schemeUnquote matchgroup=Delimiter start="#,@\[" end="\]" contains=ALL
syn region schemeQuoted matchgroup=Delimiter start="#['`]" end=![ \t()\[\]";]!me=e-1 contains=ALL syn region schemeQuoted matchgroup=Delimiter start="#['`]" end=![ \t()\[\]";]!me=e-1 contains=ALL
syn region schemeQuoted matchgroup=Delimiter start="#['`](" matchgroup=Delimiter end=")" contains=ALL syn region schemeQuoted matchgroup=Delimiter start="#['`](" matchgroup=Delimiter end=")" contains=ALL
" Identifiers are very liberal in MzScheme/Racket
syn match schemeOther ![^()[\]{}",'`;#|\\ ]\+!
" Language setting
syn match schemeLang "#lang [-+_/A-Za-z0-9]\+\>"
" Various number forms
syn match schemeNumber "[-+]\=[0-9]\+\(\.[0-9]*\)\=\(e[-+]\=[0-9]\+\)\=\>"
syn match schemeNumber "[-+]\=\.[0-9]\+\(e[-+]\=[0-9]\+\)\=\>"
syn match schemeNumber "[-+]\=[0-9]\+/[0-9]\+\>"
syn match schemeNumber "\([-+]\=\([0-9]\+\(\.[0-9]*\)\=\(e[-+]\=[0-9]\+\)\=\|\.[0-9]\+\(e[-+]\=[0-9]\+\)\=\|[0-9]\+/[0-9]\+\)\)\=[-+]\([0-9]\+\(\.[0-9]*\)\=\(e[-+]\=[0-9]\+\)\=\|\.[0-9]\+\(e[-+]\=[0-9]\+\)\=\|[0-9]\+/[0-9]\+\)\=i\>"
endif endif
@ -321,6 +333,9 @@ if version >= 508 || !exists("did_scheme_syntax_inits")
HiLink schemeExtSyntax Type HiLink schemeExtSyntax Type
HiLink schemeExtFunc PreProc HiLink schemeExtFunc PreProc
HiLink schemeLang PreProc
delcommand HiLink delcommand HiLink
endif endif

View File

@ -2,8 +2,8 @@
" Language: shell (sh) Korn shell (ksh) bash (sh) " Language: shell (sh) Korn shell (ksh) bash (sh)
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> " Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Previous Maintainer: Lennart Schultz <Lennart.Schultz@ecmwf.int> " Previous Maintainer: Lennart Schultz <Lennart.Schultz@ecmwf.int>
" Last Change: Apr 11, 2016 " Last Change: May 02, 2016
" Version: 147 " Version: 151
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_SH " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_SH
" For options and settings, please use: :help ft-sh-syntax " For options and settings, please use: :help ft-sh-syntax
" This file includes many ideas from Eric Brunet (eric.brunet@ens.fr) " This file includes many ideas from Eric Brunet (eric.brunet@ens.fr)
@ -18,19 +18,25 @@ endif
" trying to answer the question: which shell is /bin/sh, really? " trying to answer the question: which shell is /bin/sh, really?
" If the user has not specified any of g:is_kornshell, g:is_bash, g:is_posix, g:is_sh, then guess. " If the user has not specified any of g:is_kornshell, g:is_bash, g:is_posix, g:is_sh, then guess.
if !exists("g:is_kornshell") && !exists("g:is_bash") && !exists("g:is_posix") && !exists("g:is_sh") if getline(1) =~ '\<ksh$'
let b:is_kornshell = 1
elseif getline(1) =~ '\<bash$'
let b:is_bash = 1
elseif getline(1) =~ '\<dash$'
let b:is_posix = 1
elseif !exists("g:is_kornshell") && !exists("g:is_bash") && !exists("g:is_posix") && !exists("g:is_sh")
let s:shell = "" let s:shell = ""
if executable("/bin/sh") if executable("/bin/sh")
let s:shell = resolve("/bin/sh") let s:shell = resolve("/bin/sh")
elseif executable("/usr/bin/sh") elseif executable("/usr/bin/sh")
let s:shell = resolve("/usr/bin/sh") let s:shell = resolve("/usr/bin/sh")
endif endif
if s:shell =~ 'bash$' if s:shell =~ 'ksh$'
let g:is_bash= 1 let b:is_kornshell= 1
elseif s:shell =~ 'ksh$' elseif s:shell =~ 'bash$'
let g:is_kornshell = 1 let b:is_bash = 1
elseif s:shell =~ 'dash$' elseif s:shell =~ 'dash$'
let g:is_posix = 1 let b:is_posix = 1
endif endif
unlet s:shell unlet s:shell
endif endif
@ -86,8 +92,12 @@ if g:sh_fold_enabled && &fdm == "manual"
endif endif
" set up the syntax-highlighting iskeyword " set up the syntax-highlighting iskeyword
if has("patch-7.4.1141") if has("patch-7.4.1142")
if exists("b:is_bash")
exe "syn iskeyword ".&iskeyword.",-,:"
else
exe "syn iskeyword ".&iskeyword.",-" exe "syn iskeyword ".&iskeyword.",-"
endif
endif endif
" Set up folding commands for shell {{{1 " Set up folding commands for shell {{{1
@ -140,6 +150,7 @@ syn cluster shHereListDQ contains=shBeginHere,@shDblQuoteList,shHerePayload
syn cluster shIdList contains=shCommandSub,shWrapLineOperator,shSetOption,shDeref,shDerefSimple,shRedir,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shExpr,shCtrlSeq,shStringSpecial,shAtExpr syn cluster shIdList contains=shCommandSub,shWrapLineOperator,shSetOption,shDeref,shDerefSimple,shRedir,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shExpr,shCtrlSeq,shStringSpecial,shAtExpr
syn cluster shIfList contains=@shLoopList,shDblBrace,shDblParen,shFunctionKey,shFunctionOne,shFunctionTwo syn cluster shIfList contains=@shLoopList,shDblBrace,shDblParen,shFunctionKey,shFunctionOne,shFunctionTwo
syn cluster shLoopList contains=@shCaseList,@shErrorList,shCaseEsac,shConditional,shDblBrace,shExpr,shFor,shForPP,shIf,shOption,shSet,shTest,shTestOpr,shTouch syn cluster shLoopList contains=@shCaseList,@shErrorList,shCaseEsac,shConditional,shDblBrace,shExpr,shFor,shForPP,shIf,shOption,shSet,shTest,shTestOpr,shTouch
syn cluster shPPSRightList contains=shComment,shDeref,shDerefSimple,shEscape,shPosnParm
syn cluster shSubShList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shIf,shRedir,shSetList,shSource,shStatement,shVariable,shCtrlSeq,shOperator syn cluster shSubShList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shIf,shRedir,shSetList,shSource,shStatement,shVariable,shCtrlSeq,shOperator
syn cluster shTestList contains=shCharClass,shCommandSub,shCtrlSeq,shDeref,shDerefSimple,shDoubleQuote,shExDoubleQuote,shExpr,shExSingleQuote,shNumber,shOperator,shSingleQuote,shTest,shTestOpr syn cluster shTestList contains=shCharClass,shCommandSub,shCtrlSeq,shDeref,shDerefSimple,shDoubleQuote,shExDoubleQuote,shExpr,shExSingleQuote,shNumber,shOperator,shSingleQuote,shTest,shTestOpr
@ -213,14 +224,15 @@ syn region shSubSh transparent matchgroup=shSubShRegion start="[^(]\zs(" end=")"
syn region shExpr matchgroup=shRange start="\[" skip=+\\\\\|\\$\|\[+ end="\]" contains=@shTestList,shSpecial syn region shExpr matchgroup=shRange start="\[" skip=+\\\\\|\\$\|\[+ end="\]" contains=@shTestList,shSpecial
syn region shTest transparent matchgroup=shStatement start="\<test\s" skip=+\\\\\|\\$+ matchgroup=NONE end="[;&|]"me=e-1 end="$" contains=@shExprList1 syn region shTest transparent matchgroup=shStatement start="\<test\s" skip=+\\\\\|\\$+ matchgroup=NONE end="[;&|]"me=e-1 end="$" contains=@shExprList1
syn region shNoQuote start='\S' skip='\%(\\\\\)*\\.' end='\ze\s' contained syn region shNoQuote start='\S' skip='\%(\\\\\)*\\.' end='\ze\s' contained
syn match shAstQuote contained '\*\ze"' nextgroup=shString
syn match shTestOpr contained '[^-+/%]\zs=' skipwhite nextgroup=shTestDoubleQuote,shTestSingleQuote,shTestPattern syn match shTestOpr contained '[^-+/%]\zs=' skipwhite nextgroup=shTestDoubleQuote,shTestSingleQuote,shTestPattern
syn match shTestOpr contained "<=\|>=\|!=\|==\|=\~\|-.\>\|-\(nt\|ot\|ef\|eq\|ne\|lt\|le\|gt\|ge\)\>\|[!<>]" syn match shTestOpr contained "<=\|>=\|!=\|==\|=\~\|-.\>\|-\(nt\|ot\|ef\|eq\|ne\|lt\|le\|gt\|ge\)\>\|[!<>]"
syn match shTestPattern contained '\w\+' syn match shTestPattern contained '\w\+'
syn region shTestDoubleQuote contained start='\%(\%(\\\\\)*\\\)\@<!"' skip=+\\\\\|\\"+ end='"' syn region shTestDoubleQuote contained start='\%(\%(\\\\\)*\\\)\@<!"' skip=+\\\\\|\\"+ end='"' contains=shDeref,shDerefSimple,shDerefSpecial
syn match shTestSingleQuote contained '\\.' syn match shTestSingleQuote contained '\\.'
syn match shTestSingleQuote contained "'[^']*'" syn match shTestSingleQuote contained "'[^']*'"
if exists("b:is_kornshell") || exists("b:is_bash") if exists("b:is_kornshell") || exists("b:is_bash")
syn region shDblBrace matchgroup=Delimiter start="\[\[" skip=+\%(\\\\\)*\\$+ end="\]\]" contains=@shTestList,shNoQuote,shComment syn region shDblBrace matchgroup=Delimiter start="\[\[" skip=+\%(\\\\\)*\\$+ end="\]\]" contains=@shTestList,shAstQuote,shNoQuote,shComment
syn region shDblParen matchgroup=Delimiter start="((" skip=+\%(\\\\\)*\\$+ end="))" contains=@shTestList,shComment syn region shDblParen matchgroup=Delimiter start="((" skip=+\%(\\\\\)*\\$+ end="))" contains=@shTestList,shComment
endif endif
@ -313,7 +325,9 @@ syn match shSource "^\.\s"
syn match shSource "\s\.\s" syn match shSource "\s\.\s"
"syn region shColon start="^\s*:" end="$" end="\s#"me=e-2 contains=@shColonList "syn region shColon start="^\s*:" end="$" end="\s#"me=e-2 contains=@shColonList
"syn region shColon start="^\s*\zs:" end="$" end="\s#"me=e-2 "syn region shColon start="^\s*\zs:" end="$" end="\s#"me=e-2
syn match shColon '^\s*\zs:' if exists("b:is_kornshell")
syn match shColon '^\s*\zs:'
endif
" String And Character Constants: {{{1 " String And Character Constants: {{{1
"================================ "================================
@ -404,21 +418,21 @@ if !exists("g:is_posix")
endif endif
if exists("b:is_bash") if exists("b:is_bash")
ShFoldFunctions syn region shFunctionOne matchgroup=shFunction start="^\s*\h[-a-zA-Z_0-9]*\s*()\_s*{" end="}" contains=@shFunctionList skipwhite skipnl nextgroup=shFunctionStart,shQuickComment ShFoldFunctions syn region shFunctionOne matchgroup=shFunction start="^\s*[A-Za-z_0-9:][-a-zA-Z_0-9:]*\s*()\_s*{" end="}" contains=@shFunctionList skipwhite skipnl nextgroup=shFunctionStart,shQuickComment
ShFoldFunctions syn region shFunctionTwo matchgroup=shFunction start="\<[^d][^o]\&\h[-a-zA-Z_0-9]*\s*\%(()\)\=\_s*{" end="}" contains=shFunctionKey,@shFunctionList contained skipwhite skipnl nextgroup=shFunctionStart,shQuickComment ShFoldFunctions syn region shFunctionTwo matchgroup=shFunction start="\%(do\)\@!\&\<[A-Za-z_0-9:][-a-zA-Z_0-9:]*\>\s*\%(()\)\=\_s*{" end="}" contains=shFunctionKey,@shFunctionList contained skipwhite skipnl nextgroup=shFunctionStart,shQuickComment
ShFoldFunctions syn region shFunctionThree matchgroup=shFunction start="^\s*\h[-a-zA-Z_0-9]*\s*()\_s*(" end=")" contains=@shFunctionList skipwhite skipnl nextgroup=shFunctionStart,shQuickComment ShFoldFunctions syn region shFunctionThree matchgroup=shFunction start="^\s*[A-Za-z_0-9:][-a-zA-Z_0-9:]*\s*()\_s*(" end=")" contains=@shFunctionList skipwhite skipnl nextgroup=shFunctionStart,shQuickComment
ShFoldFunctions syn region shFunctionFour matchgroup=shFunction start="\<[^d][^o]\&\h[-a-zA-Z_0-9]*\s*\%(()\)\=\_s*)" end=")" contains=shFunctionKey,@shFunctionList contained skipwhite skipnl nextgroup=shFunctionStart,shQuickComment ShFoldFunctions syn region shFunctionFour matchgroup=shFunction start="\%(do\)\@!\&\<[A-Za-z_0-9:][-a-zA-Z_0-9:]*\>\s*\%(()\)\=\_s*)" end=")" contains=shFunctionKey,@shFunctionList contained skipwhite skipnl nextgroup=shFunctionStart,shQuickComment
else else
ShFoldFunctions syn region shFunctionOne matchgroup=shFunction start="^\s*\h\w*\s*()\_s*{" end="}" contains=@shFunctionList skipwhite skipnl nextgroup=shFunctionStart,shQuickComment ShFoldFunctions syn region shFunctionOne matchgroup=shFunction start="^\s*\h\w*\s*()\_s*{" end="}" contains=@shFunctionList skipwhite skipnl nextgroup=shFunctionStart,shQuickComment
ShFoldFunctions syn region shFunctionTwo matchgroup=shFunction start="\<[^d][^o]\&\h\w*\s*\%(()\)\=\_s*{" end="}" contains=shFunctionKey,@shFunctionList contained skipwhite skipnl nextgroup=shFunctionStart,shQuickComment ShFoldFunctions syn region shFunctionTwo matchgroup=shFunction start="\%(do\)\@!\&\<\h\w*\>\s*\%(()\)\=\_s*{" end="}" contains=shFunctionKey,@shFunctionList contained skipwhite skipnl nextgroup=shFunctionStart,shQuickComment
ShFoldFunctions syn region shFunctionThree matchgroup=shFunction start="^\s*\h\w*\s*()\_s*(" end=")" contains=@shFunctionList skipwhite skipnl nextgroup=shFunctionStart,shQuickComment ShFoldFunctions syn region shFunctionThree matchgroup=shFunction start="^\s*\h\w*\s*()\_s*(" end=")" contains=@shFunctionList skipwhite skipnl nextgroup=shFunctionStart,shQuickComment
ShFoldFunctions syn region shFunctionFour matchgroup=shFunction start="\<[^d][^o]\&\h\w*\s*\%(()\)\=\_s*(" end=")" contains=shFunctionKey,@shFunctionList contained skipwhite skipnl nextgroup=shFunctionStart,shQuickComment ShFoldFunctions syn region shFunctionFour matchgroup=shFunction start="\%(do\)\@!\&\<\h\w*\>\s*\%(()\)\=\_s*(" end=")" contains=shFunctionKey,@shFunctionList contained skipwhite skipnl nextgroup=shFunctionStart,shQuickComment
endif endif
" Parameter Dereferencing: {{{1 " Parameter Dereferencing: {{{1
" ======================== " ========================
if !exists("g:sh_no_error") if !exists("g:sh_no_error")
syn match shDerefWordError "[^}$[]" contained syn match shDerefWordError "[^}$[~]" contained
endif endif
syn match shDerefSimple "\$\%(\k\+\|\d\)" syn match shDerefSimple "\$\%(\k\+\|\d\)"
syn region shDeref matchgroup=PreProc start="\${" end="}" contains=@shDerefList,shDerefVarArray syn region shDeref matchgroup=PreProc start="\${" end="}" contains=@shDerefList,shDerefVarArray
@ -498,7 +512,7 @@ if exists("b:is_bash")
" bash : ${parameter//pattern} " bash : ${parameter//pattern}
syn match shDerefPPS contained '/\{1,2}' nextgroup=shDerefPPSleft syn match shDerefPPS contained '/\{1,2}' nextgroup=shDerefPPSleft
syn region shDerefPPSleft contained start='.' skip=@\%(\\\\\)*\\/@ matchgroup=shDerefOp end='/' end='\ze}' nextgroup=shDerefPPSright contains=@shCommandSubList syn region shDerefPPSleft contained start='.' skip=@\%(\\\\\)*\\/@ matchgroup=shDerefOp end='/' end='\ze}' nextgroup=shDerefPPSright contains=@shCommandSubList
syn region shDerefPPSright contained start='.' skip=@\%(\\\\\)\+@ end='\ze}' contains=@shCommandSubList syn region shDerefPPSright contained start='.' skip=@\%(\\\\\)\+@ end='\ze}' contains=@shPPSRightList
" bash : ${parameter/#substring/replacement} " bash : ${parameter/#substring/replacement}
syn match shDerefPSR contained '/#' nextgroup=shDerefPSRleft syn match shDerefPSR contained '/#' nextgroup=shDerefPSRleft
@ -567,6 +581,7 @@ syn sync match shWhileSync grouphere shRepeat "\<while\>"
" Default Highlighting: {{{1 " Default Highlighting: {{{1
" ===================== " =====================
hi def link shArithRegion shShellVariables hi def link shArithRegion shShellVariables
hi def link shAstQuote shDoubleQuote
hi def link shAtExpr shSetList hi def link shAtExpr shSetList
hi def link shBeginHere shRedir hi def link shBeginHere shRedir
hi def link shCaseBar shConditional hi def link shCaseBar shConditional
@ -597,7 +612,6 @@ hi def link shEmbeddedEcho shString
hi def link shEscape shCommandSub hi def link shEscape shCommandSub
hi def link shExDoubleQuote shDoubleQuote hi def link shExDoubleQuote shDoubleQuote
hi def link shExSingleQuote shSingleQuote hi def link shExSingleQuote shSingleQuote
hi def link shFunction Function
hi def link shHereDoc shString hi def link shHereDoc shString
hi def link shHerePayload shHereDoc hi def link shHerePayload shHereDoc
hi def link shLoop shStatement hi def link shLoop shStatement
@ -628,21 +642,17 @@ if exists("b:is_bash")
hi def link bashAdminStatement shStatement hi def link bashAdminStatement shStatement
hi def link bashSpecialVariables shShellVariables hi def link bashSpecialVariables shShellVariables
hi def link bashStatement shStatement hi def link bashStatement shStatement
hi def link shFunctionParen Delimiter
hi def link shFunctionDelim Delimiter
hi def link shCharClass shSpecial hi def link shCharClass shSpecial
endif endif
if exists("b:is_kornshell") if exists("b:is_kornshell")
hi def link kshSpecialVariables shShellVariables hi def link kshSpecialVariables shShellVariables
hi def link kshStatement shStatement hi def link kshStatement shStatement
hi def link shFunctionParen Delimiter
endif endif
if !exists("g:sh_no_error") if !exists("g:sh_no_error")
hi def link shCaseError Error hi def link shCaseError Error
hi def link shCondError Error hi def link shCondError Error
hi def link shCurlyError Error hi def link shCurlyError Error
hi def link shDerefError Error
hi def link shDerefOpError Error hi def link shDerefOpError Error
hi def link shDerefWordError Error hi def link shDerefWordError Error
hi def link shDoError Error hi def link shDoError Error

View File

@ -1,8 +1,8 @@
" Vim syntax file " Vim syntax file
" Language: TeX " Language: TeX
" Maintainer: Charles E. Campbell <NdrchipO@ScampbellPfamily.AbizM> " Maintainer: Charles E. Campbell <NdrchipO@ScampbellPfamily.AbizM>
" Last Change: Apr 11, 2016 " Last Change: May 02, 2016
" Version: 94 " Version: 95
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_TEX " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_TEX
" "
" Notes: {{{1 " Notes: {{{1
@ -133,7 +133,7 @@ endif
" g:tex_isk " g:tex_isk
if exists("g:tex_isk") if exists("g:tex_isk")
exe "setlocal isk=".g:tex_isk exe "setlocal isk=".g:tex_isk
elseif !has("patch-7.4.1141") elseif !has("patch-7.4.1142")
setl isk=48-57,a-z,A-Z,192-255 setl isk=48-57,a-z,A-Z,192-255
else else
syn iskeyword 48-57,a-z,A-Z,192-255 syn iskeyword 48-57,a-z,A-Z,192-255

View File

@ -1,145 +1,135 @@
" Vim syntax file " Vim syntax file
" Language: HMTL Tidy configuration file (/etc/tidyrc ~/.tidyrc) " Language: HMTL Tidy configuration file (/etc/tidyrc ~/.tidyrc)
" Maintainer: Doug Kearns <dougkearns@gmail.com> " Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2013 June 01 " Last Change: 2016 Apr 24
if exists("b:current_syntax") if exists("b:current_syntax")
finish finish
endif endif
setlocal iskeyword=@,48-57,- let s:cpo_save = &cpo
set cpo&vim
syn iskeyword @,48-57,-,_
syn case ignore
syn keyword tidyBoolean contained t[rue] f[alse] y[es] n[o] 1 0
syn keyword tidyAutoBoolean contained t[rue] f[alse] y[es] n[o] 1 0 auto
syn case match
syn keyword tidyDoctype contained html5 omit auto strict loose transitional user
syn keyword tidyEncoding contained raw ascii latin0 latin1 utf8 iso2022 mac win1252 ibm858 utf16le utf16be utf16 big5 shiftjis
syn keyword tidyNewline contained LF CRLF CR
syn match tidyNumber contained "\<\d\+\>"
syn keyword tidyRepeat contained keep-first keep-last
syn keyword tidySorter contained alpha none
syn region tidyString contained start=+"+ skip=+\\\\\|\\"+ end=+"+ oneline
syn region tidyString contained start=+'+ skip=+\\\\\|\\'+ end=+'+ oneline
syn match tidyTags contained "\<\w\+\(\s*,\s*\w\+\)*\>"
syn keyword tidyBooleanOption add-xml-decl add-xml-pi add-xml-space
\ anchor-as-name ascii-chars assume-xml-procins bare break-before-br
\ clean coerce-endtags decorate-inferred-ul drop-empty-paras
\ drop-empty-elements drop-font-tags drop-proprietary-attributes
\ enclose-block-text enclose-text escape-cdata escape-scripts
\ fix-backslash fix-bad-comments fix-uri force-output gdoc gnu-emacs
\ hide-comments hide-endtags indent-attributes indent-cdata
\ indent-with-tabs input-xml join-classes join-styles keep-time
\ language literal-attributes logical-emphasis lower-literals markup
\ merge-emphasis ncr numeric-entities omit-optional-tags output-html
\ output-xhtml output-xml preserve-entities punctuation-wrap quiet
\ quote-ampersand quote-marks quote-nbsp raw replace-color show-info
\ show-warnings skip-nested split strict-tags-attributes tidy-mark
\ uppercase-attributes uppercase-tags word-2000 wrap-asp
\ wrap-attributes wrap-jste wrap-php wrap-script-literals
\ wrap-sections write-back
\ contained nextgroup=tidyBooleanDelimiter
syn match tidyBooleanDelimiter ":" nextgroup=tidyBoolean contained skipwhite
syn keyword tidyAutoBooleanOption indent merge-divs merge-spans output-bom show-body-only vertical-space contained nextgroup=tidyAutoBooleanDelimiter
syn match tidyAutoBooleanDelimiter ":" nextgroup=tidyAutoBoolean contained skipwhite
syn keyword tidyCSSSelectorOption css-prefix contained nextgroup=tidyCSSSelectorDelimiter
syn match tidyCSSSelectorDelimiter ":" nextgroup=tidyCSSSelector contained skipwhite
syn keyword tidyDoctypeOption doctype contained nextgroup=tidyDoctypeDelimiter
syn match tidyDoctypeDelimiter ":" nextgroup=tidyDoctype contained skipwhite
syn keyword tidyEncodingOption char-encoding input-encoding output-encoding contained nextgroup=tidyEncodingDelimiter
syn match tidyEncodingDelimiter ":" nextgroup=tidyEncoding contained skipwhite
syn keyword tidyIntegerOption accessibility-check doctype-mode indent-spaces show-errors tab-size wrap contained nextgroup=tidyIntegerDelimiter
syn match tidyIntegerDelimiter ":" nextgroup=tidyNumber contained skipwhite
syn keyword tidyNameOption slide-style contained nextgroup=tidyNameDelimiter
syn match tidyNameDelimiter ":" nextgroup=tidyName contained skipwhite
syn keyword tidyNewlineOption newline contained nextgroup=tidyNewlineDelimiter
syn match tidyNewlineDelimiter ":" nextgroup=tidyNewline contained skipwhite
syn keyword tidyTagsOption new-blocklevel-tags new-empty-tags new-inline-tags new-pre-tags contained nextgroup=tidyTagsDelimiter
syn match tidyTagsDelimiter ":" nextgroup=tidyTags contained skipwhite
syn keyword tidyRepeatOption repeated-attributes contained nextgroup=tidyRepeatDelimiter
syn match tidyRepeatDelimiter ":" nextgroup=tidyRepeat contained skipwhite
syn keyword tidySorterOption sort-attributes contained nextgroup=tidySorterDelimiter
syn match tidySorterDelimiter ":" nextgroup=tidySorter contained skipwhite
syn keyword tidyStringOption alt-text error-file gnu-emacs-file output-file contained nextgroup=tidyStringDelimiter
syn match tidyStringDelimiter ":" nextgroup=tidyString contained skipwhite
syn cluster tidyOptions contains=tidy.*Option
syn match tidyStart "^" nextgroup=@tidyOptions
syn match tidyComment "^\s*//.*$" contains=tidyTodo syn match tidyComment "^\s*//.*$" contains=tidyTodo
syn match tidyComment "^\s*#.*$" contains=tidyTodo syn match tidyComment "^\s*#.*$" contains=tidyTodo
syn keyword tidyTodo TODO NOTE FIXME XXX contained syn keyword tidyTodo TODO NOTE FIXME XXX contained
syn match tidyAssignment "^[a-z0-9-]\+:\s*.*$" contains=tidyOption,@tidyValue,tidyDelimiter hi def link tidyAutoBooleanOption Identifier
syn match tidyDelimiter ":" contained hi def link tidyBooleanOption Identifier
hi def link tidyCSSSelectorOption Identifier
hi def link tidyDoctypeOption Identifier
hi def link tidyEncodingOption Identifier
hi def link tidyIntegerOption Identifier
hi def link tidyNameOption Identifier
hi def link tidyNewlineOption Identifier
hi def link tidyTagsOption Identifier
hi def link tidyRepeatOption Identifier
hi def link tidySorterOption Identifier
hi def link tidyStringOption Identifier
syn match tidyNewTagAssignment "^new-\l\+-tags:\s*.*$" contains=tidyNewTagOption,tidyNewTagDelimiter,tidyNewTagValue,tidyDelimiter hi def link tidyAutoBooleanDelimiter Special
syn match tidyNewTagDelimiter "," contained hi def link tidyBooleanDelimiter Special
syn match tidyNewTagValue "\<\w\+\>" contained hi def link tidyCSSSelectorDelimiter Special
hi def link tidyDoctypeDelimiter Special
syn case ignore hi def link tidyEncodingDelimiter Special
syn keyword tidyBoolean t[rue] f[alse] y[es] n[o] contained hi def link tidyIntegerDelimiter Special
syn case match hi def link tidyNameDelimiter Special
syn match tidyDoctype "\<\%(omit\|auto\|strict\|loose\|transitional\|user\)\>" contained hi def link tidyNewlineDelimiter Special
" NOTE: use match rather than keyword here so that tidyEncoding 'raw' does not hi def link tidyTagsDelimiter Special
" always have precedence over tidyOption 'raw' hi def link tidyRepeatDelimiter Special
syn match tidyEncoding "\<\%(ascii\|latin0\|latin1\|raw\|utf8\|iso2022\|mac\|utf16le\|utf16be\|utf16\|win1252\|ibm858\|big5\|shiftjis\)\>" contained hi def link tidySorterDelimiter Special
syn match tidyNewline "\<\%(LF\|CRLF\|CR\)\>" hi def link tidyStringDelimiter Special
syn match tidyNumber "\<\d\+\>" contained
syn match tidyRepeat "\<\%(keep-first\|keep-last\)\>" contained
syn region tidyString start=+"+ skip=+\\\\\|\\"+ end=+"+ contained oneline
syn region tidyString start=+'+ skip=+\\\\\|\\'+ end=+'+ contained oneline
syn cluster tidyValue contains=tidyBoolean,tidyDoctype,tidyEncoding,tidyNewline,tidyNumber,tidyRepeat,tidyString
syn match tidyOption "^accessibility-check" contained
syn match tidyOption "^add-xml-decl" contained
syn match tidyOption "^add-xml-pi" contained
syn match tidyOption "^add-xml-space" contained
syn match tidyOption "^alt-text" contained
syn match tidyOption "^anchor-as-name" contained
syn match tidyOption "^ascii-chars" contained
syn match tidyOption "^assume-xml-procins" contained
syn match tidyOption "^bare" contained
syn match tidyOption "^break-before-br" contained
syn match tidyOption "^char-encoding" contained
syn match tidyOption "^clean" contained
syn match tidyOption "^css-prefix" contained
syn match tidyOption "^decorate-inferred-ul" contained
syn match tidyOption "^doctype" contained
syn match tidyOption "^doctype-mode" contained
syn match tidyOption "^drop-empty-paras" contained
syn match tidyOption "^drop-font-tags" contained
syn match tidyOption "^drop-proprietary-attributes" contained
syn match tidyOption "^enclose-block-text" contained
syn match tidyOption "^enclose-text" contained
syn match tidyOption "^error-file" contained
syn match tidyOption "^escape-cdata" contained
syn match tidyOption "^fix-backslash" contained
syn match tidyOption "^fix-bad-comments" contained
syn match tidyOption "^fix-uri" contained
syn match tidyOption "^force-output" contained
syn match tidyOption "^gnu-emacs" contained
syn match tidyOption "^gnu-emacs-file" contained
syn match tidyOption "^hide-comments" contained
syn match tidyOption "^hide-endtags" contained
syn match tidyOption "^indent" contained
syn match tidyOption "^indent-attributes" contained
syn match tidyOption "^indent-cdata" contained
syn match tidyOption "^indent-spaces" contained
syn match tidyOption "^input-encoding" contained
syn match tidyOption "^input-xml" contained
syn match tidyOption "^join-classes" contained
syn match tidyOption "^join-styles" contained
syn match tidyOption "^keep-time" contained
syn match tidyOption "^language" contained
syn match tidyOption "^literal-attributes" contained
syn match tidyOption "^logical-emphasis" contained
syn match tidyOption "^lower-literals" contained
syn match tidyOption "^markup" contained
syn match tidyOption "^merge-divs" contained
syn match tidyOption "^merge-spans" contained
syn match tidyOption "^ncr" contained
syn match tidyOption "^newline" contained
syn match tidyOption "^numeric-entities" contained
syn match tidyOption "^output-bom" contained
syn match tidyOption "^output-encoding" contained
syn match tidyOption "^output-file" contained
syn match tidyOption "^output-html" contained
syn match tidyOption "^output-xhtml" contained
syn match tidyOption "^output-xml" contained
syn match tidyOption "^preserve-entities" contained
syn match tidyOption "^punctuation-wrap" contained
syn match tidyOption "^quiet" contained
syn match tidyOption "^quote-ampersand" contained
syn match tidyOption "^quote-marks" contained
syn match tidyOption "^quote-nbsp" contained
syn match tidyOption "^raw" contained
syn match tidyOption "^repeated-attributes" contained
syn match tidyOption "^replace-color" contained
syn match tidyOption "^show-body-only" contained
syn match tidyOption "^show-errors" contained
syn match tidyOption "^show-warnings" contained
syn match tidyOption "^slide-style" contained
syn match tidyOption "^sort-attributes" contained
syn match tidyOption "^split" contained
syn match tidyOption "^tab-size" contained
syn match tidyOption "^tidy-mark" contained
syn match tidyOption "^uppercase-attributes" contained
syn match tidyOption "^uppercase-tags" contained
syn match tidyOption "^word-2000" contained
syn match tidyOption "^wrap" contained
syn match tidyOption "^wrap-asp" contained
syn match tidyOption "^wrap-attributes" contained
syn match tidyOption "^wrap-jste" contained
syn match tidyOption "^wrap-php" contained
syn match tidyOption "^wrap-script-literals" contained
syn match tidyOption "^wrap-sections" contained
syn match tidyOption "^write-back" contained
syn match tidyOption "^vertical-space" contained
syn match tidyNewTagOption "^new-blocklevel-tags" contained
syn match tidyNewTagOption "^new-empty-tags" contained
syn match tidyNewTagOption "^new-inline-tags" contained
syn match tidyNewTagOption "^new-pre-tags" contained
hi def link tidyAutoBoolean Boolean
hi def link tidyBoolean Boolean hi def link tidyBoolean Boolean
hi def link tidyComment Comment
hi def link tidyDelimiter Special
hi def link tidyDoctype Constant hi def link tidyDoctype Constant
hi def link tidyEncoding Constant hi def link tidyEncoding Constant
hi def link tidyNewline Constant hi def link tidyNewline Constant
hi def link tidyNewTagDelimiter Special hi def link tidyTags Constant
hi def link tidyNewTagOption Identifier
hi def link tidyNewTagValue Constant
hi def link tidyNumber Number hi def link tidyNumber Number
hi def link tidyOption Identifier
hi def link tidyRepeat Constant hi def link tidyRepeat Constant
hi def link tidySorter Constant
hi def link tidyString String hi def link tidyString String
hi def link tidyComment Comment
hi def link tidyTodo Todo hi def link tidyTodo Todo
let b:current_syntax = "tidy" let b:current_syntax = "tidy"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8 " vim: ts=8

View File

@ -39,8 +39,8 @@ syn keyword vimOnlyOption contained nobiosk nobioskey noconsk noconskey nocp noc
" Invertible setting variants " Invertible setting variants
syn keyword vimOnlyOption contained invbiosk invbioskey invconsk invconskey invcp invcompatible invguipty invmacatsui invsn invshortname invta invtextauto invtx invtextmode invtf invttyfast invtbi invttybuiltin invwiv invweirdinvert syn keyword vimOnlyOption contained invbiosk invbioskey invconsk invconskey invcp invcompatible invguipty invmacatsui invsn invshortname invta invtextauto invtx invtextmode invtf invttyfast invtbi invttybuiltin invwiv invweirdinvert
" termcap codes (which can also be set) {{{2 " termcap codes (which can also be set) {{{2
syn keyword vimTermOption contained t_AB t_al t_bc t_ce t_cl t_Co t_Cs t_CS t_CV t_da t_db t_dl t_DL t_EI t_F1 t_F2 t_F3 t_F4 t_F5 t_F6 t_F7 t_F8 t_F9 t_fs t_IE t_IS t_k1 t_K1 t_k2 t_k3 t_K3 t_k4 t_K4 t_k5 t_K5 t_k6 t_K6 t_k7 t_K7 t_k8 t_K8 t_k9 t_K9 t_KA t_kb t_kB t_KB t_KC t_kd t_kD t_KD t_ke t_KE t_KF t_KG t_kh t_KH t_kI t_KI t_KJ t_KK t_kl t_KL t_kN t_kP t_kr t_ks t_ku t_le t_mb t_md t_me t_mr t_ms t_nd t_op t_RI t_RV t_Sb t_se t_Sf t_SI t_so t_sr t_te t_ti t_ts t_u7 t_ue t_us t_ut t_vb t_ve t_vi t_vs t_WP t_WS t_xs t_ZH t_ZR syn keyword vimTermOption contained t_8b t_AB t_al t_bc t_ce t_cl t_Co t_Cs t_CV t_db t_DL t_F1 t_F2 t_F3 t_F4 t_F5 t_F6 t_F7 t_F8 t_F9 t_fs t_IE t_IS t_k1 t_K1 t_k2 t_k3 t_K3 t_k4 t_K4 t_k5 t_K5 t_k6 t_K6 t_k7 t_K7 t_k8 t_K8 t_k9 t_K9 t_KA t_kb t_kB t_KB t_KC t_kd t_kD t_KD t_ke t_KE t_KF t_KG t_kh t_KH t_kI t_KI t_KJ t_KK t_kl t_KL t_kN t_kP t_kr t_ks t_ku t_le t_mb t_md t_me t_mr t_ms t_nd t_op t_RB t_RI t_RV t_Sb t_se t_Sf t_SI t_so t_sr t_SR t_te t_ti t_ts t_u7 t_ue t_us t_ut t_vb t_ve t_vi t_vs t_WP t_WS t_xn t_xs t_ZH t_ZR
syn keyword vimTermOption contained t_AF t_AL t_cd t_Ce t_cm t_cs syn keyword vimTermOption contained t_8f t_AF t_AL t_cd t_Ce t_cm t_cs t_CS t_da t_dl t_EI
syn match vimTermOption contained "t_%1" syn match vimTermOption contained "t_%1"
syn match vimTermOption contained "t_#2" syn match vimTermOption contained "t_#2"
syn match vimTermOption contained "t_#4" syn match vimTermOption contained "t_#4"
@ -285,10 +285,11 @@ syn match vimStringCont contained +\(\\\\\|.\)\{-}[^\\]"+
syn cluster vimSubstList contains=vimPatSep,vimPatRegion,vimPatSepErr,vimSubstTwoBS,vimSubstRange,vimNotation syn cluster vimSubstList contains=vimPatSep,vimPatRegion,vimPatSepErr,vimSubstTwoBS,vimSubstRange,vimNotation
syn cluster vimSubstRepList contains=vimSubstSubstr,vimSubstTwoBS,vimNotation syn cluster vimSubstRepList contains=vimSubstSubstr,vimSubstTwoBS,vimNotation
syn cluster vimSubstList add=vimCollection syn cluster vimSubstList add=vimCollection
syn match vimSubst "\(:\+\s*\|^\s*\||\s*\)\<\%(s\%[ubstitute]\|sm\%[agic]\|sno\%[magic]\)[:[:alpha:]]\@!" nextgroup=vimSubstPat syn match vimSubst "\(:\+\s*\|^\s*\||\s*\)\<\%(\<s\%[ubstitute]\>\|\<sm\%[agic]\>\|\<sno\%[magic]\>\)[:#[:alpha:]]\@!" nextgroup=vimSubstPat
syn match vimSubst "\%(^\|[^\\]\)s\%[ubstitute][:#[:alpha:]]\@!" nextgroup=vimSubstPat contained syn match vimSubst "\%(^\|[^\\]\)\<s\%[ubstitute]\>[:#[:alpha:]]\@!" nextgroup=vimSubstPat contained
syn match vimSubst "/\zss\%[ubstitute]\ze/" nextgroup=vimSubstPat syn match vimSubst "/\zs\<s\%[ubstitute]\>\ze/" nextgroup=vimSubstPat
syn match vimSubst1 contained "s\%[ubstitute]\>" nextgroup=vimSubstPat syn match vimSubst "\(:\+\s*\|^\s*\)s\ze#.\{-}#.\{-}#" nextgroup=vimSubstPat
syn match vimSubst1 contained "\<s\%[ubstitute]\>" nextgroup=vimSubstPat
syn region vimSubstPat contained matchgroup=vimSubstDelim start="\z([^a-zA-Z( \t[\]&]\)"rs=s+1 skip="\\\\\|\\\z1" end="\z1"re=e-1,me=e-1 contains=@vimSubstList nextgroup=vimSubstRep4 oneline syn region vimSubstPat contained matchgroup=vimSubstDelim start="\z([^a-zA-Z( \t[\]&]\)"rs=s+1 skip="\\\\\|\\\z1" end="\z1"re=e-1,me=e-1 contains=@vimSubstList nextgroup=vimSubstRep4 oneline
syn region vimSubstRep4 contained matchgroup=vimSubstDelim start="\z(.\)" skip="\\\\\|\\\z1" end="\z1" matchgroup=vimNotation end="<[cC][rR]>" contains=@vimSubstRepList nextgroup=vimSubstFlagErr oneline syn region vimSubstRep4 contained matchgroup=vimSubstDelim start="\z(.\)" skip="\\\\\|\\\z1" end="\z1" matchgroup=vimNotation end="<[cC][rR]>" contains=@vimSubstRepList nextgroup=vimSubstFlagErr oneline
syn region vimCollection contained transparent start="\\\@<!\[" skip="\\\[" end="\]" contains=vimCollClass syn region vimCollection contained transparent start="\\\@<!\[" skip="\\\[" end="\]" contains=vimCollClass