Я обычно включаю smartcase
по моему .vimrc
.
Без smartcase
:
- Если я хочу поиск без учета регистра, я пишу в верхнем или нижнем регистре (не имеет значения) и добавляю
\c
в конце запроса. - Поиск с учетом регистра происходит по умолчанию.
С smartcase
:
- Если я хочу поиск без учета регистра, я пишу все в нижнем регистре.
- Если я хочу поиск с учетом регистра, я пишу заглавные буквы в верхнем регистре.
Но, с smartcase
включенным, как я могу сказать, что я хочу, чтобы поиск строчных букв учитывал регистр символов? Я ожидал, что добавление a \c
вернет тип поиска (так что, если бы я написал все в нижнем регистре, то есть поиск без учета регистра, это превратилось бы в поиск с учетом регистра), и если бы я написал несколько заглавных букв букв, то есть поиск с учетом регистра, он превратился бы в поиск без учета регистра), но это, похоже, не так (без каламбура).
\c
не является переключателем, но фактически вызывает сопоставление без учета регистра.Ответы:
Используйте
\C
(заглавные буквы) в шаблоне поискаСмотрите
:help /ignorecase
: «\ C» делает противоположное: принудительное сопоставление регистра для всего шаблона.источник