.nvim/lua/config/keymaps.lua
Ryan Manseau 567bfcc06e initial commit
added a bunch of config to try and get things closer to my doom emacs
setup. still not perfect.
2023-05-25 10:18:01 -07:00

40 lines
1.6 KiB
Lua

-- Keymaps are automatically loaded on the VeryLazy event
-- Default keymaps that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/keymaps.lua
-- Add any additional keymaps here
-- telescope picker shortcuts
vim.keymap.set("n", "<C-b>", ":Telescope buffers<cr>")
vim.keymap.set("n", "<C-f>", ":Telescope file_browser path=%:p:h select_buffer=true<cr>")
vim.keymap.set("n", "<leader>fp", ":Telescope find_files cwd=~/.config/nvim<cr>", { desc = "Find file in config" })
-- hjkl modifiers
vim.keymap.set({ "n", "v" }, "L", "E")
vim.keymap.set({ "n", "v" }, "H", "B")
vim.keymap.set({ "n", "v" }, "J", "4j")
vim.keymap.set({ "n", "v" }, "K", "4k")
vim.keymap.set({ "n", "v" }, "<C-k>", "8<C-e>")
vim.keymap.set({ "n", "v" }, "<C-j>", "8<C-y>")
-- join line
vim.keymap.set({ "n", "v" }, "gj", ":join<cr>")
-- jump forward and back
vim.keymap.set({ "n", "v" }, "gf", "<C-i>")
vim.keymap.set({ "n", "v" }, "gb", "<C-o>")
-- file operations
vim.keymap.set({ "n", "v" }, "fs", ":w<cr>", { desc = "Save file" })
-- window operations
vim.keymap.del({ "n" }, "<leader>w|")
vim.keymap.del({ "n" }, "<leader>ww")
vim.keymap.set({ "n", "v" }, "<leader>w\\", "<C-w>v", { desc = "Split window vertical" })
vim.keymap.set({ "n", "v" }, "<leader>w-", "<C-w>s", { desc = "Split window horizontal" })
vim.keymap.set({ "n", "v" }, "<leader>w=", "<C-w>=", { desc = "Balance windows" })
vim.keymap.set({ "n", "v", "i" }, "<C-o>", "<C-w>w")
-- git stuff
vim.keymap.del({ "n" }, "<leader>gg")
vim.keymap.del({ "n" }, "<leader>gG")
vim.keymap.set({ "n" }, "<leader>gg", "<CMD>Neogit<CR>", { desc = "Neogit status" })