「vimにテキストをペーストする時にオートインデントさせない方法」の版間の差分
提供: neovim/vim入門
(ページの作成:「クリップボードのソースコードをvimにペースト(貼り付け)する時に、オートインデント(autoindent)により、貼り付けたテキス...」) |
(相違点なし)
|
2017年6月15日 (木) 00:12時点における版
クリップボードのソースコードをvimにペースト(貼り付け)する時に、オートインデント(autoindent)により、貼り付けたテキストがガタガタにフォーマットされる体験をしたことはありますか?ここでは、それの対処方法について紹介します。
読み方
- autoindent
- おーといんでんと
概要
クリップボードのソースコードをvimにペースト(貼り付け)する時に、オートインデント(autoindent)により、貼り付けたテキストがガタガタにフォーマットされる体験をしたことはありますか?
この問題を解決するために、違うファイルを作成して、違うファイルに貼り付けて、vim から読み込んだりして、乗り越えてしまっている人もいるかもしれません。
実は、vim だけでこの問題は解決できます。
外部コマンドを使って、対応することもできますが、おそらく、ムダの少ない方法は paste モードのオンオフではないでしょうか。
解決策
コードをペーストするときに、 autoindent をオフにして、特別な paste モードにします。 以下のコマンドで paste モードになります。
:set paste
vim の表示が例えば、以下のような感じになります。
-- INSERT (paste) --
コードのペースト(貼り付け)が終わったら、 paste モードをオフにします。再び、 auto indent を起動します。
:set nopaste
paste モードの切り替え用のキーバインドを設定することも可能です。
set pastetoggle=<F3>
上記の例では、 F3 キーで paste モードのオンオフができます。
まとめ
- paste モードを操ることで、オートインデントに悩まずに、コピペ作業を効率化できます。
- set paste
- set nopaste