legendary.nvim icon indicating copy to clipboard operation
legendary.nvim copied to clipboard

[Bug]: "Resolve" duplicate keymappings e.g. when there are buffer-local keymaps that override global ones

Open mrjones2014 opened this issue 2 years ago • 0 comments

Similar Issues

  • [X] Before filing, I have searched for similar issues.

Neovim Version

NVIM v0.8.2
Build type: Release
LuaJIT 2.1.0-beta3
Compiled by [email protected]

Features: +acl +iconv +tui
See ":help feature-compile"

   system vimrc file: "$VIM/sysinit.vim"
  fall-back for $VIM: "/opt/homebrew/Cellar/neovim/0.8.2/share/nvim"

Run :checkhealth for more info

Expected Behavior

For example, when you have the following keymaps:

{ '<leader>t', description = "Something" },

{ '<leader>t' description = "Something else in buffer 1", opts = { buffer = 1 } },

When you trigger the finder from buffer 1, only the second keymap there should appear, because it is the "resolved" or "active" keymap for the keys <leader>t in that buffer. Once #317 is merged we will need to consider the filters as well when resolving keymaps.

Actual Behavior

Both keymaps are shown.

Minimal Configuration to Reproduce

Run the following code in the :LegendaryScratch buffer (by running :LegendaryEvalBuf), then trigger the finder from the same buffer:

require('legendary').keymaps({
  { '<leader>t', description = "This shouldn't show" },
  { '<leader>t', description = "This one is more specific and should show", opts = { buffer = 0 } },
})

Output from :LegendaryLog

:LegendaryLog output (click to expand)

Additional Details and/or Screenshots

No response

mrjones2014 avatar Mar 14 '23 11:03 mrjones2014