Интеграция Silver Searcher Vim/Fzf: не считайте имя файла совпадающим в Vim

Я относительно новичок в Vim и всегда использую FZF + ripgrep в Vim, не считая имена файлов совпадающими, потому что я хочу искать только внутри файлов по определенному шаблону.

Я всегда использую в своем vimrc следующее:

      nnoremap <silent> <Leader>f :Rg<CR>
set grepprg=rg\ --vimgrep\ --smart-case\ --follow
command! -bang -nargs=* Rg call fzf#vim#grep("rg --column --line-number --no-heading --color=always --smart-case ".shellescape(<q-args>), 1, {'options': '--delimiter : --nth 4..'}, <bang>0)

Где последняя команда, которую я где-то нашел, по сути творит чудеса. Теперь мне нужно поработать над ARM с Ubuntu 18.04, и установка Rg там затруднительна, поэтому я переключился на Ag на этой платформе. Мой наивный подход к использованию той же команды заключался в следующем:

      nnoremap <silent> <Leader>f :Ag<CR>
set grepprg=ag\ --vimgrep\ --smart-case\ --follow
command! -bang -nargs=* Ag call fzf#vim#grep("ag --column --noheading --smart-case ".shellescape(<q-args>), 1, {'options': '--delimiter : --nth 4..'}, <bang>0)

Я получаю следующую ошибку:

[Ошибка команды: ag --column --noheading --smart-case '']

Это наверняка проблема с функцией shellescape Vim, но я не могу ее решить. Надеюсь, у кого-нибудь есть решение!

0 ответов

Другие вопросы по тегам