nvim: add refactoring and null-ls
This commit is contained in:
parent
b2c4d70e4b
commit
1ceeb62717
1 changed files with 43 additions and 0 deletions
|
@ -158,6 +158,49 @@ return require('packer').startup({function()
|
|||
-- vim.g.ale_disable_lsp = 1
|
||||
-- end
|
||||
-- }
|
||||
use { -- null-ls: Support for lots of programming tools, but through nvim lsp
|
||||
'jose-elias-alvarez/null-ls.nvim',
|
||||
requires = 'nvim-lua/plenary.nvim',
|
||||
config = function()
|
||||
local null_ls = require("null-ls")
|
||||
require("null-ls").setup({
|
||||
sources = {
|
||||
null_ls.builtins.code_actions.refactoring,
|
||||
null_ls.builtins.formatting.clang_format,
|
||||
}
|
||||
})
|
||||
end
|
||||
}
|
||||
use { -- refactoring: Refactoring for neovim
|
||||
'ThePrimeagen/refactoring.nvim',
|
||||
requires = {
|
||||
{"nvim-lua/plenary.nvim"},
|
||||
{"nvim-treesitter/nvim-treesitter"}
|
||||
},
|
||||
config = function()
|
||||
require('refactoring').setup({})
|
||||
-- Remaps for the refactoring operations currently offered by the plugin
|
||||
vim.api.nvim_set_keymap("v", "<leader>re", [[ <Esc><Cmd>lua require('refactoring').refactor('Extract Function')<CR>]], {noremap = true, silent = true, expr = false})
|
||||
vim.api.nvim_set_keymap("v", "<leader>rf", [[ <Esc><Cmd>lua require('refactoring').refactor('Extract Function To File')<CR>]], {noremap = true, silent = true, expr = false})
|
||||
vim.api.nvim_set_keymap("v", "<leader>rv", [[ <Esc><Cmd>lua require('refactoring').refactor('Extract Variable')<CR>]], {noremap = true, silent = true, expr = false})
|
||||
vim.api.nvim_set_keymap("v", "<leader>ri", [[ <Esc><Cmd>lua require('refactoring').refactor('Inline Variable')<CR>]], {noremap = true, silent = true, expr = false})
|
||||
-- Extract block doesn't need visual mode
|
||||
vim.api.nvim_set_keymap("n", "<leader>rb", [[ <Cmd>lua require('refactoring').refactor('Extract Block')<CR>]], {noremap = true, silent = true, expr = false})
|
||||
vim.api.nvim_set_keymap("n", "<leader>rbf", [[ <Cmd>lua require('refactoring').refactor('Extract Block To File')<CR>]], {noremap = true, silent = true, expr = false})
|
||||
-- Inline variable can also pick up the identifier currently under the cursor without visual mode
|
||||
vim.api.nvim_set_keymap("n", "<leader>ri", [[ <Cmd>lua require('refactoring').refactor('Inline Variable')<CR>]], {noremap = true, silent = true, expr = false})
|
||||
-- Refactoring telescope integration
|
||||
-- load refactoring Telescope extension
|
||||
require("telescope").load_extension("refactoring")
|
||||
-- remap to open the Telescope refactoring menu in visual mode
|
||||
vim.api.nvim_set_keymap(
|
||||
"v",
|
||||
"<leader>rr",
|
||||
"<Esc><cmd>lua require('telescope').extensions.refactoring.refactors()<CR>",
|
||||
{ noremap = true }
|
||||
)
|
||||
end,
|
||||
}
|
||||
---- DAP (Debug Adapter Protocol)
|
||||
use { -- nvim-dap: DAP support
|
||||
'mfussenegger/nvim-dap',
|
||||
|
|
Loading…
Add table
Reference in a new issue