You can map Caps Lock to Control without installing any extra software:
- In Mac OS X visit System Preferences > Keyboard -> Modifier Keys
- In Linux execute:
setxkbmap -option caps:ctrl_modifier
- In Windows edit your registry.
This brings Control onto the middle row, making it easier to press all Control modified strokes, including Ctrl-[ and Ctrl-C which both exit Insert mode in Vim.
Make Caps Lock perform both Ctrl and Escape?
Alternatively, at the bottom of his answer Giovanni suggests to map Caps Lock to perform both Control and Escape depending on the length of press, but this requires installing extra software.
Some people love this.
I did not. Because sometimes I press Ctrl, then change my mind, and release it. If I do that too quickly, within the configured timeout, then it sends an Escape stroke, which in some situations can be quite disruptive (for example closing the current dialog window).
Differences between Ctrl-[ and Ctrl-C
Ctrl-[ is probably what you want, since it always works like Escape.
One difference with Ctrl-C is: When leaving an edit in blockwise visual mode, Ctrl-C will keep the changes you made on the current line, but will not repeat the changes over the other lines in the block, which is the point of that mode.
It also won't check for abbreviations, or trigger the InsertLeave event. See