blob: a7d709a53c24636001e4f92c756a37b3d323bb4a (
plain)
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
;; Custom keymappings.
(module settings.keymaps {autoload {nvim aniseed.nvim}})
(def- opts {:noremap true :silent true})
(defn- map [mode lhs rhs opt] (nvim.set_keymap mode lhs rhs opt))
;;Remap space as leader key
(map "" :<Space> :<Nop> opts)
(set nvim.g.mapleader " ")
(set nvim.g.maplocalleader " ")
;; Modes
;; normal_mode = "n"
;; insert_mode = "i"
;; visual_mode = "v"
;; visual_block_mode = "x"
;; term_mode = "t"
;; command_mode = "c"
;; Normal ;;
;; Better window navigation
(map :n :<m-h> :<C-w>h opts)
(map :n :<m-j> :<C-w>j opts)
(map :n :<m-k> :<C-w>k opts)
(map :n :<m-l> :<C-w>l opts)
;; Resize with arrows
(map :n :<C-Up> ":resize -2<CR>" opts)
(map :n :<C-Down> ":resize +2<CR>" opts)
(map :n :<C-Left> ":vertical resize -2<CR>" opts)
(map :n :<C-Right> ":vertical resize +2<CR>" opts)
;; Navigate buffers
(map :n :<S-l> ":bnext<CR>" opts)
(map :n :<S-h> ":bprevious<CR>" opts)
;; Visual ;;
;; Stay in indent mode
(map :v "<" :<gv opts)
(map :v ">" :>gv opts)
;; Visual Block ;;
;; Move text up and down
(map :x :J ":move '>+1<CR>gv-gv" opts)
(map :x :K ":move '<-2<CR>gv-gv" opts)
(map :x :<A-j> ":move '>+1<CR>gv-gv" opts)
(map :x :<A-k> ":move '<-2<CR>gv-gv" opts)
;; Move text up and down
(map :v :<A-j> ":m .+1<CR>==" opts)
(map :v :<A-k> ":m .-2<CR>==" opts)
(map :v :p "\"_dP" opts)
;; Splits
(map :n :<m-s> :<cmd>split<CR> opts)
(map :n :<C-s> :<cmd>split<CR> opts)
(map :n :<m-v> :<cmd>vsplit<CR> opts)
(map :n :<c-h> :<cmd>nohlsearch<CR> opts)
|