aboutsummaryrefslogtreecommitdiff
path: root/.config/nvim/lua/keymap.lua
blob: 5b709cb90a3f8aa1a693755b83de940ef929f179 (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
-- ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
-- ┃ ┏┓╻┏━┓   ╻ ╻╻┏┳┓   ╻┏ ┏━╸╻ ╻┏┳┓┏━┓┏━┓┏━┓ ┃
-- ┃ ┃┗┫┣━┫   ┃┏┛┃┃┃┃   ┣┻┓┣╸ ┗┳┛┃┃┃┣━┫┣━┛┗━┓ ┃
-- ┃ ╹ ╹┗━┛   ┗┛ ╹╹ ╹   ╹ ╹┗━╸ ╹ ╹ ╹╹ ╹╹  ┗━┛ ┃
-- ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

vim.g.mapleader = ','
vim.api.nvim_set_keymap("n", "<leader>C", "<leader>c<space>", {})
vim.api.nvim_set_keymap("n", "<leader>n", "<C-w>n", {noremap = true})
vim.api.nvim_set_keymap("n", "<leader>sc", ":so $MYVIMRC<CR>", {noremap = true})
vim.api.nvim_set_keymap("n", "<leader>ec", ":e $MYVIMRC<CR>", {noremap = true})
vim.api.nvim_set_keymap("n", "<leader>tn", ":tabnew<CR>", {noremap = true})
vim.api.nvim_set_keymap("n", "<leader>tc", ":tabclose<CR>", {noremap = true})
vim.api.nvim_set_keymap("n", "<leader>tt", ":tabnew<CR>:term<CR>a", {noremap = true})

vim.api.nvim_set_keymap("n", "<leader>f", ":NvimTreeToggle<CR>", {noremap = true})
vim.api.nvim_set_keymap("n", "<leader>F", ":NvimTreeFindFileToggle<CR>", {noremap = true})

vim.api.nvim_set_keymap("i", "(", "()<Esc>i", {noremap = true})
vim.api.nvim_set_keymap("i", ")", "<ESC>:call brackify#putbracket(')')<CR>la", {noremap = true})
vim.api.nvim_set_keymap("i", "[", "[]<Esc>i", {noremap = true})
vim.api.nvim_set_keymap("i", "]", "<ESC>:call brackify#putbracket(']')<CR>la", {noremap = true})
vim.api.nvim_set_keymap("i", "{", "{}<Esc>i", {noremap = true})
vim.api.nvim_set_keymap("i", "}", "<ESC>:call brackify#putbracket('}')<CR>la", {noremap = true})
vim.api.nvim_set_keymap("i", '"', "<ESC>:call brackify#putquotes('\"')<CR>a", {noremap = true})
vim.api.nvim_set_keymap("i", "'", "<ESC>:call brackify#putquotes(\"'\")<CR>a", {noremap = true})
vim.cmd('autocmd Filetype html inoremap <buffer> < <><ESC>i')
vim.cmd('autocmd Filetype html inoremap <buffer> > <ESC>:call brackify#putbracket(">")<CR>la')
vim.cmd('autocmd FileType tex inoremap <buffer> " "')
vim.cmd('autocmd FileType tex inoremap <buffer> \' \'')


vim.api.nvim_set_keymap("v", "(", "s(<ESC>pa)", {noremap = true})
vim.api.nvim_set_keymap("v", "[", "s[<ESC>pa]", {noremap = true})
vim.api.nvim_set_keymap("v", "{", "s{<ESC>pa}", {noremap = true})
vim.api.nvim_set_keymap("v", '"', 's"<ESC>pa"', {noremap = true})
vim.api.nvim_set_keymap("v", "'", "s'<ESC>pa'", {noremap = true})

vim.api.nvim_set_keymap("i", "<C-u>a", "ä", {noremap = true})
vim.api.nvim_set_keymap("i", "<C-u>A", "Ä", {noremap = true})
vim.api.nvim_set_keymap("i", "<C-u>o", "ö", {noremap = true})
vim.api.nvim_set_keymap("i", "<C-u>O", "Ö", {noremap = true})
vim.api.nvim_set_keymap("i", "<C-u>u", "ü", {noremap = true})
vim.api.nvim_set_keymap("i", "<C-u>U", "Ü", {noremap = true})

vim.api.nvim_set_keymap("n", "<space>T", ":lua require('cargotest').test_crate()<cr>", {noremap = true})
vim.api.nvim_set_keymap("n", "<space>t", ":lua require('cargotest').test_module()<cr>", {noremap = true})
vim.api.nvim_set_keymap("n", "<leader>z", "va{zfzz", {noremap = true})