changeset 29601:8f0ca93857a6 v9.0.0141

patch 9.0.0141: "delmenu" does not remove autocmmands Commit: https://github.com/vim/vim/commit/206fce307b265f7f6c6290b623a80c1d846dd131 Author: zeertzjq <zeertzjq@outlook.com> Date: Fri Aug 5 10:52:30 2022 +0100 patch 9.0.0141: "delmenu" does not remove autocmmands Problem: "delmenu" does not remove autocmmands. Running menu test function alone fails. Solution: Delete autocommands Make sure there is at least one menu. (closes #10848)
author Bram Moolenaar <Bram@vim.org>
date Fri, 05 Aug 2022 12:00:08 +0200
parents 8932f7a1b79b
children 093466b0c903
files runtime/delmenu.vim src/testdir/test_menu.vim src/version.c
diffstat 3 files changed, 31 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- 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
 
--- a/src/testdir/test_menu.vim
+++ b/src/testdir/test_menu.vim
@@ -160,9 +160,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)
@@ -369,6 +366,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'))
@@ -407,9 +408,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 '<'
--- a/src/version.c
+++ b/src/version.c
@@ -736,6 +736,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    141,
+/**/
     140,
 /**/
     139,