fix: make <c-;> work again (#2073)

* fix: make <c-;> work again

* fix: also <c-_>
This commit is contained in:
phanium
2024-11-02 12:39:41 +08:00
committed by GitHub
parent 29fb485457
commit 7d4051064c
2 changed files with 4 additions and 2 deletions

View File

@@ -8,7 +8,7 @@ local keymap = {}
---@param keys string
---@return string
keymap.t = function(keys)
return (string.gsub(keys, '(<[A-Za-z0-9\\%-%[%]%^@]->)', function(match)
return (string.gsub(keys, '(<[A-Za-z0-9\\%-%[%]%^@;_]->)', function(match)
return vim.api.nvim_eval(string.format([["\%s"]], match))
end))
end
@@ -17,7 +17,7 @@ end
---@param keys string
---@return string
keymap.normalize = vim.fn.has('nvim-0.8') == 1 and function(keys)
local t = string.gsub(keys, '<([A-Za-z0-9\\%-%[%]%^@]-)>', function(match)
local t = string.gsub(keys, '<([A-Za-z0-9\\%-%[%]%^@;_]-)>', function(match)
-- Use the \<* notation, which distinguishes <C-J> from <NL>, etc.
return vim.api.nvim_eval(string.format([["\<*%s>"]], match))
end)

View File

@@ -16,6 +16,8 @@ describe('keymap', function()
'<C-^>',
'<C-@>',
'<C-\\>',
'<C-;>',
'<C-_>',
'<Tab>',
'<S-Tab>',
'<Plug>(example)',