I stumbled upon mkid tools in tips.txt and tried it out (on C code). In terms of navigating to definitions, I thought it was identical to using ctags except for the fact that the ID file (generated by mkid) is smaller in size (for the same project) than the tags file.

Any thoughts on why one might prefer one over the other (other than the fact that vim has in built support for ctags)?


The vim help alludes to the primary distinction as follows

But sometimes you wish you could jump to all the places where
a function or variable is being used.

tags can be only used to jump to where identifiers are defined. id-tools is capable of storing all places an identifier is used, which tag files cannot store.

On the other hand, tags have much better integration with vim. There are at least 14 maps and commands dedicated to tags and vim natively stores your tag history in the tag stack to make navigating code easier. To use id-tools conveniently in vim you are suggested to add maps to your vimrc and you don't any other nice features. In this respect, id-tools is treated like a smarter and faster grep.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.