다음과 같이 줄을 인터리빙하여 두 개의 텍스트 블록을 병합하는 전용 방법이 있습니까?
a1
a2
a3
a4
b1
b2
b3
b4
그것에 :
a1
b1
a2
b2
a3
b3
a4
b4
몇 가지 명령으로?
편집 : Sato Katsura의 솔루션이 정말 마음에 듭니다 . 구현 방법은 다음과 같습니다.
function! Interleave()
" retrieve last selected area position and size
let start = line(".")
execute "normal! gvo\<esc>"
let end = line(".")
let [start, end] = sort([start, end], "n")
let size = (end - start + 1) / 2
" and interleave!
for i in range(size - 1)
execute (start + size + i). 'm' .(start + 2 * i)
endfor
endfunction
" Select your two contiguous, same-sized blocks, and use it to Interleave ;)
vnoremap <pickYourMap> <esc>:call Interleave()<CR>
scroll-binding
두 개의 Vim 창을 생각하게되었습니다 .
b1
누르 십시오 . 그것은 당신 편에서 작동하지 않습니까? vip
,it
<map-I've-Picked>