क्या इस तरह से गुजरते हुए, लाइनों को इंटरलेयिंग लाइनों द्वारा पाठ के दो ब्लॉकों को मर्ज करने का एक समर्पित तरीका है:
a1
a2
a3
a4
b1
b2
b3
b4
उस से:
a1
b1
a2
b2
a3
b3
a4
b4
कुछ आदेशों में?
संपादित करें : मैं वास्तव में सातो कात्सुरा के समाधान को पसंद करता हूं, यहां बताया गया है कि मैंने इसे कैसे लागू किया है:
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
दो विम खिड़कियों पर भी सोचा ।
b1
, फिर मैंने vip
पूरे चंक को चुनने के लिए मारा , फिर ,it
जो है <map-I've-Picked>
। क्या यह आपकी तरफ से काम नहीं कर रहा है?