--disable-extensions是唯一能100%禁用所有插件的方式,它跳过整个扩展加载流程,不读取任何配置文件,适用于排查启动异常、崩溃或性能问题,且必须置于命令末尾、不可与--extensions-dir混用。

直接禁用所有插件:只用 --disable-extensions
这是唯一能 100% 隔离插件影响的方式,不是“看起来禁用了”,而是彻底跳过整个扩展加载流程——不读取 settings.json、不扫描 .vscode/extensions.json、不初始化任何语言服务器。适合诊断启动卡死、白屏、高 CPU 占用,或打开特定文件(如 .yaml、.log)后崩溃的场景。
必须注意:--disable-extensions 必须放在命令末尾,且不能和 --extensions-dir 同时使用,否则会被忽略。
- Windows:终端执行
code --disable-extensions "C:\my-project"(路径带空格需加引号) - macOS:终端执行
open -n -b "com.microsoft.VSCode" --args --disable-extensions /path/to/project - Linux:确保
code在 PATH 中,否则用完整路径如/usr/bin/code --disable-extensions /path/to/project
批量禁用已安装插件:用 @disabled 筛选 + 多选
装了二三十个插件后,逐个点齿轮禁用效率低、易漏。VS Code 扩展视图顶部搜索框支持元标签过滤:
- 输入
@disabled:立刻列出所有当前被禁用的插件(方便复核) - 输入
@installed:只看已安装但未被禁用的插件(精准定位要批量操作的对象) - 按住
Ctrl(Windows/Linux)或Cmd(macOS)多选多个插件 → 右键统一执行Disable或Uninstall
注意:禁用后部分插件(如 ms-python.python)仍会保有运行时状态,需手动执行 Developer: Reload Window 才真正卸载语言服务器。
通过 settings.json 批量禁用:填对 ID 是关键
"extensions.disabledExtensions" 是配置式批量禁用的唯一可靠字段,但它不等于“一键开关”——它只对已安装插件生效,且 ID 必须完全匹配市场页 URL 最后一段(例如 esbenp.prettier-vscode,不是 prettier)。
使用ydata-profiling(前身为pandas-profiling)生成全面的数据质量报告,包含相关性分析、缺失值模式和基数检测。导出交互式HTML仪表板和JSON摘要。
常见错误:
- ID 写错(如漏掉 publisher、大小写不符)→ 静默失败,无任何提示
- 误以为
"extensions.enabled": { "publisher.name": false }有效 → VS Code 官方从未支持该写法 - 禁用后没重载窗口 → 设置不生效
正确示例(工作区级):
{
"extensions.disabledExtensions": [
"esbenp.prettier-vscode",
"dbaeumer.vscode-eslint",
"redhat.vscode-yaml"
]
}
禁用配色配置 ≠ 禁用插件:别混淆 editor.tokenColorCustomizations 和插件
如果你实际想关的是语法高亮颜色(比如函数名、字符串变色),那和插件无关——那是 VS Code 自身的 token 配色系统。禁用插件不会让 editor.tokenColorCustomizations 生效,反而可能让某些主题插件失效后暴露出底层配色问题。
排查建议:
- 先确认是否真由插件引起:用
--disable-extensions启动,再看颜色是否还在 - 如果还在,说明是
settings.json里配的editor.tokenColorCustomizations或第三方主题在起作用 - 想临时关闭装饰色(如文件资源管理器里的红绿标记),搜
workbench.colorCustomizations或直接关editor.decorations设置项
真正干净的排查,永远从 --disable-extensions 开始;而所有基于配置的禁用方式,都绕不开 ID 精确性和重载窗口这两个硬性条件。










