view src/testdir/test_tagcase.in @ 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
children 73207eca53f5
line wrap: on
line source

Tests for 'tagcase' option

STARTTEST
:/^start text$/+1,/^end text$/w! Xtext
:/^start tags$/+1,/^end tags$/-1w! Xtags
:set tags=Xtags
:e Xtext
:"
:" Verify default values.
:set ic& | setg tc& | setl tc&
:call append('$', "ic=".&ic." g:tc=".&g:tc." l:tc=".&l:tc." tc=".&tc)
:"
:" Verify that the local setting accepts <empty> but that the global setting
:" does not.  The first of these (setting the local value to <empty>) should
:" succeed; the other two should fail.
:let v:errmsg = ""
:setl tc=
:call append('$', v:errmsg)
:let v:errmsg = ""
:setg tc=
:call append('$', v:errmsg)
:let v:errmsg = ""
:set tc=
:call append('$', v:errmsg)
:"
:" Verify that the correct number of matching tags is found for all values of
:" 'ignorecase' and global and local values 'tagcase', in all combinations.
:for &ic in [0, 1]
:  for &g:tc in ["followic", "ignore", "match"]
:    for &l:tc in ["", "followic", "ignore", "match"]
:      call append('$', "ic=".&ic." g:tc=".&g:tc." l:tc=".&l:tc." tc=".&tc)
:      call append('$', len(taglist("^foo$")))
:      call append('$', len(taglist("^Foo$")))
:    endfor
:  endfor
:endfor
:"
:1,/^end text$/d
:w! test.out
:qa!
ENDTEST

start text

Foo
Bar
foo

end text

start tags
Bar	Xtext	3
Foo	Xtext	2
foo	Xtext	4
end tags