跳至內容

Vi文件編輯器/基本入門

維基教科書,自由的教學讀本

Vi文件編輯器: 認識vi - 基本入門 - 小技巧 - 進階技巧 - 高階技巧 - Vi變體 (Vim文件編輯器, Vile文件編輯器, BB vi文件編輯器) - vi指令表

基本模式

[編輯]

vi可做兩種工作:

  • 接受指令,例如刪去整列的指令
  • 接受文字

輸入文字

[編輯]

在一般模式下,按下鍵盤上的「i」,進入編輯模式,然後你可以開始輸入文字,此時你可以利用「Back space」鍵來修正錯誤。

輸入完成後,按下鍵盤上的「Esc」鍵,回到一般模式。

練習一下

[編輯]

練習一下以下步驟:

  1. 開啟vi文件編輯器
  2. 進入編輯模式
  3. 輸入一些文字:Hello Wikibooks
  4. 回到一般模式
  5. 離開編輯器

練習解答

[編輯]
  1. vi
  2. 按下鍵盤上的「i」鍵
  3. Hellor wikibooks
  4. 按下鍵盤上的「Esc」
  5. 按下鍵盤上的「:」,輸入「q!」

指令模式

[編輯]

Last line mode,又翻作最後一行模式或指令列模式。

  • w:存檔,將編輯的資料寫入硬碟檔案中,
  • q:離開vi
  • wq:存檔並離開


一般模式

[編輯]

在一般模式下,可以讓你執行一些vi上有用的工作。

移動一點點

[編輯]

你正在輸入文字,突然想起先前的某段遺漏了部分資訊,此時使用Backspace消去輸入的內容並不是一個好主意。我們希望可以在編輯器中自由移動游標。應該怎麼做呢?

首先,我們要先進入一般模式,在一般模式,可以使用上下左右鍵來移動游標,或是使用h、j、k、l四個鍵也可以。

  • h, 左移
  • j, 下移
  • k, 上移
  • l, 右移

當你使用這些鍵移動到你要修改的位置時,按下「i」鍵,此時你輸入的東西會加在游標的左側。

來練習下吧!

練習

[編輯]

在進行下一個段落前,記得多練習一下這些步驟喔!

  1. 開啟vi文件編輯器
  2. 輸入:The quick fox jumps over the dog
  3. 在quick和fox間輸入brown
  4. 在the和dog間輸入dog
  5. 離開編輯器

解答

[編輯]

移動多一點

[編輯]

利用h、j、k、l也許不能滿足你的需求了,你想要移動多一點,而vi也可以幫你在行、列之間移動。

  • w 移動到下個字的的起始點
  • b 移動到前個字的起始點
  • () 移到先前或之後的句子。
  • {} 移到先前或之後的句子。
  • ^f (Ctrl + f) 下一頁,螢幕向下捲動一頁。
  • ^b (Ctrl + b) 上一頁,螢幕向上捲動一頁。
  • ^d (Ctrl + d) 下半頁,螢幕向下捲動半頁。
  • ^u (Ctrl + u) 上半頁,螢幕向上捲動半頁。

刪除

[編輯]

如果你在輸入數列之後,發現先前有大量的錯誤,如果用Backspace來消除這些錯誤並不是最好的解決方式。

vi提供了一些方法來處理這樣的刪除問題,你可以依照你的所要刪除的量的多寡,選擇適合的方式。現在你應該已經熟悉移動游標的方法,現在你先將游標移到你想要刪去的位置:

  • x鍵:刪除一個字元
  • dw:刪除一個詞,光標到下一個詞開頭
  • de:刪除一個詞,光標到刪除的詞結尾
  • dd:刪除一列
  • d$:刪除光標當前至行尾間的內容
  • 多字/詞/行刪除: 比如"2x","4dw","d2w","4de","d3d" 都可接受,命令被解釋為重複數字所示的次數

練習

[編輯]

解答

[編輯]