vim.g.mapleader = ' ' -- TODO find better place vim.g.floaterm_open_command = 'vsplit' --vim.g.floaterm_position = 'bottom' -- better window movement vim.api.nvim_set_keymap('n', '', 'h', {silent = true}) vim.api.nvim_set_keymap('n', '', 'j', {silent = true}) vim.api.nvim_set_keymap('n', '', 'k', {silent = true}) vim.api.nvim_set_keymap('n', '', 'l', {silent = true}) -- TODO fix this -- Terminal window navigation --vim.cmd([[ --tnoremap h --tnoremap j --tnoremap k --tnoremap l --inoremap h --inoremap j --inoremap k --inoremap l --tnoremap --]]) -- resize with arrows vim.api.nvim_set_keymap('n', '', ':resize -2', {silent = true}) vim.api.nvim_set_keymap('n', '', ':resize +2', {silent = true}) vim.api.nvim_set_keymap('n', '', ':vertical resize -2', {silent = true}) vim.api.nvim_set_keymap('n', '', ':vertical resize +2', {silent = true}) -- improved keyboard support for navigation (especially terminal) vim.cmd([[ nnoremap h h nnoremap j j nnoremap k k nnoremap l l nnoremap h nnoremap j nnoremap k nnoremap l ]]) -- Change 2 split windows from vert to horiz or horiz to vert vim.cmd([[ map th tH map tk tK ]]) -- Make adjusting split sizes a bit more friendly vim.cmd([[ noremap :vertical resize +3 noremap :vertical resize -3 noremap :resize +3 noremap :resize -3 ]]) -- FloatTerm vim.cmd([[ nnoremap :FloatermNew --height=0.4 --width=0.98 --wintype=floating --position=bottom --autoclose=2 --title= tnoremap :FloatermNew --height=0.4 --width=0.98 --wintype=floating --position=bottom --autoclose=2 --title= nnoremap :FloatermPrev tnoremap :FloatermPrev nnoremap :FloatermNext tnoremap :FloatermNext inoremap :FloatermToggle nnoremap :FloatermToggle tnoremap :FloatermToggle tnoremap nnoremap :FloatermSend vnoremap :FloatermSend ]]) -- -- Compe -- vim.cmd([[ -- inoremap compe#complete() -- inoremap compe#confirm('') -- inoremap compe#close('') -- inoremap compe#scroll({ 'delta': +4 }) -- inoremap compe#scroll({ 'delta': -4 }) -- ]]) -- better indenting vim.api.nvim_set_keymap('v', '<', '', '>gv', {noremap = true, silent = true}) -- I hate escape vim.api.nvim_set_keymap('i', 'jk', '', {noremap = true, silent = true}) vim.api.nvim_set_keymap('i', 'kj', '', {noremap = true, silent = true}) vim.api.nvim_set_keymap('i', 'jj', '', {noremap = true, silent = true}) -- Tab switch buffer vim.api.nvim_set_keymap('n', '', ':bnext', {noremap = true, silent = true}) vim.api.nvim_set_keymap('n', '', ':bprevious', {noremap = true, silent = true}) -- Move selected line / block of text in visual mode vim.api.nvim_set_keymap('x', 'K', ':move \'<-2gv-gv', {noremap = true, silent = true}) vim.api.nvim_set_keymap('x', 'J', ':move \'>+1gv-gv', {noremap = true, silent = true}) vim.api.nvim_set_keymap('n', 'Q', '', {noremap = true, silent = true})