43 lines
1.4 KiB
Lua
43 lines
1.4 KiB
Lua
local map = vim.keymap.set
|
|
|
|
-- Leader
|
|
vim.g.mapleader = ' '
|
|
vim.g.maplocalleader = ';'
|
|
|
|
-- Diagnostic keymaps
|
|
map('n', '[d', vim.diagnostic.goto_prev, { desc = 'Go to previous diagnostic message' })
|
|
map('n', ']d', vim.diagnostic.goto_next, { desc = 'Go to next diagnostic message' })
|
|
map('n', '<leader>e', vim.diagnostic.open_float, { desc = 'Open floating diagnostic message' })
|
|
map('n', '<leader>q', vim.diagnostic.setloclist, { desc = 'Open diagnostics list' })
|
|
|
|
-- Lsp format
|
|
map('n', '<leader>f', vim.lsp.buf.format, { desc = "Format current buffer" })
|
|
|
|
-- Move text easilly
|
|
map("v", "J", ":m '>+1<CR>gv=gv", { desc = "Move selected text up" })
|
|
map("v", "K", ":m '<-2<CR>gv=gv", { desc = "Move selected text down" })
|
|
|
|
-- better find next and previous
|
|
map("n", "n", "nzzzv", { desc = "Keep cursor in middle with search" })
|
|
map("n", "N", "Nzzzv", { desc = "Keep cursor in middle with search" })
|
|
|
|
map("n", "J", "mzJ`z", { desc = "Move up next line with space in between" })
|
|
|
|
-- greatest remap ever
|
|
map("x", "<leader>p", [["_dP]], { desc = "Paste while keeping the registry" })
|
|
|
|
-- source current lua config file
|
|
map("n", "<leader><leader>", function()
|
|
vim.cmd("so")
|
|
end, { desc = "Source current source file" })
|
|
|
|
-- better indenting
|
|
map("v", "<", "<gv")
|
|
map("v", ">", ">gv")
|
|
|
|
-- allow for use of system clipboard fast
|
|
map({ "n", "v" }, "<leader>y", [["+y]])
|
|
map("n", "<leader>Y", [["+Y]])
|
|
map({ "n", "v" }, "<leader>P", [["+p]])
|
|
|
|
map({ "n", "v" }, "<leader>d", [["_d]])
|