文章每週持續更新,原創不易,「三連」讓更多人看到是對我最大的肯定。可以微信搜尋公眾號「 後端技術學堂 」第一時間閱讀(一般比部落格早更新一到兩篇)
大家好我是lemon, 馬上進入我們今天的主題吧。
又見VsCode
Visual Studio Code(簡稱VS Code)是一個由微軟開發,同時支援Windows 、Linux 和 macOS 等作業系統的免費程式碼編輯器,在2019年的Stack Overflow組織的開發者調研中,VS Code被認為是最受開發者歡迎的開發環境。
之前寫過一篇文章詳細介紹如何使用 VsCode 進行遠端開發,VsCode 遠端開發環境相對其他 IDE 的遠端開發環境,實現了真正的遠端開發,在本地主機(一般是Windows或MAC)上的操作的物件直接就是遠端機(Linux),所有本地主機上的修改直接基於遠端檔案,擺脫了傳統開發流程在本地編輯檔案,利用FTP工具上傳到遠端編譯機除錯編譯,這一套繁瑣的操作,因此非常的方便。
那篇文章得到了各位讀者的廣泛好評,也被各大號轉載 15 次之多,感興趣的朋友看我原來這篇文章: 手把手教你配置VS Code遠端開發工具,工作效率提升N倍。
這篇文章我會結合日常工作使用經驗,教你打造一個體驗流暢的 C/C++ 開發環境,這份配置指南可能不是面面俱到,也不會詳細的教你一步步怎麼配置外掛,這些太細節的工作留給你自己去完成,實際上外掛下載頁都會有詳細的說明。
不少新手可能會覺得 VsCode 編輯文字還好,看程式碼和寫程式碼太難用,那是沒有掌握正確的開啟方式,VsCode 精髓是豐富的外掛體系支援,相信看完這篇文章配置好環境之後,就只剩一句「真香」能形容。
為了有個直觀的印象,先來看下我的 VsCode 外掛列表,因為我用VsCode 開發 C/C++/Go/Python 程式,外掛比較多,有些可能和本文無關的外掛可以忽略掉。
基礎開發外掛
既然是配置支援C/C++環境下開發,那首先推薦的基礎 C/C++ 開發外掛,以下兩個是必須要裝的外掛,主要提供一些基礎的程式碼除錯和檢視功能,安裝以後 VsCode 就能支援智慧化程式碼補全、型別填充和聯想、符號和函式定義跳轉、引用查詢等 C/C++ 程式開發和原始碼管理必備能力,讓你的 VsCode 從編輯器進化成 IDE 的基礎外掛。
原始碼閱讀
程式設計師日常工作有兩大內容,一個是寫自己的程式碼,一個是閱讀別人寫的程式碼,下面這兩個外掛讓你在 VsCode 優雅看程式碼。
首先推薦的是下面的這個懶人神器 TODO Tree,自己寫的 TODO 哭著也要補充實現。
這個外掛的使用場景是,你看完程式碼加了下面這個註釋 :// TODO 以後會擴充套件這部分功能
當然,不知道這個「以後」是什麼時候,一不小心以後變成遙遙無期,一部分原因是不想改,另一部分原因是寫下這段註釋的人時間久了就忘記了,這時候你需要「 TODO Tree 外掛」,我們可以更方便的管理程式碼中的此類註釋。
這個外掛能幫你組織和管理TODO 註釋,你在程式碼中註釋的帶 TODO 的標籤會統一在側邊欄顯示出來,當然不限於 TODO 註釋,可以自定義管理標籤比如 FIXME
等,可以基於標籤過濾和篩選。
另一個推薦的原始碼閱讀外掛是 Bookmarks
「書籤」這個外掛的功能就和它名字一樣直接,沒錯它就是一個你的原始碼書籤,當我們看大工程原始碼的時候,往往需要在成千上萬個原始檔之間跳轉,此時 Bookmarks 能幫你方便的建立和管理書籤,看到哪個位置想加個書籤就按快捷鍵 Ctrl + Alt + K
,多按一次就是刪除,不僅如此他還提供了在書籤之前跳躍和檢視管理的功能,更多功能可以自己體驗,反正我看大工程原始碼用這個很爽。
程式碼管理
下面介紹兩個 Git 版本控制相關的外掛,專案中我們用的最多的版本控制工具是 Git ,當然 VsCode 自身提供了比較豐富的 Git 版本控制功能,基本上可以通過在介面點點點完成一些了Git 操作,但我今天要介紹的這兩個外掛能讓你的 Git 更驚豔,算是對功能的增強,讓你的 Git 操作更直觀好用,好看的東西誰不喜歡呢?
第一個出場的是Git Graph 外掛,視覺化Git倉庫,讓你的提交記錄看起來美觀大方,並且基於圖中提交點提供了豐富的Git 操作。
如圖中你所見到的樣子,提交記錄變成一條條時間線,分支也能清晰的用不同顏色時間線區分出來,並且點開提交線上的提交點可以檢視當時的提交動作,可以在提交動作上檢視做了哪些改動,也可以方便的跳轉到改動檔案,更多功能自行體驗,這個外掛 lemon 強烈推薦!
下面介紹的這個GitLens 外掛也是Git功能增強工具。
我最喜歡它的一個功能是,它可以在檔案中改動的位置後面直接顯示出本次改動的提交資訊,然後你可以直接通過顯示的提交資訊跳轉到提交檔案對比,其實還有其他豐富的功能,不過這個功能我用的最多。
小而美的工具
下面這幾個外掛是我在日常使用中積累的工具外掛,非必須,但是擁有了之後編碼幸福感倍增,下面一一介紹給大家。
第一個是下面這個Bracket Pair Colorizer外掛,我管它叫彩虹括號外掛。
你是否為經常為寫的大括號、花括號、小括號沒有匹配而煩惱?是否經常找匹配括號看瞎了眼?現在不要 888 也不要 998,只需一鍵下載安裝這個外掛就再也不用擔心啦。這個外掛讓你寫的每一個括號都能找到他自己的顏色,成雙成對,點一下其中一半括號自動匹配另一半,拯救了廣大程式設計師的近視眼睛度數。
再來介紹下面這個koroFileHeader外掛,這個外掛主要用於自動的插入標頭檔案開頭的說明和函式的說明。
比如我們經常看到別人的標頭檔案開頭是這樣的模板:
/******************************************************************************
* FILENAME: niu_bi_head_file.h
* DESCRIPTION: 非常厲害的標頭檔案
* HISTORY: Date Author Comment
* 2020/09/05 lemon
*******************************************************************************/
這個可不是別人一個個字打出來的,安裝外掛之後你只需要簡單配置想要的格式,然後按下快捷鍵Ctrl + Alt +i
即可自動即可自動生成這樣一個模板。
類似的對函式的說明註釋模板,只需按下快捷鍵Ctrl + Alt +t
即可完成,非常的方便。
下面這個外掛Switcher,這個外掛能在標頭檔案和 C/C++ 檔案之間跳轉。
這個外掛完全是因為我太懶想省力,才找的一個輔助工具,我們經常需要通過標頭檔案跳到對應的原始檔,或者從原始檔跳轉到對應的標頭檔案,當然可以在側邊欄的檔案管理器中選擇開啟,但是多了一個步驟有點繁瑣,所以我找了這個外掛,其實按外掛的說明文件,它是能在不同的檔案型別之間跳轉,不僅僅侷限於標頭檔案和原始檔,懶人福音,你值得擁有。
實用工具
下面這幾個外掛是比較實用的工具外掛,各取所需。
第一個是官方提供的 VsCode 中文漢化包。雖然lemon提倡並鼓勵大家多多實用英語,但若你不想折騰,那我們們家漢語博大精深,好優美的中國話,那就讓VsCode也來說漢語吧,Microsoft 官方直供,相容性好,放心食用。
下面這個是 Markdown 預覽增強外掛。對於經常寫部落格或文章的人來說,Markdown 肯定是少不了的,這個外掛支援分屏預覽,各種豐富的Markdwon 增強功能。
最後這個 shellman 外掛是 Linux shell 指令碼輔助工具。在 Linux 下工作難免隨手寫一個指令碼,這個外掛能提供了便捷的shell script 自動補全和聯想等功能,提高你的指令碼編寫速度和準確性。
最常用快捷鍵
快捷鍵太多,沒必要完全記下來,只需記住一些常用的快捷鍵即可,一些不常用的快捷鍵在使用的時候加強記憶就好。列舉出我自己常用的快捷鍵,不多,但夠用!應付日常開發工作綽綽有餘。
Ctrl + Shift + P
這個必須要放在第一位,這個命令是所有「命令之母」。這麼說一點也不過分,它會開啟 VsCode 命令視窗,在這個視窗下輸入上述的外掛名稱就能知道這個外掛支援哪些特性了,順帶還會說明特性快捷鍵。
下面舉個例子,先輸入Ctrl + Shift + P
開啟命令查詢輸入框,然後輸入 bookmarks
就能知道這個外掛的支援的所有特性,順便記下快捷鍵。
Ctrl + P
檔案查詢。快速開啟檔案列表,輸入關鍵字匹配檔案,優先顯示最新開啟過的檔案,方便的在指定檔案之間跳轉。
F12
跳轉到定義,這個沒啥好說的,跳轉到函式或符號的定義,這是高頻操作。
Alt + F12
以預覽方式在當前頁面顯示定義,都是檢視定義,相對 F12
的優點是不會跳出當前檔案到定義檔案,而是在當前檔案開啟一個小視窗預覽,如下圖:
Shift + F12
檢視游標所在函式或變數的引用,就像 Alt +F12
一樣以預覽方式在當前檔案開啟引用的檔案列表。如下圖:
Alt + 左/右箭頭
前進或者後退到游標所在原始碼的上一個位置。
Ctrl + Shift + O
檢視當前檔案的符號,可以用關鍵字過濾符號,當然你也可以在左側的大綱檢視中查詢符號,不過大綱檢視不能查詢匹配符號,所以我更習慣用快捷鍵方式查詢符號。
快捷鍵講完了嗎?沒有,太多快捷鍵了;其他的快捷鍵不重要嗎?因人而異吧,高頻使用的快捷鍵就是重要的,而上面我說的這幾個是超高頻使用,記住這幾個差不多就行了,剩下快捷鍵你如果用的多了自然就記住了,但是我說的這幾個請務必先記在腦子裡,這會大大降低你的使用成本,儘早享受 VsCode Coding 的樂趣!
最後說幾句
想起我上大學的時候,大一學習C語言課必須安裝VC++ 6.0才行,那時候也有 Visual studio 這樣的 IDE,不過老師沒推薦其他 IDE,都是憑藉自己對程式設計的興趣發現了更多比VC++ 6.0 更加 '現代化' 的 IDE,比如Jetbrain 系列和Visual studio系列,愛不釋手各種嘗試。
現在主流的 IDE 已經非常豐富,其實編輯器或者 IDE 只是一個工具,沒有最好自己用的順手就行,就像 Vim 黨和 Emacs 黨誰也說服不了誰一樣,有的人喜歡。
大家更應該關注程式設計這件事本身,提高自身硬實力才是最緊要的,不過好的工具能讓你事半功倍,這點 lemon 也是完全贊成的,希望這篇文章也能夠讓你事半功倍。
我是lemon,熱愛技術,也愛生活,堅持分享輸出,讓自己和讀者都有收穫!關注我來跟我一起變強吧。
如果文章對你有幫助,請不吝「點贊、評論、轉發」激勵我持續創作。
可以微信搜尋或掃碼下方公眾號「 後端技術學堂 」回覆「資料」「1024」有我給你準備的各種程式設計學習資料。文章每週持續更新,我們下期見!