feat: remap organization and cleanup

This commit is contained in:
2026-03-03 11:11:38 +01:00
parent 92c9f02ab2
commit a7c14ff0ae
4 changed files with 60 additions and 93 deletions

View File

@@ -2,15 +2,16 @@ vim.g.mapleader = " "
local map = vim.keymap.set
---- Bufferline ----
map("n", "bg", "<CMD>BufferLinePick<CR>")
map("n", "<leader>bpx", "<CMD>BufferLinePickClose<CR>")
-- Not used but maybe in the future
-- map("n", "bg", "<CMD>BufferLinePick<CR>")
-- map("n", "<leader>bpx", "<CMD>BufferLinePickClose<CR>")
map("n", "<leader>box", "<CMD>BufferLineCloseOthers<CR>")
map("n", "<Tab>", "<CMD>BufferLineCycleNext<CR>")
map("n", "<S-Tab>", "<CMD>BufferLineCyclePrev<CR>")
map("n", "bsd", "<CMD>BufferLineSortByDirectory<CR>")
map("n", "bse", "<CMD>BufferLineSortByExtension<CR>")
map("n", "bsr", "<CMD>BufferLineSortByRelativeDirectory<CR>")
map("n", "bst", "<CMD>BufferLineSortByTabs<CR>")
map("n", "<leader>bsd", "<CMD>BufferLineSortByDirectory<CR>")
map("n", "<leader>bse", "<CMD>BufferLineSortByExtension<CR>")
map("n", "<leader>bsr", "<CMD>BufferLineSortByRelativeDirectory<CR>")
map("n", "<leader>bst", "<CMD>BufferLineSortByTabs<CR>")
-- buffers
map("n", "<S-h>", "<cmd>BufferLineMovePrev<cr>", { desc = "Move buffer to left" })
map("n", "<S-l>", "<cmd>BufferLineMoveNext<cr>", { desc = "Move buffer to right" })
@@ -31,63 +32,40 @@ map("n", "<leader>nt", "<cmd>:tabnew<cr>", { desc = "Create new tabpage" })
---------------------------------------------------------------------------
-- Treesitter context
map("n", "<leader>tc", "<cmd>TSContextToggle<CR>", { desc = "Toggle treesitter context" })
-- Regex search and replace
map("n", "<leader>S", '<cmd>lua require("spectre").toggle()<CR>', {
desc = "Toggle Spectre",
})
map("n", "<leader>sw", '<cmd>lua require("spectre").open_visual({select_word=true})<CR>', {
desc = "Search current word",
})
map("v", "<leader>sw", '<esc><cmd>lua require("spectre").open_visual()<CR>', {
desc = "Search current word",
})
map("n", "<leader>sp", '<cmd>lua require("spectre").open_file_search({select_word=true})<CR>', {
desc = "Search on current file",
})
map("n", "<leader>tc", "<cmd>TSContext toggle<CR>", { desc = "Toggle treesitter context" })
-- Blueprints
map("n", "<leader>ct", "<cmd>lua require('blueprints').createFromTemplateTelescope()<CR>", { desc = "Nvim blueprints" })
---- Git ----
map("n", "<leader>gb", "<CMD>Gitsigns blame<CR>")
map("n", "<leader>gd", "<CMD>DiffviewOpen<CR>")
map("n", "<leader>gx", "<CMD>DiffviewClose<CR>")
map("n", "K", "<CMD>Gitsigns blame_line<CR>")
map("n", "<leader>gh", "<CMD>Gitsigns preview_hunk_inline<CR>")
map("n", "<leader>gtb", "<CMD>Gitsigns toggle_current_line_blame<CR>")
map("n", "<leader>gtd", "<CMD>Gitsigns toggle_deleted")
map("n", "<leader>gc", "<cmd>Telescope git_commits <CR>", { desc = "Git commits" })
map("n", "<leader>gs", "<cmd>Telescope git_status <CR>", { desc = "Git status" })
map("n", "<leader>gb", "<CMD>Gitsigns blame<CR>", { desc = "Git blame" })
map("n", "]g", "<CMD>Gitsigns next_hunk<CR>", { desc = "Git next change" })
map("n", "[g", "<CMD>Gitsigns prev_hunk<CR>", { desc = "Git prev change" })
map("n", "<leader>gdo", "<CMD>DiffviewOpen<CR>", { desc = "Git diff view open" })
map("n", "<leader>gdx", "<CMD>DiffviewClose<CR>", { desc = "Git diff view close" })
map("n", "<leader>gh", "<CMD>Gitsigns preview_hunk_inline<CR>", { desc = "Git preview hunk inline" })
map("n", "<leader>gtb", "<CMD>Gitsigns toggle_current_line_blame<CR>", { desc = "Git toggle line blame" })
map("n", "<leader>gtd", "<CMD>Gitsigns toggle_deleted<CR>", { desc = "Git toggle deleted" })
-- lazygit
map("n", "<leader>gg", function()
Snacks.lazygit({ cwd = LazyVim.root.git() })
end, { desc = "Lazygit (Root Dir)" })
map("n", "<leader>gG", function()
Snacks.lazygit()
end, { desc = "Lazygit (cwd)" })
map("n", "<leader>gB", function()
Snacks.lazygit.browse()
end, { desc = "Git Browse" })
end, { desc = "Lazygit (Root Dir)" })
map("n", "<leader>gf", function()
local git_path = vim.api.nvim_buf_get_name(0)
Snacks.lazygit({ args = { "-f", vim.trim(git_path) } })
end, { desc = "Lazygit Current File History" })
map("n", "<leader>gl", function()
Snacks.lazygit({ args = { "log" }, cwd = LazyVim.root.git() })
end, { desc = "Lazygit Log" })
map("n", "<leader>gL", function()
Snacks.lazygit({ args = { "log" } })
end, { desc = "Lazygit Log (cwd)" })
map("n", "<leader>gs", function()
Snacks.lazygit({ args = { "status" } })
end, { desc = "Lazygit Log (cwd)" })
---------------------------------------------------------------------------
-- Neotree
map("n", "<C-n>", "<cmd>Neotree toggle<cr>", { desc = "Toggle Neotree open" })
map("n", "<C-e>", "<cmd>Neotree toggle<cr>", { desc = "Toggle Neotree open" })
map("n", "<leader>e", "<cmd>Neotree focus<cr>", { desc = "Focus neotree" })
-- LSP
@@ -97,6 +75,9 @@ end, { desc = "LSP declaration" })
map("n", "gd", function()
vim.lsp.buf.definition()
end, { desc = "LSP definition" })
map("n", "gT", function()
vim.lsp.buf.type_definition()
end, { desc = "LSP type definition" })
map("n", "gr", function()
vim.lsp.buf.references()
end, { desc = "LSP references" })
@@ -112,9 +93,6 @@ end, { desc = "LSP signature help" })
map("n", "<leader>lf", function()
vim.diagnostic.open_float({ border = "rounded" })
end, { desc = "Floating diagnostics" })
map("n", "<leader>D", function()
vim.lsp.buf.type_definition()
end, { desc = "LSP type definition" })
map("n", "<leader>ca", function()
vim.lsp.buf.code_action()
end, { desc = "LSP code actions" })
@@ -130,20 +108,16 @@ end, { desc = "LSP code action" })
map("n", "<leader>r", function()
vim.lsp.buf.rename()
end, { desc = "LSP rename" })
map("n", "<leader>wa", function()
vim.lsp.buf.add_workspace_folder()
end, { desc = "Add workspace folder" })
map("n", "<leader>wr", function()
vim.lsp.buf.remove_workspace_folder()
end, { desc = "Remove workspace folder" })
map("n", "<leader>wl", function()
print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
end, { desc = "List workspace folders" })
---- Debugging with dap ----
map("n", "<Leader>cdt", ":DapToggleBreakpoint<CR>")
map("n", "<Leader>cdx", ":DapTerminate<CR>")
map("n", "<Leader>cdo", ":DapStepOver<CR>")
-- LSP workspace folders (not used at the moment)
-- map("n", "<leader>wa", function()
-- vim.lsp.buf.add_workspace_folder()
-- end, { desc = "Add workspace folder" })
-- map("n", "<leader>wr", function()
-- vim.lsp.buf.remove_workspace_folder()
-- end, { desc = "Remove workspace folder" })
-- map("n", "<leader>wl", function()
-- print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
-- end, { desc = "List workspace folders" })
---- Completion ----
-- map({ "i", "s" }, "<Tab>", function()
@@ -165,6 +139,7 @@ map("n", "<leader><leader>", "<cmd> Telescope buffers <CR>", { desc = "Find buff
map("n", "<leader>fh", "<cmd> Telescope help_tags <CR>", { desc = "Help page" })
map("n", "<leader>fo", "<cmd> Telescope oldfiles <CR>", { desc = "Fild old files" })
map("n", "<leader>fz", "<cmd> Telescope current_buffer_fuzzy_find <CR>", { desc = "Find in current buffer" })
map("n", "<C-f>", "<cmd> Telescope current_buffer_fuzzy_find <CR>", { desc = "Find in current buffer" })
-----------------------------------------------------------
@@ -244,7 +219,6 @@ map("n", "]w", diagnostic_goto(true, "WARN"), { desc = "Next Warning" })
map("n", "[w", diagnostic_goto(false, "WARN"), { desc = "Prev Warning" })
---- Toggle options ----
map("n", "<leader>um", function()
require("monkey-alert").enable() -- does not toggle :O
end, { desc = "Toggle monkey alert" })

View File

@@ -53,31 +53,31 @@ local config = {
toggle_hidden_on_enter = true, -- when you re-enter a hidden group this options re-opens that group so the buffer is visible
},
items = {
-- {
-- name = "Tests",
-- -- icon = "󰙨 ",
-- highlight = { underline = false },
-- priority = 2,
-- matcher = function(buf)
-- return buf.path:match("%.test") or buf.path:match("%_test") or buf.path:match("%_spec")
-- end,
-- },
-- {
-- name = "Docs",
-- -- icon = "󰈙 ",
-- priority = 3,
-- -- highlight = { undercurl = false, sp = "grey" },
-- highlight = { undercurl = false },
-- auto_close = false,
-- matcher = function(buf)
-- return buf.path:match("%.md") or buf.path:match("%.txt")
-- end,
-- separator = {
-- style = require("bufferline.groups").separator.tab,
-- },
-- },
{
name = "Tests",
-- icon = "󰙨 ",
highlight = { underline = false },
priority = 2,
matcher = function(buf)
return buf.path:match("%.test") or buf.path:match("%_test") or buf.path:match("%_spec")
end,
},
{
name = "Docs",
-- icon = "󰈙 ",
priority = 3,
-- highlight = { undercurl = false, sp = "grey" },
highlight = { undercurl = false },
auto_close = false,
matcher = function(buf)
return buf.path:match("%.md") or buf.path:match("%.txt")
end,
separator = {
style = require("bufferline.groups").separator.tab,
},
},
{
name = "Shells",
name = "Sh",
-- icon = " ",
highlight = { undercurl = false },
auto_close = false,