From 96b9363b73afb0c2343366b26d11e2ec8027a9bc Mon Sep 17 00:00:00 2001 From: thek4n Date: Wed, 3 Jul 2024 14:53:45 +0300 Subject: [PATCH] feat(nvim): add plugin for code actions --- home/user/.config/nvim/lua/plugins/coding.lua | 27 ++++++++++++++++++- .../.config/nvim/lua/plugins/lsp_manager.lua | 2 +- 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/home/user/.config/nvim/lua/plugins/coding.lua b/home/user/.config/nvim/lua/plugins/coding.lua index f2eb9cb..316a4ab 100644 --- a/home/user/.config/nvim/lua/plugins/coding.lua +++ b/home/user/.config/nvim/lua/plugins/coding.lua @@ -150,5 +150,30 @@ return { set_gitsigns_keymap('r', 'reset_hunk') -- reset hunk under cursor set_gitsigns_keymap('h', 'toggle_linehl') -- line highlighting end - } + }, + { + "aznhe21/actions-preview.nvim", + dependencies = { + 'nvim-telescope/telescope.nvim', + 'MunifTanjim/nui.nvim' + }, + config = function() + require("actions-preview").setup { + telescope = { + sorting_strategy = "ascending", + layout_strategy = "vertical", + layout_config = { + width = 0.8, + height = 0.9, + prompt_position = "top", + preview_cutoff = 20, + preview_height = function(_, _, max_lines) + return max_lines - 15 + end, + }, + }, + } + vim.keymap.set("n", "ca", require("actions-preview").code_actions) + end, + }, } \ No newline at end of file diff --git a/home/user/.config/nvim/lua/plugins/lsp_manager.lua b/home/user/.config/nvim/lua/plugins/lsp_manager.lua index ad9d6eb..8bbea59 100644 --- a/home/user/.config/nvim/lua/plugins/lsp_manager.lua +++ b/home/user/.config/nvim/lua/plugins/lsp_manager.lua @@ -1,4 +1,5 @@ local on_attach = function(_, bufnr) + local function buf_set_keymap(...) vim.api.nvim_buf_set_keymap(bufnr, ...) end local function buf_set_option(...) vim.api.nvim_set_option_value(...) end @@ -20,7 +21,6 @@ local on_attach = function(_, bufnr) buf_set_keymap('n', 'wl', 'lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))', opts) buf_set_keymap('n', 'D', 'lua vim.lsp.buf.type_definition()', opts) buf_set_keymap('n', 'rn', 'lua vim.lsp.buf.rename()', opts) - buf_set_keymap('n', 'ca', 'lua vim.lsp.buf.code_action()', opts) buf_set_keymap('n', 'e', 'lua vim.diagnostic.open_float()', opts) buf_set_keymap('n', 'p', 'lua vim.diagnostic.goto_prev()', opts) buf_set_keymap('n', 'n', 'lua vim.diagnostic.goto_next()', opts)