36 lines
1.1 KiB
Lua
36 lines
1.1 KiB
Lua
local keymap = vim.keymap.set
|
|
local opts = { noremap = true, silent = true }
|
|
|
|
keymap({ 'n', 'v' }, 'H', '0', opts)
|
|
keymap({ 'n', 'v' }, 'J', '5j', opts)
|
|
keymap({ 'n', 'v' }, 'K', '5k', opts)
|
|
keymap({ 'n', 'v' }, 'L', '$', opts)
|
|
keymap('n', 'n', 'nzz', opts)
|
|
keymap('n', 'N', 'Nzz', opts)
|
|
keymap('n', 's', '<cmd>w<cr>', opts)
|
|
keymap('n', '<space>nh', '<cmd>nohlsearch<cr>', opts)
|
|
keymap('n', '<space>sj', '<cmd>set splitbelow<cr><cmd>split<cr>', opts)
|
|
keymap('n', '<space>sl', '<cmd>set nosplitright<cr><cmd>vsplit<cr>', opts)
|
|
|
|
-- lsp
|
|
keymap('n', '<space>ld', vim.lsp.buf.definition, opts)
|
|
keymap('n', '<space>lr', vim.lsp.buf.references, opts)
|
|
keymap('n', '<space>rn', vim.lsp.buf.rename, opts)
|
|
keymap('n', '<space>ca', vim.lsp.buf.code_action, opts)
|
|
keymap('n', '<space>lh', function()
|
|
vim.lsp.buf.hover({ border = 'rounded' })
|
|
end, opts)
|
|
|
|
-- diagnostic
|
|
keymap('n', '<space>dp', function()
|
|
vim.diagnostic.jump({ count = 1 })
|
|
end, opts)
|
|
|
|
keymap('n', '<space>dn', function()
|
|
vim.diagnostic.jump({ count = -1 })
|
|
end, opts)
|
|
|
|
keymap('n', '<space>dt', function()
|
|
vim.diagnostic.open_float()
|
|
end, opts)
|