diff --git a/.config/nvim/lua/mappings.lua b/.config/nvim/lua/mappings.lua index f9c1ffe..1b11100 100644 --- a/.config/nvim/lua/mappings.lua +++ b/.config/nvim/lua/mappings.lua @@ -13,150 +13,148 @@ vim.keymap.set("n", "J", "mzJ`z") vim.keymap.set("t", "", "") -- movement -vim.keymap.set("n", "", "wincmd h") -vim.keymap.set("n", "", "wincmd j") -vim.keymap.set("n", "", "wincmd k") -vim.keymap.set("n", "", "wincmd l") +vim.keymap.set("n", "", "wincmd h", { desc = "Focus Left" }) +vim.keymap.set("n", "", "wincmd j", { desc = "Focus Down" }) +vim.keymap.set("n", "", "wincmd k", { desc = "Focus Up" }) +vim.keymap.set("n", "", "wincmd l", { desc = "Focus Right" }) -- basics -vim.keymap.set("n", "f", "Telescope find_files") -vim.keymap.set("n", "F", "NvimTreeToggle") +vim.keymap.set("n", "f", "Telescope find_files", { desc = "Find Files" }) +vim.keymap.set("n", "F", "NvimTreeToggle", { desc = "Toggle File Manager" }) -- toggle term -vim.keymap.set("n", "c", "ToggleTermToggleAll") +vim.keymap.set("n", "c", "ToggleTermToggleAll", { desc = "Toggle All Terminals" }) -- vim.keymap.set("n", "C", "ToggleTerm") -vim.keymap.set("n", "C", ":ToggleTerm") +vim.keymap.set("n", "C", ":ToggleTerm", { desc = "Toggle Terminal" }) -- frequent actions -vim.keymap.set("n", "ar", "source ~/.config/nvim/init.lua") -vim.keymap.set("n", "ac", "Telescope find_files cwd=~/.config/nvim") -vim.keymap.set("n", "an", "NoNeckPain") +vim.keymap.set("n", "ar", "source ~/.config/nvim/init.lua", { desc = "Reload Config" }) +vim.keymap.set("n", "ac", "Telescope find_files cwd=~/.config/nvim", { desc = "Find Config Files" }) +vim.keymap.set("n", "an", "NoNeckPain", { desc = "No Neck Pain" }) -- telescope -vim.keymap.set("n", "tt", "Telescope") -vim.keymap.set("n", "tw", "Telescope lsp_dynamic_workspace_symbols") -vim.keymap.set("n", "to", "Telescope oldfiles") -vim.keymap.set("n", "tg", "Telescope live_grep") -vim.keymap.set("n", "ts", "Telescope treesitter") -vim.keymap.set("n", "td", "Telescope lsp_document_symbols") +vim.keymap.set("n", "tt", "Telescope", { desc = "Telescope" }) +vim.keymap.set("n", "tw", "Telescope lsp_dynamic_workspace_symbols", { desc = "Workspace Symbols" }) +vim.keymap.set("n", "to", "Telescope oldfiles", { desc = "Old Files" }) +vim.keymap.set("n", "tg", "Telescope live_grep", { desc = "Grep" }) +vim.keymap.set("n", "ts", "Telescope treesitter", { desc = "Tree Sitter" }) +vim.keymap.set("n", "td", "Telescope lsp_document_symbols", { desc = "Document Symbols" }) -- git -vim.keymap.set("n", "V", "Git") -vim.keymap.set("n", "vA", ":Git add ") -vim.keymap.set("n", "va", "Git add .") -vim.keymap.set("n", "vc", "Git commit") -vim.keymap.set("n", "vf", "Git fetch") -vim.keymap.set("n", "vg", ":Git ") -vim.keymap.set("n", "vl", "Git pull") -vim.keymap.set("n", "vp", "Git push") -vim.keymap.set("n", "vs", "Git") +vim.keymap.set("n", "V", "Git", { desc = "Status Board" }) +vim.keymap.set("n", "vA", ":Git add ", { desc = "Add" }) +vim.keymap.set("n", "va", "Git add .", { desc = "Add All" }) +vim.keymap.set("n", "vc", "Git commit", { desc = "Commit" }) +vim.keymap.set("n", "vf", "Git fetch", { desc = "Fetch" }) +vim.keymap.set("n", "vg", ":Git ", { desc = "Enter Command" }) +vim.keymap.set("n", "vl", "Git pull", { desc = "Pull" }) +vim.keymap.set("n", "vp", "Git push origin HEAD", { desc = "Push" }) -- dev -vim.keymap.set("n", "gd", "Telescope lsp_definitions") -vim.keymap.set("n", "gi", "Telescope lsp_implementations") -vim.keymap.set("n", "gr", "Telescope lsp_references") -vim.keymap.set("n", "gq", "Telescope diagnostics") -vim.keymap.set("n", "gs", "LspRestart") -vim.keymap.set("n", "gf", "Format") -vim.keymap.set("n", "gF", "FormatWrite") -vim.keymap.set("n", "ge", "TroubleToggle") +vim.keymap.set("n", "gd", "Telescope lsp_definitions", { desc = "Go To Definition" }) +vim.keymap.set("n", "gi", "Telescope lsp_implementations", { desc = "Go To Implementations" }) +vim.keymap.set("n", "gr", "Telescope lsp_references", { desc = "Go To References" }) +vim.keymap.set("n", "gq", "Telescope diagnostics", { desc = "Show Diagnostics" }) +vim.keymap.set("n", "gs", "LspRestart", { desc = "Restart LSP" }) +vim.keymap.set("n", "gf", "Format", { desc = "Format" }) +vim.keymap.set("n", "ge", "TroubleToggle", { desc = "Toggle Trouble" }) vim.keymap.set("n", "ga", function() vim.lsp.buf.code_action() -end) +end, { desc = "Code Actions" }) vim.keymap.set("n", "gD", function() vim.lsp.buf.declaration() -end) +end, { desc = "Go To Declaration" }) vim.keymap.set("n", "gk", function() vim.lsp.buf.hover() -end) +end, { desc = "Hover" }) vim.keymap.set("n", "gt", function() vim.lsp.buf.type_definition() -end) +end, { desc = "Go To Type Definition" }) vim.keymap.set("n", "gn", function() vim.lsp.buf.rename() -end) +end, { desc = "Rename" }) vim.keymap.set("n", "[d", function() vim.diagnostic.goto_prev() -end) +end, { desc = "Previous Diagnostic" }) vim.keymap.set("n", "]d", function() vim.diagnostic.goto_next() -end) +end, { desc = "Next Diagnostic" }) -- neotest vim.keymap.set("n", "na", function() require("neotest").run.attach() -end) +end, { desc = "Attach Tests" }) vim.keymap.set("n", "nf", function() require("neotest").run.run(vim.fn.expand("%")) -end) +end, { desc = "Run Buffer Tests" }) vim.keymap.set("n", "nF", function() require("neotest").run.run({ vim.fn.expand("%"), strategy = "dap" }) -end) +end, { desc = "Debug Buffer Tests" }) vim.keymap.set("n", "nl", function() require("neotest").run.run_last() -end) +end, { desc = "Run Last Tests" }) vim.keymap.set("n", "nL", function() require("neotest").run.run_last({ strategy = "dap" }) -end) +end, { desc = "Debug Last Test" }) vim.keymap.set("n", "nn", function() require("neotest").run.run() -end) +end, { desc = "Run All Tests" }) vim.keymap.set("n", "nN", function() require("neotest").run.run({ strategy = "dap" }) -end) +end, { desc = "Debug All Tests" }) vim.keymap.set("n", "no", function() require("neotest").output.open({ enter = true }) -end) +end, { desc = "Show Output" }) vim.keymap.set("n", "nS", function() require("neotest").run.stop() -end) +end, { desc = "Stop Tests" }) vim.keymap.set("n", "ns", function() require("neotest").summary.toggle() -end) +end, { desc = "Toggle Summary" }) -- telekasten vim.keymap.set("n", "z", function() require("telekasten").panel() -end) +end, { desc = "Telekasten" }) -- refactoring vim.keymap.set("n", "rv", function() require("refactoring").debug.print_var({ normal = true }) -end) +end, { desc = "Add Debug Pring" }) vim.keymap.set("n", "rc", function() require("refactoring").debug.cleanup() -end) +end, { desc = "Cleanup" }) vim.keymap.set("v", "rr", function() require("refactoring").select_refactor() -end) +end, { desc = "Select Refactor" }) -- neogen vim.keymap.set("n", "rn", function() require("neogen").generate() -end) +end, { desc = "Add Documentation" }) -- dap vim.keymap.set("n", "dc", function() require("dap").continue() -end) +end, { desc = "Continue" }) vim.keymap.set("n", "dn", function() require("dap").step_over() -end) +end, { desc = "Step Over" }) vim.keymap.set("n", "di", function() require("dap").step_into() -end) +end, { desc = "Step Into" }) vim.keymap.set("n", "do", function() require("dap").step_out() -end) +end, { desc = "Step Out" }) vim.keymap.set("n", "db", function() require("dap").toggle_breakpoint() -end) +end, { desc = "Toggle Breakpoint" }) vim.keymap.set("n", "dr", function() require("dap").repl.open() -end) +end, { desc = "Open Repl" }) vim.keymap.set("n", "dl", function() require("dap").run_last() -end) +end, { desc = "Run Last" }) vim.keymap.set("n", "dq", function() require("dap").close() -end) +end, { desc = "Quit Debug" }) diff --git a/.config/nvim/lua/plugins.lua b/.config/nvim/lua/plugins.lua index 2a46a69..4747231 100644 --- a/.config/nvim/lua/plugins.lua +++ b/.config/nvim/lua/plugins.lua @@ -262,4 +262,22 @@ require("lazy").setup({ require("plugins.no-neck-pain") end, }, + + { + "folke/which-key.nvim", + key = { + "" + }, + config = function() + require("plugins.which-key") + end, + }, + + { + + "iamcco/markdown-preview.nvim", + config = function() + require("plugins.markdown-preview") + end, + }, }) diff --git a/.config/nvim/lua/plugins/which-key.lua b/.config/nvim/lua/plugins/which-key.lua new file mode 100644 index 0000000..3e80221 --- /dev/null +++ b/.config/nvim/lua/plugins/which-key.lua @@ -0,0 +1,12 @@ +local wk = require("which-key") +wk.register({ + a = { name = "actions" }, + c = { name = "terminal" }, + d = { name = "debug" }, + f = { name = "files" }, + g = { name = "lsp" }, + n = { name = "testing" }, + r = { name = "refactoring" }, + t = { name = "telescope" }, + v = { name = "vcs" }, +}, { prefix = "" })