寫在前面
????????Vim是一個類似于Vi的著名的功能強大、高度可定制的文本編輯器,在Vi的基礎上改進和增加了很多特性喳魏。VIM是自由軟件恒削。Vim普遍被推崇為類Vi編輯器中最好的一個池颈,事實上真正的勁敵來自Emacs的不同變體尾序。1999 年Emacs被選為Linuxworld文本編輯分類的優(yōu)勝者,Vim屈居第二躯砰。但在2000年2月Vim贏得了Slashdot Beanie的最佳開放源代碼文本編輯器大獎每币,又將Emacs推至二線, 總的來看琢歇, Vim和Emacs在文本編輯方面都是非常優(yōu)秀的兰怠。?
一、概述
所有的 Unix Like (類Unix)系統(tǒng)都會內建 vi 文書編輯器矿微,其他的文書編輯器則不一定會存在痕慢。但是目前我們使用比較多的是vim 編輯器。
Vim 具有程序編輯的能力涌矢,可以主動的以字體顏色辨別語法的正確性掖举,方便程序設計。Vim是從 vi 發(fā)展出來的一個文本編輯器娜庇。代碼補完塔次、編譯及錯誤跳轉等方便編程的功能特別豐富,在程序員中被廣泛使用名秀。
簡單的來說vi 是老式的文字處理器励负,不過功能已經(jīng)很齊全了,但是還是有可以進步的地方匕得。vim則可以說是程序開發(fā)者的一項很好用的工具继榆。連vim 的官方網(wǎng)站(http://www.vim.org) 自己也說 vim 是一個程序開發(fā)工具而不是文字處理軟件。
二汁掠、測試數(shù)據(jù)準備
第1行
第2行
第3行
第4行
第5行
第6行
第7行
第8行
第9行
第10行
三略吨、三大模式之 一般模式
以 vi 打開一個檔案就直接進入一般模式了(這是默認的模式)。在這個模式中考阱,你可以使用『上下左右』按鍵來移動光標翠忠,你可以使用『刪除字符』或『刪除整行』來處理檔案內容,也可以使用『復制乞榨、貼上』來處理你的文件數(shù)據(jù)秽之。
常用語法
1)yy???? ?????? (功能描述:復制光標當前一行)
?? y數(shù)字y???? (功能描述:復制一段(從第幾行到第幾行,光標閃爍出認為第一行吃既,y2y考榨,即復制光標所在行以及光標下一行))
2)p?????? ?????? (功能描述:箭頭移動到目的行粘貼粘在光標所在行的下一行)
3)u?????? ?????? (功能描述:撤銷上一步)undo
4)dd???? ?????? (功能描述:刪除光標當前行)
d數(shù)字d???? (功能描述:刪除光標(含)后多少行)
5)shift+^????? (功能描述:移動到行頭)
6)shift+$????? (功能描述:移動到行尾)
7)1+shift+g? ?????? ?????? (功能描述:移動到頁頭,數(shù)字鹦倚,先按1董虱,再同時按shift+g,注意不是同時按1+shift+g)
8)shift+g????? ?????? ?????? (功能描述:移動到頁尾)
9)數(shù)字N+shift+g (功能描述:移動到目標行)
四、三大模式之編輯模式
在一般模式中可以進行刪除愤诱、復制云头、貼上等等的動作,但是卻無法編輯文件內容的淫半!要等到你按下『i, I, o, O, a, A, r, R』等任何一個字母之后才會進入編輯模式溃槐。
注意了!通常在 Linux 中科吭,按下這些按鍵時昏滴,在畫面的左下方會出現(xiàn)『INSERT 或 REPLACE 』的字樣,此時才可以進行編輯对人。而如果要回到一般模式時谣殊,則必須要按下『Esc』這個按鍵即可退出編輯模式。
常用語法
1)進入編輯模式
(1)i??? 當前光標前(最常用)
(2)a???當前光標后
(3)o??? 當前光標行的下一行
2)退出編輯模式牺弄,即進入一般模式
按『Esc』鍵
五姻几、三大模式之 指令模式
在一般模式當中,輸入『: / ?』3個中的任何一個按鈕势告,就可以將光標移動到最底下那一行蛇捌。
在這個模式當中,可以提供你『搜尋資料』的動作咱台,而讀取络拌、存盤、大量取代字符回溺、離開 vi 春贸、顯示行號等動作是在此模式中達成的!
常用語法
1)基本語法
(1): 選項
?????? 選項:
?w???? 保存
?q???? 退出不保存
?遗遵!? 感嘆號強制執(zhí)行
(2)/? 查找萍恕,/被查找詞,n是查找下一個瓮恭,shift+n是往上查找
2)案例
:wq! ?????? 強制保存退出
:q! 不保存文件雄坪,強制退出vi
按下esc鍵退回到一般模式厘熟,然后按下Shift+z+z實現(xiàn)快速保存(只能夠保存非只讀文件屯蹦,對于只讀文件,還是需要wq!來保存)绳姨。
? ? 3)? ?/ 和 登澜? 的區(qū)別
/是向下查找,飘庄?是向上查找
六脑蠕、vi與vim的區(qū)別
1)、多級撤消?
????????在vi編輯器中,按u只能撤消上次命令谴仙,而在vim里可以無限制的撤消迂求。
2)、易用性
????????vi編輯器只能運行于unix中晃跺,而vim不僅可以運行于unix揩局,還可用于windows、mac等多操作平臺掀虎。
3)凌盯、語法加亮
????????vim可以用不同的顏色來加亮你的代碼。
4)烹玉、可視化操作
????????vim不僅可以在終端運行驰怎,也可以運行于windows、 mac os二打、 windows县忌。
5)、對vi完全兼容
????????可以把vim當成vi來使用址儒。
小結:vi和vim都是Linux中的編輯器芹枷,不同的是vim比較高級,可以視為vi的升級版本莲趣。vi使用于文本編輯鸳慈,但是vim更適用于編碼。