diff --git a/nvim/.config/nvim/after/plugin/easy-align.vim b/nvim/.config/nvim/after/plugin/easy-align.vim new file mode 100644 index 0000000..063a7c3 --- /dev/null +++ b/nvim/.config/nvim/after/plugin/easy-align.vim @@ -0,0 +1,4 @@ +" Start interactive EasyAlign in visual mode (e.g. vipga) +xmap ga (EasyAlign) +" Start interactive EasyAlign for a motion/text object (e.g. gaip) +nmap ga (EasyAlign) diff --git a/nvim/.config/nvim/after/plugin/incsearch.vim b/nvim/.config/nvim/after/plugin/incsearch.vim new file mode 100644 index 0000000..8f8d093 --- /dev/null +++ b/nvim/.config/nvim/after/plugin/incsearch.vim @@ -0,0 +1,9 @@ +map / (incsearch-forward) +map ? (incsearch-backward) +map g/ (incsearch-stay) +map n (incsearch-nohl-n) +map N (incsearch-nohl-N) +map * (incsearch-nohl-*) +map # (incsearch-nohl-#) +map g* (incsearch-nohl-g*) +map g# (incsearch-nohl-g#) diff --git a/nvim/.config/nvim/config.vim b/nvim/.config/nvim/config.vim index bef76c9..d027156 100644 --- a/nvim/.config/nvim/config.vim +++ b/nvim/.config/nvim/config.vim @@ -32,6 +32,7 @@ set undofile " Enable undo persistence across sessions set hidden set noautochdir set hlsearch +set relativenumber " Wild menu set wildmenu diff --git a/nvim/.config/nvim/init.vim b/nvim/.config/nvim/init.vim index d12107f..cfec577 100644 --- a/nvim/.config/nvim/init.vim +++ b/nvim/.config/nvim/init.vim @@ -2,10 +2,9 @@ call plug#begin('~/.config/nvim/plugged') " Tab completion Plug 'ervandew/supertab' -" EasyMotion -Plug 'easymotion/vim-easymotion' +" Motions Plug 'haya14busa/incsearch.vim' -Plug 'haya14busa/incsearch-easymotion.vim' +Plug 'rhysd/clever-f.vim' " Fuzzy search Plug 'junegunn/fzf.vim' " Remove extraneous whitespace when edit mode is exited diff --git a/nvim/.config/nvim/keymappings.vim b/nvim/.config/nvim/keymappings.vim index b3a12b3..19e629b 100644 --- a/nvim/.config/nvim/keymappings.vim +++ b/nvim/.config/nvim/keymappings.vim @@ -161,48 +161,6 @@ noremap nnoremap :WhichKey '' nnoremap :WhichKey ',' -" Bindings for easy motion -" Character motions -map c (easymotion-bd-f) -nmap c (easymotion-overwin-f) -" Line motions -map L (easymotion-bd-jk) -nmap L (easymotion-overwin-line) -" Word motions -map w (easymotion-bd-w) -nmap w (easymotion-overwin-w) -" Line motion jump -map l (easymotion-lineforward) -map j (easymotion-j) -map k (easymotion-k) -map h (easymotion-linebackward) -" Incremental search + easymotion -noremap / incsearch#go(incsearch_config()) -noremap ? incsearch#go(incsearch_config({'command': '?'})) -noremap g/ incsearch#go(incsearch_config({'is_stay': 1})) -" Incremental search -map n (incsearch-nohl-n) -map N (incsearch-nohl-N) -map * (incsearch-nohl-*) -map # (incsearch-nohl-#) -map g* (incsearch-nohl-g*) -map g# (incsearch-nohl-g#) - " Tag helpers nnoremap :vsp :exec("tag ".expand("")) nnoremap :sp :exec("tag ".expand("")) - -" Start interactive EasyAlign in visual mode (e.g. vipga) -xmap ga (EasyAlign) -" Start interactive EasyAlign for a motion/text object (e.g. gaip) -nmap ga (EasyAlign) - -function! s:incsearch_config(...) abort - return incsearch#util#deepextend(deepcopy({ - \ 'modules': [incsearch#config#easymotion#module({'overwin': 1})], - \ 'keymap': { - \ "\": '(easymotion)' - \ }, - \ 'is_expr': 0 - \ }), get(a:, 1, {})) -endfunction diff --git a/nvim/.config/nvim/plugin_settings.vim b/nvim/.config/nvim/plugin_settings.vim index fce8cf3..03729c4 100644 --- a/nvim/.config/nvim/plugin_settings.vim +++ b/nvim/.config/nvim/plugin_settings.vim @@ -73,7 +73,7 @@ let g:grepper.switch = 0 let g:grepper.append = 0 let g:grepper.prompt = 0 -" Easymotion incsearch +" Incremental search let g:incsearch#auto_nohlsearch = 1 " Buftabline