summary refs log tree commit diff
path: root/.vim/lua/hardmode.lua
blob: e6fea025f84c82f1b068cbd9082800d392e05332 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
-- hard mode means we're not using the arrow keys!
-- map them to more useful actions instead
-- https://coderoncode.com/posts/vim-is-the-perfect-ide

local cmd = vim.cmd
local nnoremap = require('astronauta.keymap').nnoremap
local vnoremap = require('astronauta.keymap').nnoremap

local bail = 'silent! echohl ErrorMsg | echo "HARD MODE: hjkl operation only" | echohl None'

nnoremap { 'R<up>',     function() vim.cmd [[ resize +2 ]] end }
nnoremap { 'R<down>',   function() vim.cmd [[ resize -2 ]] end }
nnoremap { 'R<left>',   function() vim.cmd [[ vertical resize +2 ]] end }
nnoremap { 'R<right>',  function() vim.cmd [[ vertical resize +2 ]] end }

nnoremap { 'W<up>',     function() vim.cmd [[ wincmd k ]] end }
nnoremap { 'W<down>',   function() vim.cmd [[ wincmd j ]] end }
nnoremap { 'W<left>',   function() vim.cmd [[ wincmd h ]] end }
nnoremap { 'W<right>',  function() vim.cmd [[ wincmd l ]] end }

nnoremap { 'Wm<up>',    function() vim.cmd [[ wincmd K ]] end }
nnoremap { 'Wm<down>',  function() vim.cmd [[ wincmd J ]] end }
nnoremap { 'Wm<left>',  function() vim.cmd [[ wincmd H ]] end }
nnoremap { 'Wm<right>', function() vim.cmd [[ wincmd L ]] end }

nnoremap { '<up>',      function() vim.cmd(bail) end }
nnoremap { '<down>',    function() vim.cmd(bail) end }
nnoremap { '<left>',    function() vim.cmd(bail) end }
nnoremap { '<right>',   function() vim.cmd(bail) end }

vnoremap { '<up>',      function() vim.cmd(bail) end }
vnoremap { '<down>',    function() vim.cmd(bail) end }
vnoremap { '<left>',    function() vim.cmd(bail) end }
vnoremap { '<right>',   function() vim.cmd(bail) end }