ludovicchabant / vim-gutentags

A Vim plugin that manages your tag files
https://bolt80.com/gutentags/
MIT License
2.3k stars 175 forks source link

How to jump to lib header files? #282

Open moon548834 opened 4 years ago

moon548834 commented 4 years ago

This plugin works well, but I find I can't jump to any function in lib. like socket, printf..etc.(I mean just the header files, like socket.h)

So, is there any ways can do that? Something like adding a lib path.. But I don't know how to..

ludovicchabant commented 4 years ago

Hi!

There's no easy way to do this all in Gutentags. It would require for example a hacky g:gutentags_file_list_command that lists both your project's files and the system files, or some even more hacky stuff with options inside .gutctags.

One reason that this type of scenario isn't supported out of the box is that if you told Gutentags to re-parse your project's files, it wouldn't know to not re-parse all the system libraries (unless we make the code needlessly complicated). Another downside is that if you have 10 different projects, your computer would parse the system libraries 10 times.

For now, the recommended way to do this is to run ctags /usr/lib/whatever once, and then tell Vim to load that tags file (set tags += /usr/lib/whatever/tags or something). Vim supports multiple tags files and Gutentags will only add to this list.