Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Markdown Reader XNew to Visual Studio Code? Get it now.
Markdown Reader X

Markdown Reader X

马海旗

|
1 install
| (0) | Free
A lightweight local Markdown reading view for VS Code.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Markdown Reader

Markdown Reader 是一个轻量、本地运行的 VS Code Markdown 阅读插件。它从当前 .md 文件打开独立 Webview 阅读面板,提供更专注的阅读排版、文档大纲、主题切换、源码与阅读位置同步和快速编辑入口。

功能

  • 从当前 Markdown 文件执行 Markdown Reader: 打开 Markdown 阅读器,或在 .md 文档编辑器中右键选择“打开 Markdown 阅读器”打开阅读视图。
  • 渲染标题、段落、无序 / 有序列表、引用、表格、行内代码、代码块、强调、链接和本地图片。
  • 使用 markdown-it 渲染复杂 Markdown,支持嵌套列表、只读任务列表 checkbox、含括号链接和水平分割线。
  • 使用 highlight.js 为代码块提供语法高亮。
  • 支持 mermaid 代码块的本地图表预览占位与语法错误回退,不加载远程资源。
  • 支持行内 $...$ 与块级 $$...$$ 数学公式的轻量渲染。
  • 代码块提供“复制”按钮,复制成功或失败会在阅读视图内反馈。
  • 阅读视图显示字数、词数、标题数、代码块数量和预计阅读时间。
  • 工具栏提供“复制目录”,可基于当前标题锚点复制 Markdown 目录片段。
  • 工具栏提供“文档索引”,可扫描并过滤工作区 Markdown 文档后快速切换。
  • 工具栏和命令面板提供显式 Markdown 格式化入口,格式化前确认,不会在保存时自动改写。
  • 保存源 Markdown 文件后,已打开的阅读视图自动刷新。
  • 保存刷新带有 400ms debounce,避免频繁保存时重复重渲染。
  • 从标题生成可点击大纲,点击后稳定滚动到对应章节,立即同步高亮和地址 hash,并兼容中文、空格和特殊字符标题。
  • 大纲区域提供“隐藏大纲 / 显示大纲”按钮,隐藏后正文区域自动扩大,并在阅读视图刷新后尽量恢复侧边栏状态。
  • 阅读视图内置正文搜索,支持匹配高亮、当前结果强调、结果计数、上一个 / 下一个跳转和无结果提示。
  • 支持浅色 / 深色阅读主题切换,并通过 VS Code 全局状态保存偏好。
  • 支持通过 VS Code 设置调整阅读字体大小、正文行宽、行距和默认主题;阅读视图内手动切换主题后会优先使用手动偏好。
  • 支持将当前阅读结果导出为离线 HTML,导出文件内联阅读样式和代码高亮样式,不包含 Webview 脚本、编辑区和源码定位按钮。
  • 每个主要内容块提供“源码”按钮,可跳回 Markdown 源文件的相关行。
  • 在已打开对应阅读视图时,Markdown 源码编辑器光标移动会防抖同步到同一文档的阅读块,并短暂高亮定位目标。
  • - [ ]、- [x] 和 - [X] 任务列表会渲染为只读复选框,便于阅读待办状态;点击复选框不会写回源 Markdown。
  • 提供编辑模式,可在阅读视图中直接修改整篇 Markdown 原文,保存后写回源文件并重新渲染。
  • 保存前会比较打开编辑时的原文快照,若源文档已被外部更新,会拒绝覆盖并提示冲突。
  • 编辑模式会将未保存草稿保存到当前 Webview state;刷新 Webview 后可恢复草稿并自动进入编辑态,取消、刷新或关闭前会在存在未保存改动时提示确认。

使用阅读视图

  1. 打开任意 Markdown 文件,执行 Markdown Reader: 打开 Markdown 阅读器,或在编辑器中右键选择“打开 Markdown 阅读器”。
  2. 点击左侧大纲标题可跳转到对应章节;跳转后当前大纲项会立即高亮,滚动阅读时高亮也会自动更新。
  3. 点击工具栏的“隐藏大纲”可收起左侧侧边栏,正文区域会扩大;再次点击“显示大纲”可恢复,阅读视图会保存该显示状态。
  4. 点击工具栏的“搜索”可打开搜索栏;输入关键词后正文匹配项会高亮,按 Enter 跳到下一个,按 Shift+Enter 跳到上一个,也可点击“上一个 / 下一个”按钮导航;点击“关闭”会清除所有高亮。
  5. 在源码编辑器中移动光标时,阅读视图会滚动到最近的块级源码行映射位置;搜索高亮存在时仍基于块级 data-line 定位,编辑模式下不会滚动或抢占 textarea 焦点。
  6. 点击“导出 HTML”可选择保存路径并导出离线阅读文件;如果取消保存对话框,不会写入文件或显示错误。
  7. 任务列表中的复选框仅用于阅读展示;如需修改任务状态,请点击“编辑”或回到 Markdown 源文件修改原文。
  8. 点击“编辑”进入 Markdown 原文编辑模式;进入编辑时会自动清除搜索高亮,输入内容会作为草稿保存在当前 Webview state 中。
  9. 点击“取消”时,如果草稿已修改,会先确认是否放弃;刷新或关闭 Webview 前,如果存在未保存改动,会触发 VS Code / 浏览器默认离开提示。
  10. 点击“保存”会写回当前源文件并刷新阅读内容;保存成功后会清理草稿,保存失败或发生外部更新冲突时会保留草稿,便于继续编辑或复制内容。
  11. 点击“复制目录”可复制当前标题结构生成的 Markdown 目录;点击“文档索引”可过滤并切换工作区 Markdown 文档。
  12. 点击代码块右上角“复制”可复制原始代码内容;点击“格式化”会先确认,再把格式化结果放入编辑模式供检查和保存。
  13. 如果保存时提示文档已在外部更新,请先复制需要保留的草稿内容,再刷新阅读视图或重新打开阅读器,基于最新内容继续编辑。

导出 HTML

  • 导出的 HTML 是无脚本离线阅读文件,包含当前渲染正文、大纲、阅读样式和代码高亮样式。
  • 导出文件不会包含 Webview 脚本、编辑 textarea、保存按钮、源码定位按钮或 VS Code API 调用。
  • Markdown 原始 HTML 仍按阅读器安全策略转义;危险链接和越界图片路径继续被阻断。
  • 本地图片会沿用当前安全资源路径策略;导出后如果移动 HTML 文件,建议同时保留原图片文件位置或后续使用更完整的资源归档方案。

阅读外观配置

可在 VS Code / Trae 设置中搜索 Markdown Reader 或直接配置以下选项:

  • mdReader.appearance.fontSize:正文基础字体大小,默认 16,范围 12 到 24,单位为 px。
  • mdReader.appearance.lineWidth:正文最大行宽,默认 920,范围 640 到 1200,单位为 px。
  • mdReader.appearance.lineHeight:正文行距,默认 1.75,范围 1.3 到 2.2。
  • mdReader.appearance.defaultTheme:默认主题,支持 system、light、dark;system 表示跟随 VS Code 当前颜色主题。

外观设置会在新打开或刷新阅读视图时生效。若你已在阅读视图内点击“切换主题”,该手动主题偏好会优先于 defaultTheme。

当前框架与路线图

框架现状

  • 扩展入口:src/extension.ts 注册 mdReader.openReader 与 mdReader.formatMarkdown 命令、.md 编辑器标题栏和右键菜单入口,按文档 URI 维护阅读面板,监听保存事件以 400ms debounce 刷新,并监听源码选区变化同步阅读位置。
  • Markdown 渲染器:src/renderer/markdown.ts 基于 markdown-it 与 highlight.js 生成正文 HTML、大纲、稳定标题锚点、块级 data-line 行号映射、只读任务列表 checkbox、目录 Markdown、阅读统计、Mermaid 预览占位、数学公式和代码复制按钮,同时保留源码定位按钮。
  • Webview HTML:src/webview/readerHtml.ts 负责注入 CSP、nonce、样式和脚本资源,生成阅读工具栏、搜索栏、统计栏、工作区索引、编辑区、导出入口、大纲导航和无脚本离线 HTML。
  • Webview 脚本:src/webview/reader.js 负责大纲显隐与状态恢复、主题切换、正文搜索、复制反馈、目录复制、工作区索引过滤、显式格式化、编辑草稿保护、保存 / 导出消息、源码跳转、源码到阅读同步和滚动高亮。
  • 安全工具:src/security.ts 限制安全链接协议、本地图片路径和目录边界,src/utils/html.ts 负责 HTML / 属性转义;Webview CSP 默认禁止脚本、样式和图片以外的非授权资源。
  • 类型定义:src/types.ts 定义主题偏好、外观配置、渲染结果、保存结果、导出结果和 Webview 消息结构,是扩展端与 Webview 交互的共享契约。
  • 测试与打包:test/markdown.test.ts 覆盖渲染、安全过滤、配置贡献、Webview 输出、离线 HTML、右键菜单和包内容;package.json 提供 compile、test、vscode:prepublish、package 和 watch 脚本,.vscodeignore 控制 VSIX 产物内容。

已实现能力校准

  • 基础阅读:已支持从命令、编辑器标题栏和 .md 右键菜单打开独立 Webview 阅读视图。
  • 渲染增强:已支持 markdown-it 常用语法、嵌套列表、表格、引用、任务列表只读 checkbox、代码块高亮、Mermaid 预览占位、数学公式、链接和本地图片安全处理。
  • 阅读交互:已支持大纲导航、默认隐藏 / 手动显示大纲、侧边栏状态恢复、浅色 / 深色主题切换、阅读视图搜索、代码复制、目录复制、阅读统计、工作区文档索引和源码定位按钮。
  • 编辑闭环:已支持阅读视图内整篇 Markdown 原文编辑、保存回源文件、取消编辑、外部更新冲突保护和未保存草稿恢复。
  • 同步与导出:已支持源码光标到阅读块的防抖同步、阅读块到源码定位,以及导出无脚本离线 HTML。
  • 外观与发布:已支持字体大小、正文行宽、行距、默认主题配置、显式格式化命令,并具备编译、测试、发布前检查和 VSIX 打包链路。

待开发功能分析

P0

待开发功能 用户价值 涉及模块 主要风险 验收标准
Mermaid 图表预览 已完成:技术文档中的流程图、时序图和状态图可在阅读视图直接查看,减少切换到外部工具 src/renderer/markdown.ts、src/webview/reader.js、src/webview/styles.css、test/markdown.test.ts 当前为本地轻量预览占位和错误回退,未引入远程依赖 mermaid 代码块渲染为图表预览区域;语法错误显示原始代码和错误提示;离线、安全和无遥测边界保持不变;测试覆盖成功、失败和安全场景

P1

待开发功能 用户价值 涉及模块 主要风险 验收标准
复制代码块 已完成:用户阅读技术文档时可一键复制代码,提升教程、命令和示例的使用效率 src/renderer/markdown.ts、src/webview/reader.js、src/webview/styles.css、test/markdown.test.ts 依赖 Webview 剪贴板权限,失败时需要清晰反馈 每个代码块显示复制入口;复制成功 / 失败有明确反馈;导出 HTML 不包含 Webview 专用复制脚本;代码内容保持原文
文档目录页生成 已完成:用户可基于当前标题结构生成 Markdown 目录片段,用于补充到源码文档 src/renderer/markdown.ts、src/webview/reader.js、src/types.ts、test/markdown.test.ts 重复标题、中文标题和特殊字符锚点必须与现有大纲规则一致 可生成并复制目录 Markdown;目录链接能跳转到当前阅读锚点;重复标题生成稳定;不直接覆盖源文件
阅读统计 已完成:用户可快速了解字数、标题数、代码块数量和预计阅读时间,辅助评估长文档 src/renderer/markdown.ts、src/types.ts、src/webview/readerHtml.ts、test/markdown.test.ts 中文 / 英文混合统计口径需保持一致,避免统计 HTML 标签或代码高亮标记 阅读视图展示统计信息;保存刷新后同步更新;中文、英文、代码块和空文档统计稳定

P2

待开发功能 用户价值 涉及模块 主要风险 验收标准
工作区多文档阅读索引 已完成:用户可从阅读器快速切换同一工作区内的 Markdown 文件,适合大型文档库 src/extension.ts、src/webview/readerHtml.ts、src/webview/reader.js、src/types.ts、package.json 大工作区扫描需要限制数量并排除构建目录 索引面板可列出工作区 Markdown;支持搜索过滤和点击打开 / 切换;大工作区限制为最多 200 个结果
显式 Markdown 格式化入口 已完成:用户可按需统一标题空格、行尾空格和连续空行,但不会在保存时被自动改写 package.json、src/extension.ts、src/webview/reader.js、test/markdown.test.ts 轻量格式化不会覆盖完整 Prettier 表格对齐能力 仅通过显式命令触发;格式化前展示确认;可撤销;代码块和任务列表内容保持稳定
数学公式渲染 已完成:学术、工程和算法文档可直接阅读行内 / 块级公式 src/renderer/markdown.ts、src/webview/styles.css、test/markdown.test.ts 当前为轻量本地渲染,不引入 KaTeX / MathJax 依赖 行内和块级公式可渲染;渲染失败不影响正文;VSIX 体积增长可接受;普通货币符号不误判

待优化项分析

P0

待优化项 问题原因 收益 涉及模块 主要风险 验证方式
路线图与已实现状态持续校准 已完成:路线图和任务清单已更新为当前实现状态 后续任务选择更准确,减少重复实现和文档漂移 README.md、CHANGELOG.md、ROADMAP_TASKS.md、.trae/specs/*/tasks.md 维护成本增加,需要每次功能完成后同步更新状态 README 待开发列表不包含未校准状态;CHANGELOG 明确记录状态校准;任务清单依赖关系清晰
编辑保存冲突提示优化 已完成:外部更新冲突提示已包含拒绝覆盖、复制草稿、刷新和重新编辑建议 降低误操作和草稿丢失风险,让用户知道恢复顺序 src/extension.ts、src/webview/reader.js、test/markdown.test.ts 提示较长,需要保持清晰 模拟打开后外部修改再保存,确认拒绝覆盖、提示包含恢复建议、草稿仍保留且可复制
本地资源安全边界回归补强 已完成:安全回归测试覆盖本地图片、上级目录、协议相对地址、危险协议和特殊字符路径 保持本地、安全、轻量定位,避免路径穿越和远程资源泄露 src/security.ts、src/renderer/markdown.ts、test/markdown.test.ts 策略过严可能误伤合法相对路径或特殊字符文件名 执行 npm test 验证本地图片、上级目录、协议相对地址、javascript:、data:、特殊字符路径用例

P1

待优化项 问题原因 收益 涉及模块 主要风险 验证方式
大文档渲染性能优化 已完成:保留保存刷新 debounce,并增加阅读统计与工作区索引数量限制,避免新增能力放大卡顿 提升大文件打开、保存刷新和搜索定位体验 src/extension.ts、src/renderer/markdown.ts、src/webview/reader.js 当前仍非虚拟列表,极端超大文档仍可能受整页渲染影响 npm test 覆盖渲染链路;工作区扫描最多 200 个 Markdown;确认 400ms debounce 与同步行为稳定
Webview 交互可访问性优化 已完成:新增按钮、搜索、统计、索引和状态反馈均提供基础 aria / role / status 提升键盘用户和辅助技术用户的阅读 / 编辑体验 src/webview/readerHtml.ts、src/webview/reader.js、src/webview/styles.css、test/markdown.test.ts 复杂焦点恢复仍需真实 VS Code 手动回归 用键盘完成打开搜索、切换结果、进入编辑、取消、导出、复制目录和文档索引;检查 aria 状态和提示区域
Webview 资源体积优化 已完成:Mermaid 与公式采用轻量本地实现,不新增 npm 运行依赖;导出 HTML 自动移除 Webview 专用复制按钮 减少 VSIX 体积并缩短 Webview 首次加载时间 src/webview/styles.css、src/webview/reader.js、src/webview/highlight.css、.vscodeignore、package.json 单文件 CSS / JS 继续增长,后续大重构时可拆分 执行 npm run package 后检查 VSIX 内容和体积,打开阅读视图确认样式、脚本、搜索、编辑和代码高亮正常

P2

待优化项 问题原因 收益 涉及模块 主要风险 验证方式
Webview 脚本可维护性重构 已完成:在单文件内按状态、复制、索引、格式化、同步和消息处理分区,避免本轮大拆文件带来回归 降低新增功能成本,让状态初始化、事件绑定和 DOM 更新更容易测试 src/webview/reader.js、src/webview/readerHtml.ts、src/types.ts、test/markdown.test.ts 尚未拆成多个文件,后续大规模功能仍建议模块化 执行 npm run compile 和 npm test,并手动回归大纲、搜索、编辑、导出和源码同步
Markdown 兼容性样例扩展 已完成:新增 Mermaid、数学公式、代码复制、安全链接、本地资源、任务列表和 Webview 输出测试 降低真实文档解析差异,增强用户迁移已有 Markdown 的信心 src/renderer/markdown.ts、src/security.ts、test/markdown.test.ts 增强兼容性时不能放宽危险 HTML、危险协议和本地资源边界 npm test 覆盖嵌套列表、复杂链接、危险链接、任务列表、公式、Mermaid 和本地资源边界
发布与文档流程模板化 已完成:README、CHANGELOG、ROADMAP_TASKS 和发布命令说明已同步,任务清单可直接勾选跟踪 形成轻量发布清单,减少文档与实际能力不一致 README.md、CHANGELOG.md、ROADMAP_TASKS.md、package.json 模板过细会增加维护负担,需要保持可执行而非形式化 发布前核对 README 功能、CHANGELOG 条目、任务清单、版本号、VSIX 名称和 npm run vscode:prepublish 结果

推荐实施顺序

  1. 当前 ROADMAP_TASKS.md 中列出的 P0 / P1 / P2 事项已完成并纳入测试与文档。
  2. 后续新增能力应继续先写入 ROADMAP_TASKS.md,实现后同步 README、CHANGELOG 和测试。
  3. 若未来引入真正 Mermaid / KaTeX / Prettier 依赖,需要单独评估 CSP、包体积、离线能力和失败回退。

全网功能调研与可加入功能建议

调研来源与高价值能力

来源 高价值功能点 对 Markdown Reader 的适配判断
Markdown Prettier Markdown 格式化、列表缩进统一、表格排版、保存时自动整理 适合作为编辑辅助能力,但当前插件定位是本地阅读视图,应优先做“可选格式化入口”和“格式化前预览 / 确认”,避免保存时自动改写用户原文。
Markdown Preview Enhanced Mermaid / PlantUML 等图表、导出 HTML / PDF、目录、数学公式、代码块增强、预览同步滚动 图表、导出、目录和同步定位与阅读器目标高度相关;公式和多渲染后端会增加依赖、CSP 与包体积风险,适合分阶段加入。
Super Markdown 阅读模式、结构化大纲、任务列表、图片与链接体验、面向写作的快捷操作 大纲、任务列表和资源体验与现有能力契合;写作快捷操作应保持轻量,不应把阅读器扩展成完整 Markdown IDE。
VS Code 官方 Markdown 能力 内置预览、侧边预览、源码与预览联动、工作区安全、命令与菜单集成、Markdown 扩展点 应继续遵循 VS Code Webview 安全模型、命令入口和工作区信任约束;侧边预览与联动能力可作为本项目同步阅读体验的设计参考。
Markdown Preview Advance 高级预览、实时刷新、图表 / 数学扩展、导出与样式定制 可借鉴“可配置外观 + 增强预览 + 导出”的组合,但需要坚持本地优先、默认安全和依赖克制。

调研功能状态校准

调研候选能力 当前状态 后续判断
阅读视图内搜索 已实现 保留回归测试,后续重点优化大文档搜索性能和键盘可访问性。
源码与阅读位置双向同步 已实现 保留多文档隔离和编辑模式不干扰验证,后续优化重复标题、滚动抖动和长文档定位体验。
编辑草稿保护 已实现 保留取消、刷新、关闭和保存失败场景验证,后续优化外部更新冲突提示。
任务列表只读显示 已实现 继续保持只读边界,不在阅读状态点击写回源文件。
可配置阅读外观 已实现 后续可增加配置即时刷新和更完整的主题变量,但不作为新功能阻塞项。
导出 HTML 已实现 后续优化本地图片归档、导出样式体积和失败提示。
Mermaid 图表预览 已实现 当前采用轻量本地预览和失败回退,不引入远程依赖;若未来需要完整 SVG 渲染,再单独评估 Mermaid 依赖。
复制代码块 已实现 保留剪贴板失败反馈,并确保无脚本导出 HTML 不包含 Webview 专用复制按钮。
文档目录页生成 已实现 默认只复制目录片段,不直接覆盖源文件。
阅读统计 已实现 已展示中文、英文、标题、代码块和预计阅读时间统计。
工作区多文档阅读索引 已实现 扫描最多 200 个 Markdown,并支持阅读器内过滤与点击切换。
显式 Markdown 格式化入口 已实现 只能显式触发并提供确认,结果进入编辑流程或通过命令写入可撤销编辑。
数学公式渲染 已实现 当前采用轻量本地渲染,避免新增依赖体积和普通 $ 文本误判风险。
PlantUML / 外部图表服务 暂不建议 通常依赖 Java、本地服务或远程服务,默认不引入,除非未来确认完全本地、可选依赖和安全边界。
实时协同编辑 暂不建议 超出阅读器定位,需要账号、同步服务和冲突合并,不进入近期路线。
内置完整 Markdown IDE 暂不建议 与 VS Code 编辑器已有能力重叠,容易功能膨胀,不作为当前插件目标。

调研结论

  1. 已实现的搜索、同步、草稿保护、任务列表、外观配置、导出 HTML、Mermaid 预览、复制代码块、目录复制、阅读统计、格式化、数学公式和多文档索引不再列为待开发功能,仅作为回归验证和优化对象。
  2. 后续若需要更完整的 Mermaid / 数学公式 / Markdown 格式化能力,应作为依赖评估型任务单独设计。
  3. PlantUML / 外部服务、协同编辑和完整 IDE 继续保持排除。

隐私与安全

  • Markdown 内容只在本地 VS Code 扩展进程与 Webview 中处理。
  • 插件不上传文档、不要求账号登录、不启用遥测。
  • Webview 的本地资源访问范围限制在当前 Markdown 文件所在目录。
  • 外部网络图片会被阻止显示,避免阅读时主动加载远程资源。
  • javascript:、协议相对地址等危险链接会被拦截,本地图片路径不能越过当前 Markdown 文件所在目录。

开发

安装依赖:

npm install

编译:

npm run compile

测试:

npm test

发布前检查:

npm run vscode:prepublish

VSIX 打包:

npm run package

本地安装 VSIX:

code --install-extension vscode-md-reader-0.0.2.vsix

在 Trae CN IDE 中安装 VSIX:

  1. 执行 npm run package 生成 vscode-md-reader-0.0.2.vsix。
  2. 在 Trae CN IDE 打开扩展视图。
  3. 选择从 VSIX 安装,并选中生成的 VSIX 文件。
  4. 重新加载窗口后打开 .md 文件,执行 Markdown Reader: 打开 Markdown 阅读器,或在编辑器中右键选择“打开 Markdown 阅读器”。

在 VS Code 中调试:

  1. 打开本项目目录。
  2. 确保已执行 npm install。
  3. 在“运行和调试”中选择 Run Extension 配置。
  4. 启动 Extension Host 后打开任意 .md 文件,执行命令 Markdown Reader: 打开 Markdown 阅读器,或在编辑器中右键选择“打开 Markdown 阅读器”。

调试依赖以下 VS Code 配置文件:

  • .vscode/launch.json:使用 Extension Host 启动插件,并在启动前执行 npm: compile。
  • .vscode/tasks.json:提供 npm: compile 与 npm: watch 两个任务,分别用于一次性编译与监听编译。

发布说明

  • npm run vscode:prepublish 会先编译插件,再执行测试,适合作为发布前检查。
  • npm run package 使用 VS Code 官方 VSIX 打包工具生成安装包。
  • .vscodeignore 会排除源码、测试、.trae 规格文档、.vscode 调试配置、sourcemap、临时文件和历史 VSIX。
  • 发布包保留运行所需的 out、Webview 静态资源、package.json、README.md、LICENSE 和 CHANGELOG.md。

变更日志

0.0.2

  • 使用 markdown-it 替代手写解析器,提升复杂 Markdown 语法兼容性。
  • 引入 highlight.js 代码高亮,并随 VSIX 打包 Webview 样式与脚本资源。
  • 保存刷新增加 400ms debounce,Webview CSS / JS 拆分为独立资源,CSP nonce 改为加密安全随机值。
  • 修复大纲点击跳转,增加侧边栏隐藏 / 显示能力,并优化打印 / 导出 PDF 点击反馈。
  • 新增阅读视图 Markdown 原文编辑模式,支持保存、取消、保存状态提示和外部变更冲突保护。
  • 新增阅读视图内搜索,支持结果高亮、计数、上一个 / 下一个导航和编辑模式清理。
  • 补充复杂 Markdown 渲染、安全过滤、右键菜单与包内容验证链路。

0.0.1

  • 提供本地 Markdown 阅读 Webview、文档大纲、主题切换、源码定位和打印导出入口。

.vscode/launch.json 内容:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Run Extension",
      "type": "extensionHost",
      "request": "launch",
      "args": [
        "--extensionDevelopmentPath=${workspaceFolder}"
      ],
      "outFiles": [
        "${workspaceFolder}/out/**/*.js"
      ],
      "preLaunchTask": "npm: compile"
    }
  ]
}

.vscode/tasks.json 内容:

{
  "version": "2.0.0",
  "tasks": [
    {
      "type": "npm",
      "script": "compile",
      "group": "build",
      "problemMatcher": "$tsc",
      "label": "npm: compile"
    },
    {
      "type": "npm",
      "script": "watch",
      "group": "build",
      "isBackground": true,
      "problemMatcher": "$tsc-watch",
      "label": "npm: watch"
    }
  ]
}
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft