Vim 模式及經常使用命令整理

VIM 命令
    以:和/開頭的命令都有歷史紀錄,能夠首先鍵入:或/而後按上下箭頭來選擇某個歷史命令。
 
vim的模式
基本上能夠分爲3種模式,分別是 命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),下圖所示爲Vim各類模式相互轉換的關係圖。
                                        
命令模式:控制屏幕光標的移動,進行文本的刪除、複製等文字編輯工做,以及進入插入模式,或者回到底行模式。
插入模式:只有在插入模式下,才能夠輸入文字。按[Esc]鍵可回到命令行模式。
底行模式:保存文件或退出Vim,同時也能夠設置編輯環境和一些編譯工做,如列出行號、尋找字符串等。
 
打開與退出
 
vi啓動是:vi filename
該命名打開或者建立一個文件。首先進入vi後,是 cmd模式(命令模式)。在該模式下能夠移動光標,複製,移動,刪除等。
 
vim -O file1 file2: 同時打開兩個文件, ctrl+w 進行窗口切換
 
ZZ: 保存文件並退出。 Note: 與其餘編輯器不同,Vim 不會自動創建一個備份文件。若是你輸入 "ZZ", 你的修改當即生效而且不能恢復。你能夠配置 Vim 讓它產生一個備份文件。
:w 保存
wq: 保存並退出
:q: 退出
:q!: 放棄修改。按回車使命令生效。
 
在cmd下能夠用下面幾個命令進入編輯模式:
i 在當前位置生前插入
I 在當前行首插入
a 在當前位置後插入
A 在當前行尾插入
o 在當前行以後插入一行
O 在當前行以前插入一行
編輯模式下,只能輸入,不能使用hjkl的光標移動,使用esc能夠切換到cmd模式
 
光標控制:命令模式
 
光標在屏幕文本中的移動既能夠用箭頭鍵,也可使用 hjkl 字母鍵。
     h (左移)    j (下行)     k (上行)     l (右移)
以上四個命令能夠配合數字使用,好比20j就是向下移動20行,5h就是向左移動5個字符。
 
gg命令:         跳到文件的首行
G命令:           跳到文件的最後一行
0(數字0)   移動到本行第一個字符上
^命令:           跳轉到行首第一個普通字符上
$命令:            跳轉到行尾, 3$ 移動到下面3行的行尾
b(begin)命令:     跳轉到當前單詞的前面, 2b 向後移動2個單詞
e(end)命令:         跳轉到當前單詞的後面
w 命令:              向前移動一個單詞(光標停在單詞首部),若是已到行尾,則轉至下一行行首。此命令快,能夠代替l命令。
<HOME> :       移動到本行第一個字符。同0健。
冒號+行號:        跳到指定行。好比跳到240行就是 :240回車。另外一個方法是行號+G,好比230G跳到230行。
 
number%命令: 跳轉到number%處, 例如跳轉到20%, 鍵入20%便可
Ctrl + e 向下滾動一行
Ctrl + y 向上滾動一行
Ctrl + d 向下滾動半屏
Ctrl + u 向上滾動半屏
Ctrl + f 向下滾動一屏
Ctrl + b 向上滾動一屏
 
刪除命令:命令模式
命令模式下,Vim提供了許多刪除命令。這些命令大可能是以d開頭的。
x命令: 刪除光標處的字符。若在x以前加上一個數字n,則刪除從光標所在位置開始向右的n個字符。
X命令:刪除光標前面的那個字符。若在X以前加上一個數字n,則刪除從光標前面那個字符開始向左的n個字符
dd命令:剪切(刪除)光標所在的整行。在dd前可加上一個數字n,表示刪除當前行及其後n-1行的內容。
D或d$命令:刪除從光標所在處開始到行尾的內容。
d0命令:刪除從光標前一個字符開始到行首的內容。
dw命令:刪除一個單詞。若光標處在詞的中間,則從光標所在位置開始刪至詞尾。同dd命令同樣,可在dw以前加一個數字n,表示刪除n個指定的單詞。
 
複製命令:命令模式
y^/y0:      複製至行首, 不含光標所在處字符
y$:            複製至行尾。含光標所在處字符
yw:           複製一個 word
yG:           複製至檔尾
y1G:         複製至檔首
 
dd命令:  剪切當前行。
yy命令(或大寫一個 Y):   拷貝當前行。2yy 表示複製兩行。
cc命令:   剪切當前行而且進入插入模式。
D命令:    剪切從光標位置到行尾到剪貼板。
Y命令:    拷貝當前行。
C命令:    和 D 相似,最後進入插入模式。
x命令:     剪切當前字符到剪貼板。
s命令:     剪切當前字符到剪貼板,最後進入插入模式。
 
粘貼命令:命令模式
小寫 p 表明貼至光標後(下)。 P 大寫 P 表明貼至光標前(上)
 
撤銷和重作
u 撤銷(Undo)
U 撤銷對整行的操做
Ctrl + r 重作(Redo),即撤銷的撤銷。
 
查找命令
/text  查找text,按n健查找下一個,按N健查找前一個。
?text  查找text,反向查找,按n健查找下一個,按N健查找前一個。
                 vim中有一些特殊字符在查找時須要轉義  .*[]^%/?~$
查找很長的詞,若是一個詞很長,鍵入麻煩,能夠將光標移動到該詞上, 按*或#鍵便可以該單詞進行搜索,至關於/搜索。而#命令至關於?搜索。
 
:set ignorecase   忽略大小寫的查找
:set noignorecase  不忽略大小寫的查找
:set hlsearch  高亮搜索結果,全部結果都高亮顯示,而不是隻顯示一個匹配。
:set nohlsearch  關閉高亮搜索顯示
:nohlsearch  關閉當前的高亮顯示,若是再次搜索或者按下n或N鍵,則會再次高亮。
:set incsearch  逐步搜索模式,對當前鍵入的字符進行搜索而沒必要等待鍵入完成。
:set wrapscan  從新搜索,在搜索到文件頭或尾時,返回繼續搜索,默認開啓。


相關文章
相關標籤/搜索