From 8896332f998ac2581bf9534023419c7f80127365 Mon Sep 17 00:00:00 2001 From: ssfjhh Date: Fri, 25 Jan 2019 19:19:38 +0800 Subject: [PATCH] Change: optimize some code. (#2498) * Change: optimize some code. * Fixed: kddp should not be modified. * Fixed: kddp should not be modified. --- autoload/SpaceVim/layers/edit.vim | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/autoload/SpaceVim/layers/edit.vim b/autoload/SpaceVim/layers/edit.vim index 3b4ef7406..ea7ac5431 100644 --- a/autoload/SpaceVim/layers/edit.vim +++ b/autoload/SpaceVim/layers/edit.vim @@ -167,7 +167,9 @@ endfunction function! s:transpose_with_previous(type) abort if a:type ==# 'line' if line('.') > 1 + let l:save_register = @" normal! kddp + let @" = l:save_register endif elseif a:type ==# 'word' let save_register = @k @@ -181,14 +183,12 @@ function! s:transpose_with_previous(type) abort let @k = tw normal! eviw"kp endif - let @k =save_register + let @k = save_register elseif a:type ==# 'character' if col('.') > 1 - let save_register_k = @k - let save_register_m = @m - normal! v"kyhv"myv"kplv"mp - let @k =save_register_k - let @m =save_register_m + let l:save_register = @" + normal! hxp + let @" = l:save_register endif endif endfunction @@ -196,15 +196,18 @@ endfunction function! s:move_text_down_transient_state() abort if line('.') == line('$') else + let l:save_register = @" normal! ddp + let @" = l:save_register endif call s:text_transient_state() endfunction function! s:move_text_up_transient_state() abort - if line('.') == 1 - else + if line('.') > 1 + let l:save_register = @" normal! ddkP + let @" = l:save_register endif call s:text_transient_state() endfunction