Eu estou (lentamente) migrando para o Vim para codificação diária do Ruby on Rails (Linux Cinnamon 64bits). Sendo um novato, recentemente encontrei algo que não entendo.
Eu quero usar os comandos: vimgrep e: grep para pesquisar um padrão em uma árvore de arquivos do Vim. Eu posso fazer isso sem problemas com o comando: vimgrep:
:vimgrep /User/gj **/*.rb
No entanto, quando tento usar o mesmo comando com: grep (que deve usar o grep do sistema), nenhum resultado é retornado:
:grep User **/*.rb
Pesquisando, descobri que as opções globstar do meu shell bash não estavam habilitadas:
$shopt globstar
globstar off
Foi fácil ativar:
$shopt -s globstar
Adicionei a linha acima ao meu arquivo .vimrc e verifiquei se a opção estava permanentemente ativada no meu bash.
Com a nova opção, eu poderia executar o grep dessa forma e obter os resultados desejados:
$grep User **/*.rb
Infelizmente, o comando: grep de dentro do Vim ainda não está funcionando com o '**'. E executando:
!shopt globstar
de dentro do Vim, o resultado ainda está desligado .
Portanto, a questão é: posso propagar a opção globstar do meu bash para o meu ambiente de comando externo do Vim? Caso contrário, posso de alguma forma definir minha opção grepprg no Vim de uma forma que me permita usar o globstar corretamente?
Agradecemos antecipadamente a todos que ajudarem