По какой-то причине я не могу понять, как передавать одинарные кавычки внешним инструментам при использовании vim. Например, я мог бы захотеть вызвать внешний grep Vim для поиска текста «foo (то есть, одна кавычка, затем слово foo)
Так что я мог бы попробовать команду:
:grep \"foo *.txt
Но это приводит к следующему сообщению об ошибке:
!findstr /n \"foo *.txt >C:\Users\[username]\AppData\Local\Temp\VIeC244.tmp 2>&1
shell returned 1
E40: Can't open errorfile C:\Users\[username]\AppData\Local\Temp\VIeC244.tmp
Обратите внимание, что grep изменен для использования 'findstr /n', так как я нахожусь в Windows (и это можно проверить, запустив echo &grepprg
). Что я нахожу, так это то, что я могу легко выполнить поиск, который хочу, если я делаю это сам из командной строки, набрав следующее:
findstr /n \"foo *.txt
Который работает именно так, как я ожидал