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

更新 發佈閱讀 4 分鐘

學習動機

作為程式開發人員,一路從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燈光模式切換就不是我特別主要考量的點。前前後後摸了半小時,直到接上電源要打字的那一刻,才發現鍵帽上面少了注音符號,難怪視覺上清爽了許多。

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



留言
avatar-img
Err500
18會員
84內容數
遇到的坑、解過的題、新知識的探索、舊時代的遺毒!? 工作後我發現,文件更新往往跟不上新需求的更迭,犯錯的歷史總是不斷重演。因此,我改變了方式,蒐集從程式上、系統上的每一次異常處理過程,好讓再次遇到相同的問題時能快速應變。此專題就是我的錯題本,期待日後不管在工作上或交流上遇到難題,都能輕鬆地應答:有什麼難的,我都踩過。
Err500的其他內容
2025/03/28
本文章提供Neovim在Windows環境下的安裝教學與入門設定,從基本安裝、環境變數設定到使用kickstart.nvim套件快速配置IDE環境,降低新手入門門檻。文章也提及了進階設定與客製化的方向。
Thumbnail
2025/03/28
本文章提供Neovim在Windows環境下的安裝教學與入門設定,從基本安裝、環境變數設定到使用kickstart.nvim套件快速配置IDE環境,降低新手入門門檻。文章也提及了進階設定與客製化的方向。
Thumbnail
2025/03/15
本文比較IntelliJ IDEA、VSCode和Eclipse三種Java開發工具的優缺點,針對不同使用者族群提供建議。IntelliJ IDEA適合初學者,VSCode輕量且具彈性,Eclipse則適合舊專案開發。
Thumbnail
2025/03/15
本文比較IntelliJ IDEA、VSCode和Eclipse三種Java開發工具的優缺點,針對不同使用者族群提供建議。IntelliJ IDEA適合初學者,VSCode輕量且具彈性,Eclipse則適合舊專案開發。
Thumbnail
2024/09/09
某天在檢視~/AppData/Roaming裡面的資料,看看有沒有垃圾要手動清理,一個不小心砍掉了VSCode的設定資料夾,以至於重新開啟後整個頁面跟剛下載來安裝後的編輯器沒兩樣,乾脆趁這機會整理一下日常配置設定,哪天換新機或是又手殘了也能快速復原歸位。
Thumbnail
2024/09/09
某天在檢視~/AppData/Roaming裡面的資料,看看有沒有垃圾要手動清理,一個不小心砍掉了VSCode的設定資料夾,以至於重新開啟後整個頁面跟剛下載來安裝後的編輯器沒兩樣,乾脆趁這機會整理一下日常配置設定,哪天換新機或是又手殘了也能快速復原歸位。
Thumbnail
看更多
你可能也想看
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
Thumbnail
如果想要更快速的打出特殊符號,該怎麼做? 不管是頁面切換或重複動作,都會中斷打字行為,除了很擾人之外,有會打壞我們工作的節奏。因此,分享各種小方法來有效提升打字的效率!
Thumbnail
如果想要更快速的打出特殊符號,該怎麼做? 不管是頁面切換或重複動作,都會中斷打字行為,除了很擾人之外,有會打壞我們工作的節奏。因此,分享各種小方法來有效提升打字的效率!
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
近期已經進去了一個看完語法,進去實作的階段,自然需要去挑選一個適合的環境來開發了。 原本使用的VS code,基本的使用上沒什麼問題,只是每當我要裝一些套件時就會報錯,相信花點時間,這些錯都可以解決,但我突然轉念一想,不如換個環境來寫寫看吧。於是就把矛頭轉向系統內建的Vim了。
Thumbnail
近期已經進去了一個看完語法,進去實作的階段,自然需要去挑選一個適合的環境來開發了。 原本使用的VS code,基本的使用上沒什麼問題,只是每當我要裝一些套件時就會報錯,相信花點時間,這些錯都可以解決,但我突然轉念一想,不如換個環境來寫寫看吧。於是就把矛頭轉向系統內建的Vim了。
Thumbnail
兩種在windows系統用win32 api關閉輸入法的作法
Thumbnail
兩種在windows系統用win32 api關閉輸入法的作法
Thumbnail
作為程式開發人員,一路從Notepad++、VSCode、Eclipse,或多或少都有機會聽過vim,只為了追求極致的開發效率。看看國外直播主ThePrimeagen邊寫程式邊直播,行雲流水的編輯速度,我覺得...我的問題是出在英打。
Thumbnail
作為程式開發人員,一路從Notepad++、VSCode、Eclipse,或多或少都有機會聽過vim,只為了追求極致的開發效率。看看國外直播主ThePrimeagen邊寫程式邊直播,行雲流水的編輯速度,我覺得...我的問題是出在英打。
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
為什麼寫這麼基本的設定呢? 剛開始打字時預設內定為微軟注音,因為沒有全部設定好,導致後續寫稿時常常打錯字,也有是因為打注音時選錯字也有關。 雖然這個很基本,但也有滿多人不知道該怎麼設定,或常被微軟裡其設定繁雜而困擾,至少我找了一陣子......。 進入畫面右下方切換中英文(右鍵),叫出IME工
Thumbnail
為什麼寫這麼基本的設定呢? 剛開始打字時預設內定為微軟注音,因為沒有全部設定好,導致後續寫稿時常常打錯字,也有是因為打注音時選錯字也有關。 雖然這個很基本,但也有滿多人不知道該怎麼設定,或常被微軟裡其設定繁雜而困擾,至少我找了一陣子......。 進入畫面右下方切換中英文(右鍵),叫出IME工
Thumbnail
一直以來都是靠手動的方式來進行檔案的版本管理,也就是自己複製檔案,然後改檔名,加入可以識別的編號。不過,越來越覺得,有必要用版本控制系統來幫忙,因為手動的方式實在很累人,而且當需要查找以前更動的內容時,非常沒有效率。當發現Spyder也有支援Git時,就想著:「好吧!那就試用看看好了。」
Thumbnail
一直以來都是靠手動的方式來進行檔案的版本管理,也就是自己複製檔案,然後改檔名,加入可以識別的編號。不過,越來越覺得,有必要用版本控制系統來幫忙,因為手動的方式實在很累人,而且當需要查找以前更動的內容時,非常沒有效率。當發現Spyder也有支援Git時,就想著:「好吧!那就試用看看好了。」
Thumbnail
本文教你如何運用終端機指令來操作你的電腦,包括Mac和Windows用法。包括指令如pwd, ls, cd, mkdir, touch, rm, rmdir, cp, mv。另外,還附有相關的影片教學和額外資源教學。
Thumbnail
本文教你如何運用終端機指令來操作你的電腦,包括Mac和Windows用法。包括指令如pwd, ls, cd, mkdir, touch, rm, rmdir, cp, mv。另外,還附有相關的影片教學和額外資源教學。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News