Add code action rename

This commit is contained in:
Drew Galbraith 2025-05-12 22:43:42 -07:00
parent 4d6fff0bf2
commit dc156ed65f
2 changed files with 46 additions and 53 deletions

View File

@ -1,22 +1,14 @@
local organize_imports = function()
local cur_buf = vim.api.nvim_get_current_buf()
local cur_buf_name = vim.api.nvim_buf_get_name(cur_buf)
local params = { command = "source.organizeImports.ruff", arguments = { cur_buf_name } }
vim.lsp.buf_request_sync(cur_buf, 'textDocument/codeAction', params)
end
require("which-key").add({ require("which-key").add({
"<leader>co", "<leader>co",
function() function()
vim.lsp.buf.code_action({ vim.lsp.buf.code_action({
apply = true, apply = true,
context = { context = {
only = { "source.organizeImports" }, -- Or the specific ruff identifier if known only = { "source.organizeImports" }, -- Or the specific ruff identifier if known
}, },
bufnr = vim.api.nvim_get_current_buf(), bufnr = vim.api.nvim_get_current_buf(),
}) })
end end
, ,
name = "Organize Imports" name = "Organize Imports"
}) })

View File

@ -1,33 +1,34 @@
require("which-key").add({ require("which-key").add({
{ "<leader>b", group = "buffer" }, { "<leader>b", group = "buffer" },
{ "<leader>bd", ":bd<CR>", name = "delete current" }, { "<leader>bd", ":bd<CR>", name = "delete current" },
{ "<leader>c", group = "code" }, { "<leader>c", group = "code" },
{ "<leader>ca", vim.lsp.buf.code_action, name = "code action" }, { "<leader>ca", vim.lsp.buf.code_action, name = "code action" },
{ "<leader>cd", vim.diagnostic.open_float, name = "diagnostic" }, { "<leader>cd", vim.diagnostic.open_float, name = "diagnostic" },
{ "<leader>cr", vim.lsp.buf.rename, name = "rename" },
{ "<leader>e", Snacks.explorer.open, name = "explorer" }, { "<leader>e", Snacks.explorer.open, name = "explorer" },
{ "<leader>f", group = "find" }, { "<leader>f", group = "find" },
{ "<leader>fb", Snacks.picker.buffers, name = "buffers" }, { "<leader>fb", Snacks.picker.buffers, name = "buffers" },
{ "<leader>ff", Snacks.picker.files, name = "files" }, { "<leader>ff", Snacks.picker.files, name = "files" },
{ "<leader>fg", Snacks.picker.grep, name = "grep" }, { "<leader>fg", Snacks.picker.grep, name = "grep" },
{ "<leader>g", group = "git" }, { "<leader>g", group = "git" },
{ "<leader>gb", group = "blame" }, { "<leader>gb", group = "blame" },
{ "<leader>gbf", ":Gitsigns blame<CR>", name = "file" }, { "<leader>gbf", ":Gitsigns blame<CR>", name = "file" },
{ "<leader>gbh", ":Gitsigns blame_line<CR>", name = "hover" }, { "<leader>gbh", ":Gitsigns blame_line<CR>", name = "hover" },
{ "<leader>gbl", ":Gitsigns toggle_current_line_blame<CR>", name = "virtual text" }, { "<leader>gbl", ":Gitsigns toggle_current_line_blame<CR>", name = "virtual text" },
{ "<leader>gh", group = "hunk" }, { "<leader>gh", group = "hunk" },
{ "<leader>ghr", ":Gitsigns reset_hunk<CR>", name = "reset hunk" }, { "<leader>ghr", ":Gitsigns reset_hunk<CR>", name = "reset hunk" },
{ "<leader>ghp", ":Gitsigns preview_hunk<CR>", name = "reset hunk" }, { "<leader>ghp", ":Gitsigns preview_hunk<CR>", name = "reset hunk" },
{ "<leader>s", group = "search" }, { "<leader>s", group = "search" },
{ "<leader>ss", Snacks.picker.lsp_workspace_symbols, name = "symbols" }, { "<leader>ss", Snacks.picker.lsp_workspace_symbols, name = "symbols" },
{ "<leader>sg", Snacks.picker.grep, name = "grep" }, { "<leader>sg", Snacks.picker.grep, name = "grep" },
{ "<leader>u", group = "ui" }, { "<leader>u", group = "ui" },
{ "<leader>ut", Snacks.picker.colorschemes, name = "colorschemes" }, { "<leader>ut", Snacks.picker.colorschemes, name = "colorschemes" },
{ {
"<leader>ul", "<leader>ul",
function() function()
@ -42,19 +43,19 @@ require("which-key").add({
name = "toggle lsp lines", name = "toggle lsp lines",
}, },
{ "<leader>w", group = "window" }, { "<leader>w", group = "window" },
{ "<leader>wh", "<C-w>h", name = "left" }, { "<leader>wh", "<C-w>h", name = "left" },
{ "<leader>wj", "<C-w>j", name = "down" }, { "<leader>wj", "<C-w>j", name = "down" },
{ "<leader>wk", "<C-w>k", name = "right" }, { "<leader>wk", "<C-w>k", name = "right" },
{ "<leader>wl", "<C-w>l", name = "up" }, { "<leader>wl", "<C-w>l", name = "up" },
{ "<leader>wq", ":q<CR>", name = "quit" }, { "<leader>wq", ":q<CR>", name = "quit" },
{ "g", group = "goto" }, { "g", group = "goto" },
{ "gd", vim.lsp.buf.definition, name = "definition" }, { "gd", vim.lsp.buf.definition, name = "definition" },
{ "gr", Snacks.picker.lsp_references, nowait = true, name = "references" }, { "gr", Snacks.picker.lsp_references, nowait = true, name = "references" },
{ "H", ":bprev<CR>", name = "previous buffer" }, { "H", ":bprev<CR>", name = "previous buffer" },
{ "L", ":bnext<CR>", name = "next buffer" }, { "L", ":bnext<CR>", name = "next buffer" },
{ {
"[h", "[h",