mappings.lua 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. -- general keymaps
  2. vim.api.nvim_set_keymap("n", "<leader>p", ":tabnext<CR>", { noremap = true, silent = true, desc = "Next Tab" })
  3. vim.api.nvim_set_keymap(
  4. "n",
  5. "<leader>n",
  6. ":vsplit<CR>:wincmd l<CR>",
  7. { noremap = true, silent = true, desc = "Split Right" }
  8. )
  9. vim.api.nvim_set_keymap(
  10. "n",
  11. "<leader>m",
  12. ":split<CR>:wincmd j<CR>",
  13. { noremap = true, silent = true, desc = "Split Down" }
  14. )
  15. vim.api.nvim_set_keymap("n", "<Esc>", ":noh<CR>", { noremap = true, silent = true, desc = "Clear Search" })
  16. -- bufferline keymaps
  17. vim.api.nvim_set_keymap(
  18. "n",
  19. "<leader>C",
  20. ":BufferLineCloseOthers<CR>",
  21. { noremap = true, silent = true, desc = "Close Other Buffers" }
  22. )
  23. -- nvim-dap keymaps
  24. vim.keymap.set("n", "<Leader>db", require("dap").toggle_breakpoint, { desc = "DAP Toggle Breakpoint" })
  25. vim.keymap.set("n", "<Leader>dc", require("dap").continue, { desc = "DAP Continue" })
  26. vim.keymap.set("n", "<Leader>dsv", require("dap").step_over, { desc = "DAP Step Over" })
  27. vim.keymap.set("n", "<Leader>dsi", require("dap").step_into, { desc = "DAP Step Into" })
  28. vim.keymap.set("n", "<Leader>dso", require("dap").step_out, { desc = "DAP Step Out" })
  29. -- lsp keymaps
  30. vim.keymap.set("n", "K", vim.lsp.buf.hover, { desc = "LSP Hover" })
  31. vim.keymap.set("n", "gd", vim.lsp.buf.definition, { desc = "LSP Definition" })
  32. vim.keymap.set("n", "er", vim.diagnostic.open_float, { desc = "LSP Diagnostics" })
  33. vim.keymap.set({ "n", "v" }, "<leader>ca", vim.lsp.buf.code_action, { desc = "LSP Code Action" })
  34. vim.keymap.set("n", "<leader>gf", vim.lsp.buf.format, { desc = "LSP Format" })
  35. -- harpoon keymaps
  36. vim.keymap.set("n", "<leader>a", function()
  37. require("harpoon"):list():add()
  38. end, { desc = "Harpoon Add" })
  39. vim.keymap.set("n", "<leader>h", function()
  40. require("harpoon").ui:toggle_quick_menu(builtin:list())
  41. end, { desc = "Harpoon Menu" })
  42. -- Toggle previous & next buffers stored within Harpoon list
  43. vim.keymap.set("n", "<leader><S-P>", function()
  44. require("harpoon"):list():prev()
  45. end, { desc = "Harpoon Previous" })
  46. vim.keymap.set("n", "<leader><S-N>", function()
  47. require("harpoon"):list():next()
  48. end, { desc = "Harpoon Next" })
  49. -- neotree keymaps
  50. vim.keymap.set("n", "<C-n>", ":Neotree filesystem toggle float<CR>", { desc = "Toggle Neotree Filesystem" })
  51. vim.keymap.set("n", "<C-b>", ":Neotree buffers toggle float<CR>", { desc = "Toggle Neotree Buffers" })
  52. -- silicon keymaps
  53. vim.api.nvim_set_keymap("v", "<leader>s", ":'<,'>Silicon<CR>", { noremap = true, silent = true, desc = "Silicon" })
  54. -- telescope keymaps
  55. vim.keymap.set("n", "<leader>ff", require("telescope.builtin").find_files, { desc = "Find Files" })
  56. vim.keymap.set("n", "<leader>fg", require("telescope.builtin").live_grep, { desc = "Live Grep" })
  57. vim.keymap.set("n", "<leader>fb", require("telescope.builtin").buffers, { desc = "Buffers" })
  58. -- nvim-tmux-navigation keymaps
  59. vim.keymap.set("n", "<C-h>", require("nvim-tmux-navigation").NvimTmuxNavigateLeft, { desc = "Tmux Navigate Left" })
  60. vim.keymap.set("n", "<C-j>", require("nvim-tmux-navigation").NvimTmuxNavigateDown, { desc = "Tmux Navigate Down" })
  61. vim.keymap.set("n", "<C-k>", require("nvim-tmux-navigation").NvimTmuxNavigateUp, { desc = "Tmux Navigate Up" })
  62. vim.keymap.set("n", "<C-l>", require("nvim-tmux-navigation").NvimTmuxNavigateRight, { desc = "Tmux Navigate Right" })