diff options
author | zeertzjq <zeertzjq@outlook.com> | 2024-03-20 07:04:31 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-20 07:04:31 +0800 |
commit | 37db3d97ea49fd1e22d50dd21e8924ed047cba95 (patch) | |
tree | 86635b24c6619bf5a49d81965db63f7bf48d6458 /runtime/syntax | |
parent | 4694ce68774dd63a63e39009b4a887ac08636987 (diff) | |
download | rneovim-37db3d97ea49fd1e22d50dd21e8924ed047cba95.tar.gz rneovim-37db3d97ea49fd1e22d50dd21e8924ed047cba95.tar.bz2 rneovim-37db3d97ea49fd1e22d50dd21e8924ed047cba95.zip |
vim-patch:ec21bafc135a (#27939)
runtime(vim): Update base-syntax, disallow '.' at start of menu item names (vim/vim#14232)
Disallow '.' at the start of a menu item name.
This is the menu path separator character and should be escaped with a
'\' in this case.
Partially fixes vim/vim#14230. "popup" is still incorrectly matched as the Ex
command.
https://github.com/vim/vim/commit/ec21bafc135a1e78d40e4fc9118e022bbab958e8
Co-authored-by: dkearns <dougkearns@gmail.com>
Diffstat (limited to 'runtime/syntax')
-rw-r--r-- | runtime/syntax/vim.vim | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim index 1cd2bdc568..d5761087e0 100644 --- a/runtime/syntax/vim.vim +++ b/runtime/syntax/vim.vim @@ -488,8 +488,8 @@ syn keyword vimMenu am[enu] an[oremenu] aun[menu] cme[nu] cnoreme[nu] cunme[nu] syn keyword vimMenu popu[p] skipwhite nextgroup=vimMenuBang,vimMenuName syn region vimMenuRhs contained contains=@vimContinue,vimNotation start="|\@!\S" skip=+\\\\\|\\|\|\n\s*\\\|\n\s*"\\ + end="$" matchgroup=vimSep end="|" syn region vimMenuRhsContinue contained contains=@vimContinue,vimNotation start=+^\s*\%(\\\|"\\ \)+ skip=+\\\\\|\\|\|\n\s*\\\|\n\s*"\\ + end="$" matchgroup=vimSep end="|" -syn match vimMenuName "\%(\\\s\|\S\)\+" contained contains=vimMenuNotation,vimNotation skipwhite nextgroup=vimCmdSep,vimMenuRhs -syn match vimMenuName "\%(\\\s\|\S\)\+\ze\s*$" contained contains=vimMenuNotation,vimNotation skipwhite skipnl nextgroup=vimCmdSep,vimMenuRhsContinue +syn match vimMenuName "\.\@!\%(\\\s\|\S\)\+" contained contains=vimMenuNotation,vimNotation skipwhite nextgroup=vimCmdSep,vimMenuRhs +syn match vimMenuName "\.\@!\%(\\\s\|\S\)\+\ze\s*$" contained contains=vimMenuNotation,vimNotation skipwhite skipnl nextgroup=vimCmdSep,vimMenuRhsContinue syn match vimMenuNotation "&\a\|&&\|\\\s\|\\\." contained syn match vimMenuPriority "\<\d\+\%(\.\d\+\)*\>" contained skipwhite nextgroup=vimMenuName syn match vimMenuMod "\c<\%(script\|silent\|special\)>" contained skipwhite nextgroup=vimMenuName,vimMenuPriority,vimMenuMod contains=vimMapModKey,vimMapModErr |