यह संस्करण केवल उन दोहराई गई लाइनों को हटाता है जो संक्रामक हैं। मेरा मतलब है, केवल लगातार दोहराई गई लाइनों को हटाता है। दिए गए नक्शे का उपयोग करके फ़ंक्शन रिक्त लाइनों के साथ गड़बड़ करता है। लेकिन यदि रेखा के प्रारंभ से मिलान करने के लिए REGEX को बदल ^दें तो यह डुप्लिकेट की गई रिक्त लाइनों को भी हटा देगा।
" function to delete duplicate lines
function! DelDuplicatedLines()
while getline(".") == getline(line(".") - 1)
exec 'norm! ddk'
endwhile
while getline(".") == getline(line(".") + 1)
exec 'norm! dd'
endwhile
endfunction
nnoremap <Leader>d :g/./call DelDuplicatedLines()<CR>