最近開始較常使用vim,感覺可以趁這個機會把一些常用的指令整理一下XD
編輯相關指令
i
: 在目前編輯的指標處,直接進入編輯模式。
a
: 移動到目前編輯指標處的下一個字,並直接進入編輯模式。
s
: 在目前編輯的指標處,刪除目前的當下字,並進入編輯模式。
shift + i
: 在目前的這一列上,將指標移到最前方,並進入編輯模式。
shift + a
: 在目前的這一列上,將指標移到最後方,並進入編輯模式。
o
: 在目前的這一列上插入下一列,將指標移到下一列的最前方,並進入編輯模式。
shift + o
: 在目前的這一列上插入上一列,將指標移到上一列的最前方,並進入編輯模式。
移動相關指令
j
: 往上移動一個單位
k
: 往下移動一個單位
backspace
或 h
: 往左移動一個單位
space
或 l
: 往右移動一個單位
數字+{j 或 k 或 h 或 l}
: 往特定方向移動所指定的單位數。 (e.g. 20j -> 往上移動20列)
w
: 往右移動到下一個字開頭
b
: 往左移動到這個字開頭,或移動到上一個字的開頭
e
: 往右移動到目前這個字的結尾
^
: 移動到目前這一列的開頭
$
: 移動到目前這一列的結尾
刪除相關指令(cut)
x
: 刪除目前指標所在的這個字元。
D
: 刪前目前指標所在的字元到整列結束的所有字。
dd
: 移除目前指標所在的這一列,並複製下來。
dw
: 刪除目前指標處到這個字尾的整個字。
數字 + d + {j 或k或h或l} : 往特定方向刪除指定的單位數。
(e.g. 20dl -> 往右刪除20個單位;20dd往下刪除了20列)
搜尋相關指令
/
: 進入搜尋模式
進入搜尋模式後,就可以打入要搜尋的字,並鍵入enter開始搜尋文章中出現的字。
在開始搜尋後,可以使用n
,搜尋下一個出現的字;而用shift + n
則可以搜尋上一個出現的字。
文字取代相關指令
:%s/${search_word}/${replace_word}/${sub_command}
: 為最基本的取代指令,如果${sub_command}=c
則代表每次的取代發生時,都會詢問使用者。
:0,30s/${search_word}/${replace_word/${sub_command}
:為只取代0-30列中間出現的${search_word}
。
文字選取相關指令
v
: 進入文字選取模式。
在進入了文字選取模式以後,就可以透過{j 或 k 或 h 或l }
來進行文字選擇,在選擇到所想要的字節以後,就可以透過 y
來複製(copy)所選的這段文字;或著用d
來剪下(cut)所選擇的文字。
https://vim.fandom.com/wiki/Copy,_cut_and_paste
相關的查詢連結可以參考以下:
- https://vim.fandom.com/wiki/Copy,_cut_and_paste
- https://phoenixnap.com/kb/how-to-delete-line-vim
- https://vim.rtorr.com/
- https://www.opencli.com/linux/vi-vim-search-and-replace-string
- https://docs.oracle.com/cd/E19683-01/806-7612/editorvi-43/index.html