2013-06-18 7 views
5

私は私のvimrcでマッピングを次ていますVim - 独自のマッピングを繰り返し行う方法

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

私は.

私は、使用ライン

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

と次のようにティム教皇によってrepeat.vimプラグインが存在すると<Leader>h1/2を繰り返したいのですが次の方法でそれを使用しようとしました:

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/も参照しますエピソード/作成 - repeatable-mappings-with-repeat-vim/ – Hotschke

答えて

6

repeat#set()呼び出しは、マッピング呼び出しだけではなく、一度マッピング定義後の後に行われなければなりません。 :normalを使用すると、:callを追加できるようにする:executeでこれをラップする必要があると思いますが、実際にあなたのマッピングは全く: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

関連する問題