拖进主窗口没反应是因三个前提未满足:VSCode未获焦点、处于全屏/远程桌面、或拖入的非原始.vsix文件;code --install-extension报不兼容需核对VSCode版本、package.json中engines字段及架构匹配;手动复制须解压后按扩展ID目录名整目录放入extensions并彻底重启。

拖进 VSCode 主窗口没反应,其实是条件没对齐
VSCode 对拖放安装极其挑剔,不报错也不提示,只静默跳过。常见“假失败”本质是三个硬性前提没满足:
• VSCode 窗口未获得系统焦点:任务栏图标没高亮,点一下编辑器空白处再试
• 处在全屏模式或 RDP / TeamViewer 远程桌面中:这类环境常拦截拖放事件,退出全屏或改用 code --install-extension
• 拖的不是原始 .vsix 文件:浏览器下载后可能自动加 .zip 后缀,或被杀软重命名;用 unzip -l prettier.vsix 确认顶层目录是 extension/,否则 VSCode 直接忽略
code --install-extension 报 “not compatible with Code” 怎么快速定位
这个错误从不说明具体哪不兼容,必须手动比对三处:
• 运行 code --version,取第一位小数点前的版本号(如 1.85.2 → 1.85)
• 解压 .vsix,执行 unzip -p your.vsix extension/package.json | grep engines,看 "vscode": "^1.85.0" 是否 ≤ 你本地主版本
• Help → About 里括号中的架构(x64 / arm64)必须和插件构建目标一致;ARM Mac 装 x64 插件不会报错,但 pyright-server 或 volar-server 二进制根本加载不了
手动复制到 extensions 目录为什么总不生效
VSCode 不识别 .vsix 文件本身,只认已解压、且目录名严格匹配扩展 ID 的子文件夹:
• 先解压:unzip your-extension.vsix -d unpacked,用 ls unpacked/ 看顶层目录名(如 ms-python.python-2024.6.0/)
• 复制整个该目录(不是里面的内容)到对应路径:
Windows:%USERPROFILE%\AppData\Roaming\Code\Extensions\
macOS/Linux:$HOME/.vscode/extensions/
• 复制完必须彻底退出 VSCode(包括右下角托盘进程),否则 extensions 缓存不刷新,插件不会加载
插件显示已安装,但 Python/Vue/Prettier 功能完全不出现
语言类插件(如 ms-python.python、johnsoncodehk.volar、esbenp.prettier-vscode)离线时最常卡在 LSP 服务缺失:
• 它们安装只是注册,首次启用才下载 pyright-server、volar-server 或 prettier CLI —— 这些二进制藏在解压后的子目录里,不是 .vsix 自带的
• 正确做法:在有网机器上打开一个 .py / .vue 文件,等状态栏不再显示 “Downloading…”,再整目录拷贝 ms-python.python-2024.6.0/ 到内网机对应 extensions 路径
• 别漏掉 node_modules 下的 native 二进制,也别只拷 package.json 或 dist —— 少一个文件,LSP 就起不来


















