Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
related: #1628
Extensions, e.g.
file_browser
, merge default key mappings and user defined ones in theirsetup
s. the mappings contain actions which typically have__call
and other metamethods.However, when merging tables,
vim.tbl_extend
returns a table without a metatable. Thusvim.tbl_deep_extend({n = {g = action1}}, {n = {g = action2}})
will try to mergeaction1
andaction2
, but the returned table doesn't have metatables.This is mainly an issue of
vim.tbl_extend
. I have opened an issue there, but it would be nice to also have things work without having to upgrade neovim.Type of change
How Has This Been Tested?
Example config:
Trying to trigger the action will get an error:
mappings.lua:290: attempt to call upvalue 'key_func' (a table value)
Checklist: