Detect if a key is bound to something in vim
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
I skimmed through :help index
and made a list of some of the unused nmap
keys:
- Q (switch to "Ex" mode)
- Z except ZZ, ZQ
- \
<Space>
(same asl
in the normal mode; the largest and the most underutilized key in the normal mode)- gb, gc, gl, gx, gy, gz
- gs (sleep)
- zp, zq, zu, zy
- cd, cm, co, cp, cq, cr, cs, cu, cx, cy
- dc, dm, do, dp, dq, dr, ds, du, dx, dy
- gA, gB, gC, gG, gK, gL, gM, gO, gS, gX, gY, gZ
- zB, zI, zJ, zK, zP, zQ, zP, zS, zT, zU, zV, zY, zZ
- ]a, ]b, ]e, ]g, ]h, ]j, ]k, ]l, ]n, ]o, ]q, ]r, ]t, ]u, ]v, ]w, ]x, ]y
- [a, [b, [e, [g, [h, [j, [k, [l, [n, [o, [q, [r, [t, [u, [v, [w, [x, [y
- CTRL-G, CTRL-K
- CTRL-\ a - z (reserved for extensions)
- CTRL-\ A - Z (not used)
Please update/comment.
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.
If you check out the suggested answer by Randy Morris you will find that
:help index
will give you the list you want.