From 886b3ab0745449518243ae70c517da50444fee75 Mon Sep 17 00:00:00 2001 From: Mayeul d'Avezac Date: Tue, 1 Aug 2017 20:45:58 +0100 Subject: [PATCH] Fix issue with n vs N when ignorecase is set If ignorecase is set, then string comparisons in vimscript ignore cases. Hence `if a:key == 'n'` is true when `key` is 'N'. --- autoload/SpaceVim/layers/incsearch.vim | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/autoload/SpaceVim/layers/incsearch.vim b/autoload/SpaceVim/layers/incsearch.vim index 8be6514f7..ce02713b0 100644 --- a/autoload/SpaceVim/layers/incsearch.vim +++ b/autoload/SpaceVim/layers/incsearch.vim @@ -38,8 +38,8 @@ function! SpaceVim#layers#incsearch#config() abort map g/ (incsearch-stay) set hlsearch let g:incsearch#auto_nohlsearch = get(g:, 'incsearch#auto_nohlsearch', 1) - noremap n :call update_search_index('n') - noremap N :call update_search_index('N') + noremap n :call update_search_index('d') + noremap N :call update_search_index('r') map * (incsearch-nohl-*) map # (incsearch-nohl-#) map g* (incsearch-nohl-g*) @@ -66,15 +66,15 @@ endfunction let s:si_flag = 0 function! s:update_search_index(key) abort - if a:key == 'n' + if a:key == 'd' if mapcheck("(incsearch-nohl-n)") !=# '' call feedkeys("\(incsearch-nohl-n)") else normal! n endif normal! ml - elseif a:key == 'N' - if mapcheck("(incsearch-nohl-n)") !=# '' + elseif a:key == 'r' + if mapcheck("(incsearch-nohl-N)") !=# '' call feedkeys("\(incsearch-nohl-N)") else normal! N