runtime(vim): Update base-syntax, fix :behave highlighting Commit: https://github.com/vim/vim/commit/fe6d5b0ae47e8a178c156be7189903c91b765584 Author: Doug Kearns <dougkea...@gmail.com> Date: Wed Feb 14 21:17:43 2024 +0100
runtime(vim): Update base-syntax, fix :behave highlighting closes: https://github.com/vim/vim/issues/14036 Signed-off-by: Doug Kearns <dougkea...@gmail.com> Signed-off-by: Christian Brabandt <c...@256bit.org> diff --git a/runtime/syntax/generator/vim.vim.base b/runtime/syntax/generator/vim.vim.base index 5ef471dc4..37bc03a5c 100644 --- a/runtime/syntax/generator/vim.vim.base +++ b/runtime/syntax/generator/vim.vim.base @@ -185,12 +185,14 @@ endif " Behave! {{{2 " ======= -syn match vimBehave "\<be\%[have]\>" skipwhite nextgroup=vimBehaveModel,vimBehaveError -syn keyword vimBehaveModel contained mswin xterm if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_nobehaveerror") syn match vimBehaveError contained "[^ ]\+" endif +syn match vimBehave "\<be\%[have]\>" nextgroup=vimBehaveBang,vimBehaveModel,vimBehaveError skipwhite +syn match vimBehaveBang contained " \@1<=!" nextgroup=vimBehaveModel skipwhite +syn keyword vimBehaveModel contained mswin xterm +hi def link vimBehaveBang vimBang " Filetypes {{{2 " ========= syn match vimFiletype "\<filet\%[ype]\(\s\+\I\i*\)*" skipwhite contains=vimFTCmd,vimFTOption,vimFTError @@ -929,6 +931,7 @@ if !exists("skip_vim_syntax_inits") hi def link vimAutoCmdMod Special hi def link vimAutoSet vimCommand hi def link vimBang vimOper + hi def link vimBehaveBang vimBang hi def link vimBehaveModel vimBehave hi def link vimBehave vimCommand hi def link vimBracket Delimiter diff --git a/runtime/syntax/testdir/dumps/vim_ex_behave_00.dump b/runtime/syntax/testdir/dumps/vim_ex_behave_00.dump new file mode 100644 index 000000000..cd88b7537 --- /dev/null +++ b/runtime/syntax/testdir/dumps/vim_ex_behave_00.dump @@ -0,0 +1,20 @@ +>"+0#0000e05#ffffff0| |V|i|m| |b|e|h|a|v|e| |c|o|m@1|a|n|d| +0#0000000&@54 +@75 +|b+0#af5f00255&|e|h|a|v|e| +0#0000000&|m+0#af5f00255&|s|w|i|n| +0#0000000&@62 +|b+0#af5f00255&|e|h|a|v|e| +0#0000000&|x+0#af5f00255&|t|e|r|m| +0#0000000&@62 +@75 +|b+0#af5f00255&|e|h|a|v|e|!| +0#0000000&|m+0#af5f00255&|s|w|i|n| +0#0000000&@61 +|b+0#af5f00255&|e|h|a|v|e|!| +0#0000000&|x+0#af5f00255&|t|e|r|m| +0#0000000&@61 +|~+0#4040ff13&| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|"+0#0000000&|i|n|p|u|t|/|v|i|m|_|e|x|_|b|e|h|a|v|e|.|v|i|m|"| |7|L|,| |7@1|B| @23|1|,|1| @10|A|l@1| diff --git a/runtime/syntax/testdir/dumps/vim_ex_behave_99.dump b/runtime/syntax/testdir/dumps/vim_ex_behave_99.dump new file mode 100644 index 000000000..a0a0e188c --- /dev/null +++ b/runtime/syntax/testdir/dumps/vim_ex_behave_99.dump @@ -0,0 +1,20 @@ +|"+0#0000e05#ffffff0| |V|i|m| |b|e|h|a|v|e| |c|o|m@1|a|n|d| +0#0000000&@54 +@75 +|b+0#af5f00255&|e|h|a|v|e| +0#0000000&|m+0#af5f00255&|s|w|i|n| +0#0000000&@62 +|b+0#af5f00255&|e|h|a|v|e| +0#0000000&|x+0#af5f00255&|t|e|r|m| +0#0000000&@62 +@75 +|b+0#af5f00255&|e|h|a|v|e|!| +0#0000000&|m+0#af5f00255&|s|w|i|n| +0#0000000&@61 +>b+0#af5f00255&|e|h|a|v|e|!| +0#0000000&|x+0#af5f00255&|t|e|r|m| +0#0000000&@61 +|~+0#4040ff13&| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|~| @73 +|"+0#0000000&|i|n|p|u|t|/|v|i|m|_|e|x|_|b|e|h|a|v|e|.|v|i|m|"| |7|L|,| |7@1|B| @23|7|,|1| @10|A|l@1| diff --git a/runtime/syntax/testdir/input/vim_ex_behave.vim b/runtime/syntax/testdir/input/vim_ex_behave.vim new file mode 100644 index 000000000..a1e99f0d8 --- /dev/null +++ b/runtime/syntax/testdir/input/vim_ex_behave.vim @@ -0,0 +1,7 @@ +" Vim behave command + +behave mswin +behave xterm + +behave! mswin +behave! xterm diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim index 8a63898cf..a69dedc66 100644 --- a/runtime/syntax/vim.vim +++ b/runtime/syntax/vim.vim @@ -227,12 +227,14 @@ endif " Behave! {{{2 " ======= -syn match vimBehave "\<be\%[have]\>" skipwhite nextgroup=vimBehaveModel,vimBehaveError -syn keyword vimBehaveModel contained mswin xterm if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_nobehaveerror") syn match vimBehaveError contained "[^ ]\+" endif +syn match vimBehave "\<be\%[have]\>" nextgroup=vimBehaveBang,vimBehaveModel,vimBehaveError skipwhite +syn match vimBehaveBang contained " \@1<=!" nextgroup=vimBehaveModel skipwhite +syn keyword vimBehaveModel contained mswin xterm +hi def link vimBehaveBang vimBang " Filetypes {{{2 " ========= syn match vimFiletype "\<filet\%[ype]\(\s\+\I\i*\)*" skipwhite contains=vimFTCmd,vimFTOption,vimFTError @@ -977,6 +979,7 @@ if !exists("skip_vim_syntax_inits") hi def link vimAutoCmdMod Special hi def link vimAutoSet vimCommand hi def link vimBang vimOper + hi def link vimBehaveBang vimBang hi def link vimBehaveModel vimBehave hi def link vimBehave vimCommand hi def link vimBracket Delimiter -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_dev/E1raLtL-00F6tQ-OC%40256bit.org.