Previous: , Up: 隨選隨剪亂亂貼   [Contents]


3.2.2 剪下複製貼上

如果只能選取文字,那一點用也沒有,所以接下來會介紹如何複製或剪下選取的文字,並將它貼到其他地方。 首先先來講一下在普通模式要如何刪除文字, xX ,功能分別為 DELETEBACKSPACE 鍵,也就是刪除游標前的字元跟刪除游標下的字元。 xX 也可以在前面加上數字作前綴來重複操作。

接下來講如何刪除和複製選取的文字,選好文字後按下 d ( delete ) 就會刪除選取的文字,而按下 y ( yank ) 則會複製選取的文字。 順帶一提, dy 兩個都是 vim 的運算子,詳細當然之後再說啦,現在只要會配合文字選取使用就好了。 在介紹如何貼上文字之前,要講一個簡單的概念,在 vim 中剪下和刪除是同樣的意思, 這和一般使用編輯器的操作不同。 一般編輯器剪下和刪除是不同的概念,剪下就是等等要貼到別的地方,所以文字會存起來,而刪除則是不要這些文字,刪掉就掰掰了。 但在 vim 中刪除的文字不論原因一概存起來,所以貼上的東西一定是剛剛刪除的東西。 對一般人來說可能沒差啦,但我當初學到這個的時候覺得蠻訝異的,概念上差很多啊。

回歸正題,貼上跟刪除字元很像,只是按鍵不同。 p 對應 xP 對應 X ,而 p 是 paste 的意思,即貼上。 那麼剪下、複製和貼上就是這樣啦,只要知道英文,相對應的按鍵即為其開頭文字作縮寫,不容易忘記。 這裡講講幾個點,首先為什麼複製英文不是常見的 copy,而是要另外查才會知道的 yank 呢?( 還是只有我孤陋寡聞不知道 yank 是複製 ) 理由很簡單,就是 c 已經被拿去當別的功能啦,而 c 的功能和 d 很像,按鍵位置也很近,所以我想是因為這個原因才用比較少見的字當作複製。 另外就是,在選取文字後,按下 x 其實和 d 一樣都可以刪掉選取的文字,因為兩個按鍵都是刪除文字,而兩者的差別呢,就在於 d 是運算子。 在 visual mode 這兩個按鍵功能是一樣的,但在一般模式下運算子提供了更強大的功能,之後我應該會特別用一個篇幅介紹一下我所知道的運算子。