160 lines
4.9 KiB
Lua
160 lines
4.9 KiB
Lua
-- leader
|
|
vim.g.mapleader = " "
|
|
|
|
-- visual block indenting
|
|
vim.keymap.set("v", "<", "<gv")
|
|
vim.keymap.set("v", ">", ">gv")
|
|
-- centered cursor
|
|
vim.keymap.set("n", "n", "nzz")
|
|
vim.keymap.set("n", "N", "Nzz")
|
|
vim.keymap.set("n", "J", "mzJ`z")
|
|
|
|
-- escape terminal mode
|
|
vim.keymap.set("t", "<Esc>", "<C-\\><C-n>")
|
|
|
|
-- movement
|
|
vim.keymap.set("n", "<leader>h", "<cmd>wincmd h<CR>")
|
|
vim.keymap.set("n", "<leader>j", "<cmd>wincmd j<CR>")
|
|
vim.keymap.set("n", "<leader>k", "<cmd>wincmd k<CR>")
|
|
vim.keymap.set("n", "<leader>l", "<cmd>wincmd l<CR>")
|
|
vim.keymap.set("n", "<leader>H", "<cmd>tabprevious<CR>")
|
|
vim.keymap.set("n", "<leader>L", "<cmd>tabnext<CR>")
|
|
|
|
-- basics
|
|
vim.keymap.set("n", "<leader>f", "<cmd>Telescope find_files<CR>")
|
|
vim.keymap.set("n", "<leader>F", "<cmd>NvimTreeToggle<CR>")
|
|
|
|
-- toggle term
|
|
vim.keymap.set("n", "<leader>c", "<cmd>ToggleTermToggleAll<CR>")
|
|
-- vim.keymap.set("n", "<leader>C", "<cmd>ToggleTerm<CR>")
|
|
vim.keymap.set("n", "<leader>C", ":ToggleTerm<CR>")
|
|
|
|
-- frequent actions
|
|
vim.keymap.set("n", "<leader>ar", "<cmd>source ~/.config/nvim/init.lua<CR>")
|
|
vim.keymap.set("n", "<leader>ac", "<cmd>Telescope find_files cwd=~/.config/nvim<CR>")
|
|
|
|
-- telescope
|
|
vim.keymap.set("n", "<leader>tt", "<cmd>Telescope<CR>")
|
|
vim.keymap.set("n", "<leader>tw", "<cmd>Telescope lsp_dynamic_workspace_symbols<CR>")
|
|
vim.keymap.set("n", "<leader>to", "<cmd>Telescope oldfiles<CR>")
|
|
vim.keymap.set("n", "<leader>tg", "<cmd>Telescope live_grep<CR>")
|
|
vim.keymap.set("n", "<leader>ts", "<cmd>Telescope treesitter<CR>")
|
|
vim.keymap.set("n", "<leader>td", "<cmd>Telescope lsp_document_symbols<CR>")
|
|
|
|
-- git
|
|
vim.keymap.set("n", "<leader>vA", ":Git add ")
|
|
vim.keymap.set("n", "<leader>va", "<cmd>Git add .<CR>")
|
|
vim.keymap.set("n", "<leader>vc", "<cmd>Git commit<CR>")
|
|
vim.keymap.set("n", "<leader>vf", "<cmd>Git fetch<CR>")
|
|
vim.keymap.set("n", "<leader>vg", ":Git ")
|
|
vim.keymap.set("n", "<leader>vl", "<cmd>Git pull<CR>")
|
|
vim.keymap.set("n", "<leader>vp", "<cmd>Git push<CR>")
|
|
vim.keymap.set("n", "<leader>vs", "<cmd>Git<CR>")
|
|
|
|
-- dev
|
|
vim.keymap.set("n", "<leader>gd", "<cmd>Telescope lsp_definitions<CR>")
|
|
vim.keymap.set("n", "<leader>gi", "<cmd>Telescope lsp_implementations<CR>")
|
|
vim.keymap.set("n", "<leader>gr", "<cmd>Telescope lsp_references<CR>")
|
|
vim.keymap.set("n", "<leader>gq", "<cmd>Telescope diagnostics<CR>")
|
|
vim.keymap.set("n", "<leader>gs", "<cmd>LspRestart<CR>")
|
|
vim.keymap.set("n", "<leader>gf", "<cmd>Format<CR>")
|
|
vim.keymap.set("n", "<leader>gF", "<cmd>FormatWrite<CR>")
|
|
vim.keymap.set("n", "<leader>ge", "<cmd>TroubleToggle<CR>")
|
|
vim.keymap.set("n", "<leader>ga", function()
|
|
vim.lsp.buf.code_action()
|
|
end)
|
|
vim.keymap.set("n", "<leader>gD", function()
|
|
vim.lsp.buf.declaration()
|
|
end)
|
|
vim.keymap.set("n", "<leader>gk", function()
|
|
vim.lsp.buf.hover()
|
|
end)
|
|
vim.keymap.set("n", "<leader>gt", function()
|
|
vim.lsp.buf.type_definition()
|
|
end)
|
|
vim.keymap.set("n", "<leader>gn", function()
|
|
vim.lsp.buf.rename()
|
|
end)
|
|
vim.keymap.set("n", "[d", function()
|
|
vim.diagnostic.goto_prev()
|
|
end)
|
|
vim.keymap.set("n", "]d", function()
|
|
vim.diagnostic.goto_next()
|
|
end)
|
|
|
|
-- neotest
|
|
vim.keymap.set("n", "<leader>na", function()
|
|
require("neotest").run.attach()
|
|
end)
|
|
vim.keymap.set("n", "<leader>nf", function()
|
|
require("neotest").run.run(vim.fn.expand("%"))
|
|
end)
|
|
vim.keymap.set("n", "<leader>nF", function()
|
|
require("neotest").run.run({ vim.fn.expand("%"), strategy = "dap" })
|
|
end)
|
|
vim.keymap.set("n", "<leader>nl", function()
|
|
require("neotest").run.run_last()
|
|
end)
|
|
vim.keymap.set("n", "<leader>nL", function()
|
|
require("neotest").run.run_last({ strategy = "dap" })
|
|
end)
|
|
vim.keymap.set("n", "<leader>nn", function()
|
|
require("neotest").run.run()
|
|
end)
|
|
vim.keymap.set("n", "<leader>nN", function()
|
|
require("neotest").run.run({ strategy = "dap" })
|
|
end)
|
|
vim.keymap.set("n", "<leader>no", function()
|
|
require("neotest").output.open({ enter = true })
|
|
end)
|
|
vim.keymap.set("n", "<leader>nS", function()
|
|
require("neotest").run.stop()
|
|
end)
|
|
vim.keymap.set("n", "<leader>ns", function()
|
|
require("neotest").summary.toggle()
|
|
end)
|
|
|
|
-- telekasten
|
|
vim.keymap.set("n", "<leader>z", function()
|
|
require("telekasten").panel()
|
|
end)
|
|
|
|
-- refactoring
|
|
vim.keymap.set("n", "<leader>rv", function()
|
|
require("refactoring").debug.print_var({ normal = true })
|
|
end)
|
|
vim.keymap.set("n", "<leader>rc", function()
|
|
require("refactoring").debug.cleanup()
|
|
end)
|
|
vim.keymap.set("v", "<leader>rr", function()
|
|
require("refactoring").select_refactor()
|
|
end)
|
|
|
|
-- neogen
|
|
vim.keymap.set("n", "<leader>rn", function()
|
|
require("neogen").generate()
|
|
end)
|
|
|
|
-- dap
|
|
vim.keymap.set("n", "<leader>dc", function()
|
|
require("dap").continue()
|
|
end)
|
|
vim.keymap.set("n", "<leader>dn", function()
|
|
require("dap").step_over()
|
|
end)
|
|
vim.keymap.set("n", "<leader>di", function()
|
|
require("dap").step_into()
|
|
end)
|
|
vim.keymap.set("n", "<leader>do", function()
|
|
require("dap").step_out()
|
|
end)
|
|
vim.keymap.set("n", "<leader>db", function()
|
|
require("dap").toggle_breakpoint()
|
|
end)
|
|
vim.keymap.set("n", "<leader>dr", function()
|
|
require("dap").repl.open()
|
|
end)
|
|
vim.keymap.set("n", "<leader>dl", function()
|
|
require("dap").run_last()
|
|
end)
|