vscode不提供离线文档同步功能,仅同步settings.json、keybindings.json、插件列表等配置;离线文档依赖插件缓存(如pylance的typings)和本地文件,需手动迁移extensions文件夹及文档路径,并确保hover、quicksuggestions等设置启用且路径使用${env:home}等变量。

VSCode 本身不提供“离线文档”同步功能——它没有内置的本地文档库或帮助系统需要手动迁移。你真正想同步的,是 settings.json、keybindings.json、插件列表、用户片段,以及可能缓存在本地的扩展文档(比如某些语言服务器附带的离线 API 参考)。这些内容默认不自动跨设备共享,尤其在无网络或内网环境下。
为什么「离线文档」不是独立同步项
所谓“离线文档”,通常指三类东西:
• 插件自带的静态帮助页(如 Python 插件的 hover 提示、IntelliSense 的签名帮助)
• 语言服务器(如 rust-analyzer、Pylance)预加载的符号/文档缓存
• 用户手动下载的 PDF/HTML 文档(放在项目里或桌面)
它们都不在 VSCode 同步机制覆盖范围内。Settings Sync 或 Settings Sync 扩展只管配置和插件声明,不管插件内部缓存或本地文件。
手动迁移插件+其离线能力的关键文件
要让新电脑上的插件“立刻有文档”,不能只装插件,还得复制其缓存目录:
- 关闭所有 VS Code 进程(任务管理器 / Activity Monitor 彻底结束)
- 定位插件安装路径:
– Windows:%USERPROFILE%.vscodeextensions
– macOS:~/.vscode/extensions
– Linux:~/.vscode/extensions - 复制整个
extensions文件夹(不是里面的子文件夹,是整个文件夹)到新电脑对应路径 - 注意:部分插件(如 C/C++、Java Extension Pack)会在首次启动时重建索引或下载 SDK 文档包;复制后首次启动仍可能卡顿几秒,但已有缓存可大幅加速
同步 settings.json 中影响文档显示的配置
有些设置直接控制文档是否可用或如何展示,必须确保同步:
-
"editor.hover.enabled": true—— 关闭后鼠标悬停不显示任何文档 -
"editor.quickSuggestions": {"other": true, "comments": false, "strings": false}—— 影响代码补全时是否带参数说明 -
"python.analysis.extraPaths"或"typescript.preferences.includePackageJsonAutoImports"—— 若指向本地 node_modules 或 typings 目录,路径需用${env:HOME}或${workspaceFolder}替代绝对路径,否则新电脑上失效 - 禁用
"editor.suggest.showWords": false等会抑制文档提示的设置
离线 HTML/PDF 文档怎么真正“同步”
如果你把 MDN、React 官方文档、Python 标准库 PDF 存在本地并用插件(如 “Open in Browser”)打开,这类文件必须手动拷贝:
- 不要硬编码路径如
"C:\docs\python-3.11.pdf"到settings.json或快捷键命令中 - 改用相对路径 + 工作区设置:把文档统一放在
${workspaceFolder}/docs/下,再通过自定义命令调用 - 或使用 VS Code 内置的
workbench.action.openLargeFile配合路径变量,避免跨平台路径断裂
最易被忽略的是:插件缓存目录体积大、结构深,很多人只复制 User 目录就以为万事大吉,结果新电脑上 hover 一片空白——那是因为 Pylance 的 ~/.vscode/extensions/ms-python.python-2023.10.100000000/out/languageServer/typings 这类路径根本没动过。离线文档的“同步”,本质是缓存迁移,不是配置同步。











