:set paste
paste mode にする。オートインデント無効化と同じ効果。
オートインデント(自動インデント)を一時的に無効化したい場合などに利用する。
:set paste
コピペする際にオートインデントが機能すると困るから、そのような時に手動で paste mode にすれば良い。戻す時は
:set nopaste
他の方法
:a! ペースト(Ctrl+v) Esc
これでも OK 。
あるいはオートインデントの無効化を指定する
:set noautoindent
オートインデントを有効化する場合は
:set autoindent
手動で切り替えるのが面倒な場合は以下
コピペ操作を検出したら自動で paste mode に
自動化スクリプトを .vimrc に直接記述することもできる。
if &term =~ "xterm" let &t_ti .= "\e[?2004h" let &t_te .= "\e[?2004l" let &pastetoggle = "\e[201~" function XTermPasteBegin(ret) set paste return a:ret endfunction noremap <special> <expr> <Esc>[200~ XTermPasteBegin("0i") inoremap <special> <expr> <Esc>[200~ XTermPasteBegin("") cnoremap <special> <Esc>[200~ <nop> cnoremap <special> <Esc>[201~ <nop> endif