|
@@ -1,31 +0,0 @@
|
|
-local M = {}
|
|
|
|
-
|
|
|
|
-local mode_adapters = {
|
|
|
|
- insert_mode = "i",
|
|
|
|
- normal_mode = "n",
|
|
|
|
- term_mode = "t",
|
|
|
|
- visual_mode = "v",
|
|
|
|
- visual_block_mode = "x",
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
--- Load key mappings for a given mode
|
|
|
|
--- @param mode The keymap mode, can be one of the keys of mode_adapters
|
|
|
|
--- @param keymaps The list of key mappings
|
|
|
|
--- @param opts The mapping options
|
|
|
|
-M.load_mode = function(mode, keymaps, opts)
|
|
|
|
- mode = mode_adapters[mode] and mode_adapters[mode] or mode
|
|
|
|
- for key, mapping in pairs(keymaps) do
|
|
|
|
- vim.api.nvim_set_keymap(mode, key, mapping[1], opts)
|
|
|
|
- end
|
|
|
|
-end
|
|
|
|
-
|
|
|
|
--- Load key mappings for all provided modes
|
|
|
|
--- @param keymaps A list of key mappings for each mode
|
|
|
|
--- @param opts The mapping options for each mode
|
|
|
|
-M.load = function(keymaps, opts)
|
|
|
|
- for mode, mapping in pairs(keymaps) do
|
|
|
|
- M.load_mode(mode, mapping, opts[mode])
|
|
|
|
- end
|
|
|
|
-end
|
|
|
|
-
|
|
|
|
-return M
|
|
|