Description
Currently we have the TAGS.vi
and TAGS.emacs
rules which use Exuberant Ctags and regular expressions to produce a very useful but not particularly brilliant result. Now that we have librustdoc, we can do much better, rather quickly! I want a tool (quite probably built into rustdoc, actually) which can generate semantically correct and optimally useful tags files for the Vim and Emacs standards. Doing this absolutely correctly will be a great help to developers, who will already benefit if they go to the trouble of ensuring they have the tags files loaded in their editor.
This will allow things like adding enum variants to the tags file which probably can't be done correctly at present (and no attempt is made) as I think you could have further nested parentheses inside the variant, e.g. I think Foo((), (bar, ()))
would be valid, but it'd make a mess of a regex-based rule unless recursion could actually be managed in a nasty hacky way.