离线查看开源项目文档的核心是用本地文件配合合适扩展:PDF用vscode-pdfviewer,Markdown用内置预览或markdown-preview-enhanced,HTML用file://协议直接打开浏览器。

直接把开源项目文档放进 VSCode 离线查看,核心就一条:**别依赖在线服务,用本地文件 + 合适的预览器扩展**。PDF、Markdown、HTML 三类最常见格式,处理方式完全不同,不能一概而论。
PDF 文档:用 vscode-pdfviewer 打开本地文件
绝大多数技术文档(如 Rust Book PDF 版、Linux man page 合集、API 规范)是 PDF。vscode-pdfviewer 是目前最稳定的选择,它基于 PDF.js,纯前端渲染,不联网也能跑。
- 必须确保你拿到的是完整 PDF 文件(不是网页链接或在线阅读页),保存到项目目录下,比如
docs/rust-book.pdf - 安装扩展后,右键该文件 → “打开方式” → 选
PDF Preview;或双击(前提是已设为默认打开方式) - 注意缩放配置:
pdf-preview.default.scale设为page-width更适合阅读长文档,pdf-preview.default.scrollMode推荐vertical - 别试图用 Live Server 或浏览器
file://打开 PDF——虽然能看,但无法和编辑器联动(比如分屏、跳转锚点、侧边栏大纲)
Markdown 文档:用内置预览或 markdown-preview-enhanced
很多开源项目(如 Vue、React、Rust 官方仓库)把文档写在 README.md、CONTRIBUTING.md 或 docs/ 目录下。VSCode 自带 Markdown 预览(Ctrl+Shift+V)够用,但对复杂文档建议换扩展。
- 原生预览不支持 Mermaid 图表、数学公式、自定义 CSS;如果文档含这些,装
shd101wyy.markdown-preview-enhanced - 所有图片路径必须是相对路径,且实际存在于本地(比如
),否则预览里显示空白 - 不要用
http://或https://引用远程图片——离线时必然挂掉 - 若文档用了自定义 frontmatter 或 YAML 元数据,确认扩展是否识别;
markdown-preview-enhanced支持,原生预览不支持
HTML 文档:用 file:// 协议直接打开,别碰 Live Server
像 Sphinx(Python 官方文档)、Docusaurus(React Native 文档)生成的静态 HTML 站点,本质是一堆本地文件。想离线看,唯一可靠方式就是浏览器直读 file://。
- 在 VSCode 中右键
index.html→ “在资源管理器中显示” → 双击打开,地址栏会是file:///xxx/docs/_build/html/index.html - Live Server 启动的是
http://localhost:5500,它需要 TCP/IP 栈和 HTTP 服务进程,不算真正离线;禁用网卡或防火墙拦截端口时会失败 - 部分功能受限:JS 里的
fetch('./data.json')会因 CORS 报错;ESMimport在 Chrome 里默认被禁;解决方案是加启动参数--disable-web-security(仅调试用)或换 Edge 浏览器 - VSCode 插件
Debugger for Chrome支持file://调试,需配launch.json的file字段,不是url
最容易被忽略的一点:文档依赖的资源(字体、图标、JS 库)必须全部下载到本地并修正路径。比如 Sphinx 文档里引用了 CDN 上的 jQuery,离线时就得手动替换成 ./_static/jquery.js 并确保该文件存在——否则页面白屏或交互失效。


















