從vimtutor摘抄的一句話來表明我學習vim的立場:
you need to execute the commands to learn them properly. If you only read the text, you will forget the commands!
我學習的時候需要什麼功能就是谷歌搜索,不要再百度了。
第一次接觸vim,發現連輸入字符都不會,更不要說保存了。用了很久才能熟練使用,因此寫下這篇文章作爲總結。
開始vim學習的好教程:【vimtutor的中文翻譯】
常用的命令:
h,l,j,k //上下左右鍵,一般我是不用的,不習慣
x //刪除當前字符
p //粘貼
n:next,就是下一個,比如搜索的時候
N:上一個
%:匹配對應的小括號或大括號,看代碼的時候
o:在cmd模式下,在本行下添加一行
O:在本行的上一行添加
$:定位到行尾
^:定位到行首
a:在當前字符的後一個位置開始寫
A:在行尾添加字符
i:在當前字符處開始寫
I:在行首添加字符
:q! :不保存,強制退出
:wq :保存退出
SHIFT-g :文章末行
[n爲任意數字]
nd$ :從當前位置刪到末尾,刪除n行
ndd :從當前行開始刪除n行
gg :定位到首行
/string :向下匹配string
?string :向上匹配string
:s/old/new/ :替換一次,old替換爲new
:s/old/new/g :本行內全部的old替換爲new
:#,#s/old/new/g :從#到#行內,全部的old替換爲new
:%s/old/new/gc :全文替換
:! [cmd] :執行命令
:w FILENAME :寫入到指定文件
:#,#w FILENAME :從#到#行,寫入文件
:set ic //Ignores case,搜索時忽略大小寫
:set hls is //high light serch
不常用命令:
全選:
ctrl+a,開玩笑了。
gg ---> v ---> shift +g
把file文件插入到下一行:
r file
撤銷u的操作:
ctrl-r
修改一個單詞的全部或部分:
cw
更正當前位置到行末尾:
c$
替換前詢問:
:%s/old/new/gc
刪除單詞:
:dw //刪除單詞和後面的空格
:de //刪除單詞但不刪除後面的空格
撤銷命令:
u //撤銷前一次的修改
U //恢復到原始狀態
ctrl+r //撤銷u/U的修改
顯示文本信息:
ctrl-g
連續修改多個字符:
:R
上翻/下翻半屏:
ctrl+d/u