aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Clason <c.clason@uni-graz.at>2022-08-05 12:23:41 +0200
committerGitHub <noreply@github.com>2022-08-05 12:23:41 +0200
commit21f5aee77756cb63a240c2384d438208eaecaf62 (patch)
treeb44aeb170927f33922d12a830a0883b2bd954fea
parent7ebcb9b3332e4dcc0bca7a105923555c390fb6b5 (diff)
downloadrneovim-21f5aee77756cb63a240c2384d438208eaecaf62.tar.gz
rneovim-21f5aee77756cb63a240c2384d438208eaecaf62.tar.bz2
rneovim-21f5aee77756cb63a240c2384d438208eaecaf62.zip
vim-patch:9.0.0141: "delmenu" does not remove autocmmands (#19646)
Problem: "delmenu" does not remove autocmmands. Running menu test function alone fails. Solution: Delete autocommands Make sure there is at least one menu. (closes vim/vim#10848) https://github.com/vim/vim/commit/206fce307b265f7f6c6290b623a80c1d846dd131
-rw-r--r--runtime/delmenu.vim25
-rw-r--r--src/nvim/testdir/test_menu.vim10
2 files changed, 29 insertions, 6 deletions
diff --git a/runtime/delmenu.vim b/runtime/delmenu.vim
index 040cc09aa9..ef663c73b4 100644
--- a/runtime/delmenu.vim
+++ b/runtime/delmenu.vim
@@ -7,6 +7,31 @@
aunmenu *
tlunmenu *
+if exists('#SetupLazyloadMenus')
+ au! SetupLazyloadMenus
+ augroup! SetupLazyloadMenus
+endif
+
+if exists('#buffer_list')
+ au! buffer_list
+ augroup! buffer_list
+endif
+
+if exists('#LoadBufferMenu')
+ au! LoadBufferMenu
+ augroup! LoadBufferMenu
+endif
+
+if exists('#spellmenu')
+ au! spellmenu
+ augroup! spellmenu
+endif
+
+if exists('#SpellPopupMenu')
+ au! SpellPopupMenu
+ augroup! SpellPopupMenu
+endif
+
unlet! g:did_install_default_menus
unlet! g:did_install_syntax_menu
diff --git a/src/nvim/testdir/test_menu.vim b/src/nvim/testdir/test_menu.vim
index a759ab6d05..75992d3313 100644
--- a/src/nvim/testdir/test_menu.vim
+++ b/src/nvim/testdir/test_menu.vim
@@ -162,9 +162,6 @@ endfunc
" Test for menu item completion in command line
func Test_menu_expand()
- " Make sure we don't have stale menu items like Buffers menu.
- source $VIMRUNTIME/delmenu.vim
-
" Create the menu itmes for test
menu Dummy.Nothing lll
for i in range(1, 4)
@@ -370,6 +367,10 @@ func Test_menu_info()
\ display: 'tlnoremenu', modes: 'tl', enabled: v:true, silent: v:false,
\ rhs: ':tlnoremenu<CR>', noremenu: v:true, script: v:false},
\ menu_info('Test.tlnoremenu', 'tl'))
+
+ " Test for getting all the top-level menu names
+ call assert_notequal(menu_info('').submenus, [])
+
aunmenu Test
tlunmenu Test
call assert_equal({}, menu_info('Test'))
@@ -408,9 +409,6 @@ func Test_menu_info()
\ shortcut: '', modes: ' ', submenus: ['menu']},
\ menu_info(']Test'))
unmenu ]Test
-
- " Test for getting all the top-level menu names
- call assert_notequal(menu_info('').submenus, [])
endfunc
" Test for <special> keyword in a menu with 'cpo' containing '<'