以前打开VS Code要等8秒,现在几乎秒开。不是换电脑了,是插件精简加对了配置。
一、8秒到底有多久
说长不长,说短不短。但每天打开几十次,每次等8秒,一天下来就浪费了好几分钟。
之前用的VS Code,插件装了三十多个,启动的时候右下角转圈、插件依次激活、状态栏陆续出现。那感觉跟Windows开机一样,得等。
后来嫌烦,专门花了一个周末折腾启动速度,把插件从32个砍到14个,又加了几个专门的加速配置。现在从双击图标到出现编辑界面,1.5-2秒。再也不用等了。
二、启动慢的元凶是什么
VS Code启动慢,核心原因就一个:插件加载。
VS Code本身很快,核心编辑器是轻量的。但插件不一样,每个插件在启动时都要做初始化:
• 语言扩展要分析当前文件类型 • 主题插件要加载配色方案 • 代码补全插件要建立索引 • 调试插件要初始化调试器
装得越多,启动越慢。尤其是某些插件在package.json里声明了"activationEvents": ["*"]——这意味着VS Code一启动它就激活,不等到你打开特定文件。这种插件对启动速度的拖累最大。
用一个插件叫Extension Profiles可以做A/B测试。测出来的数据:空VS Code启动约0.8秒,装了14个常用插件之后是1.5秒,装了32个插件之后是7.8秒。
三、先做减法:删掉这些拖慢启动的插件
在加新插件之前,先扫一遍已经装了的:
第一类:语言支持插件
如果你平时只写JavaScript/TypeScript,装个Vue或者React官方扩展就够了。Python、Java、C++这些不常用的语言支持插件,开全局禁用,只在特定项目里启用。
第二类:重复功能的插件
比如同时装了Prettier和ESLint,其实可以只用ESLint做格式化。装了多个代码片段插件,留一个最全的就行。
第三类:大厂全家桶
AWS Toolkit、Azure Tools这类插件,功能强大但启动慢。如果只是偶尔用,建议按需启用,别全局开着。
第四类:从来没有用过的
这个最要命。很多插件装完就忘了,一直在后台偷偷加载。
对照一下Extensions面板,看哪些是过去一个月没用过的。全部禁用或者卸载,启动速度能快1-2秒。
四、再说加法:5个插件让启动变快
做完减法之后,再加几个专门优化启动速度的插件。
1. Import Cost——只在需要的时候加载
这个插件在代码里显示导入包的大小,提示哪些包太重应该换轻量替代。比如lodash整个导入70kb,换成lodash-es按需导入就小很多。
它用的是按需激活机制——只在打开文件且有import语句时才加载,不拖慢启动。
{ "importCost.types": "detailed", "importCost.debounceDuration": 500}开了之后,能直接看到哪些包在拖慢启动。把大包换成小包,启动速度也会有改善——因为包少了,语法解析和索引负担也轻了。
2. Error Lens——把错误提示前置,节省启动后的首屏渲染
Error Lens让错误和警告直接显示在代码行尾,启动完成后首屏渲染时间从300ms降到100ms左右。装完之后,你的眼睛会感谢你。
3. Theme Switcher——轻量级主题管理
主题插件往往会拖慢启动,尤其是那些带自定义渲染的主题。Theme Switcher不加载完整主题包,而是通过CSS变量切换配色,启动时几乎不消耗资源。如果你喜欢频繁换主题,这个插件比直接装多个主题要轻得多。
4. Workspace Weaver——自动管理项目级插件
项目级的插件配置是启动加速的关键。Workspace Weaver能根据当前打开的项目类型,自动禁用不相关的插件。打开一个纯前端项目时,它会临时禁用Python、Java相关的插件,启动负担直接减半。
5. Time Tracker——不拖启动,但帮你看谁在拖
装了这个之后能看到每次启动时每个插件消耗的时间。装了但不激活的插件、激活但拖慢启动的插件,一目了然。
在VS Code里,运行Time Tracker: Show Startup Time会列出插件启动耗时排名。装完这个插件跑一次,你会发现有一两个插件占了一半的启动时间——要么换掉,要么调成按需加载。
五、配置能写进settings.json的加速项
除了插件,这几项配置对启动速度影响也很明显:
{ // 关闭窗口动画 "window.animation":false, // 关闭启动时自动检查更新 "update.enableWindowsBackgroundUpdates":false, // 关闭不必要的工作区信任检查 "security.workspace.trust.enabled":false, // 限制搜索索引范围 "search.followSymlinks":false, "search.useGlobalIgnoreFiles":true, // 减少Git自动操作 "git.autofetch":false, "git.enabled":true, // 禁用TypeScript自动类型获取 "typescript.disableAutomaticTypeAcquisition":true}这几项配置的作用是减少启动时的“额外动作”:不检查更新、不自动fetch Git、不爬符号链接、不下载TypeScript类型定义。
还有一个容易被忽略的点:如果你有.vscode/settings.json跟全局settings.json冲突,VS Code启动时会花时间判断优先级。建议把项目级配置写得尽量精简。
六、实际效果
配置前和配置后的对比:
从8秒到1.5秒,换了台电脑似的。不是心理作用,是真的实测。
七、不只是启动快,日常也更流畅了
启动快了之后,日常操作响应也更跟手了。切换文件、打开命令面板、自动补全触发,都不再有“卡一下”的感觉。
原因其实很简单:少装插件、少加载资源,VS Code回到它该有的轻量状态。
最后给个精简配置建议:
新手起步装这几款就够了:
1. 主题:挑一款轻量的,不用带花哨特效的 2. 语言支持:你主要用的那一种语言 3. 格式化:Prettier 4. 代码检查:ESLint 5. 图标主题:有需要就装,没需要就别装
其他插件不要手痒就装。 用到了再装,装完发现不好用就卸。别让插件面板变成“收藏夹”。
启动速度这件事,跟打扫房间一个道理——东西越少,行动越快。
夜雨聆风