I use ctags -R *
to generate tag files. I have tried exuberant-ctags and universal-ctags.
In a c function, I define a local variable, but ctags cannot find the definition of the local variable. Is there any options for ctags to generate tags for local variables?
1 Answer
If you are using universal-ctags, pass --kinds-C=+l.
$ cat /tmp/foo.c
int
main(int argc, char **argv)
{
int r = 0;
retunr 0;
}
$ u-ctags -o - --kinds-C=+l /tmp/foo.c
main /tmp/foo.c /^main(int argc, char **argv)$/;" f typeref:typename:int
r /tmp/foo.c /^ int r = 0;$/;" l function:main typeref:typename:int file:
$ u-ctags -o - --kinds-C=+lz /tmp/foo.c
argc /tmp/foo.c /^main(int argc, char **argv)$/;" z function:main typeref:typename:int file:
argv /tmp/foo.c /^main(int argc, char **argv)$/;" z function:main typeref:typename:char ** file:
main /tmp/foo.c /^main(int argc, char **argv)$/;" f typeref:typename:int
r /tmp/foo.c /^ int r = 0;$/;" l function:main typeref:typename:int file:
gd
on that local variable)