vscode不同項目不同語言擴展插件隔離方案
- 1. 背景
- 2. vscode 擴展插件隔離方案
- 2.1 code-profile 配置文件
- 2.2 配合extensions.json
1. 背景
最近打開vscode 發現越來越卡,這是一個輕量級代碼編輯器,怎么會如此占用內存呢?
我使用了‘code --list-extensions’命令,發現我的電腦中已經安裝了五六十個擴展插件。
code --list-extensions
讓這個輕量級的“選手”變成了一個臃腫的胖子。并且很多插件之間互相干涉,導致“小巧”的vs code 變成了“臃腫”的“Visual Studio”code,這讓我大為所經。常年月累,安裝了太多太多的插件,但是這個插件又不是在所有的項目中都需要,我就在想:有沒有一個很好的方案,讓我在每個項目中使用指定的插件,而不是啟動所有的插件。
2. vscode 擴展插件隔離方案
我在網上找了很多方法,都無法有效的解決這個問題。廣大網友的方案都是用’workspace’ 工作區隔離。我就嘗試了使用.code-workspace
來實現隔離方案,但是我發現,通過.code-workspace.json
,只能推薦使用某些插件,無法屏蔽禁用不需要的插件,那怎么辦呢?
2.1 code-profile 配置文件
先來看看工作區域配置文件的差異吧
?維度 | ?工作區(Workspace)? | ?Profile |
---|---|---|
?配置層級 | 項目級(基于 .code-workspace 文件) | 環境級(全局或用戶級,包含插件/設置/快捷鍵等) |
?核心功能 | 管理多個項目文件夾的編輯器配置(如代碼規范、任務) | 完全隔離的獨立開發環境(插件、UI 主題、代碼片段) |
?插件管理 | 共享全局插件,僅可推薦安裝(.extensions.json ) | 獨立插件列表,不同 Profile 的插件完全隔離 |
?適用場景 | 多項目協作(如前端+后端聯調) | 多技術棧開發(如 Python + C++ 并行) |
?同步與遷移 | 通過 Git 共享 .vscode 目錄 | 支持導出 .code-profile 文件或 GitHub Gist |
創建一個新的code-profile,可以給你一個新的vscode,這不就是“小巧”的vscode回歸嗎?
看看效果:
默認50+插件的界面,界面雜亂無序,啟動和運行卡頓
新的profile 配置,發現是一個很干凈的環境,如“白月光”一樣的新vscode,這樣就很“輕巧”了。
2.2 配合extensions.json
我們得到了一個新的vscode 配置,但是安裝接插件又很麻煩,需要一個一個去安裝,這樣太復雜了。
這樣就引入了extensions.json
,將所有需要安裝的接插件寫入這個json中
{"recommendations": ["yzhang.markdown-all-in-one","ms-dotnettools.csharp","ms-dotnettools.vscode-dotnet-runtime","adamanand.adamstool"]
}
然后啟動vscode就會彈出推薦安裝
如果沒有提示,就執行命令板Ctrl+Shift+P
Extensions: Install Recommended Extensions
然后我們就可以在插件市場看到在extensions.json
配置的插件,沒有其他插件干擾,點擊安裝就可以
這樣就實現了在不同的項目中 ,通過code-profile
+extensions.json
實現插件隔離,還你一個“小而美”的輕量級IDE。
我覺得這種方法比code-workspace更好的地方在于,不同的項目使用不同的開發語言,沖根本上實現了隔離,讓IDE保持清爽的界面,讓我們更愉快的開發代碼。