aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorElvis Claros Castro <elvis@claros.ar>2025-08-30 15:00:26 -0300
committerElvis Claros Castro <elvis@claros.ar>2025-08-30 15:00:26 -0300
commitbcb5775dabf2b9144d8a87721d0095d087827f3e (patch)
treec7860b9054e13f97cbc13d0eec103cd561a78da2
parent703b88587bf5bfa7468edffe35be956fe0a06f35 (diff)
downloadnvim-conf-bcb5775dabf2b9144d8a87721d0095d087827f3e.tar.gz
nvim-conf-bcb5775dabf2b9144d8a87721d0095d087827f3e.zip
feat(keymaps, plugins): agrega integración con Floaterm y elimina Harpoon
- Se añadió el plugin Floaterm para soporte de terminal flotante, incluyendo el mapeo <leader>ft para alternar el terminal. - Se eliminó el plugin Harpoon y sus mapeos relacionados para navegación de archivos y terminales. - Se refactorizaron los mapeos de teclas para mayor consistencia y legibilidad. - Motivación: simplificar el flujo de trabajo con terminales y reducir la cantidad de plugins reemplazando Harpoon por Floaterm.
-rw-r--r--lazy-lock.json2
-rw-r--r--lua/config/keymaps.lua126
-rw-r--r--lua/plugins/foatterm.lua6
-rw-r--r--lua/plugins/harpoon.lua72
4 files changed, 51 insertions, 155 deletions
diff --git a/lazy-lock.json b/lazy-lock.json
index 0666b2a..43c510b 100644
--- a/lazy-lock.json
+++ b/lazy-lock.json
@@ -21,6 +21,7 @@
"dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" },
"elixir-tools.nvim": { "branch": "main", "commit": "f7e18753f5587b422aac628249fa46c66ed24af3" },
"firenvim": { "branch": "master", "commit": "0c3b81444944ed51e9eb50b158b71ee26b611575" },
+ "floaterm": { "branch": "main", "commit": "ae3de018d20dccd9372bbff7137e8a6d6030f69e" },
"flutter-tools.nvim": { "branch": "main", "commit": "65b7399804315a1160933b64292d3c5330aa4e9f" },
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
"fzf": { "branch": "master", "commit": "5546c65491a26c7cd01e08d4ecc65eaab89b3363" },
@@ -29,7 +30,6 @@
"git-worktree.nvim": { "branch": "master", "commit": "f247308e68dab9f1133759b05d944569ad054546" },
"gitsigns.nvim": { "branch": "main", "commit": "6e3c66548035e50db7bd8e360a29aec6620c3641" },
"guihua.lua": { "branch": "master", "commit": "87bea7b98429405caf2a0ce4d029b027bb017c70" },
- "harpoon": { "branch": "master", "commit": "1bc17e3e42ea3c46b33c0bbad6a880792692a1b3" },
"hurl.nvim": { "branch": "main", "commit": "33ff81c0027c1d0071174eb40257010c7ce61e62" },
"hydra.nvim": { "branch": "master", "commit": "3ced42c0b6a6c85583ff0f221635a7f4c1ab0dd0" },
"icon-picker.nvim": { "branch": "master", "commit": "3ee9a0ea9feeef08ae35e40c8be6a2fa2c20f2d3" },
diff --git a/lua/config/keymaps.lua b/lua/config/keymaps.lua
index c42bf71..07c9d77 100644
--- a/lua/config/keymaps.lua
+++ b/lua/config/keymaps.lua
@@ -1,9 +1,9 @@
local map = vim.keymap.set
map("v", "<leader>p", function()
- local val = vim.fn.getreg '+'
+ local val = vim.fn.getreg "+"
vim.api.nvim_command [[normal! p]]
- vim.fn.setreg('+', val)
+ vim.fn.setreg("+", val)
end, { desc = "Special paste, paste without replacing copy register content" })
map("n", "<leader>mm", function()
@@ -69,98 +69,60 @@ map(
{ desc = "Save the current file and source it for .vim and .lua files" }
)
-map(
- "n",
- "<leader>vn",
- function() vim.diagnostic.jump({ count = 1, float = true }) end,
- { desc = "Goes to next diagnostic error" }
-)
-map(
- "n",
- "<leader>vp",
- function() vim.diagnostic.jump({ count = -1, float = true }) end,
- { desc = "Goes to prev diagnostic error" }
-)
+map("n", "<leader>vn", function()
+ vim.diagnostic.jump { count = 1, float = true }
+end, { desc = "Goes to next diagnostic error" })
+map("n", "<leader>vp", function()
+ vim.diagnostic.jump { count = -1, float = true }
+end, { desc = "Goes to prev diagnostic error" })
-map("v", "<leader>q", require('pi.select_to_quickfix').handle)
-map('n', '99', ':set invspell<CR>', { noremap = true })
+map("v", "<leader>q", require("pi.select_to_quickfix").handle)
+map("n", "99", ":set invspell<CR>", { noremap = true })
-- map("n", "<leader>ss", function() require('nvim-python-repl').send_statement_definition() end, { desc = "Send semantic unit to REPL"})
vim.api.nvim_set_keymap(
- 'n',
- '<C-Enter>',
+ "n",
+ "<C-Enter>",
[[<Esc>:lua require('nvim-python-repl').send_statement_definition()<CR>j]],
- {noremap = true, silent = true}
+ { noremap = true, silent = true }
)
vim.api.nvim_set_keymap(
- 'i',
- '<C-Enter>',
+ "i",
+ "<C-Enter>",
[[<Esc>:lua require('nvim-python-repl').send_statement_definition()<CR>i]],
- {noremap = true, silent = true}
-)
-map(
- "n",
- "<leader>sl",
- function() require('nvim-python-repl').send_visual_to_repl() end,
- { desc = "Send visual selection to REPL"}
-)
-map(
- "v",
- "<leader>sl",
- function() require('nvim-python-repl').send_visual_to_repl() end,
- { desc = "Send visual selection to REPL"}
-)
-map(
- "n",
- "<leader>MReturn",
- function() require('nvim-python-repl').send_buffer_to_repl() end,
- { desc = "Send entire buffer to REPL"}
-)
-map(
- "n",
- "<leader>e",
- function() require('nvim-python-repl').toggle_execute() end,
- { desc = "Automatically execute command in REPL after sent"}
-)
-map(
- "n",
- "<leader>vi",
- function() require('nvim-python-repl').toggle_vertical() end,
- { desc = "Create REPL in vertical or horizontal split"}
-)
-map(
- "n",
- "-",
- "<CMD>Oil<CR>",
- { desc = "Open parent directory" }
-)
-map(
- "n",
- "<leader>fg",
- function() require('telescope').extensions.live_grep_args.live_grep_args() end,
- {desc = "run grep"}
+ { noremap = true, silent = true }
)
+map("n", "<leader>sl", function()
+ require("nvim-python-repl").send_visual_to_repl()
+end, { desc = "Send visual selection to REPL" })
+map("v", "<leader>sl", function()
+ require("nvim-python-repl").send_visual_to_repl()
+end, { desc = "Send visual selection to REPL" })
+map("n", "<leader>MReturn", function()
+ require("nvim-python-repl").send_buffer_to_repl()
+end, { desc = "Send entire buffer to REPL" })
+map("n", "<leader>e", function()
+ require("nvim-python-repl").toggle_execute()
+end, { desc = "Automatically execute command in REPL after sent" })
+map("n", "<leader>vi", function()
+ require("nvim-python-repl").toggle_vertical()
+end, { desc = "Create REPL in vertical or horizontal split" })
+map("n", "-", "<CMD>Oil<CR>", { desc = "Open parent directory" })
+map("n", "<leader>fg", function()
+ require("telescope").extensions.live_grep_args.live_grep_args()
+end, { desc = "run grep" })
-- Asignar la función a una tecla específica
-vim.api.nvim_set_keymap(
- 'n',
- '<leader>w',
- ':lua ToggleWrap()<CR>',
- { noremap = true, silent = true }
-)
-map(
- "n",
- "<leader>rrn",
- ':RustLsp runnables<CR>',
- {desc = "run rust"}
-)
-vim.keymap.set('n', '<leader>pdm', function()
- require('dap-python').test_method()
+vim.api.nvim_set_keymap("n", "<leader>w", ":lua ToggleWrap()<CR>", { noremap = true, silent = true })
+map("n", "<leader>rrn", ":RustLsp runnables<CR>", { desc = "run rust" })
+vim.keymap.set("n", "<leader>pdm", function()
+ require("dap-python").test_method()
end)
-vim.keymap.set('n', '<leader>pdc', function()
- require('dap-python').test_class()
+vim.keymap.set("n", "<leader>pdc", function()
+ require("dap-python").test_class()
end)
-vim.keymap.set('n', '<leader>pdf', function()
- require('dap-python').test_file()
+vim.keymap.set("n", "<leader>pdf", function()
+ require("dap-python").test_file()
end)
+map("n", "<leader>ft", "<CMD>FloatermToggle<CR>", { desc = "run terminal" })
diff --git a/lua/plugins/foatterm.lua b/lua/plugins/foatterm.lua
new file mode 100644
index 0000000..708241a
--- /dev/null
+++ b/lua/plugins/foatterm.lua
@@ -0,0 +1,6 @@
+return {
+ "nvzone/floaterm",
+ dependencies = "nvzone/volt",
+ opts = {},
+ cmd = "FloatermToggle",
+}
diff --git a/lua/plugins/harpoon.lua b/lua/plugins/harpoon.lua
deleted file mode 100644
index a214924..0000000
--- a/lua/plugins/harpoon.lua
+++ /dev/null
@@ -1,72 +0,0 @@
-local keys = {}
-local terms = 3
-local binds = 5
-
-table.insert(keys, {
- "<leader>ss",
- function()
- require("harpoon.ui").toggle_quick_menu()
- end,
- desc = "Harpoon Menu",
-})
-
-table.insert(keys, {
- "<leader>sa",
- function()
- require("harpoon.mark").add_file()
- end,
- desc = "Harpoon Add file",
-})
-
-table.insert(keys, {
- "<leader>st",
- function()
- vim.api.nvim_command [[vsplit]]
- require("harpoon.term").gotoTerminal(1)
- vim.api.nvim_command [[startinsert]]
- end,
- desc = "Harpoon quick split Terminal",
-})
-
-for i = 1, terms do
- table.insert(keys, {
- string.format("<leader><leader>%s", i),
- function()
- require("harpoon.term").gotoTerminal(i)
- end,
- desc = "Harpoon go to terminal " .. i,
- })
-end
-
-for i = 1, binds do
- table.insert(keys, {
- string.format("<leader>%s", i),
- function()
- require("harpoon.ui").nav_file(i)
- end,
- desc = "Harpoon go to file " .. i,
- })
-end
-
-return {
- "ThePrimeagen/harpoon",
- dependencies = {
- "nvim-lua/plenary.nvim",
- "nvim-lua/popup.nvim",
- },
- keys = keys,
- opts = {
- global_settings = {
- enter_on_sendcmd = true,
- },
- projects = {
- ["$HOME/code/svelte/snippets"] = {
- term = {
- cmds = {
- "npm run dev",
- },
- },
- },
- },
- },
-}