vim:使用vimrc中的高亮显示执行普通搜索

时间:2016-03-28 19:58:48

标签: search vim highlight viml

我使用以下内容来映射*以突出显示

搜索当前选择
set hlsearch
vnoremap * :call VisualSelection('f')<CR>
vnoremap # :call VisualSelection('b')<CR>
function! VisualSelection(direction) range
  let l:saved_reg = @"
  execute "normal! vgvy"
  let l:pattern = escape(@", '\\/.*$^~[]')
  let l:pattern = substitute(l:pattern, "\n$", "", "")

  if a:direction == 'b'
    execute "normal ?" . l:pattern . "\<CR>"
  elseif a:direction == 'gv'
    call CmdLine("vimgrep " . '/'. l:pattern . '/' . ' **/*.')
  elseif a:direction == 'replace'
    call CmdLine("%s" . '/'. l:pattern . '/')
  elseif a:direction == 'f'
    execute "normal /" . l:pattern . "\<CR>"
  endif

  let @/ = l:pattern
  let @" = l:saved_reg
endfunction

但是,此脚本不会突出显示搜索结果。在ex命令模式下手动输入命令:execute "normal /" . l:pattern . "\<CR>"时,我会突出显示。

请告诉我如何在vimrc脚本中启用高亮显示。

0 个答案:

没有答案