##
貼上前::set paste 貼完了::set nopaste
:set paste
:set nopaste
另一個很棒的方法::r! cat 然後用shift+insert 或其他方式貼上程式碼,然後ctrl+d 完成輸入。
:r! cat
Source
我一直用另一個更好的方式:
augroup PASTETOGGLE autocmd! InsertEnter * setlocal paste autocmd! InsertLeave * setlocal nopaste augroup END
這樣的話在插入模式中貼上的時候根本不需要設定任何東西,也不需要替代的按鍵組合。
補充:我忘了說這個方法的副作用,它會導致在插入模式下的 'autoindent' 和 'smartindent' 等選項復位,所以等於取消了自動縮進,因此請有選擇的使用。
使用vi貼上程式碼就OK了
還可以這樣操作 “+p 來黏貼; 為了方便我做了個映射 nnoremap <leader>p "+p; 輸入 :reg 查看暫存器中保留的東西; 先選取部分字元, 還後 ”+y 可以把選取的部分複製到 系統剪貼簿; 參考 Accessing the system clipboard How to use vim registers?
“+p
nnoremap <leader>p "+p
:reg
”+y
貼上前:
:set paste
貼完了:
:set nopaste
另一個很棒的方法:
:r! cat
然後用
shift+insert
或其他方式貼上程式碼,然後
ctrl+d
完成輸入。
Source
我一直用另一個更好的方式:
這樣的話在插入模式中貼上的時候根本不需要設定任何東西,也不需要替代的按鍵組合。
補充:我忘了說這個方法的副作用,它會導致在插入模式下的 'autoindent' 和 'smartindent' 等選項復位,所以等於取消了自動縮進,因此請有選擇的使用。
使用vi貼上程式碼就OK了
還可以這樣操作
“+p
來黏貼;為了方便我做了個映射
nnoremap <leader>p "+p
;輸入
:reg
查看暫存器中保留的東西;先選取部分字元, 還後
”+y
可以把選取的部分複製到 系統剪貼簿;參考 Accessing the system clipboard How to use vim registers?