From: Doug Kearns Date: Mon, 10 Nov 2025 19:50:57 +0000 (+0000) Subject: runtime(vim): Update base syntax, fix :augroup error matching X-Git-Tag: v9.1.1902~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e1e347475eea179e6b0bb9a91d82221ad29edc23;p=thirdparty%2Fvim.git runtime(vim): Update base syntax, fix :augroup error matching Only terminate the :augroup END argument at whitespace, comments and trailing bars. closes: #18711 Signed-off-by: Doug Kearns Signed-off-by: Christian Brabandt --- diff --git a/runtime/syntax/generator/vim.vim.base b/runtime/syntax/generator/vim.vim.base index dc523a2596..7aae3055b7 100644 --- a/runtime/syntax/generator/vim.vim.base +++ b/runtime/syntax/generator/vim.vim.base @@ -2,7 +2,7 @@ " Language: Vim script " Maintainer: Hirohito Higashi " Doug Kearns -" Last Change: 2025 Nov 08 +" Last Change: 2025 Nov 10 " Former Maintainer: Charles E. Campbell " DO NOT CHANGE DIRECTLY. @@ -397,13 +397,13 @@ syn cluster vimAugroupList contains=@vimCmdList,vimFilter,@vimFunc,vimLineCommen " define VimFolda syn region vimAugroup - \ start="\\ze\s\+\%([eE][nN][dD]\)\@!\S\+" + \ start="\\ze\s\+\%([eE][nN][dD]\%($\|[[:space:]|"#]\)\)\@!\S" \ matchgroup=vimAugroupKey - \ end="\\ze\s\+[eE][nN][dD]\>" + \ end="\\s\+[eE][nN][dD]\>" + syn match vimAugroupError "\ +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1|a+0#af5f00255#ffffff0|u|g|r|o|u|p|!| +0#0000000&|f+0#0000001#ffff4012|o@1|"+0#0000e05#ffffff0|c|o|m@1|e|n|t| +0#0000000&@52 -| +0#0000e05#a8a8a8255@1>a+0#af5f00255#ffffff0|u|g|r|o|u|p|!| +0#0000000&|f+0#0000001#ffff4012|o@1||+0#0000000#ffffff0|e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@49 +| +0#0000e05#a8a8a8255@1|a+0#af5f00255#ffffff0|u|g|r|o|u|p|!| +0#0000000&|f+0#0000001#ffff4012|o@1||+0#0000000#ffffff0|e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@49 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1|"+0&#ffffff0| |l|i|s|t| |g|r|o|u|p|s| +0#0000000&@59 +| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 | +0#0000e05#a8a8a8255@1|a+0#af5f00255#ffffff0|u|g|r|o|u|p| +0#0000000&@65 | +0#0000e05#a8a8a8255@1|a+0#af5f00255#ffffff0|u|g|r|o|u|p| +0#0000000&||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|F|o@1|"| +0#0000000&@52 | +0#0000e05#a8a8a8255@1|a+0#af5f00255#ffffff0|u|g|r|o|u|p| +0#0000000&|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@55 | +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 -|~+0#4040ff13&| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -| +0#0000000&@56|5@1|,|1| @9|B|o|t| +| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 +| +0#0000e05#a8a8a8255@1|"+0&#ffffff0| |g|r|o|u|p|s| |n|a|m|e|d| |E|N|D|*| +0#0000000&@53 +| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 +@57|5@1|,|0|-|1| @7|9|4|%| diff --git a/runtime/syntax/testdir/dumps/vim_ex_augroup_04.dump b/runtime/syntax/testdir/dumps/vim_ex_augroup_04.dump new file mode 100644 index 0000000000..4f7fc37771 --- /dev/null +++ b/runtime/syntax/testdir/dumps/vim_ex_augroup_04.dump @@ -0,0 +1,20 @@ +| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@72 +|-+0#0000e05#a8a8a8255| |a+0#af5f00255#ffffff0|u|g|r|o|u|p| +0#0000000&|e+0#0000001#ffff4012|n|d|i|n|g| +0#0000000#ffffff0@58 +||+0#0000e05#a8a8a8255| |a+0#af5f00255#ffffff0|u|g|r|o|u|p| +0#0000000&|E|N|D| @61 +| +0#0000e05#a8a8a8255@1> +0#0000000#ffffff0@72 +|~+0#4040ff13&| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +| +0#0000000&@56|7|1|,|0|-|1| @7|B|o|t| diff --git a/runtime/syntax/testdir/input/vim_ex_augroup.vim b/runtime/syntax/testdir/input/vim_ex_augroup.vim index f7022ecd88..3f43a7553e 100644 --- a/runtime/syntax/testdir/input/vim_ex_augroup.vim +++ b/runtime/syntax/testdir/input/vim_ex_augroup.vim @@ -41,14 +41,16 @@ augroup \"\| | autocmd! | augroup END augroup! \"\| +" trailing bar and tail comments + augroup foo"comment - au! - au BufRead * echo "Foo" + autocmd! + autocmd BufRead * echo "Foo" augroup END"comment augroup foo|echo "Foo" - au! - au BufRead * echo "Foo" + autocmd! + autocmd BufRead * echo "Foo" augroup END|echo "Foo" augroup! foo"comment @@ -56,7 +58,14 @@ augroup! foo|echo "Foo" " list groups + augroup augroup | echo "Foo" augroup " comment + +" groups named END* + +augroup ending +augroup END + diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim index 3b6c80399c..5e1185a2b0 100644 --- a/runtime/syntax/vim.vim +++ b/runtime/syntax/vim.vim @@ -2,7 +2,7 @@ " Language: Vim script " Maintainer: Hirohito Higashi " Doug Kearns -" Last Change: 2025 Nov 08 +" Last Change: 2025 Nov 10 " Former Maintainer: Charles E. Campbell " DO NOT CHANGE DIRECTLY. @@ -451,13 +451,13 @@ syn cluster vimAugroupList contains=@vimCmdList,vimFilter,@vimFunc,vimLineCommen " define VimFolda syn region vimAugroup - \ start="\\ze\s\+\%([eE][nN][dD]\)\@!\S\+" + \ start="\\ze\s\+\%([eE][nN][dD]\%($\|[[:space:]|"#]\)\)\@!\S" \ matchgroup=vimAugroupKey - \ end="\\ze\s\+[eE][nN][dD]\>" + \ end="\\s\+[eE][nN][dD]\>" + syn match vimAugroupError "\