diff --git a/vimrc b/vimrc index c44169d..54e19fd 100644 --- a/vimrc +++ b/vimrc @@ -176,3 +176,23 @@ vnoremap cu :s/^\V=escape(b:comment_leader,'\/')//e n n:call HLNext(0.4) +nnoremap N N:call HLNext(0.4) + +highlight WhiteOnRed ctermbg=red ctermfg=white + +function! HLNext(blinktime) + let [bufnum, lnum, col, off] = getpos('.') + let machlen = strlen(matchstr(strpart(getline('.'), col-1),@/)) + let target_pat = '\c\%#'.@/ + let blinks = 3 + for n in range(1, blinks) + let red = matchadd('WhiteOnRed', target_pat, 101) + redraw + exec 'sleep ' . float2nr(a:blinktime / (2*blinks) * 1000) . 'm' + call matchdelete(red) + redraw + exec 'sleep ' . float2nr(a:blinktime / (2*blinks) * 1000) . 'm' + endfor +endfunction