I've written several times about
ace-jump-mode and how it's now my main navigation tool. I'm also a huge fan of
ace-winodw and use it through the excellent hydra from abo-abo that I use to control all my window operations.
Abo-abo, it turns out has written a replacement for
ace-jump, called Avy, that extends the its functionality. Abo-abo writes excellent software and is fastidious about maintaining it but
ace-jump was working well for me and my inherent laziness kept me from switching. Then Artur Malabarba wrote about his upgrading to Avy and I was shamed into at least considering upgrading.
Finally, I realized that
ace-window was based on
avy and was therefore already installed on my machines. All I had to do was switch my key binding for
avi-goto-word-1 and I would be using
avy instead of
ace-jump as well as having access to the rest of
avy's functionality. You can take a look at
avy's READ ME to see what some of that functionality is.
I also rebound 【Meta+g g】 and 【Meta+g Meta+g】 to
avy-goto-line. It's a more featureful replacement for the built-in goto-line.
I've been using the new setup for a while now and am very happy with it. I finally deleted
ace-jump from my packages so you can consider me all in now. If you ever have more than two windows open in Emacs you absolutely must have
ace-window. Once you have
ace-window, all the rest is available for free. I can't overstate how useful this package is. I can't imagine using Emacs without it now.