Mercurial > vim
comparison src/search.c @ 9913:bb00c661b3a4 v7.4.2230
commit https://github.com/vim/vim/commit/66e29d7112e437b2b50efe1f82c7e892736d23e4
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Aug 20 16:57:02 2016 +0200
patch 7.4.2230
Problem: There is no equivalent of 'smartcase' for a tag search.
Solution: Add value "followscs" and "smart" to 'tagcase'. (Christian
Brabandt, closes https://github.com/vim/vim/issues/712) Turn tagcase test into new style.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 20 Aug 2016 17:00:07 +0200 |
parents | 847518911c0b |
children | 4aead6a9b7a9 |
comparison
equal
deleted
inserted
replaced
9912:4c5014d76564 | 9913:bb00c661b3a4 |
---|---|
365 * Uses the 'ignorecase' and 'smartcase' options. | 365 * Uses the 'ignorecase' and 'smartcase' options. |
366 */ | 366 */ |
367 int | 367 int |
368 ignorecase(char_u *pat) | 368 ignorecase(char_u *pat) |
369 { | 369 { |
370 int ic = p_ic; | 370 return ignorecase_opt(pat, p_ic, p_scs); |
371 | 371 } |
372 if (ic && !no_smartcase && p_scs | 372 |
373 /* | |
374 * As ignorecase() put pass the "ic" and "scs" flags. | |
375 */ | |
376 int | |
377 ignorecase_opt(char_u *pat, int ic_in, int scs) | |
378 { | |
379 int ic = ic_in; | |
380 | |
381 if (ic && !no_smartcase && scs | |
373 #ifdef FEAT_INS_EXPAND | 382 #ifdef FEAT_INS_EXPAND |
374 && !(ctrl_x_mode && curbuf->b_p_inf) | 383 && !(ctrl_x_mode && curbuf->b_p_inf) |
375 #endif | 384 #endif |
376 ) | 385 ) |
377 ic = !pat_has_uppercase(pat); | 386 ic = !pat_has_uppercase(pat); |