【Vim】從離不開vim,到離不開vim

揚
發佈於Err500
2023/10/03閱讀時間約 3 分鐘

學習動機

作為程式開發人員,一路從Notepad++、VSCode、Eclipse,或多或少都有機會聽過vim,只為了追求極致的開發效率。看看國外直播主ThePrimeagen邊寫程式邊直播,行雲流水的編輯速度,我覺得...我的問題是出在英打。


基本操作

模式

  1. 命令模式 (Command Mode):查找字詞、離開等指令下達
  2. 正常模式 (Normal Mode):檢視檔案
  3. 插入模式 (Insert Mode):輸入、編輯
  4. 可視模式 (Visual Mode):範圍選取


  • 一定要會的迷因:怎麼離開vim?
按下:進入命令模式,輸入q(quit),視情況加上!,表示強制退出
例如 :q!
  • 正常模式下,左下上右移動
hjkl
  • 常用組合
ciw : change inner word
caw: change all word
de: delete till end
db: delete till begin
yy: yank a line
dd: delete a line
u: undo
ctrl + r: redo

其實不難發現,如果指令改以英文進行思考,動作加上次數及要執行的指令,可以組合出很多種變化,在反覆進行這些操作後,思考上漸漸由

"指令是在做什麼事"

轉變成

"要做哪些指令,可以組合出我要的結果"

剩下的只有日積月累的肌肉記憶,至於其他像是巨集功能、對數字直接增減等額外處理方式,最為一個初學,我就不把重點方在這些上面了。


你該學vim嗎?

以下列出幾項使用vim半年以來,稍微習慣移動方式後,我所認為的優缺點:

優點

  1. 在別人眼裡看起來很厲害,手都不用離開鍵盤
  2. 基本上是純文字編輯器,占用系統資源少、檔案開啟跟操作速度反應很快
  3. 常用IDE大多都支援vim擴充套件,不用記多套按鍵組合
  4. 高度客製化,自行設定按鍵綁定

缺點

  1. 學習曲線高,要花點時間才能習慣操作模式
  2. 中英文混合編輯下,輸入法比較容易在進行切換時卡住
  3. 作為其他IDE的擴充套件,可能與原本的快捷鍵發生指令覆蓋或衝突
  4. 習慣了就會不想用vim以外的編輯方式


如果日常工作需要進行大量文字編輯作業,作職涯基本技能的一項學習項目,只能是加分,而不會是必須。隨後,當知道怎麼修改.vimrc加入各式各樣的功能,編輯器最終變得越來越像IDE,或許在IDE中使用vim會是良好的折衷方案,不論如何,僅僅只是基本的vim移動編輯操作,我認為還是值得學習的一項技能。


題外話

Redragon K565R RUDRA(青軸)

Redragon K565R RUDRA(青軸)

自從上次筆電鍵盤壞了以後,一直想買一把機械鍵盤外接使用。在研究了幾周、了解一些常見的軸體,去賣場試打了幾把,最後還是回家網購了一把折扣最多的鍵盤來入門。

今天剛到貨,整體的質感都蠻喜歡的,沒有多餘的邊框,至於9段RGB燈光模式切換就不是我特別主要考量的點。前前後後摸了半小時,直到接上電源要打字的那一刻,才發現鍵帽上面少了注音符號,難怪視覺上清爽了許多。

至於打字起來有比較快嗎? 主觀感覺使用薄膜鍵盤時,打字速度比較快一點,用青軸打字時比較有段落感,不知不覺也會在輸入過程中稍作些停頓,青軸喀拉喀拉的聲響,某種程度上來說還挺紓壓,只不過換到午休中的辦公室或是宿舍,可就不一樣了。



10會員
54內容數
遇到的坑、解過的題、新知識的探索、舊時代的遺毒!? 工作後我發現,文件更新往往跟不上新需求的更迭,犯錯的歷史總是不斷重演。因此,我改變了方式,蒐集從程式上、系統上的每一次異常處理過程,好讓再次遇到相同的問題時能快速應變。此專題就是我的錯題本,期待日後不管在工作上或交流上遇到難題,都能輕鬆地應答:有什麼難的,我都踩過。
留言0
查看全部
發表第一個留言支持創作者!