1
Fork 0
dots/nvim/lua/config/keymaps.lua

61 lines
1.4 KiB
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("Execute Lua", { clear = true }),
callback = function()
vim.keymap.set("n", "<leader>x", "<cmd>.lua<cr>", { buffer = true })
vim.keymap.set("x", "<leader>x", ":lua<cr>", { buffer = true })
vim.keymap.set("n", "<leader><leader>x", "<cmd>%lua<cr>", { buffer = true })
end,
})
local M = {}
function M.telescope()
local builtin = require("telescope.builtin")
set("n", "<leader>ff", builtin.find_files)
set("n", "<leader>fh", builtin.help_tags)
set("n", "<leader>ft", builtin.builtin)
set("n", "<leader>fm", builtin.man_pages)
set("n", "<leader>fd", function()
builtin.find_files({
cwd = "$DOTS",
prompt_title = "< DOTFILES >"
})
end)
end
return M