fix: make transform keymaps work in both normal and visual modes

Fixed keymaps to use command strings instead of function references:
- <leader>ctt (visual): Uses :<C-u>CoderTransformVisual<CR>
- <leader>ctt (normal): Uses <cmd>CoderTransformCursor<CR>
- <leader>ctT (normal): Uses <cmd>CoderTransform<CR>

Also fixed CoderTransformVisual to properly receive line range from opts.
This commit is contained in:
2026-01-11 15:42:34 -05:00
parent bbdc1aa849
commit 5b90a8e5f9

View File

@@ -687,8 +687,10 @@ function M.setup()
cmd_transform_at_cursor()
end, { desc = "Transform /@ @/ tag at cursor" })
vim.api.nvim_create_user_command("CoderTransformVisual", function()
cmd_transform_visual()
vim.api.nvim_create_user_command("CoderTransformVisual", function(opts)
local start_line = opts.line1
local end_line = opts.line2
cmd_transform_range(start_line, end_line)
end, { range = true, desc = "Transform /@ @/ tags in visual selection" })
-- Setup default keymaps
@@ -698,25 +700,22 @@ end
--- Setup default keymaps for transform commands
function M.setup_keymaps()
-- Visual mode: transform selected /@ @/ tags
vim.keymap.set("v", "<leader>ctt", function()
-- Exit visual mode and run the command
vim.cmd("normal! ")
vim.schedule(function()
local start_line = vim.fn.line("'<")
local end_line = vim.fn.line("'>")
cmd_transform_range(start_line, end_line)
end)
end, { desc = "Coder: Transform selected tags" })
vim.keymap.set("v", "<leader>ctt", ":<C-u>CoderTransformVisual<CR>", {
silent = true,
desc = "Coder: Transform selected tags"
})
-- Normal mode: transform tag at cursor
vim.keymap.set("n", "<leader>ctt", function()
cmd_transform_at_cursor()
end, { desc = "Coder: Transform tag at cursor" })
vim.keymap.set("n", "<leader>ctt", "<cmd>CoderTransformCursor<CR>", {
silent = true,
desc = "Coder: Transform tag at cursor"
})
-- Normal mode: transform all tags in file
vim.keymap.set("n", "<leader>ctT", function()
cmd_transform()
end, { desc = "Coder: Transform all tags in file" })
vim.keymap.set("n", "<leader>ctT", "<cmd>CoderTransform<CR>", {
silent = true,
desc = "Coder: Transform all tags in file"
})
end
return M