從接觸Linux到如今,也已經好幾年了,對於linux的感受一直是分分離離,充滿了遺憾,最大的遺憾之一就是一直沒能精通vim,不能徹底適應vim下的代碼開發。
最近工做中又普遍接觸到vim的使用,我以爲有必要總結一下。
可是我又沒法針對vim的全部命令使用展開敘述,反而認爲針對android,或者說java的一些經常使用編輯相關的操做命令作一個解說更具備效性。java
1.vim的三種命令模式
(1).命令模式:用於輸入命令,簡單更改
(2).插入模式:用於插入文本,修改文本
(3).末行模式:用於輸入命令,視化操做,查找替換等
這三種模式熟悉後,顛覆了windows裏面編輯+工具欄(或者菜單欄)的方式,是咱們進入命令介面的重要認知,通過使用以後,相信你們必定會喜歡這種操做模式的。
三種模式之間的切換方式以下:
(1).命令模式進入到插入模式:輸入文本插入命令。
文本插入命令有:i,I,a,A,o,O
(2).插入模式退出到命令模式:ESC。
(3).命令模式進入到末行模式:冒號:。
如::set nu 表示行號顯示
:set nonu 取消行號顯示
(4).末行模式推出到命令模式:Enter或者ESC。
由此咱們也看出命令模式是這裏還起了一個樞紐的做用,很是重要。linux
2.文本插入命令
上面說到文本插入命令了,正好咱們就趁勢說完。
文本插入命令主要是這幾個i,I,a,A,o,O。android
1 |
i(insert) 在光標前插入文本 |
2 |
I 在光標所在行首插入文本 |
3 |
a(append) 在光標後插入文本 |
4 |
A 在光標所在行尾添加文本 |
5 |
o( open ) 在光標所在行下面添加一行 |
6 |
O 在光標所在行上面添加一行 |
說句實話,這幾個命令都還真是有用,必須掌握,我建議先記住小寫的便可,大寫先無論,到後面熟悉以後,大寫的天然就記住了。shell
3.vim的退出和保存
退出vim也是基本操做基本涉及以下幾個命令:vim
1 |
:q 退出vim返回到shell,如有修改未被保存,vi在末行給出提示信息並不退出vim到shell |
2 |
:q! 退出vim返回到shell,放棄未保存的修改 |
3 |
:wq 先保存,而後退出vim返回到shell |
4 |
:x 和wq命令功能相似,區別是若是是文件沒有修改的話,x不會更新文件的修改時間,而wq則會更新文件的修改時間,不管是否有修改。 |
5 |
:w filename 寫入當前文件到filename文件 |
wq和x應該用的不少吧。windows
4.命令模式的經常使用操做
在命令模式最經常使用操做大概包括,刪除,複製,粘貼,撤銷,移動等等,我列舉幾個最經常使用的以下 :app
01 |
dd 刪除當前1行 |
02 |
5dd 刪除當前行向下5行 |
03 |
x 刪除光標後字符 |
04 |
X 刪除光標前字符 |
05 |
06 |
yy 複製當前1行 |
07 |
5yy 複製當前行向下5行 |
08 |
09 |
p 粘貼 |
10 |
11 |
u 撤銷 |
12 |
13 |
hjkl 向左下上右方向移動光標 |
14 |
^ 光標移動到本行行首 |
15 |
$ 光標移動到本行行尾 |
16 |
gg 跳到文件首行 |
17 |
5gg 跳到第5行 |
18 |
G 跳到文件尾行 |
19 |
20 |
Ctrl + f 向後滾一頁。 |
21 |
Ctrl + d 向後滾半頁。 |
22 |
Ctrl + b 向前滾一頁。 |
23 |
Ctrl + u 向前滾半頁。 |
24 |
Ctrl + e 屏幕向下滾一行。 |
25 |
Ctrl + y 屏幕項上滾一行。 |
上述命令是咱們編輯文件常常使用的一些操做,必須掌握,很是有用。編輯器
5.查找替換工具
1 |
/android 查找android,而後若是按n,表示向下查找,若是按N,表示向上查找 |
2 |
?android 查找android,而後若是按n,表示向上查找,若是按N,表示向下查找 |
3 |
4 |
: %s /old/new/g 將編輯器的緩衝區的 "old" 替換爲new |
5 |
:19,20s/old/new/g 將文件的19到20行的的 "old" 替換爲new |
用vim查找和替換仍是挺方便的。spa
6.小結 差很少,上述是vim編輯器的基本用法,今天寫在這裏,作一總結,同時與你們共勉。