vim 實戰:20 個讓你效率翻倍的技巧 文章首圖

vim 實戰:20 個讓你效率翻倍的技巧

vim 實戰:20 個讓你效率翻倍的技巧

Vim 不僅是一個文字編輯器,更是一個強大的程式語言。對於經常在 Linux 伺服器上工作的開發者與系統管理員來說,熟練掌握 Vim 能顯著提升工作流效率。雖然入門曲線較陡,但一旦掌握核心邏輯,其無與倫比的效能與可定制性將成為你的得力助手。本文將精選 20 個實用技巧,分為基礎操作、選取編輯、搜尋替換、視窗管理與進階自動化五個區塊,幫助你從新手邁向高手。

一、基礎操作與游標移動

高效編輯的第一步是減少滑鼠依賴,完全使用鍵盤操作。

  1. 快速跳至行首/尾:使用 0(數字零)跳至行首,$ 跳至行尾。
  2. 快速跳至檔案首尾gg 跳至檔案第一行,G 跳至檔案最後一行。
  3. 快速跳至特定行:輸入行號後接 G,例如 10G 跳至第 10 行。
  4. 重複最後一次動作:按 . 鍵。這在 Vim 中極具威力,例如你刪除了一行並修改了內容,複製該動作只需按 .
  5. 快速儲存與離開:wq 儲存並離開,:q! 強制放棄修改並離開。
  6. 復原與重做u 復原上一步操作,Ctrl + r 重做(Redo)。
  7. 跳至配對符號:在 (){}[]<>'"' 之間移動時,按 % 可快速跳至對應的配對符號。
  8. 移動半頁Ctrl + u 向上捲動半頁,Ctrl + d 向下捲動半頁。
  9. 移動整頁Ctrl + b 向上捲動一整頁,Ctrl + f 向下捲動一整頁。
  10. 查看檔案資訊:在正常模式下輸入 :set number 顯示行號,:%s/\r$//g 移除 Windows 換行符號(\r),解決跨平台編輯時的格式問題。

二、選取與編輯技巧

編輯的核心在於精確選取與修改。

  1. 視覺模式選取:進入視覺模式按 v,選取文字後可進行複製 (y)、刪除 (d) 或縮排 (>)。
  2. 區塊選取:按 Ctrl + v 進入區塊(列)視覺模式,適合處理多行相同結構的程式碼,例如批量新增註解。
  3. 選取到行尾:在正常模式下按 Shift + v 進入行視覺模式,選取整行。
  4. 快速複製行:在正常模式下按 yy 複製當前行,p 貼到游標下方。
  5. 快速刪除行:按 dd 刪除當前行,內容會進入剪貼簿,可透過 p 貼上。
  6. 替換單字cw 刪除游標處的字元並進入插入模式,方便快速修改變數名。
  7. 替換直到行尾c$ 刪除游標到行尾的內容並進入插入模式。
  8. 刪除直到行尾d$ 刪除游標到行尾的內容,常用於清理多餘空白。
  9. 交換兩個字元:在正常模式下按 xp,先刪除字元 (x) 再貼上 (p),實現位置交換。
  10. 自動縮排:選取多行程式碼後按 =,Vim 會根據語法自動調整縮排。

常見問題與解決

Q1: 為什麼我按鍵沒有反應,或者按 i 進入插入模式後無法退出? 這通常是因為 Vim 處於「正常模式」與「插入模式」混淆所致。請務必確認左下角狀態列顯示的是 -- INSERT --。若已誤入插入模式卻想執行指令,請先按 Esc 回到正常模式。若 Esc 無效,可嘗試按 Ctrl + [Ctrl + c

Q2: 如何在 Vim 中搜尋並取代大量內容? 使用 :%s/舊文字/新文字/g 指令。例如,將檔案中所有的 error 改為 ERROR,輸入 :%s/error/ERROR/g 並按 Enter。若需確認取代範圍,可加上 c 參數::%s/error/ERROR/gc,Vim 會逐個詢問是否取代。

小結

掌握上述 20 個技巧,足以應對 90% 的日常編輯需求。建議初學者從 ggddyyu: 等基礎指令開始練習,逐步建立肌肉記憶。Vim 的強大之處在於其一致性與可擴展性,隨著熟練度提升,你將能透過錄製宏(Macro)或配置 .vimrc 來進一步自動化重複性工作。記住,效率來自於減少不必要的動作,讓鍵盤成為你思考的延伸。