Re-add keybindings
This commit is contained in:
parent
b00c8a0501
commit
e1f88771f8
1 changed files with 32 additions and 0 deletions
|
@ -11,6 +11,38 @@
|
||||||
globals.mapleader = " ";
|
globals.mapleader = " ";
|
||||||
globals.maplocalleader = " ";
|
globals.maplocalleader = " ";
|
||||||
|
|
||||||
|
keymaps = let
|
||||||
|
map = mode: key: action: { mode = mode; key = key; action = action; };
|
||||||
|
nmap = key: action: map [ "n" ] key action;
|
||||||
|
nvmap = key: action: map [ "n" "v" ] key action;
|
||||||
|
imap = key: action: map [ "i" ] key action;
|
||||||
|
desc = d: { options.desc = d; };
|
||||||
|
silent = { options.silent = true; };
|
||||||
|
expr = { options.expr = true; };
|
||||||
|
in [
|
||||||
|
# Unmap keys that aren't useful, or that we want to use for different things
|
||||||
|
(nvmap "<Space>" "<Nop>" // silent)
|
||||||
|
(nvmap "<Cr>" "<Nop>" // silent)
|
||||||
|
(nvmap "s" "<Nop>" // silent)
|
||||||
|
# Leave insert mode by pressing j and k simultaneously
|
||||||
|
(imap "jk" "<Esc>")
|
||||||
|
(imap "kj" "<Esc>")
|
||||||
|
# Redo
|
||||||
|
(nmap "R" "<C-r>")
|
||||||
|
# Copy and paste
|
||||||
|
(nvmap "<leader>y" "\"+y" // desc "Cop[y] to clipboard")
|
||||||
|
(nvmap "<leader>p" "\"+p" // desc "[P]aste from clipboard")
|
||||||
|
# Jump to start/end of line
|
||||||
|
(nvmap "H" "0")
|
||||||
|
(nvmap "L" "$")
|
||||||
|
# Navigate up and down word wrapped text as if it were not word wrapped
|
||||||
|
(nmap "k" "v:count == 0 ? 'gk' : 'k'" // silent // expr)
|
||||||
|
(nmap "j" "v:count == 0 ? 'gj' : 'j'" // silent // expr)
|
||||||
|
# Center cursor when jumping foward or back
|
||||||
|
(nmap "<C-o>" "<C-o>zz")
|
||||||
|
(nmap "<C-i>" "<C-i>zz")
|
||||||
|
];
|
||||||
|
|
||||||
options = {
|
options = {
|
||||||
number = true;
|
number = true;
|
||||||
shiftwidth = 2;
|
shiftwidth = 2;
|
||||||
|
|
Loading…
Reference in a new issue