vimで、オートインデント機能が有効なため、コードを記述するときはタブを挿入する必要がなく便利です。
しかし、Webからコードをコピペしようとすると、オートインデント機能が邪魔をして、複数行をペーストするとき、どんどん右側にインデントしてしまいます。
また、コメント文があると、以降の行が全部コメント付きと判断されてしまうため、ますますやってられない状態になってしまいます。
こんな時、
:set paste
で、ペーストモードに入ると、i をおした時、以下のように、挿入モードではなく、挿入(貼付け)モードになり、オートインデントの副作用なく、そのままペーストすることができます。
ペーストが終わったら、
:set nopaste
でオートインデントありの通常モードに戻ります。
また、挿入モードを抜けるときに、自動でペーストモードをOFFにするには、以下のコードを .vimrc に書いておくとよいです。
1 2 |
"挿入モードを抜けるとき、set nopaste を実行する。 autocmd InsertLeave * set nopaste |
また、:set paste と打つのも長くて長いので、
1 2 |
"cpと打つと ペーストモードになる nnoremap cp :set paste<CR> |
のように .vimrcに書いておくと、ノーマルモードで cp と打つと、ペーストモード ONになります。
だんだんvimが便利になってきました。
コメント