好我知道Lighthouse已經沒什麼意義了但看了還是很開心
LCP 0.9s👍
一點mur
原本做了蠻多survey,像是CodeMirror、Lexical、ProseMirror、TipTap。最後還是決定沿用現有的Slate架構。
最根本的原因還是mosir用的是自己開發的parser。而且這個parser夠快,編輯的同時掃完整段文字不是什麼問題,也就不需要大部分editor framework的incremental update。就連Slate也只用了簡單的decorator function。
但這部分還是蠻尷尬的就是了。Slate的node tree對這個編輯器來說完全沒有任何意義,反而是為了繞過framework的一些內建功能讓程式寫了一堆很奇妙的邏輯。
可是為了支援selection mapping跟redo/undo,又暫時找不到比Slate輕的選擇。(不我不想讓LLM刻一個contenteditable出來)
這塊大概會一直是mosir的技術債跑不掉,除非哪天有發現更輕的lib,或是我自己想不開寫個自己的thin editor framework。