如何在 Vim 和 Vi 中執行撤銷和重做操作
Suraj Joshi
2023年1月30日
Linux
Linux Vim
Vim 和 Vi 是 Linux 和 Mac 使用者中最流行的文字編輯器之一。
我們使用 u、:u 或:undo 命令來撤銷 Vim 中的更改。同樣,我們使用 CTRL+R 或:redo 命令來重做更改。
撤銷 Vim/Vi 中的更改
Vim 會跟蹤我們對某一特定檔案所做的所有改動。undo 命令可以恢復一個或多個更改。最新的更改將首先被撤銷,然後是之前的更改。要撤銷 Vim 中的更改,我們使用 u、:u 或:undo 命令。
在 Vim/Vi 中撤消更改的步驟
-
我們必須確保我們在正常模式下執行
Vim的命令。如果我們不是在正常模式下,我們可以按 Esc 鍵切換到正常模式。 -
要撤銷最新的更改,使用
u命令。 -
要一次撤銷多個更改,我們也可以使用帶數字的
u命令。nu命令將撤銷最新的n次變化。
我們必須小心使用 u 的情況。如果我們不小心按了 U,它將撤銷一行的所有最新變化。如果我們打了 U,我們可以用 u 來恢復修改。
如果我們在插入模式下編輯一個檔案,在會話中所做的所有修改都會被視為撤銷樹中的一個條目。
如果我們在切換到插入模式後刪除了兩行,然後在切換回正常模式後使用 u 命令,這兩行將被恢復。
重做在 Vim/Vi 中的修改
redo 操作與 undo 操作相反。要重做檔案中未撤銷的更改,我們使用 CTRL+R 或 redo 命令。
在 Vim/Vi 中重做更改的步驟
-
我們必須確保我們在正常模式下執行
Vim的命令。如果我們不是在正常模式下,我們可以按 Esc 鍵切換到正常模式。 -
要重做更改,我們使用 CTRL+R(同時按 Ctrl 和 Ctrl 鍵)或
:redo命令進入正常模式後。 -
要一次重做多個修改,我們使用數字與 CTRL+R 命令。
3 Ctrl-R(按3,然後同時按 Ctrl 和 r 鍵),然後該命令就會重做最近的 3 次更改。
我們可以在一個迴圈中使用撤銷和重做命令來撤銷修改,然後重做未撤銷的修改。
Enjoying our tutorials? Subscribe to DelftStack on YouTube to support us in creating more high-quality video guides. Subscribe
作者: Suraj Joshi
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn