1 / 39

VI 文字編輯器

VI 文字編輯器. VI 編輯器簡介. 多數 Linux 系統中預設的文字編輯器 大量的快速鍵指令 簡單的程式語法除錯機制. 三種模式切換. 指令模式. 編輯模式. 一般模式 - 移動游標. 刪除複製與貼上. vim 文書編輯軟體. vim 是 Linux 中功能相當強的編輯工具 , 其前身是 Unix 系統下元老級的文書編輯程式 vi , 也是目前 Linux 預設的編輯軟體。. 3 種主要的模式.

lucia
Download Presentation

VI 文字編輯器

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. VI文字編輯器

  2. VI編輯器簡介 • 多數Linux系統中預設的文字編輯器 • 大量的快速鍵指令 • 簡單的程式語法除錯機制

  3. 三種模式切換

  4. 指令模式

  5. 編輯模式

  6. 一般模式 -移動游標

  7. 刪除複製與貼上

  8. vim 文書編輯軟體 • vim 是 Linux 中功能相當強的編輯工具, 其前身是 Unix 系統下元老級的文書編輯程式 vi , 也是目前 Linux 預設的編輯軟體。

  9. 3 種主要的模式 • normal mode:我們一開始進入 vim 時, 預設的模式就是 normal mode。在此模式下, 我們無法輸入任何文字, 不過可以利用按鍵指令來執行許多操作命令, 例如移動游標位置、複製、刪除...。 • insert mode:進入 vim 之後, 按 [a]、[i] 或 [o] 鍵, 即可進入 insert mode, 在此模式下, 我們才可以輸入文字內容。

  10. 3 種主要的模式 • command-line mode:在 normal mode 中按 [:] 即會進入 command-line mode, 在此模式下, 我們可以做一些與輸入文字無關的事, 例如搜尋字串、儲存檔案或結束編輯等。

  11. 3 種主要的模式

  12. 由於 vim 的功能繁多, 首先我們來看看 vim 的編輯環境, 以及如何結束 vim。 • 請在文字模式視窗或虛擬主控台中執行 vim 指令, 或是執行 vim 檔案名稱指定要編輯的檔案(由於在虛擬主控台中開啟 vim, 因中文字都會變成亂碼, 所以請先執行LANG=C 指令, 改以英文顯示, 再執行 vim指令):

  13. 用 vi 與 vim 指令編輯文件的差異 • vi 原本是 Unix 的文書編輯器, 後來 Linux 也延用了此傳統的編輯器, 因此許多人習慣以vi 檔案名稱指令來編輯文件。 • vim 編輯器會將註解、變數等文字加上顏色, 讓使用者可以方便地編輯設定檔、程式碼等檔案。

  14. 用 vi 與 vim 指令編輯文件的差異 • 不過在 Fedora Core 下面執行 vi 指令時, 只會啟動一個精簡版本的 vim, 因此編輯檔案時不會有顏色, 必須使用 vim 編輯檔案才會有顏色。所以習慣以 vi 檔案名稱指令來編輯文件的人, 可以建立下面連結:

  15. 用 vim 編寫文件 • 進入 vim 時預設的模式是 normal mode, 無法輸入文字, 現在我們要開始編寫一個文字檔, 請按 [i] 鍵切換到 insert mode:

  16. 用 vim 編寫文件

  17. 用 vim 編寫文件 • 其實要切換到 insert mode, 除了按 [i] 鍵外, 還可以按 [a] 或 [o] 鍵進入 insert mode, 筆者將三者的差別整理如下: • 按 [i] 鍵:從目前游標所在位置的下一個字元開始輸入。 • 按 [a] 鍵:從游標所在位置插入新輸入的字元。 • 按 [o] 鍵:新增加一行, 並將游標移到下一行的開頭。

  18. 儲存檔案、離開 vim • 編寫好文件之後, 接下來便要存檔及離開 vim, 請按 [Esc] 鍵回到 normal mode, 然後按 [:] 鍵進入 command-line mode, 輸入 "w 檔案的路徑及名稱":

  19. 儲存檔案、離開 vim

  20. 進入 vim 後, 如何開啟既有文字檔? • 如果您在進入 vim 之後, 想要開啟既有的檔案 (例如要開啟 /tmp 目錄中的 text.txt), 可以按 [:] 鍵進入 command-line mode, 然後輸入 "e 檔案的路徑及名稱":

  21. 進入 vim 後, 如何開啟既有文字檔?

  22. vim 的操作指令 • 移動游標位置 • 複製文字 • 刪除文字 • 尋找及取代文字

  23. 移動游標位置 • 無論在 normal mode 或 insert mode, 都可以使用方向鍵來移動游標所在的位置, 但在方向鍵不能使用的時候, 則必須切換到 normal mode 再配合下列幾組按鍵命令來移動游標 (以下按鍵命令前的 “^”, 表示先按住 [Ctrl] 鍵, 再按其他的英文字母)。

  24. 移動游標的基本操作 • h:將游標向左移動一格。 • l:將游標向右移動一格。 • j:將游標向下移動一行。 • k:將游標向上移動一行。 • ^b:將游標向前面捲動一頁, 相當於按 [Page Up] 鍵。 • ^f:將游標向文章後面移動一頁, 相當於按 [Page Down] 鍵。

  25. 移動游標的進階操作 • 0 (數目字 0):將游標移到該行的最前面。 • $ (請按 [Shift] + [4] 鍵):將游標移到該行的最後面。 • G:將游標移到最後一行的開頭。 • w 或 W:將游標移到下一個字。 • e 或 E:將游標移到本單字的最後一個字元;如果游標所在位置為本單字的最後一個字元, 則跳到下一個單字的最後一個字元。

  26. 移動游標的進階操作 • b:將游標移到本單字的第一個字元;如果游標所在位置為本單字的第一個字元 , 則跳到上一個單字的第一個字元。 • [[:在編輯 C/C++/PHP 等程式時, 連按兩次 [ [ ] 鍵可將游標移至函式開頭的 “{” 處, 再連按兩次則會將游標移至上一個函式開頭的 “{” 處。 • ]]:在編輯 C/C++/PHP 等程式時, 連按兩次 [ ] ] 鍵可將游標移至下一個函式開頭的 "{" 處。

  27. 移動游標的進階操作 當要捲動螢幕內容的時候, 可以使用 [Page Up] 與 [Page Down] 鍵換頁。但在這 2 個鍵不能使用的時候, 除了第 13-16 頁介紹的^b 及^f 外,還可以用下列幾個組合鍵: • ^u:將游標向前移動半頁。 • ^d:將游標向後移動半頁。 • ^e:螢幕向下捲動一行, 也可以說檔案內容和游標向上捲動一行。 • ^y:螢幕向上捲動一行, 也可以說檔案內容和游標向下捲動一行。

  28. 複製文字 複製文字可以省下重複輸入的時間, vim 也提供了以下的操作按鍵: • yy:連續按 [y] 鍵, 可將游標目前所在位置的整行複製, 複製時並不會將文字反白顯示。 • nyy:其中 n 為數字鍵, 表示要複製的行數。若按 [3] [y] [y] 鍵, 則將連同游標所在位置的一行, 與下面 2 行 (共 3 行) 一起複製。

  29. 複製文字 • yw:按 [y] [w] 鍵可複製游標所在位置到此單字結束的字元。 • nyw:若按 [3] [y] [w] 鍵, 則會將目前游標所在位置到單字結束, 以及後面的2 個單字 (共 3 個單字) 一起複製 (n 表示要複製的單字數目)。 • p:可將複製的字貼在目前游標所在的位置。若複製的是整行文字, 則會將整行內容貼在游標所在位置的下一行。

  30. 刪除文字 要刪除文字時, 可以一次刪除一個字元, 也可以一次刪除好幾個字元或是整行文字: • d:先按 [d] 鍵放開後, 然後按 [←] 鍵, 可將游標位置前一個字元刪除。按 [→] 鍵, 則會將游標位置的字元刪除。按 [↑] 鍵, 可將目前游標所在的行與前一行一併刪除。按 [↓] 鍵, 可將目前游標所在的行與下一行刪除。 • D:可刪除一行中, 游標所在位置之後的所有字元。

  31. 刪除文字 • dd:連按 2 次 [d] 鍵可刪除游標所在那一行。所以千萬不要按著 鍵不放 , 因為會連著刪除好幾行。 • dw:將游標停在某個字的第一個字元, 按 [d] [w] 鍵時, 會將此單字整個刪除。若將游標置於某個字中間的字元上, 則會將此單字中, 游標後面的字元刪除。

  32. 刪除文字 • nd:n 為數字, 若按 [3] [d] 表示標示游標位置的上或下方 3 行。再按下 [↑] 鍵, 則刪除游標上方 3 行, 再包括本身 1 行, 共刪除 4 行。若按下 [↓] 鍵 , 則刪除游標下方 3 行, 再包括本身 1 行, 共刪除 4 行。 • ndd:若按 [3] [d] [d] 鍵, 表示刪除目前游標位置的 1 行與下面的 2 行。 • x:刪除游標所在位置的字元, 用法與鍵盤上的 [Detele] 鍵相同。

  33. 刪除文字 • X:刪除游標位置前面一個字元, 與 [d] + [←] 鍵一樣。 • nx:按 [4] [x] 鍵, 表示刪除游標位置後的 3 個字元, 與游標本身所在的字元。 • nX:按 [4] [X] 鍵, 表示刪除游標位置之前的 4 個字元 (不包括游標的字元)。

  34. 尋找及取代文字 • / 或 ?:當要搜尋文章中的某一個字串時, 可輸入 “/” 或 “?”, 然後再輸入要尋找的字串。例如輸入 “/gz” 或 “?gz”, 然後按 [Enter] 鍵, vim 就會把所有的 gz 字串標記起來, 並自動將游標移到第一個找到的字串上。 • n:將游標移到下一個找到的字串上。 • N:將游標移到上一個找到的字串上。

  35. 尋找及取代文字 • r:取代游標所在位置的字元。修改內容不一定要進入 insert mode, 在 normal mode 中, 只要將游標移到要更改的字元上, 然後按 [r] 鍵, 就可以輸入要替換的字元了。 • cc:按 [c] [c] 鍵可取代游標所在的那一行。 • 替換字串:當我們要將文章中的某一個字串全部替換時 (例如將所有的 temp 換成 tmp), 使用 ":g/temp/s//tmp/g" 或是 ":%s/temp/tmp/g" 命令, 可以立刻將所有 "temp" 字串換成 "tmp" 字串。

  36. 尋找及取代文字 • 如果不是所有的 "temp" 字串都要替換時, 可用 ":g/temp/s//tmp/gc" 或 ": %s/temp/tmp/gc" 命令。則找到每一個 "temp" 字串時, 都會將整行顯示在螢幕下方, 您可輸入 "y" 或 "n" 決定是否要替換。

  37. 顯示游標所在行數、移到指定行數 當我們在寫程式的時候, 常常會需要跳到某一行去修改, 因此每一行的號碼就相當重要。vim 也為此提供了幾個按鍵組合: • ^g、^G:按此組合鍵, 則會在最下方處顯示游標所在位置(以百分比表示), 以及文章的總行數。 • nG:n 為數字, 若按下 [2] [0] [g], 則可將游標移到第 20 行。

  38. 復原上一個動作 • u:按此鍵就是在執行 undo 指令, 可取消前一次的動作。在 vim 中, undo 並沒有次數上的限制, 也就是您可以無限制的執行 undo。 • ^r:按此鍵就是在執行 redo 指令。可以回復剛才 undo 的動作。

  39. 一個操作 vim 不可不知的指令: 英文的句點, 可以讓您重複編輯動作

More Related