" hardmode == not using arrow keys function! s:bail() let l:msg = 'E0X: Use hjkl' echohl ErrorMsg | echo l:msg | echohl None endfunction function! s:enable_hardmode(bang) if !a:bang try " map arrow keys to more useful actions " https://coderoncode.com/posts/vim-is-the-perfect-ide nmap R :resize +2 nmap R :resize -2 nmap R :vertical resize +2 nmap R :vertical resize +2 nmap W :wincmd k nmap W :wincmd j nmap W :wincmd h nmap W :wincmd l nmap Wm :wincmd K nmap Wm :wincmd J nmap Wm :wincmd H nmap Wm :wincmd L " or bail on them altogether nmap :call bail() nmap :call bail() nmap :call bail() nmap :call bail() vmap :call bail() vmap :call bail() vmap :call bail() vmap :call bail() imap :call bail() imap :call bail() imap :call bail() imap :call bail() catch endtry else try nunmap nunmap nunmap nunmap vunmap vunmap vunmap vunmap iunmap iunmap iunmap iunmap catch endtry endif endfunction call s:enable_hardmode(0) command! -bang Hardmode call s:enable_hardmode(0)