Mercurial > vim
diff src/tag.c @ 7266:6ba7182fb7bd v7.4.941
commit https://github.com/vim/vim/commit/0f6562e9036f889185dff49a75c7fc5ffb28b307
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Nov 24 18:48:14 2015 +0100
patch 7.4.941
Problem: There is no way to ignore case only for tag searches.
Solution: Add the 'tagcase' option. (Gary Johnson)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 24 Nov 2015 19:00:06 +0100 |
parents | b782813c73a6 |
children | 0b6c37dd858d |
line wrap: on
line diff
--- a/src/tag.c +++ b/src/tag.c @@ -1385,6 +1385,18 @@ find_tags(pat, num_matches, matchesp, fl int use_cscope = (flags & TAG_CSCOPE); #endif int verbose = (flags & TAG_VERBOSE); + int save_p_ic = p_ic; + + /* + * Change the value of 'ignorecase' according to 'tagcase' for the + * duration of this function. + */ + switch (curbuf->b_tc_flags ? curbuf->b_tc_flags : tc_flags) + { + case TC_FOLLOWIC: break; + case TC_IGNORE: p_ic = TRUE; break; + case TC_MATCH: p_ic = FALSE; break; + } help_save = curbuf->b_help; orgpat.pat = pat; @@ -2552,6 +2564,8 @@ findtag_end: vim_free(saved_pat); #endif + p_ic = save_p_ic; + return retval; }