Edit: I think I had trouble with Javascript, React and/or Ruby.
Edit: I think I had trouble with Javascript, React and/or Ruby.
It's a preconfigured Emacs configuration (a bit of an overhaul, but not too intrusive if you run it in Emacs or Hybrid mode).
You can just open source files in languages you haven't touched before and the editor will offer to configure itself for that language.
Go to definition works out of the box for more than a dozen languages. :)
1. Install the ggtags.el package in Emacs and install GnuGlobal outside.
2. Make sure /GnuGlobal/bin is in the path environment variable, so that the global and gtags executables can be launched from Emacs.
3. Build the initial index database outside of Emacs. Emacs will update the index as you add new code. I usually just run the following commands on the root of the source directory. You can modify find to include or exclude certain files.
find . -type f >> filelist
gtags -f filelist
Now M-. should pick up the word at cursor and jump to its definition, or display a list of all its usage if cursor is already at the definition.