Detect if a key is bound to something in vim
I'd like to know if there is a way to figure out if a key does something in vim. I know that I can use :map
to see user-defined mappings, but is there something for the built-in stuff?
For example, I always had CTRL-W bound to close tab, because I thought that it was unused. After half a year, I found out that there are some sequences that use it, like CTRL-W CTRL-S to split the window, and it was a nightmare to retrain myself.
If you check out the suggested answer by Randy Morris you will find that
:help index
will give you the list you want.
To check the default mapping:
:help index
For other mapping that is done by either users or plugin:
:map
:map!
From http://vim.wikia.com/wiki/Mapping_keys_in_Vim_-Tutorial(Part_1):
The first command displays the maps that work in normal, visual and select and operator pending mode. The second command displays the maps that work in insert and command-line mode.
Typically the output of the above commands will span several pages. You can use the following set of commands to redirect the output to the vim_maps.txt file:
:redir! > vim_maps.txt :map :map! :redir END
Not a complete answer, but you may want to check out :help map-which-keys
for a list of keys that vim recommends you to use in your custom maps.
That help section has a recommendation of how to tell if a specific key is mapped to an action.