Linux中國

如何在 Vim 中剪切、複製和粘貼

在本篇 Vim 快速技巧中,你將學習到剪切和複製粘貼的相關知識。

剪切、複製和粘貼文本是文本編輯中最基本的任務之一,我們都知道 Vim 有不同的處理方式。

這意味著,在你掌握它之前,你會害怕它,一旦你掌握了它,它就只是一個兔子洞。

雖然我將詳細介紹剪切、複製和粘貼,但這裡是本教程的基本摘要,以幫助你開始使用:

按鍵 描述
yiw 複製當前單詞。
yy 複製整行。
diw 剪切當前單詞。
dd 剪掉整行。
p 粘貼文本。

別擔心,Vim 為你提供的選項比我上面提到的要多得多。

在本教程中,我將引導你完成以下內容:

  • 如何在 Vim 中複製文本
  • 如何在 Vim 中剪切文本
  • 如何在 Vim 中粘貼文本
  • 如何使用可視模式在 Vim 中剪切和複製文本

那麼讓我們從第一個開始。

如何在 Vim 編輯器中複製文本

雖然我們使用術語「複製」,但 Vim 有一個不同的術語,稱為 「 扽出 yank 」,因此從現在開始,我將使用「扽出」而不是「複製」。

正如我之前提到的,你可以使用多種方法在 Vim 中扽出文本,以下是一些有用的方法:

命令 描述
nyynY 扽出(複製)當前行和接下來的 n-1 行。例如,3yy 複製當前行及其下面的兩行。
yaw 扽出(複製)游標所在的當前單詞。
yyY 扽出(複製)整個當前行。
y$ 扽出(複製)從游標到行尾的文本。
y^y0 扽出(複製)從游標到行首的文本。

要在 Vim 中扽出,請執行以下 3 個簡單步驟:

  1. Esc 鍵切換到正常模式
  2. 移動到要複製的行或單詞
  3. 按上表中的相關命令,你的文本將被複制

想學習互動式複製行的方式嗎? 跳到本教程的最後一部分。

如何在 Vim 編輯器中剪切文本

在 Vim 中,你沒有任何刪除文本的選項。取而代之的是剪切文本,因此刪除和剪切文本與 Vim 中的操作類似。

要在 Vim 中剪切文本,請按 d 命令。但你永遠不會在沒有任何選項的情況下使用 d 命令。你總是會添加一些東西來做更多操作。

因此,你可以使用以下一些實用方法使用 d 命令剪切文本:

命令 描述
dd 剪切整個當前行。
d$ 將文本從游標剪切到行尾。
d^d0 將文本從游標剪切到行首。
ndddN 剪切當前行和接下來的 n-1 行。例如,3dd 剪切當前行及其下面的兩行。
daw 剪切游標所在的當前單詞。

假設我想從文件中剪切前 4 行,然後我需要使用 4dd,我是這樣做的:

如何在 Vim 編輯器中粘貼文本

在 Vim 中複製或剪切文本後,只需按 p 鍵即可粘貼它。

你可以多次按 p 鍵多次粘貼文本,也可以使用 np,其中 n 是要粘貼文本的次數。

例如,在這裡,我粘貼了之前複製了三遍的行:

就是這麼簡單!

如何通過選擇文本來剪切和複製文本

如果你使用過 GUI 文本編輯器,那麼你肯定習慣於通過選擇文本來複制和剪切文本。

讓我們從如何通過在 Vim 中選擇文本來複制開始。

通過選擇文本複製

要在可視模式下複製文本,請執行以下 3 個簡單步驟:

  1. 移動到要開始選擇的地方
  2. Ctrl + v 啟用可視模式
  3. 使用箭頭鍵進行選擇
  4. y 鍵複製所選文本

例如,在這裡,我使用可視模式複製了 4 行:

如果你注意到,當我按下 y 鍵,它就會顯示有多少行被扽出(複製)。就我而言,有 4 行被複制。

在 Vim 中選擇文本來剪切文本

要在 Vim 中以可視模式剪切文本,你所要做的就是遵循 4 個簡單步驟:

  1. 移動到要剪切的位置
  2. Ctrl + v 切換到可視模式
  3. 使用箭頭鍵選擇要剪切的行
  4. d 鍵剪切選定的行

假設我想剪掉 4 行,那麼我會這樣做:

挺容易。是吧?

更多關於 Vim 的內容

你知道 Vim 有多種模式嗎? 了解有關 Vim 中不同模式的更多信息

想提高你的 Vim 水平嗎?請參閱 成為 Vim 專業用戶的提示和技巧

我希望本指南對你有所幫助。

(題圖:MJ/3555eed2-ab14-433d-920f-17b80b46ce74)

via: https://itsfoss.com/vim-cut-copy-paste/

作者:Sagar Sharma 選題:lujun9972 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國