2011-01-23 22 views
6

を選択する方法は、直接だけで貼り付けられたテキストのブロックを選択するためのvimのコマンドがありますか?VIM:貼り付けられたブロック

ps。私はgvについて、ビジュアルモードを終了した後にブロックを再選択することを知っています。この場合は適用されません。

+0

は、うーん...私が疑問に思いますか? –

答えて

11

あなたは(あなたが何かを変更する前に)ちょうどペーストした後、それを選択したい場合は、

nnoremap <expr> gV "`[".getregtype(v:register)[0]."`]" 

を使用しています。 、(あなたは、たとえば、何かをヤンクしない限り、ペーストコマンドを使用するレジスタです)最後に使用したレジスタに設定された[0]は、レジスタの最初のバイトだけを選択している登録:[]マークが始まり、最後の変更の終わり、Vを指しますタイプ(ブロック状のために、それは<C-v>{width}を返す登録しているため、それを必要とする)とタイプを登録あなたはビジュアルモードを起動するために、通常モードで使用すべきキーストロークとしてちょうど同じである1バイトです。私はSOのどこかに、このソリューションを見

、あなたはいくつかの選択肢を得るために、それを検索することもできます。あなたが貼り後に実行する `autocmd`を追加することができれば

+0

パーフェクト、ありがとう! –

+2

私は、これはあなたが探しているスレッドであると信じて:http://stackoverflow.com/questions/4312664/is-there-a-vim-command-to-select-pasted-text –

+1

'getregtype([{}説明regname] ) '{regname}が指定されていなければ、' v:register'が使われます。したがって、 'getregtype()[0]'も動作します。 – kev

関連する問題