一、基本操作
1、從命令提示符進入vim編輯器: vim filename <ENTER>
2、光標的移動
左移: h
右移: l
上移: k
下移: j
3、刪除光標所在的字符: x
4、插入或附加文本:
i 在光標前插入文本
a 在光標後附加文本
5、刪除當前行,並把刪除的行存入剪貼板中: dd
6、粘貼剪貼板: p
7、顯示相關命令幫助: :help <command>
退出幫助輸入 :q<ENTER>
8、退出編輯器:
:q! 放棄修改並退出
:wq 保存修改並退出
當啟動vim編輯器後, vim處在normal模式,此時可以使用以上命令符的基本操作。當時用i或a等操作時,會進入insert模式,此時可以輸入文本。使用esc可以退出insert模式,再次回到normal模式。
以上基礎操作可以滿足normal模式的基本需求,接下來擴充的命令符,同樣需要在normal模式下操作。
二、命令符的基本格式
operator [number] motion
其意是:
operator :代表要做的事
[number]:代表命令執行的次數
motion:代表要操作的對象
三、刪除類與撤銷類命令
(一)刪除類命令
刪除類命令 d,其格式為
d [number] motion
dw :從光標處刪除至下個單詞(包含空格)
de :從光標處刪除至下一個單詞末尾(不包含空格)
d$ :從光標處刪除至當前行末
(二)撤銷類命令
u :撤銷以前的操作
N :撤銷在一行中所做的改動
CTRL-R :撤銷掉撤銷命令,恢復以前的操作
四、置入、替換和更改類命令
(一)置入類命令
i :在光標前插入文本
a :在光標後附加文本
A:在光標所在行的行末插入文本
p :將刪除的文本內容置於光標之後,如果最後一次刪除的是一整行,那麼該行將置於當前光標所在的下一行
o :在光標下方打開新的一行
shfit-o :在光標上方打開新的一行
(二)替換類
r :替換光標所在的字符
R :進入替換模式,此時可以將光標之後的內容替換,直至輸入esc回到normal模式
:s/old/new :在一行內替換頭一個字符串old為新的字符串new
:s/old/new/g :在一行內替換所有字符串old為新的字符串new
:#,#s/old/new/g :在兩行內替換所有字符串old為新的字符串new(#代表行號)
:%s/old/new/g :在文件內替換所有字符串old為新的字符串new
:%s/old/new/c :在進行全文替換時詢問用戶確認每個替換
(三)更改類命令符格式
c [norber] motion
列如: cw, c$
五、定位、搜索類命令
(一)定位類
CTRL-g :顯示當前光標所在位置和文件狀態信息
SHIFT-g :將光標跳轉至文件最後一行
[number] SHIFT-g :跳轉至number所代表的行號
gg :跳轉至文件開頭
(二)搜索類命令
/字符串 :向當前光標後查找該字符串
?字符串 :向當前光標前查找該字符串
n :同方向上重復上一次查找
shift-n :反方向上重復上一次查找
% :若此時光標在(),{ },[ ]上,輸入%可以查找相配對的括號
六、文本的保存、提取與合並
在vim中可以使用外部命令,其格式為: :!command
:!ls :用於顯示當前目錄內容
:!rm filename :用於刪除名為filename的文件
:w filename :用於將vim中正在編輯的文件保存名為filename的文件中
v motion :w filename :將所選的行保存在filename的文件中
:r !ls :將當前目錄的內容插入當前文件的光標後面
七、設置類的命令選擇
:set xxx :可以是指xxx選項,如:
‘ic’ :搜索時忽略大小寫
‘is’ :顯示一個匹配的搜索結果
'hls' :高亮顯示所有匹配的結果
前置‘no’ 可以取消設置,如: :set noic
想要玩轉vim,以上基礎內容還是遠遠不夠,但是打好牢固的基礎才是良好的開始,在以後的編程之路上再慢慢探索,探尋更深層,更便捷的方法,讓vim成為自己走向成功的一個優良工具。