VSCode Vim扩展无法在SSH/WSL远程及本地Windows安装使用
VSCode Vim 扩展安装故障排查方案
本地、WSL、无头远程机均无法安装/扩展失效处理
- 全链路清理损坏残留:
- 完全退出所有VSCode进程,进入本地扩展目录
%USERPROFILE%\.vscode\extensions,删除所有名称前缀为vscodevim.vim的文件夹;同时进入%APPDATA%\Code\CachedExtensionVSIXs目录,删除所有和Vim扩展相关的缓存VSIX文件。 - 针对WSL/SSH无头远程环境,连接到对应目标机器后,进入远程扩展目录
~/.vscode-server/extensions/,删除所有vscodevim.vim开头的文件夹,同步清理~/.vscode-server/CachedExtensionVSIXs/下的对应缓存文件。
- 完全退出所有VSCode进程,进入本地扩展目录
- 冲突排查:
给VSCode启动追加--disable-extensions参数进入安全模式(无任何第三方扩展加载),直接在扩展商店搜索Vim扩展安装,验证本地是否可以正常运行。如果安全模式下功能正常,逐个启用原有扩展定位冲突项,优先排查其他按键映射、编辑器核心行为修改类扩展的兼容问题。 - 远程部署:
本地验证Vim扩展运行正常后,再连接远程/WSL环境,此时在扩展面板点击Vim扩展条目,会直接显示「安装到远程目标」的单独按钮——之前批量安装列表不显示该扩展,是因为残留的损坏安装记录被VSCode识别为“远程端已存在该扩展”,清理缓存后该问题会直接消失。
获取JSON格式已安装扩展列表方法
- 命令行方式(最简便):
直接在对应环境的终端执行命令,输出可直接重定向为JSON文件:- Windows本地环境:
code --list-extensions --show-versions | Out-File extensions.json - WSL/SSH远程环境(如果code命令未加入PATH,直接调用vscode-server内置cli):
~/.vscode-server/bin/*/bin/remote-cli/code --list-extensions --show-versions > extensions.json
- Windows本地环境:
- 界面内获取结构化数据:
打开命令面板(快捷键Ctrl+Shift+P)执行Developer: Installed Extensions命令调出扩展列表,按Ctrl+Shift+I打开开发者工具,在Console面板执行以下代码,即可将包含扩展ID、名称、版本、发布者信息的结构化JSON复制到剪贴板:copy( Array.from(document.querySelectorAll('.extension-list-item')) .map(item => ({ id: item.dataset.extensionId, name: item.querySelector('.name').textContent.trim(), version: item.querySelector('.version').textContent.trim(), publisher: item.dataset.publisher })) )
问题对应参考截图




内容的提问来源于stack exchange,提问作者samuelnihoul
相关产品推荐
相关产品推荐

