diff options
| author | TJ DeVries <devries.timothyj@gmail.com> | 2020-08-30 22:22:07 -0400 |
|---|---|---|
| committer | TJ DeVries <devries.timothyj@gmail.com> | 2020-08-31 00:06:53 -0400 |
| commit | a6fe9721ac0791bdf18a04594c31b28e879ed63e (patch) | |
| tree | 9929dddf5f9c8069e83df0dbea2df7ae6f8128b5 /lua/telescope/mappings.lua | |
| parent | d83731c386ec23df7bd59035ee62396b9761ef96 (diff) | |
wip: start on mappings
Diffstat (limited to 'lua/telescope/mappings.lua')
| -rw-r--r-- | lua/telescope/mappings.lua | 39 |
1 files changed, 35 insertions, 4 deletions
diff --git a/lua/telescope/mappings.lua b/lua/telescope/mappings.lua index 01d2a11..38c664a 100644 --- a/lua/telescope/mappings.lua +++ b/lua/telescope/mappings.lua @@ -7,6 +7,37 @@ local state = require('telescope.state') local mappings = {} local keymap = {} +local keymap_store = {} + +--[[ +mappings.apply_keymap(42, { + normal = { + ["<leader>x"] = "just do this string", + + ["<CR>"] = function(picker, prompt_bufnr) + actions.close_prompt() + + local filename = ... + vim.cmd(string.format(":e %s", filename)) + end, + }, + insert = { + } +}) +--]] +mappings.apply_keymap = function(prompt_bufnr, buffer_keymap) + + vim.cmd(string.format( + [[autocmd BufDelete %s :lua require('telescope.mappings').clear(%s)]], + prompt_bufnr, + prompt_bufnr + )) +end + +mappings.clear = function(prompt_bufnr) + keymap_store[prompt_bufnr] = nil +end + mappings.set_keymap = function(prompt_bufnr, results_bufnr) local function default_mapper(mode, map_key, table_key) a.nvim_buf_set_keymap( @@ -25,8 +56,8 @@ mappings.set_keymap = function(prompt_bufnr, results_bufnr) ) end - default_mapper('i', '<c-n>', 'control-n') - default_mapper('i', '<c-p>', 'control-p') + default_mapper('i', '<c-n>', 'next_selection') + default_mapper('i', '<c-p>', 'previous_selection') default_mapper('i', '<CR>', 'enter') default_mapper('n', '<esc>', 'escape') @@ -42,11 +73,11 @@ end -- TODO: Refactor this to use shared code. -- TODO: Move from top to bottom, etc. -- TODO: It seems like doing this brings us back to the beginning of the prompt, which is not great. -keymap["control-n"] = function(prompt_bufnr, _) +keymap["next_selection"] = function(prompt_bufnr, _) actions.shift_current_selection(prompt_bufnr, 1) end -keymap["control-p"] = function(prompt_bufnr, _) +keymap["previous_selection"] = function(prompt_bufnr, _) actions.shift_current_selection(prompt_bufnr, -1) end |
