Eu normalmente habilito smartcase
no meu .vimrc
.
Sem smartcase
:
- Se eu quiser uma pesquisa sem distinção entre maiúsculas e minúsculas, escrevo em maiúsculas ou minúsculas (não importa) e anexo a
\c
no final da consulta. - A pesquisa com distinção entre maiúsculas e minúsculas acontece por padrão.
Com smartcase
:
- Se eu quiser uma pesquisa sem distinção entre maiúsculas e minúsculas, escrevo tudo em letras minúsculas.
- Se eu quiser uma pesquisa com distinção entre maiúsculas e minúsculas, escrevo as letras maiúsculas em maiúsculas.
Mas, com smartcase
ativado, como posso dizer que quero uma pesquisa que diferencia maiúsculas de minúsculas de um padrão em minúsculas? Eu esperava que o acréscimo de a \c
revertesse o tipo de pesquisa (de modo que, se eu tivesse escrito tudo em letras minúsculas, ou seja, pesquisa sem distinção entre maiúsculas e minúsculas, ele se tornaria uma pesquisa com distinção entre maiúsculas e minúsculas; e se eu tivesse escrito algumas letras maiúsculas letras, ou seja, pesquisa com distinção entre maiúsculas e minúsculas, ela se tornaria uma pesquisa sem distinção entre maiúsculas e minúsculas), mas esse não parece ser o caso (sem trocadilhos).
\c
não é uma alternância, mas na verdade força a correspondência que não diferencia maiúsculas de minúsculas.Respostas:
Use
\C
(maiúsculas) no seu padrão de pesquisaVeja
:help /ignorecase
: "\ C" faz o oposto: Forçar correspondência de maiúsculas e minúsculas para todo o padrão.fonte