From 3635dd88efd7bcb80e39a88022d995f568dd2ca8 Mon Sep 17 00:00:00 2001 From: "David T. Sadler" Date: Fri, 13 Feb 2026 20:29:56 +0000 Subject: Improve key mappings for pickers --- nvim/.config/nvim/init.lua | 2 +- nvim/.config/nvim/lua/config/keymaps.lua | 24 ++++++++++++------------ nvim/.config/nvim/lua/plugins/blink-cmp.lua | 7 ++++++- 3 files changed, 19 insertions(+), 14 deletions(-) (limited to 'nvim') diff --git a/nvim/.config/nvim/init.lua b/nvim/.config/nvim/init.lua index d18022c..372bf48 100644 --- a/nvim/.config/nvim/init.lua +++ b/nvim/.config/nvim/init.lua @@ -1,6 +1,6 @@ require('config.globals') require('config.options') +require('plugins') require('config.keymaps') require('config.autocmds') require('config.lsp') -require('plugins') diff --git a/nvim/.config/nvim/lua/config/keymaps.lua b/nvim/.config/nvim/lua/config/keymaps.lua index 00d74ee..53fc349 100644 --- a/nvim/.config/nvim/lua/config/keymaps.lua +++ b/nvim/.config/nvim/lua/config/keymaps.lua @@ -2,6 +2,9 @@ local set = vim.keymap.set +-- Quickly source current file. +set('n', 'r', 'source %', { desc = 'Source Current File' }) + -- Better up/down though display lines instead of logical lines. -- But still allow count when jumping by logical lines. set({ 'n', 'x' }, 'j', "v:count == 0 ? 'gj' : 'j'", { desc = 'Down', expr = true, silent = true }) @@ -9,19 +12,19 @@ set({ 'n', 'x' }, '', "v:count == 0 ? 'gj' : 'j'", { desc = 'Down', expr = set({ 'n', 'x' }, 'k', "v:count == 0 ? 'gk' : 'k'", { desc = 'Up', expr = true, silent = true }) set({ 'n', 'x' }, '', "v:count == 0 ? 'gk' : 'k'", { desc = 'Up', expr = true, silent = true }) --- Window using arrow keys. +-- Window resizing using arrow keys. set('n', '', 'resize +2', { desc = 'Increase Window Height' }) set('n', '', 'resize -2', { desc = 'Decrease Window Height' }) set('n', '', 'vertical resize -2', { desc = 'Decrease Window Width' }) set('n', '', 'vertical resize +2', { desc = 'Increase Window Width' }) -- Move lines up/down. -set('n', '', "execute 'move .+' . v:count1==", { desc = 'Move Down' }) -set('n', '', "execute 'move .-' . (v:count1 + 1)==", { desc = 'Move Up' }) -set('i', '', 'm .+1==gi', { desc = 'Move Down' }) -set('i', '', 'm .-2==gi', { desc = 'Move Up' }) -set('v', '', ":execute \"'<,'>move '>+\" . v:count1gv=gv", { desc = 'Move Down' }) -set('v', '', ":execute \"'<,'>move '<-\" . (v:count1 + 1)gv=gv", { desc = 'Move Up' }) +set('n', '', "execute 'move .+' . v:count1==", { desc = 'Move Down' }) +set('n', '', "execute 'move .-' . (v:count1 + 1)==", { desc = 'Move Up' }) +set('i', '', 'm .+1==gi', { desc = 'Move Down' }) +set('i', '', 'm .-2==gi', { desc = 'Move Up' }) +set('v', '', ":execute \"'<,'>move '>+\" . v:count1gv=gv", { desc = 'Move Down' }) +set('v', '', ":execute \"'<,'>move '<-\" . (v:count1 + 1)gv=gv", { desc = 'Move Up' }) -- Buffer navigation. set('n', '<,', 'bprevious', { desc = 'Prev Buffer' }) @@ -118,9 +121,6 @@ set({ 'n', 'v' }, 'd', '"_d', { desc = 'Delete Without Yanking' }) -- Toggle visible whitespace characters.... set('n', 'l', 'set list!', { desc = 'Toggle Hidden Characters' }) --- Quickly source current file. -set('n', 'xx', 'source %', { desc = 'Source Current File' }) - -- LSP set('n', 'cl', function() Snacks.picker.lsp_config() end, { desc = "Lsp Info" }) set('n', 'gd', vim.lsp.buf.definition, { desc = 'Goto Definition' }) @@ -128,8 +128,8 @@ set('n', 'gr', vim.lsp.buf.references, { desc = 'References', nowait = true }) set('n', 'gI', vim.lsp.buf.implementation, { desc = 'Goto Implementation' }) set('n', 'gy', vim.lsp.buf.type_definition, { desc = 'Goto T[y]pe Definition' }) set('n', 'gD', vim.lsp.buf.declaration, { desc = 'Goto Declaration' }) -set('n', 'K', function() return vim.lsp.buf.hover() end, { desc = 'Hover' }) -set('n', 'gK', function() return vim.lsp.buf.signature_help() end, { desc = 'Signature Help' }) +set('n', 'H', function() return vim.lsp.buf.hover() end, { desc = 'Hover' }) +set('n', 'gH', function() return vim.lsp.buf.signature_help() end, { desc = 'Signature Help' }) set({'n', 'x'}, 'ca', vim.lsp.buf.code_action, { desc = 'Code Action' }) set({'n', 'x'}, 'cc', vim.lsp.codelens.run, { desc = 'Run Codelens' }) set('n', 'cR', function() Snacks.rename.rename_file() end, { desc = 'Rename File' }) diff --git a/nvim/.config/nvim/lua/plugins/blink-cmp.lua b/nvim/.config/nvim/lua/plugins/blink-cmp.lua index 0c11960..0027c0a 100644 --- a/nvim/.config/nvim/lua/plugins/blink-cmp.lua +++ b/nvim/.config/nvim/lua/plugins/blink-cmp.lua @@ -6,12 +6,17 @@ vim.pack.add({{ require('blink.cmp').setup({ keymap = { preset = 'default', + [''] = { 'select_prev', 'fallback_to_mappings' }, + [''] = { 'select_next', 'fallback_to_mappings' }, + [''] = { 'select_and_accept', 'fallback' }, }, appearance = { nerd_font_variant = 'mono', }, - -- Only show the documentation popup when manually triggered. completion = { + menu = { + auto_show = false, + }, documentation = { auto_show = false, } -- cgit v1.2.3-13-gbd6f