mirror of
https://github.com/neovim/neovim.git
synced 2026-07-31 20:59:11 +00:00
fix(api): add lhs option for keymap deletion
This commit is contained in:
@@ -119,8 +119,11 @@ end
|
||||
---
|
||||
--- Remove a mapping from the given buffer. `0` for current.
|
||||
--- @field buf? integer
|
||||
--- When true, only match {lhs}, not {rhs}.
|
||||
--- @field lhs? boolean
|
||||
|
||||
--- Removes a mapping, or removes each (mode, lhs) pair if `lhs` is a list.
|
||||
---
|
||||
--- Examples:
|
||||
---
|
||||
--- ```lua
|
||||
@@ -152,12 +155,14 @@ function keymap.del(modes, lhs, opts)
|
||||
buf = opts.buffer == true and 0 or opts.buffer --[[@as integer?]]
|
||||
end
|
||||
|
||||
local api_opts = { lhs = opts.lhs }
|
||||
|
||||
for _, m in ipairs(modes) do
|
||||
for _, l in ipairs(lhs) do
|
||||
if buf then
|
||||
vim.api.nvim_buf_del_keymap(buf, m, l)
|
||||
vim.api.nvim_buf_del_keymap(buf, m, l, api_opts)
|
||||
else
|
||||
vim.api.nvim_del_keymap(m, l)
|
||||
vim.api.nvim_del_keymap(m, l, api_opts)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user