Learn Emacs: Smex Jun 6th, 2012 • Permalink Scroll down for code snippets and text. Smex is IDO style completion for M-x. It is very customizable. I recommend taking a look at the README for all the available options. Here's the minimum setup required. (require 'smex) (smex-initialize) (global-set-key (kbd "M-x") 'smex) (global-set-key (kbd "M-X") 'smex-major-mode-commands) (global-set-key (kbd "C-c M-x") 'smex-update) (global-set-key (kbd "C-c C-c M-x") 'execute-extended-command) It's available on the ELPA and the source is on github. Smex source on github available on marmalade repo