1
Fork 0
dots/nvim/lua/config/keymaps.lua
Hadeed Ahmad b149a776b0 Start new neovim config
Add basic options and keymaps
2025-03-26 19:50:28 +05:00

40 lines
948 B
Lua

local set = vim.keymap.set
vim.g.mapleader = " "
set("i", "jk", "<ESC>")
set("i", "kj", "<ESC>")
set({"n", "x"}, "j", [[v:count == 0 ? "gj" : "j"]], { expr = true })
set({"n", "x"}, "k", [[v:count == 0 ? "gk" : "k"]], { expr = true })
set({"n", "x"}, ";", ":")
set({"n", "x"}, ":", ";")
set({"n", "x"}, "gy", "\"+y")
set("n", "gp", "\"+p")
set("n", "n", "nzz")
set("n", "N", "Nzz")
set("n", "<c-u>", "<c-u>zz")
set("n", "<c-d>", "<c-d>zz")
set("n", "<leader>w", "<c-w>")
set("n", "<cr>", function()
if vim.v.hlsearch == 1 then
vim.cmd.nohlsearch()
return ""
else
return "<cr>"
end
end, { expr = true })
vim.api.nvim_create_autocmd("Filetype", {
pattern = "lua",
group = vim.api.nvim_create_augroup("RunLua", { clear = true }),
callback = function()
vim.keymap.set("n", "<leader>x", "<cmd>. lua<cr>", { buffer = true })
vim.keymap.set("n", "<leader><leader>x", "<cmd>% lua<cr>", { buffer = true })
end,
})