Vim 普通模式 好用指令 筆記
分類
建立時間: 2023年4月14日 21:14
更新時間: 2024年9月30日 08:43
說明
將我所學到好用的普通模式指令寫在這篇文章中,但有些普通模式指令會寫在其他 Vim 的文章,每篇文章都會有一個主題,有興趣的讀者可以多關注 Enjoy 軟體分享的文章。
本篇會陸續更新,敬請期待。
備註
[count]
: 通常用來指定操作指令的次數,例如:2dd
刪除2行,可填可不填。{char}
: 任意字元。{motion}
: 參考 Vim 移動篇 motion 說明。["x]
: 可自訂暫存器,也可忽略使用默認的暫存器,關於暫存器請參考 Vim 暫存器。
!{motion}{filter}
用外部程式 {filter} 過濾 {motion} 跨越的多行。
範例:
!)sort
從游標處到下一個段落進行排序。
查看幫助文件 :help !
!!{filter}
用外部程式 {filter} 過濾 [count] 行。
範例:
5!!sort
從游標處開始算起5行進行排序,同 :.,.+4!sort
。
查看幫助文件 :help !!
動作和運算子
動作命令出現在運算子之後,從而使運算子作用於被該動作所跨越的文字之上。也就是,在動作之前和之後的遊標位置之間的文字。一般的運算子用來刪除或改變文字。
下面列出所有的運算子:
命令 | 說明 |
---|---|
c |
修改 (change) |
d |
刪除 (delete) |
y |
抽出 (yank) 到暫存器 (不改變文字) |
~ |
變換大小寫 (只有當 tildeop 置位時有效) |
g~ |
變換大小寫 |
gu |
變成小寫 |
gU |
變成大寫 |
! |
透過外部程序過濾 |
= |
透過 equalprg (若為空,C-indenting) 過濾 |
gq |
文字排版 |
gw |
文字排版,不移動遊標 |
g? |
ROT13 編碼 |
> |
右移 |
< |
左移 |
zf |
定義折疊 |
g@ |
呼叫 operatorfunc 選項定義的函數 |
動作次數相乘
如果動作包含一個次數而運算子之前也有一個的話,兩者相乘。因此,2d3w
刪除六個單字。
撤銷和重做命令
u
撤銷 [count]
次更改。
CTRL-R
重做 [count]
次被撤銷的更改。
U
撤銷最近對特定行所作的一系列更改,也就是最近作改變的那行。U
自己也算一次改變,因此 U
會撤銷之前的 U
。
其他命令
CTRL-L
清屏並重畫螢幕。重畫可能稍後發生,在處理預讀入(typeahead) 之後。
觀看次數: 851
commandmodenormalvim普通普通模式模式指令
相關文章:
一杯咖啡的力量,勝過千言萬語的感謝。
支持我一杯咖啡,讓我繼續創作優質內容,與您分享更多知識與樂趣!