O mais fácil pode ser, por exemplo,
/def transmogrify/;/foobar
No Vim, muitas vezes me pego executando uma pesquisa imediatamente seguida por outra pesquisa. Eu estou querendo saber se eu posso combinar as duas pesquisas em um comando.
Por exemplo, se eu quiser encontrar a primeira instância da variável foobar
em uma função chamada transmogrify
, digite:
/def transmogrify
/foobar
Ou se eu estiver em um arquivo de registro e quiser procurar um erro que aconteceu depois de uma data específica:
/2012-07-26
/ERROR
Existe uma maneira melhor de fazer isso? E não, não estou olhando para gravar uma macro.
Você pode usar o símbolo |
para fazer uma operação OR ao pesquisar.
Tomando seu segundo exemplo, por exemplo:
/2012-07-26\|ERROR
Melhor ainda, se você tiver isso definido no seu vimrc:
" Make search expressions "very magic"
nnoremap / /\v
vnoremap / /\v
Então você não precisa escapar do |
. Por exemplo:
/\v2012-07-26|ERROR
Tags vim