Files
dotfiles/nvim/.config/nvim/lua/vxclutch/remap.lua
2025-01-18 15:51:24 -05:00

41 lines
973 B
Lua

vim.g.mapleader = " "
local function map(mode, lhs, rhs, opts)
local options = { noremap = true, silent = true }
if opts then
options = vim.tbl_extend("force", options, opts)
end
vim.keymap.set(mode, lhs, rhs, options)
end
-- Remove search highlight --
map("n", "<Esc>", ":nohlsearch<CR>")
-- Move lines --
map("v", "J", ":m '>+1<CR>gv=gv")
map("v", "K", ":m '>-2<CR>gv=gv")
-- Scrolling --
map("n", "<C-d>", "<C-d>zz")
map("n", "<C-u>", "<C-u>zz")
-- File navigation --
map("n", "<leader>pv", ":Oil<CR>")
-- Terminal --
map("t", "<C-k>", "<C-\\><C-n><C-w><C-k>")
-- Exec
map("n", "<leader>x", ":.lua<CR>")
map("n", "<leader><leader>x", ":source %<CR>")
-- LSP
map("n", "gd", vim.lsp.buf.definition)
map("n", "<leader>rn", vim.lsp.buf.rename, { noremap = true, silent = true, desc = "Go to definition" })
-- Window Controls
map("n", "<C-h>", "<C-w><C-h>")
map("n", "<C-l>", "<C-w><C-l>")
map("n", "<C-j>", "<C-w><C-j>")
map("n", "<C-k>", "<C-w><C-k>")