config/nvim/lua/keymaps.lua
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
local k = vim.api.nvim_set_keymap local options = { noremap = true, silent = true } vim.g.mapleader = ' ' k('', '<Space>', '<Nop>', options) k('i', 'jk', '<esc>', options) -- move around visually (when line is wrapped) k('n', 'j', 'gj', options) k('n', 'k', 'gk', options) -- window navigation k('n', '<C-j>', '<C-W><C-J>', options) k('n', '<C-k>', '<C-W><C-K>', options) k('n', '<C-h>', '<C-W><C-H>', options) k('n', '<C-l>', '<C-W><C-L>', options) -- tab navigation k('n', 'H', 'gT', options) k('n', 'L', 'gt', options) -- tree nav k('n', '<C-n>', ':NvimTreeToggle<CR>', options) -- folds k('n', '<leader>l', 'za', options) -- add keymap to unfold and others -- visual -- copy to clipbaord in visual mode k('v', '<C-c>', '"+y', options) -- move blocks of text visually k('v', 'J', ':m \'>+1<CR>gv=gv', options) k('v', 'K',':m \'<-2<CR>gv=gv', options) -- stay in visual mode while indenting k('v', '>', '>gv', options) k('v', '<', '<gv', options) k('n', '<leader>m', ':nohlsearch<CR>', options) k('n', '<leader>z', ':MaximizerToggle<CR>', options) k('n', '<leader>r', ':so ~/.config/nvim/init.lua<CR>', options)