I was planning to write this as a comment here, but it ended up growing so I published it on my blog post: <a href="https://kozikow.wordpress.com/2016/05/21/nice-new-emacs-package-dumb-jump-el/" rel="nofollow">https://kozikow.wordpress.com/2016/05/21/nice-new-emacs-pack...</a> .<p>BTW, did you know that you can just do README.org and github parses it? I noticed that you have org file checked in, but README is in md. For example see <a href="https://github.com/kozikow/keyremaplinux" rel="nofollow">https://github.com/kozikow/keyremaplinux</a> .
Ah yes, yet another proof that the Wrong Thing™ isn't necessarily the wrong thing. Sure it's objectively worse than [ce]tags, but haven't you heard? Worse is Better. :-D
For C/C++ RTags (<a href="https://github.com/Andersbakken/rtags" rel="nofollow">https://github.com/Andersbakken/rtags</a>) together with company-mode and fly-check can do jump-to-definition, auto-completion and on-the-fly-syntax-checking. Super easy to use if using cmake as build system.<p>Respond to this comment if you need pointers on how to set things up.
This is neat, and useful as a general purpose jump-to feature. It's probably worth mentioning that some languages have packages with better functionality for that language, such as tern-mode for JavaScript.
I must be missing something, but what is the advantage of this over something like Emacs Tags (<a href="https://www.emacswiki.org/emacs/EmacsTags" rel="nofollow">https://www.emacswiki.org/emacs/EmacsTags</a>) ?
I really love how well this works with Cider though, for Clojure projects. It even lets you jump to the definition of Java or Clojure files that live outside your current project, e.g. in third party libraries or even the Java standard library. Why, just today I jumped to the definition of java.time.Month because I had never actually seen a real live Java enum before. (Sure enough, it's defined with the keyword `enum`. Neat!) Cider has become essential to my Clojure workflow at work.
This is cool, I've also been writing a similar emacs package: it uses `git grep` and `git ls-files` to quickly find patterns and file names in the current git repo, and has a simple interface for filtering the search results to narrow down to what you were looking for (and also uses a regexp heuristic for jumping to definitions).<p><a href="https://github.com/dandavison/emacs-search-files" rel="nofollow">https://github.com/dandavison/emacs-search-files</a>
this looks neat.<p>i notice one of the supported languages is go -- if you're doing much go, i recommend installing godef and using go-mode.el. no tags files or anything like that, and works perfectly well for jumping to definition.<p>(i also highly recommend gorename and guru.)