aboutsummaryrefslogtreecommitdiff
path: root/lua/config/keys.lua
blob: 303c2d4a7c9de4e5c543517ae0585f5006e75fb1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
-- this is generic keymaps, plugin files might have their own
vim.g.mapleader = " "
vim.g.maplocalleader = ","

-- paste better
vim.keymap.set("x", "p", [["_dP]])

-- tab keys
vim.keymap.set("v", "<Tab>", ">gv")
vim.keymap.set("v", "<S-Tab>", "<gv")
vim.keymap.set("n", "<Tab>", "v><C-\\><C-N>")
vim.keymap.set("n", "<S-Tab>", "v<<C-\\><C-N>")
vim.keymap.set("i", "<S-Tab>", "<C-\\><C-N>v<<C-\\><C-N>^i")

vim.keymap.set("n", "grd", function()
	vim.lsp.buf.definition()
end)

vim.keymap.set("n", "grl", function()
	vim.diagnostic.open_float()
end)

vim.keymap.set("n", "[d", function()
	vim.diagnostic.jump({ count = -1, float = true })
end)

vim.keymap.set("n", "]d", function()
	vim.diagnostic.jump({ count = 1, float = true })
end)

vim.cmd("packadd nvim.undotree") -- enable builtin undotree
vim.keymap.set("n", "<leader>u", "<CMD>Undotree<cr>")