后皇嘉树 (@Theigrams) 在 ChatGPT 网页端 LaTeX 公式复制修复 中发帖
OpenAI 的网页版一直存在一个 bug,当点击复制按钮时,复制出的公式内容会进行错误的转义。
正确的 Markdown 格式
ChatGPT 复制出来的结果
\[ f(x) = \frac{1}{x} \]
[ f(x) = \frac{1}{x} ]
\( a = \frac{3}{5} \)
( a = \frac{3}{5} )
然后,我就借助 Antigravity 自带的浏览器控制功能,对这个 bug 进行了逆向分析
[image]
分析结果是:
ChatGPT 页面中,Message 对象存储的原始 Markdown是完整的,形如 "\\( a=\\frac{3}{5} \\)"
在点击复制时,触发一个名为copyToClipboard的函数
该函数会调用一个 stripEscapes()函数,手动进行 转义符清洗,例如把 \# 变成 #...