簡(jiǎn)介
vim是一個(gè)功能強(qiáng)大侧纯、高度可定制的文本編輯器
插入命令
- i 在當(dāng)前位置前插入
- I 在當(dāng)前位置行首插入
- a 在當(dāng)前位置后插入
- A 在當(dāng)前位置行尾插入
- o 在當(dāng)前行之后插入一行
- O 在當(dāng)前行之前插入一行
移動(dòng)命令
- h撇簿,l商膊,k,j 分別代表左移犁跪,右移,上移,下移一個(gè)字符瑰煎,還可配合數(shù)字使用,10j 代表下移十行
- w俗孝,b 移動(dòng)到下一個(gè)單詞第一字符和上一個(gè)單詞第一字符
- e酒甸,ge 移動(dòng)到下一個(gè)單詞最后字符和上一個(gè)單詞最后一個(gè)字符
- 0,^ 移動(dòng)到本行的第一個(gè)字符和第一個(gè)非空白字符上
- $赋铝,<end> 移動(dòng)到行尾
- gg插勤,G 移動(dòng)到文件開(kāi)頭和文件末尾
- fx 用于找到本行內(nèi)下一個(gè)為x 的字符
- F 同f 用于反向查找
- {,} 移動(dòng)到上一個(gè)段首和下一個(gè)段首
- [[革骨,]] 移動(dòng)到上一個(gè)函數(shù)頭和移動(dòng)到下一個(gè)函數(shù)尾
- :200农尖,200G 跳到200行
- 10| 跳到第十列
- Ctrl + u 向上滾動(dòng)半屏
- Ctrl + d 向下滾動(dòng)半屏
- Ctrl + b 向上滾動(dòng)一屏
- Ctrl + f 向下滾動(dòng)一屏
刪除,復(fù)制良哲,粘貼
- 在可視模式下
- 文本選擇
- v 文本選擇盛卡,從光標(biāo)當(dāng)前位置開(kāi)始,光標(biāo)所經(jīng)過(guò)的會(huì)被選中筑凫,按v結(jié)束
- V 文本選擇窟扑,光標(biāo)所經(jīng)過(guò)的行都會(huì)被選中,按V結(jié)束
- Ctrl + v 從光標(biāo)當(dāng)前位置開(kāi)始漏健,選中光標(biāo)起點(diǎn)和終點(diǎn)所構(gòu)成的矩形區(qū)域嚎货,按 Ctrl + v 結(jié)束
- ggVG 選中全部文本
- 使用編輯命令進(jìn)行編輯
- y 復(fù)制
- p 粘貼
- d 剪切
- "+y 復(fù)制到系統(tǒng)剪貼板
- "+p 從系統(tǒng)剪貼板粘貼
- 在命令模式下
- 刪除
- x 刪除當(dāng)前字符(可加數(shù)字,例如3x)
- X 刪除當(dāng)前字符的前一個(gè)字符
- J 刪除換行符
- 剪切
- dd 剪切當(dāng)前行
- dj 剪切上一行
- dk 剪切下一行
- D 剪切當(dāng)前字符到行尾
- :,10d 剪切1到10 行
- :11,$d 剪切11行及其以后的所有行
- 復(fù)制
- yy 復(fù)制當(dāng)前行
- nyy 復(fù)制當(dāng)前行開(kāi)始的n 行
- y$ 將當(dāng)前字符到行尾復(fù)制起來(lái)
- 粘貼
- p 在在當(dāng)前光標(biāo)后粘貼,如果之前使用了yy命令來(lái)復(fù)制一行蔫浆,那么就在當(dāng)前行的下一行粘貼殖属。
- P 在當(dāng)前行進(jìn)行粘貼
- :1, 10 co 20 將1-10行插入到第20行之后
搜索
- /word 從開(kāi)頭到結(jié)尾搜索單詞word,按n 查找下一個(gè)
- 瓦盛?word 從結(jié)尾到到開(kāi)頭搜索單詞word洗显,按N 查找下一個(gè)
- 外潜,# 搜索光標(biāo)下單詞,從開(kāi)頭開(kāi)始挠唆,#從結(jié)尾開(kāi)始
- /\cstring 搜索string 或 STRING处窥,大小寫(xiě)不敏感
- /jo[ha]n 搜索john 或 joan
- /<the 搜索以the 開(kāi)頭的,如the玄组,theory等
- /the> 搜索以the 結(jié)尾的滔驾,如the,breathe等
- /<the> 搜索the
- // 搜索 /
- /for|and 搜索for 或者and
- /<\d\d\d\d> 搜索僅有四個(gè)數(shù)字
- /^\n{3} 搜索連續(xù)三個(gè)空行
注意:vim中有一些特殊字符在查找時(shí)需要轉(zhuǎn)義 .*[]^%/?~$
替換
- ra 將當(dāng)前字符替換為a
- :s/old/new 將old替換為new俄讹,替換當(dāng)前行的第一個(gè)匹配
- :s/old/new/g 將old替換為new哆致,替換當(dāng)前行的所有匹配
- :%s/old/new 將old替換為new,替換所有行的第一個(gè)匹配
- :%s/old/new/g 將old替換為new患膛,替換所有行的所有匹配
- :10,20 s/^/ /g 在第10行知第20行每行前面加四個(gè)空格摊阀,用于縮進(jìn)
大小寫(xiě)
- Vu 整行小寫(xiě)
- VU 整行大寫(xiě)
- g~~ 大小寫(xiě)反轉(zhuǎn)