用Vim這麼久了,始終也不知道怎麼在Vim中使用系統粘貼板,通常要在網上復制一段代碼都是先gedit打開文件,中鍵粘貼後關閉,然後再用Vim打開編輯,真的不爽;上次論壇上有人問到了怎麼在Vim中使用系統粘貼板,印象裡回復很多,有好幾頁的回復卻沒有解決問題,今天實在受不了了又在網上找辦法,竟意外地找到 了,貼出來分享一下。
如果只是想使用系統粘貼板的話直接在輸入模式按Shift+Inset就可以了。如果想更靈活地使用復制粘貼功能,就要看一下了:
vim有12個粘貼板,分別是0、1、2、…、9、a、“、+;用:reg命令可以查看各個粘貼板裡的內容。在vim中簡單用y只是復制到“(雙引號)粘貼板裡,同樣用p粘貼的也是這個粘貼板裡的內容;
要將vim的內容復制到某個粘貼板,需要退出編輯模式,進入正常模式後,選擇要復制的內容,然後按”Ny完成復制,其中N為粘貼板號(注意是按一下雙引號然後按粘貼板號最後按y),例如要把內容復制到粘貼板a,選中內容後按”ay就可以了,有兩點需要說明一下:
1)“號粘貼板(臨時粘貼板)比較特殊,直接按y就復制到這個粘貼板中了,直接按p就粘貼這個粘貼板中的內容;
2) +號粘貼板是系統粘貼板,用”+y將內容復制到該粘貼板後可以使用Ctrl+V將其粘貼到其他文檔(如firefox、gedit)中,同理,要把在其他地方用Ctrl+C或右鍵復制的內容復制到vim中,需要在正常模式下按”+p;
剪切
剪切選中文本:
用v選中文本之後可以按y進行復制,如果按d就表示剪切,之後按p進行粘貼。
剪切一行:dd
剪切當前行光標所在的位置到行尾:d$
剪切當前行光標所在的位置到行首:d^
前切三行:3dd,即從當前行+下兩行被剪切了。