From 0a874434662fceeffce0203000861738bde86492 Mon Sep 17 00:00:00 2001 From: Minijackson Date: Sun, 11 Sep 2022 22:54:17 +0200 Subject: vim-dev: add refactoring, add Null LSP providers, and LSP range_code_action mapping --- common/vim.nix | 2 ++ dotfiles/vim-dev.lua | 9 +++++++++ 2 files changed, 11 insertions(+) diff --git a/common/vim.nix b/common/vim.nix index 3452bf8..a9bbcad 100644 --- a/common/vim.nix +++ b/common/vim.nix @@ -115,6 +115,8 @@ let vim-polyglot editorconfig-vim vim-pandoc + # Fixes "duplicated vim plugin" issue + (refactoring-nvim.overrideAttrs (old: { dependencies = []; })) # Other tmux-complete-vim diff --git a/dotfiles/vim-dev.lua b/dotfiles/vim-dev.lua index 84b8e6e..dc8cf9f 100644 --- a/dotfiles/vim-dev.lua +++ b/dotfiles/vim-dev.lua @@ -16,6 +16,7 @@ local function on_attach(client, bufnr) vim.keymap.set("n", "gr", telescope_builtin.lsp_references, desc(opts, "LSP References")) vim.keymap.set("n", "sa", vim.lsp.buf.code_action, desc(opts, "LSP Code Actions")) + vim.keymap.set("v", "sa", vim.lsp.buf.range_code_action, desc(opts, "LSP Code Actions")) vim.keymap.set("n", "se", vim.diagnostic.open_float, desc(opts, "Local Diagnostics")) vim.keymap.set("n", "sE", telescope_builtin.diagnostics, desc(opts, "Global Diagnostics")) vim.keymap.set("n", "sl", vim.diagnostic.setloclist, desc(opts, "Diagnostics set LocList")) @@ -81,10 +82,18 @@ require("nlua.lsp.nvim").setup(lspconfig, { on_attach = on_attach, }) +-- Refactoring +require("refactoring").setup {} + -- Null LSP require("null-ls").setup({ sources = { + require("null-ls").builtins.code_actions.gitrebase, + require("null-ls").builtins.code_actions.gitsigns, + require("null-ls").builtins.code_actions.refactoring.with { + filetypes = { "typescript", "javascript", "lua", "c", "cpp", "go", "python", "java", "php", "ruby" }, + }, require("null-ls").builtins.code_actions.shellcheck, require("null-ls").builtins.code_actions.statix, require("null-ls").builtins.diagnostics.deadnix, -- cgit v1.2.3