В останньому плагіні Ctrl-P для vim ( ctrlp ) є розширення "line", яке може робити нечіткий пошук рядків. Розширення потрібно включити вручну. Ось моя конфігурація в .vimrc
:
let g:ctrlp_map = '<c-p>'
let g:ctrlp_cmd = 'CtrlPLastMode'
let g:ctrlp_extensions = ['buffertag', 'tag', 'line', 'dir']
Після цього ви натискаєте, Ctrl-p
щоб принести меню, а потім натискайте Ctrl-f
кілька разів, поки не ввімкнеться режим рядка. Введіть нечітку рядок зараз:
ОНОВЛЕННЯ 27 лютого 2014 року
Альтернативним рішенням, яке я зараз використовую, було б використовувати об'єднатися . Для того, щоб здійснити нечіткий пошук рядків, потрібно трохи налаштувати об'єднання:
call unite#filters#matcher_default#use(['matcher_fuzzy'])
call unite#filters#sorter_default#use(['sorter_rank'])
call unite#custom#source('file,file/new,buffer,file_rec,line', 'matchers', 'matcher_fuzzy')
nnoremap <C-k> :<C-u>Unite -buffer-name=search -start-insert line<cr>
Тепер натисніть Ctrl-k
і введіть:
До речі, об’єднати також можна нечіткий пошук файлів за іменем.
ОНОВЛЕННЯ 03 серпня 2016 року
Ще одним способом пошуку рядків є використання fzf разом із супровідним плагіном vim . Дивіться інструкції з установки тут: https://github.com/junegunn/fzf.vim#installation
Після того як ви встановили і fzf, і fzf.vim, ви можете використовувати :BLines
для пошуку рядки в поточному буфері:
Можливо, ви помітили, що це не зовсім нечіткий пошук, що означає, що мені потрібно використовувати пробіли. Це може не спрацювати.