必须先打开markdown preview enhanced预览窗口(ctrl+k v),导出菜单才出现;右键预览区域而非编辑器空白处,才能看到export to pdf等选项,否则因预览未加载或路径未配准导致导出失败。

markdown-preview-enhanced 不是“多一个预览选项”那么简单——它直接替换了 VS Code 原生 Markdown 预览的底层能力,公式、Mermaid、滚动同步、导出 PDF/Word 全部依赖它正常工作。没装它,就等于用记事本写 Markdown;装了但没配对路径或没先开预览,导出照样失败。
为什么右键没看到 Export to PDF?
这不是插件没装好,而是你跳过了最关键的前提动作:必须先打开 markdown-preview-enhanced 的预览窗口,导出菜单才会出现。
- VS Code 自带的
Ctrl+Shift+V(Markdown Preview)和markdown-preview-enhanced是两套完全独立的预览系统,互不感知 - 只有在
markdown-preview-enhanced的预览页内右键,才能看到Export to PDF、Export to Docx等选项 - 快捷键
Ctrl+K V(Windows/Linux)或Cmd+K V(macOS)才是唤出它的正确方式;Ctrl+Shift+V唤出的是原生预览,导出菜单永远不显示 - 如果右键后仍无导出项,检查是否误点了编辑器空白处——要右键点击预览窗口的渲染区域本身
导出 PDF 失败:Puppeteer not found 或 Failed to launch chrome
这是 markdown-preview-enhanced 默认用 Puppeteer 渲染 PDF 时最常卡住的地方。它不是让你装 Chrome,而是要告诉插件:“你该用我本地装好的 Puppeteer,别自己下个老版本来打架”。
- 全局安装 Puppeteer:
npm install -g puppeteer(推荐 Chromium 版本,避免权限问题) - 在 VS Code 设置中搜索
markdown-preview-enhanced.puppeteerPath,填入你全局 Puppeteer 的executablePath,例如:/usr/local/lib/node_modules/puppeteer/.local-chromium/mac-1269687/chrome-mac/Chromium.app/Contents/MacOS/Chromium - 若不想折腾 Puppeteer,可改用 Pandoc 路径导出:填好
markdown-preview-enhanced.exportPandocPath(如/opt/homebrew/bin/pandoc),再确保系统已装 LaTeX(如 MacTeX / texlive-full) - 注意:PDF 导出默认不渲染
---横线,需手动在Customize Preview Html Head (Global)中加hr样式,否则导出后空白
导出 Word 报错 Command failed: pandoc --version
这个错误说明 markdown-preview-enhanced 找不到 pandoc,但它不会帮你装——它只负责调用命令行。路径配错、权限不足、甚至空格没转义,都会触发这句报错。
- 终端运行
pandoc --version确认可用;若提示 command not found,先去 pandoc.org/installing.html 下载安装 - Windows 用户注意:路径含空格(如
C:\Program Files\Pandoc\pandoc.exe)必须用双引号包裹,但 VS Code 设置里不能加引号,应改用短路径(如C:\Progra~1\Pandoc\pandoc.exe)或重装到无空格目录 - macOS/Linux 用户检查权限:
which pandoc输出路径后,确认该文件有执行权限(chmod +x /path/to/pandoc) -
Export to Docx不支持 Mermaid 图表嵌入,图表会丢失;如需保留,得先用 Pandoc + PlantUML/Mermaid 插件链处理,不能依赖 MPE 单步导出
公式和 Mermaid 图在预览里正常,导出后却消失
根本原因只有一个:导出基于的是预览窗口当前渲染完成的 HTML 快照。如果公式还没加载完、Mermaid 还在初始化,快照就截到了空白。
- 务必等预览窗口右上角的加载指示器消失、所有公式/图表都稳定显示后再导出
- Mermaid 图必须用 ```mermaid 包裹,且不能放在引用块或列表内部(语法层级错乱会导致解析失败)
- 数学公式必须用
$$...$$(块级)或$...$(行内)写法,\[...\]和\(...\)在 KaTeX 模式下不被识别 - YAML front matter 中的
pdf_options(如margin、format)只对 Pandoc 导出生效,Puppeteer 导出完全无视它
Export to PDF 就永远灰着。











