簡短版本的說明,列舉一些 vim 常用的按鍵
來源:https://www.maketecheasier.com/vim-keyboard-shortcuts-cheatsheet/
移動
基礎移動
按鍵 |
功能 |
h |
左移 |
j |
下移 |
k |
上移 |
l |
右移 |
0 |
移動到行首 |
$ |
移動到行尾 |
^ |
移動到該行第一個非空白字元 |
w |
往後移動一個字(依據單字判斷) |
W |
往後移動一個字(依據空白判斷) |
5w |
往後移動五個字(依據單字判斷) |
b |
往前移動一個字(依據單字判斷) |
B |
往前移動一個字(依據空白判斷) |
5b |
往前移動五個字(依據單字判斷) |
G |
移動到檔案最末端 |
gg |
移動到檔案最前端 |
進階移動
按鍵 |
功能 |
( |
移動到前一句 |
) |
移動到下一句 |
{ |
移動到前一段落 |
} |
移動到下一段落 |
[[ |
移動到前一區塊 |
]] |
移動到後一區塊 |
[] |
移動到前一區塊結尾 |
][ |
移動到下一區塊結尾 |
書籤
按鍵 |
功能 |
m {a-z A-Z} |
標記書籤({a-z A-Z}) |
:marks |
列出所有書籤 |
`{a-z A-Z} |
移動到書籤({a-z A-Z})位置 |
輸入
基礎輸入
按鍵 |
功能 |
a |
在游標後進入編輯模式 |
A |
在行尾進入編輯模式 |
i |
在游標前進入編輯模式 |
o |
在游標下加入新行,進入編輯模式 |
O |
在游標上加入新行,進入編輯模式 |
進階輸入
按鍵 |
功能 |
:r [filename] |
在游標下輸入 filename 檔案 |
:r ![command] |
執行 command 命令後,將輸出寫入游標之後 |
刪除
按鍵 |
功能 |
x |
刪除游標所在位置字母 |
dw |
刪除游標所在位置單字 |
d0 |
刪除游標到行首之間文字 |
d$ |
刪除游標到行末之間文字 |
d) |
刪除游標到句末之間文字 |
dgg |
刪除游標到檔案開頭之間文字 |
dG |
刪除游標到檔案結尾之間文字 |
dd |
刪除游標所在整行 |
3dd |
刪除游標所在以下三行 |
剪貼
按鍵 |
功能 |
yy |
複製游標所在整行 |
["x]yy |
複製游標所在整行至紀錄 x |
p |
在游標下方貼上整行 |
P |
在游標上方貼上整行 |
["x]p |
在游標下方貼上紀錄 x 內容 |
["x]P |
在游標上方貼上紀錄 x 內容 |
復原/重做
搜尋/取代
基礎取代
按鍵 |
功能 |
r{text} |
將游標下方的文字取代成 {text} |
R |
進去取代模式,輸入的文字會直接取代原本文字。 |
搜尋和取代
按鍵 |
功能 |
/search_text |
|
?search_text |
|
n |
|
N |
|
:%s/[original]/[replacement] |
|
:%s/[original]/[replacement]/g |
|
:%s/[original]/[replacement]/gc |
|
選取
基礎選取
按鍵 |
功能 |
v |
進入以字母為單位的選取模式 |
V |
進入以行為單位的選取模式 |
Esc |
離開選取模式 |
修改選取
按鍵 |
功能 |
~ |
Switch case |
d |
刪除單字 |
c |
修改 |
y |
複製(yank) |
> |
右移 |
< |
左移 |
! |
filter through an external command |
儲存與離開
按鍵 |
功能 |
:q |
檔案沒有修改時離開檔案 |
:w |
存擋 |
:w filename |
以 filename 的檔名存擋 |
:wq |
存檔後離開檔案 |
:q! |
不存檔強制離開 |
ZZ |
同 :wq |
ZQ |
同 :q! |