2013-06-18 4 views
5

मैं अपने vimrc में मैपिंग निम्नलिखित है:विम - अपना खुद का मैपिंग दोहराने योग्य कैसे बनाएं?

nmap <Leader>h1 yyp<c-v>$r= 
nmap <Leader>h2 yyp<c-v>$r- 

मैं .

साथ <Leader>h1/2 दोहराने के लिए उपयोग लाइन निम्नलिखित

silent! call repeat#set("\<Plug>MyWonderFulMap", v:count) 

मैं के साथ वहाँ टिम पोप repeat.vim प्लगइन मौजूद चाहते हैं इसे निम्न तरीके से उपयोग करने का प्रयास किया:

nnoremap <silent> <Plug>MyWonderfulMap :normal yyp<c-v>$r= 
silent! call repeat#set("\<Plug>MyWonderfulMap", v:count) 
nmap <Leader>h1 <Plug>MyWonderfulMap 

यह काम नहीं करता है।

मुझे पता है कि यह गंभीर जटिलता नहीं है, हालांकि, मैं अपने मैपिंग के लिए repeat.vim का उपयोग करने में रूचि रखता हूं।

+0

भी http://vimcasts.org/ देखना एपिसोड/बनाने-दोहराने योग्य-मैपिंग-साथ-दोहराना-vim/ – Hotschke

उत्तर

6

repeat#set() मंगलाचरण मानचित्रण परिभाषा के बाद मानचित्रण मंगलाचरण के बाद किया जाना चाहिए, न सिर्फ एक बार। :normal के साथ, आप :execute के साथ इस रैप करने के लिए :call संलग्न करने के लिए सक्षम होना चाहिए चाहते हैं, लेकिन वास्तव में अपने मानचित्रण बिल्कुल :normal उपयोग करने की आवश्यकता नहीं होती है:

:nnoremap <silent> <Plug>MyWonderfulMap yyp<c-v>$r=:silent! call repeat#set("\<Plug>MyWonderfulMap", v:count)<CR> 
:nmap <Leader>h1 <Plug>MyWonderfulMap 
+1

धन्यवाद। यह काम। – Hotschke

संबंधित मुद्दे