refactor config to define all keybinds in a single file

This commit is contained in:
2024-11-03 17:53:39 -05:00
parent 91ef397420
commit 37969ca98e
11 changed files with 180 additions and 156 deletions
-10
View File
@@ -2,16 +2,6 @@ return {
"rmagatti/auto-session",
lazy = false,
-- Configure keybinds
keys = {
{ "<leader>wa", "<cmd>SessionToggleAutoSave<CR>", desc = "Toggle session autosave" },
{ "<leader>wD", "<cmd>Autosession delete<CR>", desc = "Delete a session" },
{ "<leader>wd", "<cmd>SessionDelete<CR>", desc = "Delete session for cwd" },
{ "<leader>wl", "<cmd>SessionSearch<CR>", desc = "Open session picker" },
{ "<leader>wr", "<cmd>SessionRestore<CR>", desc = "Restore session for cwd" },
{ "<leader>ws", "<cmd>SessionSave<CR>", desc = "Save session for cwd" },
},
---@module "auto-session"
---@type AutoSession.Config
opts = {
-34
View File
@@ -70,39 +70,5 @@ return {
row = 0,
col = 1,
},
on_attach = function(bufnr)
local gs = package.loaded.gitsigns
local function map(mode, l, r, desc)
vim.keymap.set(mode, l, r, { buffer = bufnr, desc = desc })
end
map("n", "]h", gs.next_hunk, "Next hunk")
map("n", "[h", gs.prev_hunk, "Prev hunk")
map("n", "<leader>hs", gs.stage_hunk, "Stage Hunk")
map("n", "<leader>hr", gs.reset_hunk, "Reset Hunk")
map("v", "<leader>hs", function()
gs.stage_hunk { vim.fn.line ".", vim.fn.line "v" }
end, "Reset Hunk")
map("n", "<leader>hS", gs.stage_buffer, "Stage buffer")
map("n", "<leader>hR", gs.reset_buffer, "Reset buffer")
map("n", "<leader>hu", gs.undo_stage_hunk, "Undo stage hunk")
map("n", "<leader>hp", gs.preview_hunk, "Preview hunk")
map("n", "<leader>hb", function()
gs.blame_line { full = true }
end, "Blame line")
map("n", "<leader>hB", gs.toggle_current_line_blame, "Toggle line blame")
map("n", "<leader>hd", gs.diffthis, "Diff this")
map("n", "<leader>hD", function()
gs.diffthis "~"
end, "Diff this ~")
map({ "o", "x" }, "ih", ":<C-U>Gitsigns select_hunk<CR>", "Gitsigns select hunk")
end,
},
}
-3
View File
@@ -10,7 +10,4 @@ return {
dependencies = {
"nvim-lua/plenary.nvim",
},
keys = {
{ "<leader>lg", "<cmd>LazyGit<cr>", desc = "Open LazyGit" },
},
}
+5 -6
View File
@@ -3,14 +3,17 @@ return {
event = { "BufReadPre", "BufNewFile" },
config = function()
local lint = require("lint")
local lint = require "lint"
lint.linters_by_ft = {
markdown = { "markdownlint" },
html = { "htmlhint" },
json = { "jsonlint" },
bash = { "shellcheck", "shellharden" },
javascript = { "eslint_d" },
typescript = { "eslint_d" },
javascriptreact = { "eslint_d" },
typescriptreact = { "eslint_d" },
svelte = { "eslint_d" },
python = { "pylint" },
}
@@ -22,9 +25,5 @@ return {
lint.try_lint()
end,
})
vim.keymap.set("n", "<leader>l", function()
lint.try_lint()
end, { desc = "Trigger linting for current file"})
end,
}
+39 -52
View File
@@ -1,60 +1,47 @@
return {
"nvim-tree/nvim-tree.lua",
dependencies = "nvim-tree/nvim-web-devicons",
config = function()
local nvimtree = require "nvim-tree"
opts = {
view = {
width = 35,
relativenumber = true,
},
renderer = {
indent_markers = {
enable = true,
},
icons = {
glyphs = {
default = "",
folder = {
default = "",
open = "",
empty = "",
empty_open = "",
arrow_closed = "", -- arrow when folder is closed
arrow_open = "", -- arrow when folder is open
},
},
},
},
actions = {
open_file = {
window_picker = {
enable = false,
},
},
},
filters = {
custom = { ".DS_Store" },
},
git = {
ignore = false,
},
},
vim.g.loaded_netrw = 1
config = function(_, opts)
vim.g.loaded_netrwPlugin = 1
nvimtree.setup {
view = {
width = 35,
relativenumber = true,
},
renderer = {
indent_markers = {
enable = true,
},
icons = {
glyphs = {
default = "",
folder = {
default = "",
open = "",
empty = "",
empty_open = "",
arrow_closed = "", -- arrow when folder is closed
arrow_open = "", -- arrow when folder is open
},
},
},
},
actions = {
open_file = {
window_picker = {
enable = false,
},
},
},
filters = {
custom = { ".DS_Store" },
},
git = {
ignore = false,
},
}
local keymap = vim.keymap
keymap.set("n", "<leader>ee", "<cmd>NvimTreeToggle<CR>", { desc = "Toggle file explorer" })
keymap.set(
"n",
"<leader>ef",
"<cmd>NvimTreeFindFileToggle<CR>",
{ desc = "Toggle file explorer on current file" }
)
keymap.set("n", "<leader>ec", "<cmd>NvimTreeCollapse<CR>", { desc = "Collapse file explorer" })
keymap.set("n", "<leader>er", "<cmd>NvimTreeRefresh<CR>", { desc = "Refresh file explorer" })
require("nvim-tree").setup(opts)
end,
}
+1 -8
View File
@@ -1,6 +1,7 @@
return {
"stevearc/conform.nvim",
event = { "BufReadPre", "BufNewFile" },
config = function()
local conform = require "conform"
@@ -27,13 +28,5 @@ return {
timeout_ms = 1000,
},
}
vim.keymap.set({ "n", "v" }, "<leader>mp", function()
conform.format {
lsp_fallback = true,
async = false,
timeout_ms = 1000,
}
end, { desc = "Format file or range (in visual mode)" })
end,
}
+2 -11
View File
@@ -1,17 +1,8 @@
return {
"gbprod/substitute.nvim",
event = { "BufReadPre", "BufNewFile" },
config = function()
local substitute = require("substitute")
substitute.setup()
local keymap = vim.keymap
keymap.set("n", "s", substitute.operator, { desc = "Substitute with motion" })
keymap.set("n", "ss", substitute.line, { desc = "Substitute line" })
keymap.set("n", "S", substitute.line, { desc = "Substitute to end of line" })
keymap.set("x", "s", substitute.visual, { desc = "Substitute in visual mode" })
require("substitute").setup()
end,
}
-9
View File
@@ -35,14 +35,5 @@ return {
}
telescope.load_extension "fzf"
-- keymaps
local keymap = vim.keymap
keymap.set("n", "<leader>ff", "<cmd>Telescope find_files<cr>", { desc = "Fuzzy find files in cwd" })
keymap.set("n", "<leader>fr", "<cmd>Telescope oldfiles<cr>", { desc = "Fuzzy find recent files" })
keymap.set("n", "<leader>fs", "<cmd>Telescope live_grep<cr>", { desc = "Find string in cwd" })
keymap.set("n", "<leader>fc", "<cmd>Telescope grep_string<cr>", { desc = "Find string under cursor in cwd" })
keymap.set("n", "<leader>ft", "<cmd>TodoTelescope<cr>", { desc = "Find todos" })
end,
}
+2 -13
View File
@@ -2,19 +2,8 @@ return {
"folke/todo-comments.nvim",
event = { "BufReadPre", "BufNewFile" },
dependencies = { "nvim-lua/plenary.nvim" },
config = function()
local todo_comments = require("todo-comments")
local keymap = vim.keymap
keymap.set("n", "]t", function()
todo_comments.jump_next()
end, { desc = "Next todo comment" })
keymap.set("n", "[t", function()
todo_comments.jump_prev()
end, { desc = "Previous todo comment" })
todo_comments.setup()
require("todo-comments").setup()
end,
}
+4 -8
View File
@@ -1,15 +1,11 @@
return {
"folke/trouble.nvim",
dependencies = { "nvim-tree/nvim-web-devicons", "folke/todo-comments.nvim", },
dependencies = {
"nvim-tree/nvim-web-devicons",
"folke/todo-comments.nvim",
},
opts = {
focus = true,
},
cmd = "Trouble",
keys = {
{ "<leader>xw", "<cmd>Trouble diagnostics toggle<CR>", desc = "Open trouble workspace diagnostics" },
{ "<leader>xd", "<cmd>Trouble diagnostics toggle filter.buf=0<CR>", desc = "Open trouble document diagnostics" },
{ "<leader>xq", "<cmd>Trouble quickfix toggle<CR>", desc = "Open trouble quickfix list" },
{ "<leader>xl", "<cmd>Trouble loclist toggle<CR>", desc = "Open trouble location list" },
{ "<leader>xt", "<cmd>Trouble todo toggle<CR>", desc = "Open todos in trouble" },
},
}