diff options
author | Jan Edmund Lazo <jan.lazo@mail.utoronto.ca> | 2021-04-28 08:39:30 -0400 |
---|---|---|
committer | Jan Edmund Lazo <jan.lazo@mail.utoronto.ca> | 2021-04-28 21:29:57 -0400 |
commit | 565783be4b42ec8cf2d24543b7d501499c6a1091 (patch) | |
tree | 1f80eb628fdc0aa84d75d765e7830a8cf5114f44 | |
parent | 04a4bbbe56fd6cbc164730cb9beab4ec6fefe3b0 (diff) | |
download | rneovim-565783be4b42ec8cf2d24543b7d501499c6a1091.tar.gz rneovim-565783be4b42ec8cf2d24543b7d501499c6a1091.tar.bz2 rneovim-565783be4b42ec8cf2d24543b7d501499c6a1091.zip |
vim-patch:acc224064033
Update runtime files
https://github.com/vim/vim/commit/acc224064033e5cea21ef7f1eefb356ca06ff11d
Omit 'quickfixtextfunc'.
Omit ftplugin/man.vim.
-rw-r--r-- | runtime/doc/index.txt | 16 | ||||
-rw-r--r-- | runtime/doc/options.txt | 4 | ||||
-rw-r--r-- | runtime/doc/various.txt | 1 | ||||
-rw-r--r-- | runtime/ftplugin/asm.vim | 11 | ||||
-rw-r--r-- | runtime/indent/sqlanywhere.vim | 80 | ||||
-rw-r--r-- | runtime/indent/testdir/yaml.in | 5 | ||||
-rw-r--r-- | runtime/indent/testdir/yaml.ok | 5 | ||||
-rw-r--r-- | runtime/indent/yaml.vim | 11 | ||||
-rw-r--r-- | runtime/optwin.vim | 2 | ||||
-rw-r--r-- | runtime/syntax/vim.vim | 22 |
10 files changed, 93 insertions, 64 deletions
diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt index 503e3a87bf..008bff9f07 100644 --- a/runtime/doc/index.txt +++ b/runtime/doc/index.txt @@ -73,7 +73,7 @@ tag char action in Insert mode ~ |i_CTRL-R_CTRL-P| CTRL-R CTRL-P {register} insert the contents of a register literally and fix indent. - CTRL-S (used for terminal control flow) + CTRL-S not used or used for terminal control flow |i_CTRL-T| CTRL-T insert one shiftwidth of indent in current line |i_CTRL-U| CTRL-U delete all entered characters in the current @@ -207,9 +207,9 @@ tag char note action in Normal mode ~ |CTRL-N| CTRL-N 1 same as "j" |CTRL-O| CTRL-O 1 go to N older entry in jump list |CTRL-P| CTRL-P 1 same as "k" - CTRL-Q (used for terminal control flow) + CTRL-Q not used, or used for terminal control flow |CTRL-R| CTRL-R 2 redo changes which were undone with 'u' - CTRL-S (used for terminal control flow) + CTRL-S not used, or used for terminal control flow |CTRL-T| CTRL-T jump to N older Tag in tag list |CTRL-U| CTRL-U scroll N lines Upwards (default: half a screen) @@ -819,7 +819,7 @@ tag char note action in Normal mode ~ |zD| zD delete folds recursively |zE| zE eliminate all folds |zF| zF create a fold for N lines -|zG| zG temporarily mark word as good spelled word +|zG| zG temporarily mark word as correctly spelled |zH| zH when 'wrap' off scroll half a screenwidth to the right |zL| zL when 'wrap' off scroll half a screenwidth @@ -828,7 +828,7 @@ tag char note action in Normal mode ~ |zN| zN set 'foldenable' |zO| zO open folds recursively |zR| zR set 'foldlevel' to the deepest fold -|zW| zW temporarily mark word as bad spelled word +|zW| zW temporarily mark word as incorrectly spelled |zX| zX re-apply 'foldlevel' |z^| z^ cursor on line N (default line above window), otherwise like "z-" @@ -840,7 +840,7 @@ tag char note action in Normal mode ~ position the cursor at the end (right side) of the screen |zf| zf{motion} create a fold for Nmove text -|zg| zg permanently mark word as good spelled word +|zg| zg permanently mark word as correctly spelled |zh| zh when 'wrap' off scroll screen N characters to the right |zi| zi toggle 'foldenable' @@ -861,7 +861,7 @@ tag char note action in Normal mode ~ |zuW| zuW undo |zW| |zuG| zuG undo |zG| |zv| zv open enough folds to view the cursor line -|zw| zw permanently mark word as bad spelled word +|zw| zw permanently mark word as incorrectly spelled |zx| zx re-apply 'foldlevel' and do "zv" |zz| zz redraw, cursor line at center of window |z<Left>| z<Left> same as "zh" @@ -1047,7 +1047,7 @@ tag command action in Command-line editing mode ~ |c_CTRL-R_CTRL-O| CTRL-R CTRL-O {regname} insert the contents of a register or object under the cursor literally - CTRL-S (used for terminal control flow) + CTRL-S not used, or used for terminal control flow |c_CTRL-T| CTRL-T previous match when 'incsearch' is active |c_CTRL-U| CTRL-U remove all characters |c_CTRL-V| CTRL-V insert next non-digit literally, insert three diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index c2a1c04110..23354c0320 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -4215,8 +4215,8 @@ A jump table for the options with a short description can be found at |Q_op|. (without "unsigned" it would become "9-2021"). Using CTRL-A on "2020" in "9-2020" results in "9-2021" (without "unsigned" it would become "9-2019"). - Using CTRL-X on "0" or "18446744073709551615" (2^64) has - no effect, overflow is prevented. + Using CTRL-X on "0" or CTRL-A on "18446744073709551615" + (2^64 - 1) has no effect, overflow is prevented. Numbers which simply begin with a digit in the range 1-9 are always considered decimal. This also happens for numbers that are not recognized as octal or hex. diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt index 7e033d7dda..21d5610a97 100644 --- a/runtime/doc/various.txt +++ b/runtime/doc/various.txt @@ -260,6 +260,7 @@ g8 Print the hex values of the bytes used in the use it to append a Vim command. See |:bar|. Any "%" in {cmd} is expanded to the current file name. + Any "#" in {cmd} is expanded to the alternate file name. Special characters are not escaped, use quotes or |shellescape()|: > :!ls "%" diff --git a/runtime/ftplugin/asm.vim b/runtime/ftplugin/asm.vim new file mode 100644 index 0000000000..0914bf634a --- /dev/null +++ b/runtime/ftplugin/asm.vim @@ -0,0 +1,11 @@ +" Vim filetype plugin file +" Language: asm +" Maintainer: Colin Caine <cmcaine at the common googlemail domain> +" Last Changed: 23 May 2020 + +if exists("b:did_ftplugin") | finish | endif + +setl comments=:;,s1:/*,mb:*,ex:*/,:// +setl commentstring=;%s + +let b:did_ftplugin = 1 diff --git a/runtime/indent/sqlanywhere.vim b/runtime/indent/sqlanywhere.vim index ba35d76715..601c567adc 100644 --- a/runtime/indent/sqlanywhere.vim +++ b/runtime/indent/sqlanywhere.vim @@ -1,7 +1,8 @@ " Vim indent file " Language: SQL " Maintainer: David Fishburn <dfishburn dot vim at gmail dot com> -" Last Change: 2017 Jun 13 +" Last Change By Maintainer: 2017 Jun 13 +" Last Change: by Stephen Wall, #5578, 2020 Jun 07 " Version: 3.0 " Download: http://vim.sourceforge.net/script.php?script_id=495 @@ -67,68 +68,73 @@ set cpo&vim " IS is excluded, since it is difficult to determine when the " ending block is (especially for procedures/functions). let s:SQLBlockStart = '^\s*\%('. - \ 'if\|else\|elseif\|elsif\|'. - \ 'while\|loop\|do\|for\|'. - \ 'begin\|'. + \ 'if\>.*\<then\|'. + \ 'then\|else\>\|'. + \ 'elseif\>.*\<then\|'. + \ 'elsif\>.(\<then\|'. + \ 'while\>.*\<loop\|'. + \ 'for\>.*\<loop\|'. + \ 'foreach\>.*\<loop\|'. + \ 'loop\|do\|declare\|begin\|'. \ 'case\|when\|merge\|exception'. \ '\)\>' let s:SQLBlockEnd = '^\s*\(end\)\>' -" The indent level is also based on unmatched paranethesis +" The indent level is also based on unmatched parentheses " If a line has an extra "(" increase the indent " If a line has an extra ")" decrease the indent -function! s:CountUnbalancedParan( line, paran_to_check ) +function! s:CountUnbalancedParen( line, paren_to_check ) let l = a:line let lp = substitute(l, '[^(]', '', 'g') let l = a:line let rp = substitute(l, '[^)]', '', 'g') - if a:paran_to_check =~ ')' - " echom 'CountUnbalancedParan ) returning: ' . + if a:paren_to_check =~ ')' + " echom 'CountUnbalancedParen ) returning: ' . " \ (strlen(rp) - strlen(lp)) return (strlen(rp) - strlen(lp)) - elseif a:paran_to_check =~ '(' - " echom 'CountUnbalancedParan ( returning: ' . + elseif a:paren_to_check =~ '(' + " echom 'CountUnbalancedParen ( returning: ' . " \ (strlen(lp) - strlen(rp)) return (strlen(lp) - strlen(rp)) else - " echom 'CountUnbalancedParan unknown paran to check: ' . - " \ a:paran_to_check + " echom 'CountUnbalancedParen unknown paren to check: ' . + " \ a:paren_to_check return 0 endif endfunction " Unindent commands based on previous indent level -function! s:CheckToIgnoreRightParan( prev_lnum, num_levels ) +function! s:CheckToIgnoreRightParen( prev_lnum, num_levels ) let lnum = a:prev_lnum let line = getline(lnum) let ends = 0 - let num_right_paran = a:num_levels - let ignore_paran = 0 + let num_right_paren = a:num_levels + let ignore_paren = 0 let vircol = 1 - while num_right_paran > 0 + while num_right_paren > 0 silent! exec 'norm! '.lnum."G\<bar>".vircol."\<bar>" - let right_paran = search( ')', 'W' ) - if right_paran != lnum + let right_paren = search( ')', 'W' ) + if right_paren != lnum " This should not happen since there should be at least - " num_right_paran matches for this line + " num_right_paren matches for this line break endif let vircol = virtcol(".") " if getline(".") =~ '^)' - let matching_paran = searchpair('(', '', ')', 'bW', + let matching_paren = searchpair('(', '', ')', 'bW', \ 's:IsColComment(line("."), col("."))') - if matching_paran < 1 + if matching_paren < 1 " No match found " echom 'CTIRP - no match found, ignoring' break endif - if matching_paran == lnum - " This was not an unmatched parantenses, start the search again + if matching_paren == lnum + " This was not an unmatched parentheses, start the search again " again after this column " echom 'CTIRP - same line match, ignoring' continue @@ -136,23 +142,23 @@ function! s:CheckToIgnoreRightParan( prev_lnum, num_levels ) " echom 'CTIRP - match: ' . line(".") . ' ' . getline(".") - if getline(matching_paran) =~? '\(if\|while\)\>' + if getline(matching_paren) =~? '\(if\|while\)\>' " echom 'CTIRP - if/while ignored: ' . line(".") . ' ' . getline(".") - let ignore_paran = ignore_paran + 1 + let ignore_paren = ignore_paren + 1 endif " One match found, decrease and check for further matches - let num_right_paran = num_right_paran - 1 + let num_right_paren = num_right_paren - 1 endwhile " Fallback - just move back one " return a:prev_indent - shiftwidth() - return ignore_paran + return ignore_paren endfunction " Based on the keyword provided, loop through previous non empty -" non comment lines to find the statement that initated the keyword. +" non comment lines to find the statement that initiated the keyword. " Return its indent level " CASE .. " WHEN ... @@ -295,26 +301,26 @@ function! GetSQLIndent() " echom 'prevl - SQLBlockStart - indent ' . ind . ' line: ' . prevline elseif prevline =~ '[()]' if prevline =~ '(' - let num_unmatched_left = s:CountUnbalancedParan( prevline, '(' ) + let num_unmatched_left = s:CountUnbalancedParen( prevline, '(' ) else let num_unmatched_left = 0 endif if prevline =~ ')' - let num_unmatched_right = s:CountUnbalancedParan( prevline, ')' ) + let num_unmatched_right = s:CountUnbalancedParen( prevline, ')' ) else let num_unmatched_right = 0 - " let num_unmatched_right = s:CountUnbalancedParan( prevline, ')' ) + " let num_unmatched_right = s:CountUnbalancedParen( prevline, ')' ) endif if num_unmatched_left > 0 - " There is a open left paranethesis + " There is a open left parenthesis " increase indent let ind = ind + ( shiftwidth() * num_unmatched_left ) elseif num_unmatched_right > 0 - " if it is an unbalanced paranethesis only unindent if + " if it is an unbalanced parenthesis only unindent if " it was part of a command (ie create table(..) ) " instead of part of an if (ie if (....) then) which should " maintain the indent level - let ignore = s:CheckToIgnoreRightParan( prevlnum, num_unmatched_right ) + let ignore = s:CheckToIgnoreRightParen( prevlnum, num_unmatched_right ) " echom 'prevl - ) unbalanced - CTIRP - ignore: ' . ignore if prevline =~ '^\s*)' @@ -357,8 +363,8 @@ function! GetSQLIndent() " elseif line =~ '^\s*)\s*;\?\s*$' " elseif line =~ '^\s*)' elseif line =~ '^\s*)' - let num_unmatched_right = s:CountUnbalancedParan( line, ')' ) - let ignore = s:CheckToIgnoreRightParan( v:lnum, num_unmatched_right ) + let num_unmatched_right = s:CountUnbalancedParen( line, ')' ) + let ignore = s:CheckToIgnoreRightParen( v:lnum, num_unmatched_right ) " If the line ends in a ), then reduce the indent " This catches items like: " CREATE TABLE T1( @@ -368,7 +374,7 @@ function! GetSQLIndent() " But we do not want to unindent a line like: " IF ( c1 = 1 " AND c2 = 3 ) THEN - " let num_unmatched_right = s:CountUnbalancedParan( line, ')' ) + " let num_unmatched_right = s:CountUnbalancedParen( line, ')' ) " if num_unmatched_right > 0 " elseif strpart( line, strlen(line)-1, 1 ) =~ ')' " let ind = ind - shiftwidth() diff --git a/runtime/indent/testdir/yaml.in b/runtime/indent/testdir/yaml.in index e3d77e2543..8515e1752c 100644 --- a/runtime/indent/testdir/yaml.in +++ b/runtime/indent/testdir/yaml.in @@ -12,3 +12,8 @@ map2: map: &anchor map: val # END_INDENT + +# START_INDENT +map: multiline +value +# END_INDENT diff --git a/runtime/indent/testdir/yaml.ok b/runtime/indent/testdir/yaml.ok index b97b2e5896..5ca2871fc9 100644 --- a/runtime/indent/testdir/yaml.ok +++ b/runtime/indent/testdir/yaml.ok @@ -12,3 +12,8 @@ map2: map: &anchor map: val # END_INDENT + +# START_INDENT +map: multiline + value +# END_INDENT diff --git a/runtime/indent/yaml.vim b/runtime/indent/yaml.vim index 9621b2b6ed..26e14effb2 100644 --- a/runtime/indent/yaml.vim +++ b/runtime/indent/yaml.vim @@ -1,7 +1,8 @@ " Vim indent file -" Language: YAML -" Maintainer: Nikolai Pavlov <zyx.vim@gmail.com> -" Last Change: 2019 Sep 28 +" Language: YAML +" Maintainer: Nikolai Pavlov <zyx.vim@gmail.com> +" Last Update: Lukas Reineke +" Last Change: 2020 Jun 07 " Only load this indent file when no other was loaded. if exists('b:did_indent') @@ -53,7 +54,7 @@ let s:c_ns_anchor_name = s:c_ns_anchor_char.'+' let s:c_ns_anchor_property = '\v\&'.s:c_ns_anchor_name let s:ns_word_char = '\v[[:alnum:]_\-]' -let s:ns_tag_char = '\v%(%\x\x|'.s:ns_word_char.'|[#/;?:@&=+$.~*''()])' +let s:ns_tag_char = '\v%('.s:ns_word_char.'|[#/;?:@&=+$.~*''()])' let s:c_named_tag_handle = '\v\!'.s:ns_word_char.'+\!' let s:c_secondary_tag_handle = '\v\!\!' let s:c_primary_tag_handle = '\v\!' @@ -62,7 +63,7 @@ let s:c_tag_handle = '\v%('.s:c_named_tag_handle. \ '|'.s:c_primary_tag_handle.')' let s:c_ns_shorthand_tag = '\v'.s:c_tag_handle . s:ns_tag_char.'+' let s:c_non_specific_tag = '\v\!' -let s:ns_uri_char = '\v%(%\x\x|'.s:ns_word_char.'\v|[#/;?:@&=+$,.!~*''()[\]])' +let s:ns_uri_char = '\v%('.s:ns_word_char.'\v|[#/;?:@&=+$,.!~*''()[\]])' let s:c_verbatim_tag = '\v\!\<'.s:ns_uri_char.'+\>' let s:c_ns_tag_property = '\v'.s:c_verbatim_tag. \ '\v|'.s:c_ns_shorthand_tag. diff --git a/runtime/optwin.vim b/runtime/optwin.vim index 60dc6fdd31..1da73b397d 100644 --- a/runtime/optwin.vim +++ b/runtime/optwin.vim @@ -1078,7 +1078,7 @@ call <SID>BinOptionG("warn", &warn) if has("quickfix") - call <SID>Header("running make and jumping to errors") + call <SID>Header("running make and jumping to errors (quickfix)") call append("$", "errorfile\tname of the file that contains error messages") call <SID>OptionG("ef", &ef) call append("$", "errorformat\tlist of formats for error messages") diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim index dfcd931abd..497a9332ca 100644 --- a/runtime/syntax/vim.vim +++ b/runtime/syntax/vim.vim @@ -143,10 +143,10 @@ endif " Numbers {{{2 " ======= -syn match vimNumber "\<\d\+\%(\.\d\+\%([eE][+-]\=\d\+\)\=\)\=" skipwhite nextgroup=vimGlobal,vimSubst,vimCommand,vimComment -syn match vimNumber "-\d\+\%(\.\d\+\%([eE][+-]\=\d\+\)\=\)\=" skipwhite nextgroup=vimGlobal,vimSubst,vimCommand,vimComment -syn match vimNumber "\<0[xX]\x\+" skipwhite nextgroup=vimGlobal,vimSubst,vimCommand,vimComment -syn match vimNumber "\%(^\|\A\)\zs#\x\{6}" skipwhite nextgroup=vimGlobal,vimSubst,vimCommand,vimComment +syn match vimNumber "\<\d\+\%(\.\d\+\%([eE][+-]\=\d\+\)\=\)\=" skipwhite nextgroup=vimGlobal,vimSubst,vimCommand,vimComment,vim9Comment +syn match vimNumber "-\d\+\%(\.\d\+\%([eE][+-]\=\d\+\)\=\)\=" skipwhite nextgroup=vimGlobal,vimSubst,vimCommand,vimComment,vim9Comment +syn match vimNumber "\<0[xX]\x\+" skipwhite nextgroup=vimGlobal,vimSubst,vimCommand,vimComment,vim9Comment +syn match vimNumber "\%(^\|\A\)\zs#\x\{6}" skipwhite nextgroup=vimGlobal,vimSubst,vimCommand,vimComment,vim9Comment " All vimCommands are contained by vimIsCommand. {{{2 syn match vimCmdSep "[:|]\+" skipwhite nextgroup=vimAddress,vimAutoCmd,vimEcho,vimIsCommand,vimExtCmd,vimFilter,vimLet,vimMap,vimMark,vimSet,vimSyntax,vimUserCmd @@ -183,7 +183,7 @@ syn keyword vimFTOption contained detect indent off on plugin " Augroup : vimAugroupError removed because long augroups caused sync'ing problems. {{{2 " ======= : Trade-off: Increasing synclines with slower editing vs augroup END error checking. -syn cluster vimAugroupList contains=vimAugroup,vimIsCommand,vimUserCmd,vimExecute,vimNotFunc,vimFuncName,vimFunction,vimFunctionError,vimLineComment,vimNotFunc,vimMap,vimSpecFile,vimOper,vimNumber,vimOperParen,vimComment,vimString,vimSubst,vimMark,vimRegister,vimAddress,vimFilter,vimCmplxRepeat,vimComment,vimLet,vimSet,vimAutoCmd,vimRegion,vimSynLine,vimNotation,vimCtrlChar,vimFuncVar,vimContinue,vimSetEqual,vimOption +syn cluster vimAugroupList contains=vimAugroup,vimIsCommand,vimUserCmd,vimExecute,vimNotFunc,vimFuncName,vimFunction,vimFunctionError,vimLineComment,vimNotFunc,vimMap,vimSpecFile,vimOper,vimNumber,vimOperParen,vimComment,vim9Comment,vimString,vimSubst,vimMark,vimRegister,vimAddress,vimFilter,vimCmplxRepeat,vimComment,vim9Comment,vimLet,vimSet,vimAutoCmd,vimRegion,vimSynLine,vimNotation,vimCtrlChar,vimFuncVar,vimContinue,vimSetEqual,vimOption if exists("g:vimsyn_folding") && g:vimsyn_folding =~# 'a' syn region vimAugroup fold matchgroup=vimAugroupKey start="\<aug\%[roup]\>\ze\s\+\K\k*" end="\<aug\%[roup]\>\ze\s\+[eE][nN][dD]\>" contains=vimAutoCmd,@vimAugroupList else @@ -210,7 +210,7 @@ endif " Functions : Tag is provided for those who wish to highlight tagged functions {{{2 " ========= syn cluster vimFuncList contains=vimCommand,vimFunctionError,vimFuncKey,Tag,vimFuncSID -syn cluster vimFuncBodyList contains=vimAbb,vimAddress,vimAugroupKey,vimAutoCmd,vimCmplxRepeat,vimComment,vimContinue,vimCtrlChar,vimEcho,vimEchoHL,vimExecute,vimIsCommand,vimFBVar,vimFunc,vimFunction,vimFuncVar,vimGlobal,vimHighlight,vimIsCommand,vimLet,vimLetHereDoc,vimLineComment,vimMap,vimMark,vimNorm,vimNotation,vimNotFunc,vimNumber,vimOper,vimOperParen,vimRegion,vimRegister,vimSearch,vimSet,vimSpecFile,vimString,vimSubst,vimSynLine,vimUnmap,vimUserCommand +syn cluster vimFuncBodyList contains=vimAbb,vimAddress,vimAugroupKey,vimAutoCmd,vimCmplxRepeat,vimComment,vim9Comment,vimContinue,vimCtrlChar,vimEcho,vimEchoHL,vimExecute,vimIsCommand,vimFBVar,vimFunc,vimFunction,vimFuncVar,vimGlobal,vimHighlight,vimIsCommand,vimLet,vimLetHereDoc,vimLineComment,vimMap,vimMark,vimNorm,vimNotation,vimNotFunc,vimNumber,vimOper,vimOperParen,vimRegion,vimRegister,vimSearch,vimSet,vimSpecFile,vimString,vimSubst,vimSynLine,vimUnmap,vimUserCommand syn match vimFunction "\<fu\%[nction]!\=\s\+\%(<[sS][iI][dD]>\|[sSgGbBwWtTlL]:\)\=\%(\i\|[#.]\|{.\{-1,}}\)*\ze\s*(" contains=@vimFuncList nextgroup=vimFuncBody if exists("g:vimsyn_folding") && g:vimsyn_folding =~# 'f' @@ -268,9 +268,9 @@ syn match vimComment +\<endif\s\+".*$+lc=5 contains=@vimCommentGroup,vimCommentS syn match vimComment +\<else\s\+".*$+lc=4 contains=@vimCommentGroup,vimCommentString syn region vimCommentString contained oneline start='\S\s\+"'ms=e end='"' " Vim9 comments - TODO: might be highlighted while they don't work -syn match vimComment excludenl +\s#[^{].*$+lc=1 contains=@vimCommentGroup,vimCommentString -syn match vimComment +\<endif\s\+#[^{].*$+lc=5 contains=@vimCommentGroup,vimCommentString -syn match vimComment +\<else\s\+#[^{].*$+lc=4 contains=@vimCommentGroup,vimCommentString +syn match vim9Comment excludenl +\s#[^{].*$+lc=1 contains=@vimCommentGroup,vimCommentString +syn match vim9Comment +\<endif\s\+#[^{].*$+lc=5 contains=@vimCommentGroup,vimCommentString +syn match vim9Comment +\<else\s\+#[^{].*$+lc=4 contains=@vimCommentGroup,vimCommentString " Vim9 comment inside expression syn match vim9Comment +\s\zs#[^{].*$+ms=s+1 contains=@vimCommentGroup,vimCommentString @@ -293,7 +293,7 @@ syn region vimString oneline keepend start=+[^a-zA-Z>!\\@]"+lc=1 skip=+\\\\\|\\" syn region vimString oneline keepend start=+[^a-zA-Z>!\\@]'+lc=1 end=+'+ syn region vimString oneline start=+=!+lc=1 skip=+\\\\\|\\!+ end=+!+ contains=@vimStringGroup syn region vimString oneline start="=+"lc=1 skip="\\\\\|\\+" end="+" contains=@vimStringGroup -"syn region vimString oneline start="\s/\s*\A"lc=1 skip="\\\\\|\\+" end="/" contains=@vimStringGroup +"syn region vimString oneline start="\s/\s*\A"lc=1 skip="\\\\\|\\+" end="/" contains=@vimStringGroup " see tst45.vim syn match vimString contained +"[^"]*\\$+ skipnl nextgroup=vimStringCont syn match vimStringCont contained +\(\\\\\|.\)\{-}[^\\]"+ @@ -317,7 +317,7 @@ syn match vimCollClass contained transparent "\%#=1\[:\(alnum\|alpha\|blank\| syn match vimSubstSubstr contained "\\z\=\d" syn match vimSubstTwoBS contained "\\\\" syn match vimSubstFlagErr contained "[^< \t\r|]\+" contains=vimSubstFlags -syn match vimSubstFlags contained "[&cegiIpr]\+" +syn match vimSubstFlags contained "[&cegiIlnpr#]\+" " 'String': {{{2 syn match vimString "[^(,]'[^']\{-}\zs'" |