ido/ivy/helm imenu tag selection across buffers with the same mode/project etc
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information. Typos Jun 25, 2016
imenu-anywhere.el Add more cider friendly modes Aug 5, 2017

License GPL 3 MELPA MELPA Stable


imenu-anywhere provides navigation for imenu tags across all buffers that satisfy a filtering criteria. Available criteria are - all buffers with the same major mode, same project buffers and user defined list of friendly mode buffers.


Available from package.el community maintained repos - MELPA Stable and MELPA repos.

Install using the following command:

M-x package-install [RET] imenu-anywhere [RET]

or if you'd rather keep it in your dotfiles:

(unless (package-installed-p 'imenu-anywhere)
  (package-install 'imenu-anywhere))

If the installation doesn't work try refreshing the package list:

M-x package-refresh-contents


Simply bind imenu-anywhere to a key of your choice:

 (global-set-key (kbd "C-.") #'imenu-anywhere)

By default imenu-anywhere uses completing-read for completion. If you are using ido-ubiquitous or helm-mode which redefine completing-read-function you are set. Otherwise you can use any of the provided wrappers directly:

  • ido-imenu-anywhere,
  • ivy-imenu-anywhere or
  • helm-imenu-anywhere

For the last two wrappers you will need to install ivy or helm separately.


By default imenu-anywhere makes tags available from buffers with the same mode, same project and friendly modes defined by imenu-anywhere-friendly-modes. You can configure the filtering strategies with imenu-anywhere-buffer-filter-functions.


Copyright © 2011-2016 Vitalie Spinu and contributors.

Distributed under the GNU General Public License; type C-h C-c to view it.