在Sublime Text里折腾Markdown数学公式渲染,这事儿说难不难,但卡住过不少人。很多人折腾半天,侧边栏预览里还是硬邦邦的 $E=mc^2$,以为是自己配置写错了,其实问题往往出在路径、插件、甚至是CDN的版本号上。下面把几个关键点拆开讲,帮你一次搞定。

必须用 MarkdownPreview,别装 Markdown Preview Plus

第一步就很容易走偏。Sublime Text 里没有官方或主流维护的 Markdown Preview Plus 插件——你搜到的多半是拼写错误、过时 fork 或个人魔改版。它不支持 MathJax,配置了也白搭。enable_mathjax 字段会被忽略,预览永远显示 $E=mc^2$ 而不是渲染结果。

正确做法是:

MathJax 必须用 v2.7.9 CDN,v3 地址直接失效

这可能是最容易被忽略的致命点。MarkdownPreview v3.0.x 硬编码依赖 MathJax v2,用 v3 的 CDN(比如 https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js)会导致控制台报 ReferenceError: MathJax is not defined,公式块彻底空白。

Settings – User 中必须写死这一行:

"mathjax CDN": "https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.9/MathJax.js?config=TeX-AMS_HTML"

注意两点:

公式语法容错率极低,空格和下划线就是致命点

MathJax v2.7.9 只稳定支持 TeX-AMS_HTML 配置下的语法,不是所有 LaTeX 写法都可用。常见“写了但不显示”,往往是因为被当成纯文本吞掉了:

预览必须走浏览器,侧边栏永远不渲染公式

这是最常被忽略的致命点:Preview in Sidebar 是纯 HTML 渲染器,不执行任何 JS,MathJax.js 根本不会下载。你看到的 $$\int_0^\infty$$ 就是源码原样输出,不是“没配好”,而是压根没触发解析流程。

唯一有效路径是:

真正卡住人的地方,往往不是配置错,而是盯着侧边栏看半天,其实连 MathJax 的请求都没发出去。

本文转载于:https://www.php.cn/faq/2822638.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。