dotfiles/nvim/.config/nvim/lua/keybindings.lua

48 lines
1.6 KiB
Lua

-- Generic Keybindings for all files
--
--
local keymap = vim.api.nvim_set_keymap
local default_ops = { noremap = true, silent = true }
-- Quick escape insert mode
keymap("i", "jk", "<Esc>", default_ops)
-- Delete single character without copying into register
keymap("n", "x", '"_x', default_ops)
-- Window management
keymap("n", "<leader>sv", "<C-w>v", default_ops)
keymap("n", "<leader>sh", "<C-w>s", default_ops)
keymap("n", "<leader>se", "<C-w>=", default_ops)
keymap("n", "<leader>sw", "<C-w>w", default_ops)
keymap("n", "<leader>sx", ":close<CR>", default_ops)
-- Save, Save/Quit
keymap("n", "<F1>", ":w<CR>", default_ops)
keymap("n", "<F2>", ":wq<CR>", default_ops)
-- Tab through open buffers
keymap("n", "[b", ":bp<CR>", default_ops)
keymap("n", "]b", ":bn<CR>", default_ops)
-- Enter lines
keymap("n", "<Enter>", "o<Esc>", default_ops)
keymap("n", "<s-Enter>", "O<Esc>", default_ops)
-- Folding
keymap("n", "<space>", "za", default_ops)
-- Telescope stuff
keymap("n", "<Leader>ff", ":Telescope find_files hidden=true<CR>", default_ops)
keymap("n", "<Leader>gf", ":Telescope git_files<CR>", default_ops)
keymap("n", "<Leader>s", ":Telescope live_grep<CR>", default_ops)
keymap("n", "<Leader>d", ":Telescope diagnostics<CR>", default_ops)
keymap("n", "<Leader>h", ":Telescope neoclip<CR>", default_ops)
keymap("n", "<Leader>b", ":Telescope buffers<CR>", default_ops)
keymap("n", "<Leader>c", ":Telescope colorscheme<CR>", default_ops)
keymap("n", "<Leader>fb", ":Telescope file_browser hidden=true theme=dropdown<CR>", default_ops)
-- Git
keymap("n", "<Leader>gg", ":LazyGit<CR>", default_ops)