I'm using Vim for some months now, but originally was using Sublime Text. While I missed many of Sublime's features first, I have now found Vim-based replacements for most of them. There is only one thing I haven't found a solution for: The command palette. Sublime Text enables plugin developers to define commands and keybindings for it, just like Vim does. But instead of only triggering these commands by its (internal) name or bound key mapping, there is also a "pretty name", that may e.g. contain spaces and special characters.

This comes comes in very handy when there is a command you need regularly, but not as regular, as creating a keybinding for it would justify (for me this is e.g. base64 conversion and renaming HTML tags). Using a special key binding, a menu opens that enables a fuzzy search for commands. The search is context-sensitive, so that e.g. commands only applicable to HTML files are only shown, when such a document is currently opened.

Do you know of any plugin (or internal mechanism) that provides a similar functionality for Vim, and displays a list of context-sensitive commands and allow a fuzzy search for them?

enter image description here

  • 1
    There is no 'pretty' name, but you can use :command to get a list of user-defined commands (this includes commands from plugins). You can also use :nmap to get a list of user-defined keybinds, :function for user-defined functions, and so forth... – Martin Tournoij Mar 17 '15 at 10:24
  • 1
    You could possibly make a unite source that shows this information, possibly by making a menu. This could be generated with manual and/or automatic techniques. Unite ships with a 'command' source, but this would not include descriptions. – Matt Boehm Mar 17 '15 at 16:53
  • That's exactly what my answer in my "possible duplicate" link describes :) – tommcdo Mar 17 '15 at 23:08

Browse other questions tagged or ask your own question.