在 VIM 寫程式時, 很多時會設定使用自動縮排, 即用 audoindent 或 smartindent, 這樣只是寫程式沒問題, 但如果要複製並貼上一些程式碼, 這會重覆縮排。
要解決這個問題, 可以在用 vim 時, 輸入以下指令:
1 |
:set paste |
完成貼上後, 要回復原來的自動縮排, 便再次輸入以下指令:
1 |
:set nopaste |
如果預設值是會自動縮排, 那便關閉檔案後, 會自動開啟縮排。
但要輸入上面的指令也很麻煩, 所以在 .vimrc 檔案設定, 用 F3 鍵進行切換, 開啟 .vimrc:
$ vim ~/.vimrc
加入以下一行:
1 |
set pastetoggle=<f3> |
以下是我的 .vimrc 例子:
1 2 3 4 5 6 |
syntax enable set smartindent set pastetoggle=<f3> set tabstop=4 set shiftwidth=4 set expandtab |
儲存後, 下次使用 vim 時, 便可以用 F3 鍵切換自動縮排。