27 lines
1.8 KiB
Lua
27 lines
1.8 KiB
Lua
require('refactoring').setup({})
|
|
|
|
-- 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 }
|
|
)
|
|
|
|
-- Remaps for the refactoring operations currently offered by the plugin
|
|
vim.api.nvim_set_keymap("v", "<leader>rx", [[ <Esc><Cmd>lua require('refactoring').refactor('Extract Function')<CR>]], {noremap = true, silent = true, expr = false})
|
|
vim.api.nvim_set_keymap("v", "<leader>rxf", [[ <Esc><Cmd>lua require('refactoring').refactor('Extract Function To File')<CR>]], {noremap = true, silent = true, expr = false})
|
|
vim.api.nvim_set_keymap("v", "<leader>rxv", [[ <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>rxb", [[ <Cmd>lua require('refactoring').refactor('Extract Block')<CR>]], {noremap = true, silent = true, expr = false})
|
|
vim.api.nvim_set_keymap("n", "<leader>rxbf", [[ <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})
|
|
vim.api.nvim_set_keymap("n", "<leader>rx", [[ <Cmd>lua require('refactoring').refactor('Extract Variable')<CR>]], {noremap = true, silent = true, expr = false})
|