1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
vim.g.mapleader = " "
local nv = {"n", "v"}
vim.keymap.set(nv, "gm", "gM", {})
vim.keymap.set(nv, "gM", "gMi", {})
-- Make exiting insert mode in terminal mode easier
vim.keymap.set("t", "<ESC>", "<C-\\><C-n>", {})
-- Center when moving around at high speeds
vim.keymap.set(nv, "<C-u>", "<C-u>zz", {})
vim.keymap.set(nv, "<C-d>", "<C-d>zz", {})
vim.keymap.set(nv, "G", "Gzz", {})
-- Make going to the end of a line as easy as going to the beginning
vim.keymap.set({"n", "v", "o"}, "+", "$", {})
-- Yanking and pasting
vim.keymap.set(nv, "<leader>y", "\"+y", {})
vim.keymap.set(nv, "<leader>p", "\"+p", {})
vim.keymap.set("x", "p", "\"_dP", {})
vim.keymap.set("x", "<leader>P", "p", {})
-- Commands
vim.keymap.set(nv, "<leader>c", "<CMD>set invhlsearch<CR>", {silent=true})
vim.keymap.set("n", "{", "<CMD>cp<CR>", {silent=true})
vim.keymap.set("n", "}", "<CMD>cn<CR>", {silent=true})
-- Common typo with me
vim.api.nvim_create_user_command("W", "w", {bang=true})
vim.api.nvim_create_user_command("Wa", "wa", {bang=true})
vim.api.nvim_create_user_command("Wq", "wq", {bang=true})
vim.api.nvim_create_user_command("Wqa", "wqa", {bang=true})
vim.api.nvim_create_user_command("Q", "q", {bang=true})
vim.api.nvim_create_user_command("Qa", "qa", {bang=true})
|