¶Seil for macOS
I tried to use this free utility app to change the caps lock key on my keyboard into a delete key. Life-changing experience. I can never go back.
Also, I used another utility app Karabiner by the same author to change the backquote(`) key into escape key, and to enable the global vi mode (the hjkl keys will act as arrow keys when s+hjkl is held down). Highly recommend.