平常最多是用vim來編輯單個文件,看看源碼。就是寫幾k行代碼時也沒有用一些其他的插件,只是設置了高亮等一些自帶的屬性。這樣的好處是,換到任何一台新機上都能立馬使用。
網上流傳了大量的“vim命令合集”,“把vim打造成一個IDE”之類的文章,我覺得至少對我來說意義不大。我覺得把以下這些命令用熟的話,vim已經算是一個非常好用的工具,足夠日常使用了。
打開/退出
vim -R file1 只讀打開
:qall 退出所有文件
:wq 寫入並退出
:q! 強制退出
插入
i 在當前位置生前插入
I 在當前行首插入
a 在當前位置后插入
A 在當前行尾插入
o 在當前行之后插入一行
O 在當前行之前插入一行
移動
h 左移一個字符
l 右移一個字符
k 上移一個字符
j 下移一個字符
以上四個命令可以配合數字使用,比如20j就是向下移動20行,5h就是向左移動5個字符。
刪除
dd 刪除當前行
dj 刪除當前行和上一行
dk 刪除當前行和下一行
10dd 刪除當前行開始的共10行
D 刪除當前字符至行尾
跳轉
gg 跳轉到文件頭 G 跳轉到文件尾 gg=G自動縮進 (非常有用) Ctrl + d 向下滾動半屏 Ctrl + u 向上滾動半屏 Ctrl + f 向下滾動一屏 Ctrl + b 向上滾動一屏 冒號+行號,跳轉到指定行;比如:120,跳轉到120行; $ 跳轉到行尾 0 跳轉到行首
編輯
u 撤銷 Ctrl + r 重做 yy 復制當前行 按v(逐字)或V(逐行)進入可視模式,然后用jklh命令移動即可選擇某些行或字符,再按y即可復制任意部分 p 粘貼在當前位置 另外,刪除在vim里面就是剪切的意思,所以dd就是剪切當前行,可以用v或V選擇特定部分再按d就是任意剪切了
查找
/text 查找text,按n健查找下一個,按N健查找前一個 ?text 查找text,反向查找,按n健查找下一個,按N健查找前一個 :set ignorecase 忽略大小寫的查找 :set noignorecase 不忽略大小寫的查找
替換
:s/old/new/ 用old替換new,替換當前行的第一個匹配 :s/old/new/g 用old替換new,替換當前行的所有匹配 :%s/old/new/ 用old替換new,替換所有行的第一個匹配 :%s/old/new/g 用old替換new,替換整個文件的所有匹配 也可以用v或V選擇指定行,然后執行
多文件操作
vim file1 file2 file3 ... 同時編輯多個文件 :split 將窗口分成上下兩個子窗口,對應兩個不同的文件 :vsplit 將窗口分成左右兩個子窗口,對應兩個不同的文件 :open file4 打開新文件 :bn 切換到下一個文件(當前窗口) :bp 切換到上一個文件(當前窗口) Ctrl-w h 移動到窗口左邊 Ctrl-w j 移動到窗口下邊 Ctrl-w k 移動到窗口上邊 Ctrl-w l 移動到窗口右邊
部分摘自:
http://www.cnblogs.com/softwaretesting/archive/2011/07/12/2104435.html