set clipboard+=unnamed

Plug 'tpope/vim-surround'

" Press `f` to activate AceJump
map f <Action>(AceAction)
" Press `F` to activate Target Mode
map F <Action>(AceTargetAction)
" Press `g` to activate Line Mode
map g <Action>(AceLineAction)

" Переназначение движений в нормальном режиме
nnoremap m h
nnoremap j e
nnoremap n j
nnoremap e k
nnoremap l i
nnoremap i l
nnoremap k n

nnoremap M H
nnoremap J E
nnoremap N J
nnoremap E K
nnoremap L I
nnoremap I L
nnoremap K N

" Переназначение движений в визуальном режиме
vnoremap m h
vnoremap j e
vnoremap n j
vnoremap e k
vnoremap l i
vnoremap i l
vnoremap k n

vnoremap M H
vnoremap J E
vnoremap N J
vnoremap E K
vnoremap L I
vnoremap I L
vnoremap K N

" Переназначение движений в режиме выбора текста (визуальный блок)
xnoremap m h
xnoremap j e
xnoremap n j
xnoremap e k
xnoremap l i
xnoremap i l
xnoremap k n

xnoremap M H
xnoremap J E
xnoremap N J
xnoremap E K
xnoremap L I
xnoremap I L
xnoremap K N

" Переназначение для операций с текстом (например, dw, cw)
noremap dm dh
noremap dj de
noremap dn dj
noremap de dk
noremap dl di
noremap di dl
noremap dk dn

noremap dM dH
noremap dJ dE
noremap dN dJ
noremap dE dK
noremap dL dI
noremap dI dL
noremap dK dN

" Переназначение для команд изменения текста (c)
noremap cm ch
noremap cj ce
noremap cn cj
noremap ce ck
noremap cl ci
noremap ci cl

noremap cM cH
noremap cJ cE
noremap cN cJ
noremap cE cK
noremap cL cI
noremap cI cL

" Переназначение для переходов в начало/конец строк
noremap ^ ^
noremap $ $
noremap 0 0

" Переназначение для поиска (если нужно)
noremap / /
noremap ? ?
