(or emacs irrelevant)

ido-vertical - like ido, but vertical!

Intro

As I was releasing lispy 0.23.0, which added an option for methods of jumping to semantic tags other than helm, I've discovered ido-vertical-mode. I also made some changes to it, so now it looks like this:

lispy-ido-vertical

The changes are:

  • the current text is highlighted in all matches
  • the current number of total matches is displayed in the first line
  • I also customized the face for the first match and the only match (you can't see that one here)

Helm is still the big gun when it comes to completing lists with hundreds of candidates, but with the above changes, ido-vertical-mode comes close to what I need when jumping to tags. The only thing missing now is that the selected candidate is always on the first line, even when I press C-n, which isn't very intuitive.

Other completion methods available in lispy-goto

Depending on the modes you have enabled, you can complete with:

  • helm
  • ido
  • ido-vertical-mode
  • icomplete-mode
  • icy-mode
  • no mode, just plain completion

lispy-eval-other-window now uses ace-window

This function bound to p is very convenient for debugging Elisp: it allows you to eval the current sexp in the context of other window. This is very powerful: you can run and debug your function as you write it, statement by statement. Previously, this setup was viable only in a two-window split, because using other-window, it wasn't predictable in which window the eval would take place. Now, if there are more than two windows, aw-select will select the window for the eval. This selection will be remembered, so you don't have to select for the following evals, unless the window configuration changes.

Outro

There are more changes that you can find in the release notes if you're interested. You can find the new ido-vertical stuff in my fork, until it gets merged.