格式转换 Markdown 数学公式规范化与 KaTeX 兼容检查 AI 提示词 (Prompts)

这篇 Prompt 能生成什么

你将得到一个可直接运行与部署的在线工具:把用户粘贴/上传的 Markdown 文档做‘数学公式规范化’与‘KaTeX 兼容检查’,并输出一份可下载的检查报告(JSON/HTML/Markdown 三种格式)。工具不生成任何图片,不涉及出图/海报/插画类内容,专注于既有文档的解析、规范化与校验。

适用场景

论文笔记/技术文档/博客文章里常见的数学公式($...$、$$...$$、\( ... \)、\[ ... \]、\begin{equation} 等)在不同渲染器(KaTeX/MathJax/Markdown-it 插件)之间存在兼容差异。本工具用于:批量发现不兼容语法、定位行号/片段、给出可自动修复的建议,并一键输出规范化后的 Markdown。

输入与输出

输入:Markdown 文本(支持粘贴与文件上传,UTF-8)。

输出:1) 规范化后的 Markdown;2) 兼容性报告(问题列表、严重级别、定位信息、建议修复);3) 可选:仅报告模式(不改写)。

工具功能清单(必须实现)

1) 公式块识别:行内/块级/环境式(常见 equation/align/gather 等)。

2) 规范化策略:统一分隔符(可选:$...$ 与 $$...$$;或统一为 \( ... \) 与 \[ ... \])、统一换行与空白、移除多余的转义。

3) KaTeX 兼容检查:识别 KaTeX 不支持或需要宏包/扩展的命令,输出替代写法建议(例如:\tag、某些 AMS 环境差异等)。

4) 错误定位:在报告中给出问题所在行号范围、原始片段、规范化后片段(diff 可选)。

5) 导出:报告导出 JSON/HTML/Markdown;规范化后的 Markdown 可复制与下载。

6) 隐私:所有处理默认在本地/自建服务内完成,不把内容上传到第三方。

Prompt(复制到 AI 直接生成完整项目)

你是资深全栈工程师。请生成一个"Markdown 数学公式规范化与 KaTeX 兼容检查"的在线工具完整项目(可运行/可构建/可部署)。 【硬性目标】 - 产出:完整源码 + 文件树 + 一键运行命令 + Docker 部署 + 测试用例或 QA checklist。 - 形态:Web 在线工具(前端页面 + 后端 API)。 - 不允许:任何图像生成/出图/渲染图/海报/插画相关功能;不引导使用 Midjourney/Stable Diffusion 等。 - 允许:对现有文本/公式做解析、检查、转换、规范化;可生成报告;可导出文件。 【推荐技术栈】 - 前端:Next.js 14 + Type + Tailwind(或等价 React 栈)。 - 后端:Next.js Route Handlers 或独立 Node.js(Express/Fastify 皆可)。 - 解析与校验: - Markdown 解析:unified + remark-parse + remark-math(或 markdown-it + markdown-it-katex)。 - KaTeX 校验:使用 katex.renderToString() 进行语法检测;捕获错误并输出问题。 - 规范化:对数学片段进行 token 级/字符串级重写,支持配置化策略。 - 不依赖系统级二进制(比如不强制需要安装 pandoc/latex)。 【产品交互】 1) 页面包含: - 输入区(粘贴 Markdown / 上传 .md) - 选项区: - 模式:仅检查 / 检查+规范化 - 数学分隔符策略:保持原样 / 统一为 $...$ 与 $$...$$ / 统一为 \( ... \) 与 \[ ... \] - 是否输出 diff - 输出区: - 规范化后的 Markdown(可复制/下载) - 报告预览(表格或列表) - 导出按钮(JSON / HTML / Markdown) 2) 报告字段至少包括:id、severity(info/warn/error)、message、lineStart、lineEnd、originalSnippet、normalizedSnippet、suggestedFix。 【后端 API】 - POST /api/analyze - body: { markdown: string, options: {...} } - resp: { normalizedMarkdown: string, report: ReportItem[], stats: {...} } - 需要做输入大小限制(比如 2MB)与基础 XSS 安全处理(输出到页面时转义/或用 pre)。 【规范化与检查规则(至少实现这些)】 A. 分隔符与块级识别 - 识别 $...$、$$...$$、\( ... \)、\[ ... \]、 以及常见环境:\begin{equation}, align, aligned, gather, cases 等。 - 检测混用:同一文档混用多种分隔符时给出 warn 并支持一键统一。 B. KaTeX 兼容检查 - 对每个数学片段调用 katex.renderToString(tex, {throw :true, strict:'warn'})。 - 捕获错误与 warning,映射到 report。 - 对常见不兼容点给出建议: - 未定义命令:提示使用替代写法或在 KaTeX 中启用宏(宏配置给出示例)。 - 过长公式:提示拆分或使用 align。 - 标签/编号:如果使用 \tag 或类似命令,提示 KaTeX 限制与替代策略。 C. 规范化输出 - 规范化必须可配置,默认: - 行内公式保持 $...$ - 块级公式统一 $$...$$ - 去掉块级前后多余空行与多余空格 - 保留非数学文本原样 【测试与验收】 - 给出至少 8 个测试用例(Jest/Vitest 皆可),覆盖: 1) 行内公式识别 2) 块级公式识别 3) 环境式识别 4) 混用检测 5) KaTeX 报错捕获 6) 规范化策略生效 7) 大文本性能(至少做一个简单基准/超时保护) 8) 安全:输出转义/避免 HTML 注入 - 或者提供同等严格的 QA checklist(逐条可操作)。 【交付物格式要求】 1) 先输出项目文件树(tree),再输出关键文件完整代码。 2) 给出本地运行命令(pnpm/npm/yarn 任选一种,说明版本要求)。 3) 给出 Dockerfile + docker-compose.yml,并说明如何在 80/3000 端口跑起来。 4) 给出部署说明(例如 Vercel/自建服务器 Nginx 反代)。 现在开始生成。

交付物验收清单(建议直接复用)

1) 源码:前端+后端完整可运行项目,含必要配置文件。

2) 文件树:清晰列出目录结构与关键文件用途。

3) 运行:本地一键启动命令;生产构建命令;Docker 启动命令。

4) 测试:可执行的单元测试(或同等严格 QA checklist),覆盖识别/规范化/校验/导出。

5) 部署:给出至少一种可落地部署方案与注意事项(环境变量、反代、上传限制)。

用户评论 (0)

登录后参与讨论

立即登录 注册账号

暂无评论,快来抢沙发吧~

操作成功