Mike Zamansky has video number 33 up in his Using Emacs series. This video discusses Projectile and dumb-jump. As most of you probably know, Projectile is Bozhidar Batsov’s project interaction package for Emacs. It provides handy features for using Emacs at the project level. I’ve always thought of it as a tool for developers working with large projects who need a way of navigating around the project files easily. Zamansky’s video shows that it’s also appropriate for people who have a number of groups of related files that they wish to deal with as a whole even if they aren’t really projects. Even if you aren’t dealing, strictly speaking, with “projects,” you may find it handy so you should take a look at the video to see if it will work for you.
The other package that Zamansky discusses is dumb-jump. It performs the same basic function has the various TAGS systems but without having to generate or maintain a TAGS file. It’s a bit slower because it uses The Silver Searcher, ripgrep, or grep to locate the desired targets. From Zamansky’s video, it appears to work pretty quickly with The Silver Server.
I’m pretty impressed with the idea of dumb-jump and will probably give it a try. Early on in my career I developed a dislike for TAGS systems because it was such a pain to maintain the TAGS files. That’s probably easier now but my prejudice prevails. Dumb-jump seems like a nice compromise. It supports all the languages that I use regularly and there’s virtually no configuration after you include the use-package
in your init.el
.
The video is just short of 11 and a half minutes so you should easily be able to find time to watch it. If you aren’t familiar with Projectile and dumb-jump, it’s definitely worth your while.