關於vim的學習經驗

2021-06-23 09:49:41 字數 1981 閱讀 9125

在linux下程式設計,想不接觸vim是不行的,

可是正如大家所知道的,vim的學習曲線是很抖的,就是要想熟練掌握,需要投入很大的心力。

就目前來說,對於使用vim,本人也只是處於低階水平,不過我想還是有一些簡單的學習方法可以分享一下。

1. 用vim檢視**,當我們要用終端連線伺服器編譯**的時候,是沒有圖形介面的,這個時候就要求我們掌握一些基本的vim的用法了。vim檢視**可以很簡單,就是打乙個命令,vim  file.c,這樣就可以開啟這個檔案,通常來說,vim都已經預設把語法高亮選項開啟,這樣看**還是很舒服的,這個時候不要急於用各種複雜的功能,只需要熟悉它的環境,比如說如何翻頁,如何使用vim特有的hjkl按鍵來移動游標。

2. 用vim第乙個覺得困惑的地方就是它的工作模式分為瀏覽模式和編輯模式,這一點跟普通的文字編輯工具是很不一樣,通常我們開啟乙個文字檔案都可以隨時修改,但vim不行,它要求你只有在需要改的時候才進入編輯模式,編輯完成之後要退回來瀏覽模式。

為什麼要這樣做呢?我想它最大的好處就是防止誤修改,因為有時候我們不小心碰到鍵盤,在**裡面加多了一點點東西,有時候會導致很嚴重的後果。

所以,在vim下面要養成這樣的習慣,當你要編輯檔案的時候,按i 進入編輯模式,修改完之後按esc鍵退回到瀏覽模式。

在編輯模式,因為要用到hjkl鍵來輸入**,所以hjkl鍵就不能用來移動游標了,此時要用方向鍵來移動游標。

其實vim有一系列高階的移動游標的命令,比如說移動到**塊的末尾,或者移動到函式到括號裡面這些,可是到現在我還沒有記住這些命令,等我以後有那個精力再做吧,現在最重要是把最簡單的用法學會。

3. 接下來,初學者困惑的地方是找不到退出的方法。要退出vim,要先保證你不在編輯狀態,這就是為什麼我們要養成盡可能多用瀏覽模式的原因。在瀏覽模式,vim可以接受使用者的命令,使用者輸入命令之前需要先打:號,這樣左下角就會顯示冒號等待命令,然後如果要退出vim,就打q回車。如果你對檔案沒有任何修改,這個時候vim就會退出,返回shell提示符。如果你對檔案做了修改,就不能退出,vim會提示儲存,要儲存的命令是w,也就是要打:w然後回車。如果你不想儲存,強行退出,就要打:q!。這些命令是必須要記住的。

還有乙個比較困惑的是如果我不小心打錯了,想取消,按照習慣,你會想打ctrl+z,於是螢幕上又多了幾個亂碼。其實正確的方式是用u命令,當然,不要在編輯模式下打,因為編輯模式vim會把這個當成是你要輸入的內容,而不是命令。

4. 然後就是查詢命令,據說vim的查詢命令很強大,但目前為止,我 僅記住一種查詢方法,就是/命令,同樣,在瀏覽模式,直接打/,然後打你要查詢的內容。

接下來的問題是,如何查詢下乙個,答案就是n,直接按n鍵就會找下乙個,如果要反方向查詢,就是shift+n。當然,查詢也是在瀏覽狀態的操作,在編輯狀態是不可以的。用這一種方法我覺得已經夠用了,暫時來說我沒有興趣去了解那些複雜的查詢,替換,特殊查詢之類的,比如說在多個檔案裡面查詢,那種太過複雜了。

5. 直接在vim裡面開啟別的檔案,這種情況也是有的,方法就是在:提示符下面打e加空格加點回車,這個時候就會顯示當前的目錄,然後移動游標選中你想編輯的檔案回車就可以開啟。vim提供很強大的多檔案編輯多命令,包括把視窗**成多個分別顯示不同的內容,不過這種情況我很少用,所以這種命令也沒有記住。

6. 然後就是環境的設定,基本上ubuntu下面的vim裝好之後是不用怎麼配置就已經很好用,它的所有資訊在視窗下方會顯示出來,如檔案總行數,當前的行數,百分比,按ctrl+g可以顯示檔名和檔案的資訊。vim提供一系列的set命令來配置環境,包括syntax on,number這些,一般都寫在乙個初始化的檔案裡,通常名字是.vimrc 一旦配置好就不用改。

7. 直接goto某一行,有時候根據編譯錯誤資訊,會想直接goto檔案的某一行,這個時候要用n+gg,n就是你要跳轉的行號,你輸入這個數字的時候是看不到任何東西的,但你按完2次g之後就會直接跳轉到相應的行了。

8. 複製,貼上,複製一行的命令是yy,貼上的命令是p。如果要複製多行,就先輸入乙個數字,然後按2次y,移動游標到你想貼上到地方按p就可以貼上了。一般貼上是在當前行的下一行。應該有命令可以讓你選中一行裡面的某個變數或者某一段**,不過因為很少用,所以沒有去記憶。

關於MVC的學習經驗

mvc是一種軟體設計規範,不是設計模式,是架構模式。model 模型 dao,service view 檢視 jsp controller 控制器 servlet 控制器controller 實現該介面的類可以獲得控制器功能 public class controllerdemo1 implemen...

linux學習筆記(3) 關於vim

下面是我後期學習整理的資料 課1 vim 命令 小結1 1.游標在螢幕文字中的移動既可以用箭頭鍵,也可以使用 hjkl 字母鍵。h 左移 j 下行 k 上行 l 右移 2.欲進入vim編輯器 從命令列提示符 請輸入 vim 檔名 回車 3.欲退出vim編輯器,請輸入以下命令放棄所有修改 q 回車 或...

關於modbus的一些學習經驗。

關於modbus rtu的注意點 1.首先modbus 有很多分類,用於不同的連線形式。rtu就是基於485硬體連線的公升級版。如果是rtu,crc校驗碼需要低位在前,高位在後。2.關於crc校驗,存在很多形式,具體可以開啟中間的引數模型涵蓋了不同形式的crc校驗。注意crc的高低位順序。crc的本...