comment/
< [The whitespace before and after the '0' must be a single <Tab>]
When a binary search was done and no match was found in any of the
files listed in 'tags', and case is ignored or a pattern is used
instead of a normal tag name, a retry is done with a linear search.
Tags in unsorted tags files, and matches with different case will only
be found in the retry.
If a tag file indicates that it is case-fold sorted, the second,
linear search can be avoided when case is ignored. Use a value of '2'
in the "!_TAG_FILE_SORTED" line for this. A tag file can be case-fold
sorted with the -f switch to "sort" in most unices, as in the command:
"sort -f -o tags tags". For Universal ctags and Exuberant ctags
version 5.x or higher (at least 5.5) the --sort=foldcase switch can be
used for this as well. Note that case must be folded to uppercase for
this to work.
By default, tag searches are case-sensitive. Case is ignored when
'ignorecase' is set and 'tagcase' is "followic", or when 'tagcase' is
"ignore".
Also when 'tagcase' is "followscs" and 'smartcase' is set, or
'tagcase' is "smart", and the pattern contains only lowercase
characters.
When 'tagbsearch' is off, tags searching is slower when a full match
exists, but faster when no full match exists. Tags in unsorted tags
files may only be found with 'tagbsearch' off.
When the tags file is not sorted, or sorted in a wrong way (not on
ASCII byte value), 'tagbsearch' should be off, or the line given above
must be included in the tags file.
This option doesn't affect commands that find all matching tags (e.g.,
command-line completion and ":help").
*'tagcase'* *'tc'*
'tagcase' 'tc' string (default "followic")
global or local to buffer |global-local|
This option specifies how case is handled when searching the tags
file:
followic Follow the 'ignorecase' option
followscs Follow the 'smartcase' and 'ignorecase' options
ignore Ignore case
match Match case
smart Ignore case unless an upper case letter is used
*'tagfunc'* *'tfu'*
'tagfunc' 'tfu' string (default "")
local to buffer
This option specifies a function to be used to perform tag searches
(including |taglist()|).
The function gets the tag pattern and should return a List of matching
tags. See |tag-function| for an explanation of how to write the
function and an example. The value can be the name of a function, a
|lambda| or a |Funcref|. See |option-value-function| for more
information.
This option cannot be set from a |modeline| or in the |sandbox|, for
security reasons.
*'taglength'* *'tl'*
'taglength' 'tl' number (default 0)
global
If non-zero, tags are significant up to this number of characters.
*'tagrelative'* *'tr'* *'notagrelative'* *'notr'*
'tagrelative' 'tr' boolean (default on)
global
If on and using a tags file in another directory, file names in that
tags file are relative to the directory where the tags file is.
*'tags'* *'tag'* *E433*
'tags' 'tag' string (default "./tags;,tags")
global or local to buffer |global-local|
Filenames for the tag command, separated by spaces or commas. To
include a space or comma in a file name, precede it with backslashes
(see |option-backslash| about including spaces/commas and backslashes).
When a file name starts with "./", the '.' is replaced with the path
of the current file. But only when the 'd' flag is not included in
'cpoptions'. Environment variables are expanded |:set_env|. Also see
|tags-option|.
"*", "**" and other wildcards can be used to search for tags files in
a directory tree. See |file-searching|. E.g., "/lib/**/tags" will
find all files named "tags" below "/lib". The filename itself cannot
contain wildcards, it is used as-is. E.g., "/lib/**/tags?" will find
files called "tags?".
The |tagfiles()| function can be used to get a list of the file names
actually used.
The use of |:set+=| and |:set-=| is preferred when adding or removing