diff options
-rw-r--r-- | modules/textadept/menu.lua | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/modules/textadept/menu.lua b/modules/textadept/menu.lua index b974c5db..a3da4092 100644 --- a/modules/textadept/menu.lua +++ b/modules/textadept/menu.lua @@ -334,10 +334,11 @@ local function proxy_menu(menu, update, menubar) return type(v) == 'table' and proxy_menu(v, update, menubar or menu) or v end, __newindex = function(t, k, v) - menu[k] = v + menu[k] = getmetatable(v) and getmetatable(v).menu or v update(menubar or menu) end, __len = function(t) return #menu end, + menu = menu -- store existing menu for copying (e.g. m[#m + 1] = m[#m]) }) end |