[Feature]: 内置 Markdown 查看器/编辑器支持数学公式(KaTeX)渲染
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 55/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Tranquilla
- Stack tecnologico
- react, typescript
Direzione di ricerca
Inizia da src/web-ui/src/component-library/components/Markdown/Markdown.tsx e MarkdownMathRenderer.tsx per comprendere il percorso attuale della matematica nella chat, quindi esamina MarkdownEditor.tsx e src/web-ui/src/tools/editor/meditor/extensions/. Confronta i due punti di ingresso ed esegui il visualizzatore Markdown con le formule fornite. È completato quando la matematica inline e a blocchi viene resa nei file .md aperti, mentre i simboli del dollaro all’interno dei blocchi di codice rimangono invariati.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problem / opportunity
BitFun 内置的 Markdown 查看器/编辑器(打开 .md 文件时使用)不渲染数学公式,$...$ 与 $$...$$ 只显示为原始文本;而对话(chat)中的 Markdown 已经支持 KaTeX 公式渲染。两者渲染能力不一致。
对以 Markdown + LaTeX 记笔记的用户(如数学/理科笔记)影响较大:在 BitFun 内打开自己的笔记看不到公式渲染,只能借助外部编辑器,或自行编写 MiniApp 阅读器绕过。
根因(源码层面):BitFun 内部有两套独立的 Markdown 渲染路径——
- 对话渲染(已支持公式):
src/web-ui/src/component-library/components/Markdown/Markdown.tsx通过mayContainMarkdownMath()检测$$/\(/\[/ 行内$...$,命中后懒加载MarkdownMathRenderer.tsx(react-markdown + remark-gfm + remark-math + rehype-katex)。 - 文件查看器/编辑器(不支持):打开 .md 走
FileViewerScene → ContentCanvas → MarkdownEditor(src/web-ui/src/tools/editor/components/MarkdownEditor.tsx),底层是 tiptap 编辑器(src/web-ui/src/tools/editor/meditor/),其extensions/只有 Alignment / Image / Table 扩展,没有任何数学公式扩展。
Proposed behavior
文件查看器/编辑器的预览能像对话一样渲染行内($...$、\(...\))与块级($$...$$、\[...\])数学公式。
建议方案(任选其一或结合):
- 为 tiptap 编辑器(meditor)增加数学节点扩展(社区已有成熟的 tiptap + KaTeX 扩展可参考),复用现有 KaTeX 依赖;
- 或让文件预览复用 component-library 的
Markdown+MarkdownMathRenderer渲染路径,统一两套渲染的公式能力。
Product surface
Desktop app
Details, examples, or constraints
复现步骤:
- 工作区放一个含公式的 .md 文件,例如:
质能方程 $E=mc^2$,以及 $$\int_0^1 x^2 dx = \frac13$$ - 在 BitFun 内打开该文件(文件查看器)→ 公式原样显示,未渲染
- 对比:把同样内容让 AI 在对话中输出 → 公式正常渲染
验收标准:
- 打开含
$...$/$$...$$的 .md 文件,公式以排版形式渲染 - 代码块内的
$不被误判为公式
环境:Windows 11,BitFun 桌面版。
- Lingua principale
- Rust
- Stelle
- 2.3k
- Fork
- 236
- Merge medio
- 2h 53m
- PR unite (30g)
- 604
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di GCWing/OpenBitFun
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
GCWing/OpenBitFun#3213 · 1 commento ·
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
GCWing/OpenBitFun#2363 ·
-
question
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 78/100
GCWing/OpenBitFun#2340 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 65/100
GCWing/OpenBitFun#3210 ·
-
GCWing/OpenBitFun#3195 · 2 commenti · 1 assegnatario ·
Tutte le issue di GCWing/OpenBitFun
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
TheLarkInn/aipm#2413 ·
-
documentation
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
alexgorbatchev/simple-ptt#15 ·
-
tooling
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
todo:ticket
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
taikoxyz/taiko-mono#22168 · 1 commento ·