vim的中文tutor
vim 是一個具有很多命令的功能非常強大的編輯器。限於篇幅,在本教程當中就不詳細介紹了。本教程的設計目標是講述一些必要的基本命令,而掌握好這些命令,您就能夠很容易將vim當作一個通用的萬能編輯器來使用了。
完成本教程的內容大約需要25-30分鐘,取決於您訓練的時間。
每一節的命令操作將會更改本文。推薦您複製本文的一個副本,然後在副本上進行訓練(如果您是通過”vimtutor”來啟動教程的,那麼本文就已經是副本了)。
切記一點∶本教程的設計思路是在使用中進行學習的。也就是說,您需要通過執行命令來學習它們本身的正確用法。如果您只是閱讀而不操作,那麼您可能會很快遺忘這些命令的!
好了,現在請確定您的Shift-Lock(大小寫鎖定鍵)還沒有按下,然後按鍵盤上的字母鍵 j 足夠多的次數來移動游標,直到第一節的內容能夠完全充滿螢幕。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第一講第一節∶移動游標
※※ 要移動游標,請依照說明分別按下 h、j、k、l 鍵。 ※※
^
k 提示∶ h 的鍵位於左邊,每次按下就會向左移動。
< h l > l 的鍵位於右邊,每次按下就會向右移動。
j j 鍵看起來很象一支尖端方向朝下的箭頭。
v
1. 請隨意在螢幕內移動游標,直至您覺得舒服為止。
2. 按下下行鍵(j),直到出現游標重複下行。
—> 現在您應該已經學會如何移動到下一講吧。
3. 現在請使用下行鍵,將游標移動到第二講。
提示∶如果您不敢確定您所按下的字母,請按下<ESC>鍵回到正常(Normal)模式。然後再次從鍵盤輸入您想要的命令。
提示∶游標鍵應當也能正常工作的。但是使用hjkl鍵,在習慣之後您就能夠快速地在螢幕內四處移動游標了。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第一講第二節∶VIM的進入和退出
!! 特別提示∶敬請閱讀完整本一節的內容,然後才能執行以下所講解的命令。
1. 請按<ESC>鍵(這是為了確保您處在正常模式)。
2. 然後輸入∶ :q! <斷行符號>
—> 這種方式的退出編輯器絕不會儲存您進入編輯器以來所做的改動。
如果您想儲存更改再退出,請輸入∶
:wq <斷行符號>
3. 如果您看到了命令列提示符,請輸入能夠帶您回到本教程的命令,那就是∶
vimtutor <斷行符號>
通常情況下您也可以用這種方式∶
vim tutor <斷行符號>
—> 這裡的 ‘vim’ 表示進入vim編輯器,而 ‘tutor’則是您準備要編輯的檔案。
4. 如果您自信已經牢牢記住了這些步驟的話,請從步驟1執行到步驟3退出,然後再次進入編輯器。接著將游標移動到第一講第三節來繼續我們的教程講解。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第一講第三節∶文本編輯之刪除
** 在正常(Normal)模式下,可以按下 x 鍵來刪除游標所在位置的字元。**
1. 請將游標移動到本節中下面標記有 —> 的那一行。
2. 為了修正輸入錯誤,請將游標移至準備刪除的字元的位置處。
3. 然後按下 x 鍵將錯誤字元刪除掉。
4. 重複步驟2到步驟4,直到句子修正為止。
—> The ccow jumpedd ovverr thhe mooon.
5. 好了,該行已經修正了,下一節內容是第一講第四節。
特別提示∶在您瀏覽本教程時,不要強行記憶。記住一點∶在使用中學習。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第一講第四節∶文本編輯之插入
** 在正常模式下,可以按下 i 鍵來插入文本。**
1. 請將游標移動到本節中下面標記有 —> 的第一行。
2. 為了使得第一行內容雷同於第二行,請將游標移至文本第一個字元準備插入
的位置。
3. 然後按下 i 鍵,接著輸入必要的文本字元。
4. 所有文本都修正完畢,請按下 <ESC> 鍵返回正常模式。
重複步驟2至步驟4以便修正句子。
—> There is text misng this .
—> There is some text missing from this line.
5. 如果您對文本插入操作已經很滿意,請接著閱讀下面的小結。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第一講小結
1. 游標在螢幕文本中的移動既可以用方向鍵,也可以使用 hjkl 字母鍵。
h (左移) j (下行) k (上行) l (右移)
2. 欲進入vim編輯器(從命令列提示符),請輸入∶vim 檔案名稱 <斷行符號>
3. 欲退出vim編輯器,請輸入以下命令放棄所有修改∶
<ESC> :q! <斷行符號>
或者輸入以下命令儲存所有修改∶
<ESC> :wq <斷行符號>
4. 在正常模式下刪除游標所在位置的字元,請按∶ x
5. 在正常模式下要在游標所在位置開始插入文本,請按∶
i 輸入必要文本 <ESC>
特別提示∶按下 <ESC> 鍵會帶您回到正常模式或者取消一個不期望或者部分完成的命令。
好了,第一講到此結束。下面接下來繼續第二講的內容。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第二講第一節∶刪除類命令
** 輸入 dw 可以從游標處刪除至一個單字/單詞的末尾。**
1. 請按下 <ESC> 鍵確保您處於正常模式。
2. 請將游標移動到本節中下面標記有 —> 的那一行。
3. 請將游標移至準備要刪除的單詞的開始。
4. 接著輸入 dw 刪除掉該單詞。
特別提示∶您所輸入的 dw 會在您輸入的同時出現在螢幕的最後一行。如果您輸入有誤,請按下 <ESC> 鍵取消,然後重新再來。
—> There are a some words fun that don’t belong paper in this sentence.
5. 重複步驟3至步驟4,直至句子修正完畢。接著繼續第二講第二節內容。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第二講第二節∶其他刪除類命令
** 輸入 d$ 從當前游標刪除到行末。**
1. 請按下 <ESC> 鍵確保您處於正常模式。
2. 請將游標移動到本節中下面標記有 —> 的那一行。
3. 請將游標移動到該行的尾部(也就是在第一個點號‘.’後面)。
4. 然後輸入 d$ 從游標處刪至當前行尾部。
—> Somebody typed the end of this line twice. end of this line twice.
5. 請繼續學習第二講第三節就知道是怎麼回事了。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第二講第三節∶關於命令和對象
刪除命令 d 的格式如下∶
[number] d object 或者 d [number] object
其意如下∶
number - 代表執行命令的次數(可選項,預設設定為 1 )。
d - 代表刪除。
object - 代表命令所要操作的對象(下面有相關介紹)。
一個簡短的對象列表∶
w - 從當前游標當前位置直到單字/單詞末尾,包括空格。
e - 從當前游標當前位置直到單字/單詞末尾,但是 *不* 包括空格。
$ - 從當前游標當前位置直到當前行末。
特別提示∶
對於勇於探索者,請在正常模式下面僅按代表相應對象的鍵而不使用命令,則將看到游標的移動正如上面的對象列表所代表的一樣。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第二講第四節∶對象命令的特殊情況
** 輸入 dd 可以刪除整一個當前行。 **
鑒於整行刪除的高頻度,VIM 的設計者決定要簡化整行刪除,僅需要在同一行上
擊打兩次 d 就可以刪除掉游標所在的整行了。
1. 請將游標移動到本節中下面的短句段落中的第二行。
2. 輸入 dd 刪除該行。
3. 然後移動到第四行。
4. 接著輸入 2dd (還記得前面講過的 number-command-object 嗎?) 刪除兩行。
1) Roses are red,
2) Mud is fun,
3) Violets are blue,
4) I have a car,
5) Clocks tell time,
6) Sugar is sweet
7) And so are you.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第二講第五節∶撤消類命令
** 輸入 u 來撤消最後執行的命令,輸入 U 來修正整行。**
1. 請將游標移動到本節中下面標記有 —> 的那一行,並將其置於第一個錯誤
處。
2. 輸入 x 刪除第一個不想保留的字母。
3. 然後輸入 u 撤消最後執行的(一次)命令。
4. 這次要使用 x 修正本行的所有錯誤。
5. 現在輸入一個大寫的 U ,恢複到該行的原始狀態。
6. 接著多次輸入 u 以撤消 U 以及更前的命令。
7. 然後多次輸入 CTRL-R (先按下 CTRL 鍵不放開,接著輸入 R 鍵) ,這樣就
可以執行恢複命令,也就是撤消掉撤消命令。
—> Fiix the errors oon thhis line and reeplace them witth undo.
8. 這些都是非常有用的命令。下面是第二講的小結了。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第二講小結
1. 欲從當前游標刪除至單字/單詞末尾,請輸入∶dw
2. 欲從當前游標刪除至當前行末尾,請輸入∶d$
3. 欲刪除整行,請輸入∶dd
4. 在正常模式下一個命令的格式是∶
[number] command object 或者 command [number] object
其意是∶
number - 代表的是命令執行的次數
command - 代表要做的事情,比如 d 代表刪除
object - 代表要操作的對象,比如 w 代表單字/單詞,$ 代表到行末等等。
$ (to the end of line), etc.
5. 欲撤消以前的操作,請輸入∶u (小寫u)
欲撤消在一行中所做的改動,請輸入∶U (大寫的U)
欲撤消以前的撤消命令,恢複以前的操作結果,請輸入∶CTRL-R
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第三講第一節∶置入類命令
** 輸入 p 將最後一次刪除的內容置入游標之後 **
1. 請將游標移動到本節中下面示範段落的首行。
2. 輸入 dd 將該行刪除,這樣會將該行儲存到vim的緩衝區中。
3. 接著將游標移動到準備置入的位置的上方。記住∶是上方哦。
4. 然後在正常模式下(<ESC>鍵進入),輸入 p 將該行粘貼置入。
5. 重複步驟2至步驟4,將所有的行依序放置到正確的位置上。
d) Can you learn too?
b) Violets are blue,
c) Intelligence is learned,
a) Roses are red,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第三講第二節∶替換類命令
** 輸入 r 和一個字元替換游標所在位置的字元。**
1. 請將游標移動到本節中下面標記有 —> 的第一行。
2. 請移動游標到第一個錯誤的適當位置。
3. 接著輸入 r ,這樣就能將錯誤替換掉了。
4. 重複步驟2和步驟3,直到第一行已經修改完畢。
—> Whan this lime was tuoed in, someone presswd some wrojg keys!
—> When this line was typed in, someone pressed some wrong keys!
5. 然後我們繼續學校第三講第三節。
特別提示∶切記您要在使用中學習,而不是在記憶中學習。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第三講第三節∶更改類命令
** 要改變一個單字/單詞的部分或者全部,請輸入 cw **
1. 請將游標移動到本節中下面標記有 —> 的第一行。
2. 接著把游標放在單詞 lubw 的字母 u 的位置那裡。
3. 然後輸入 cw 就可以修正該單詞了(在本例這裡是輸入 ine 。)
4. 最後按 <ESC> 鍵,然後游標定位到下一個錯誤第一個準備更改的字母處。
5. 重複步驟3和步驟4,直到第一個句子完全雷同第二個句子。
—> This lubw has a few wptfd that mrrf changing usf the change command.
—> This line has a few words that need changing using the change command
.
提示∶請注意 cw 命令不僅僅是替換了一個單詞,也讓您進入文本插入狀態了。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第三講第四節∶使用c指令的其他更改類命令
** 更改類指令可以使用同刪除類命令所使用的對象參數。**
1. 更改類指令的工作方式跟刪除類命令是一致的。操作格式是∶
[number] c object 或者 c [number] object
2. 對象參數也是一樣的,比如 w 代表單字/單詞,$代表行末等等。
3. 請將游標移動到本節中下面標記有 —> 的第一行。
4. 接著將游標移動到第一個錯誤處。
5. 然後輸入 c$ 使得該行剩下的部分更正得同第二行一樣。最後按 <ESC> 鍵。
—> The end of this line needs some help to make it like the second.
—> The end of this line needs to be corrected using the c$ command.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第三講小結
1. 要重新置入已經刪除的常值內容,請輸入小寫字母 p。該操作可以將已刪除的常值內容置於游標之後。如果最後一次刪除的是一個整行,那麼該行將置於當前游標所在行的下一行。
2. 要替換游標所在位置的字元,請輸入小寫 r 和要替換掉原位置字元的新字元即可。
3. 更改類命令允許您改變指定的對象,從當前游標所在位置直到對象的末尾。比如輸入 cw 可以替換當前游標到單詞的末尾的內容;輸入 c$ 可以替換當前游標到行末的內容。
4. 更改類命令的格式是∶
[number] c object 或者 c [number] object
下面我們繼續學習下一講。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第四講第一節∶定位及檔案狀態
** 輸入 CTRL-g 顯示當前編輯檔案中當前游標所在行位置以及檔案狀態資訊。
輸入 SHIFT-G 則直接跳轉到檔案中的某一指定行。**
提示∶切記要先通讀本節內容,之後才可以執行以下步驟!!!
1. 按下 CTRL 鍵不放開然後按 g 鍵。然後就會看到頁面最底部出現一個狀態資訊行,顯示的內容是當前編輯的檔案名稱和檔案的總行數。請記住步驟3的行號。
2. 按下 SHIFT-G 鍵可以使得當前游標直接跳轉到檔案最後一行。
3. 輸入您曾停留的行號,然後按下 SHIFT-G。這樣就可以返回到您第一次按下CTRL-g 時所在的行好了。注意∶輸入行號時,行號是不會在螢幕上顯示出來的。
4. 如果願意,您可以繼續執行步驟1至步驟三。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第四講第二節∶搜尋類命令
** 輸入 / 以及尾隨的字串可以用以在當前檔案中尋找該字串。**
1. 在正常模式下輸入 / 字元。您此時會注意到該字元和游標都會出現在螢幕底部,這跟 : 命令是一樣的。
2. 接著輸入 errroor <斷行符號>。那個errroor就是您要尋找的字串。
3. 要尋找同上一次的字串,只需要按 n 鍵。要向相反方向尋找同上一次的字串,請輸入 Shift-N 即可。
4. 如果您想逆向尋找字串,請使用 ? 代替 / 進行。
—> When the search reaches the end of the file it will continue at the
start.
“errroor” is not the way to spell error; errroor is an error.
提示∶如果尋找已經到達檔案末尾,尋找會自動從檔案頭部繼續尋找。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第四講第三節∶配對括弧的尋找
** 按 % 可以尋找配對的括弧 )、]、}。**
1. 把游標放在本節下面標記有 –> 那一行中的任何一個 (、[ 或 { 處。
2. 接著按 % 字元。
3. 此時游標的位置應當是在配對的括弧處。
4. 再次按 % 就可以跳回配對的第一個括弧處。
—> This ( is a test line with (’s, [’s ] and {’s } in it. ))
提示∶在程式調試時,這個功能用來尋找不配對的括弧是很有用的。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第四講第四節∶修正錯誤的方法之一
** 輸入 :s/old/new/g 可以替換 old 為 new。**
1. 請將游標移動到本節中下面標記有 —> 的那一行。
2. 輸入 :s/thee/the <斷行符號> 。請注意該命令只改變游標所在行的第一個匹配串。
3. 輸入 :s/thee/the/g 則是替換全行的匹配串。
—> the best time to see thee flowers is in thee spring.
4. 要替換兩行之間出現的每個匹配串,請輸入 :#,#s/old/new/g (#,#代表的是兩行的行號)。輸入 :%s/old/new/g 則是替換整個檔案中的每個匹配串。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第四講小結
1. Ctrl-g 用於顯示當前游標所在位置和檔案狀態資訊。Shift-G 用於將游標跳轉至檔案最後一行。先敲入一個行號然後按 Shift-G 則是將游標移動至該行號代表的行。
2. 輸入 / 然後緊隨一個字串是則是在當前所編輯的文檔中向後尋找該字串。輸入問號 ? 然後緊隨一個字串是則是在當前所編輯的文檔中向前尋找該字串。完成一次尋找之後按 n 鍵則是重複上一次的命令,可在同一方向上尋找下一個字串所在;或者按 Shift-N 向相反方向尋找下該字串所在。
3. 如果游標當前位置是括弧(、)、[、]、{、},按 % 可以將游標移動到配對的括弧上。
4. 在一行內替換頭一個字串 old 為新的字串 new,請輸入 :s/old/new
在一行內替換所有的字串 old 為新的字串 new,請輸入 :s/old/new/g
在兩行內替換所有的字串 old 為新的字串 new,請輸入 :#,#s/old/new/g
在檔案內替換所有的字串 old 為新的字串 new,請輸入 :%s/old/new/g
進行全文替換時詢問使用者確認每個替換需添加 c 選項,請輸入 :%s/old/new/gc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第五講第一節∶在 VIM 內執行外部命令的方法
** 輸入 :! 然後緊隨著輸入一個外部命令可以執行該外部命令。**
1. 按下我們所熟悉的 : 命令設定游標到螢幕底部。這樣就可以讓您輸入命令了。
2. 接著輸入驚嘆號 ! 這個字元,這樣就允許您執行外部的 shell 命令了。
3. 我們以 ls 命令為例。輸入 !ls <斷行符號> 。該命令就會列舉出您目前的目錄的內容,就如同您在命令列提示符下輸入 ls 命令的結果一樣。如果 !ls 沒起作用,您可以試試 :!dir 看看。
—> 提示∶ 所有的外部命令都可以以這種方式執行。
—> 提示∶ 所有的 : 命令都必須以 <斷行符號> 告終。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第五講第二節∶關於儲存檔案的更多資訊
** 要將對檔案的改動儲存到檔案中,請輸入 :w FILENAME 。**
1. 輸入 :!dir 或者 :!ls 獲知目前的目錄的內容。您應當已知道最後還得敲<斷行符號> 吧。
2. 選擇一個尚未存在檔案名稱,比如 TEST 。
3. 接著輸入 :w TEST (此處 TEST 是您所選擇的檔案名稱。)
4. 該命令會以 TEST 為檔案名稱儲存整個檔案 (VIM 教程)。為了確保正確儲存,請再次輸入 :!dir 查看您的目錄列表內容。
—> 請注意∶如果您退出 VIM 然後在以檔案名稱 TEST 為參數進入,那麼該檔案內容應該同您儲存時的檔案內容是完全一樣的。
5. 現在您可以通過輸入 :!rm TEST 來刪除 TEST 檔案了。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第五講第三節∶一個具有選擇性的儲存命令
** 要儲存檔案的部分內容,請輸入 :#,# w FILENAME **
1. 再來執行一次 :!dir 或者 :!ls 獲知目前的目錄的內容,然後選擇一個合適的不重名的檔案名稱,比如 TEST 。
2. 接著將游標移動至本頁的最頂端,然後按 CTRL-g 找到該行的行號。別忘了行號哦。
3. 接著把游標移動至本頁的最底端,再按一次 CTRL-g 。也別忘了這個行號哦。
4. 為了只儲存文章的某個部分,請輸入 :#,# w TEST 。這裡的 #,# 就是上面要求您記住的行號(頂端行號,底端行號),而 TEST 就是選定的檔案名稱。
5. 最後,用 :!dir 確認檔案是否正確儲存。但是這次先別刪除掉。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第五講第四節∶提取和合并檔案
** 要向當前檔案中插入另外的檔案的內容,請輸入 :r FILENAME **
1. 請鍵入 :!dir 確認您前面建立的 TEST 檔案還在。
2. 然後將游標移動至當前頁面的頂端。
特別提示∶ 執行步驟3之後您將看到第五講第三節,請屆時再往下移動回到這裡來。
3. 接著通過 :r TEST 將前面建立的名為 TEST 的檔案提取進來。
特別提示∶您所提取進來的檔案將從游標所在位置處開始置入。
4. 為了確認檔案已經提取成功,移動游標回到原來的位置就可以注意有兩份第五講第三節,一份是原本,另外一份是來自檔案的副本。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第五講小結
1. :!command 用於執行一個外部命令 command。
請看一些實際例子∶
:!dir - 用於顯示目前的目錄的內容。
:!rm FILENAME - 用於刪除名為 FILENAME 的檔案。
2. :w FILENAME 可將當前 VIM 中正在編輯的檔案儲存到名為 FILENAME 的檔案中。
3. :#,#w FILENAME 可將當前編輯檔案第 # 行至第 # 行的內容儲存到檔案FILENAME 中。
4. :r FILENAME 可提取磁碟檔案 FILENAME 並將其插入到當前檔案的游標位置後面。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第六講第一節∶開啟類命令
** 輸入 o 將在游標的下方開啟新的一行並進入插入模式。**
1. 請將游標移動到本節中下面標記有 —> 的那一行。
2. 接著輸入小寫 o 在游標 *下方* 開啟新的一行並進入插入模式。
3. 然後複製標記有 —> 的行並按 <ESC> 鍵退出插入模式而進入正常模式。
—> After typing o the cursor is placed on the open line in Insert mode
.
4. 為了在游標 *上方* 開啟新的一行,只需要輸入大寫的 O 而不是小寫 o就可以了。請在下行測試一下吧。當游標處在在該行上時,按 Shift-O可以在該行上方新開一行。
Open up a line above this by typing Shift-O while the cursor is on this line
.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第六講第二節∶游標後插入類命令
** 輸入 a 將可在游標之後插入文本。 **
1. 請在正常模式下通過輸入 $ 將游標移動到本節中下面標記有 —> 的第一行的末尾。
2. 接著輸入小寫 a 則可在游標之後插入文本了。大寫的 A 則可以直接在行末插入文本。
提示∶輸入大寫 A 的操作方法可以在行末插入文本,避免了輸入 i,游標定位到最後一個字元,輸入的文本,<ESC> 回複正常模式,箭頭右鍵移動游標以及x 刪除當前游標所在位置字元等等諸多繁雜的操作。
3. 操作之後第一行就可以補充完整了。請注意游標後插入文本與插入模式是基本完全一致的,只是文本插入的位置定位稍有不同罷了。
—> This line will allow you to practice
—> This line will allow you to practice appending text to the end of a line.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第六講第三節∶另外一個置換類命令的版本
** 輸入大寫的 R 可連續替換多個字元。**
1. 請將游標移動到本節中下面標記有 —> 的第一行。
2. 移動游標到第一行中不同於標有 —> 的第二行的第一個單詞的開始,即單詞 last 處。
3. 然後輸入大寫的 R 開始把第一行中的不同於第二行的剩餘字元逐一輸入,就可以全部替換掉原有的字元而使得第一行完全雷同第二行了。
—> To make the first line the same as the last on this page use the keys.
—> To make the first line the same as the second, type R and the new text.
4. 請注意∶如果您按 <ESC> 退出置換模式回複正常模式,尚未替換的文本將仍然保持原狀。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第六講第四節∶設定類命令的選項
** 設定可使尋找或者替換可忽略大小寫選項 **
1. 要尋找單詞 ignore 可在正常模式下輸入 /ignore 。要重複尋找該詞,可以重複按 n 鍵。
2. 然後設定 ic 選項(ic就是英文忽略大小寫Ignore Case的首字母縮寫詞),即輸入∶
:set ic
3. 現在可以通過鍵入 n 鍵再次尋找單詞 ignore。重複尋找可以重複鍵入 n 鍵。
4. 然後設定 hlsearch 和 incsearch 這兩個選項,輸入以下內容∶
:set hls is
5. 現在可以再次輸入尋找命令,看看會有什麼效果∶
/ignore
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第六講小結
1. 輸入小寫 o 可以在游標下方開啟新的一行並將游標置於新開的行首,進入插入模式。
輸入大寫的 O 可以在游標上方開啟新的一行並將游標置於新開的行首,進入插入模式。
2. 輸入小寫 a 可以在游標所在位置之後插入文本。
輸入大寫的 A 可以在游標所在行的行末之後插入文本。
3. 輸入大寫的 R 將進入替換模式,直至按 <ESC> 鍵退出替換模式而進入正常模式。
4. 輸入 :set xxx 可以設定 xxx 選項。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第七講∶線上協助命令
** 使用線上協助系統 **
Vim 擁有一個細緻全面的線上協助系統。要啟動該協助系統,請選擇如下三種方法之一∶
- 按下 <HELP> 鍵 (如果鍵盤上有的話)
- 按下 <F1> 鍵 (如果鍵盤上有的話)
- 輸入 :help <斷行符號>
輸入 :q <斷行符號> 可以關閉說明視窗。
提供一個正確的參數給”:help”命令,您可以找到關於該主題的協助。請實驗以下參數(可別忘了按斷行符號鍵哦。∶
:help w <斷行符號>
:help c_<T <斷行符號>
:help insert-index <斷行符號>
:help user-manual <斷行符號>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
第八講∶建立一個啟動指令碼
** 啟用vim的功能 **
Vim的功能特性要比vi多得多,但大部分功能都沒有預設啟用。為了啟動更多的功能,您得建立一個vimrc檔案。
1. 開始編輯vimrc檔案,這取決於您所使用的作業系統∶
:edit ~/.vimrc 這是Unix系統所使用的命令
:edit $VIM/_vimrc 這是Windows系統所使用的命令
2. 接著匯入vimrc範例檔案∶
:read $VIMRUNTIME/vimrc_example.vim
3. 儲存檔案,命令為∶
:write
在下次您啟動vim的時候,編輯器就會有了文法高亮的功能。您可以繼續把您喜歡的其它功能設定添加到這個vimrc檔案中。