A Modern Editor Built in Rust
summary
XIeditor is a high‑performance text editor implemented primarily in Rust, claiming 10,000 lines of Rust with 0 uses of unsafe, plus a Mac front end of 1,200 lines of Swift and 27 contributors. It loads a 380 megabyte file in about a second, sustains 60 fps scrolling, uses rope trees for log‑time edits, incremental word‑wrap touching 140 bytes in 0.01 ms, a Unicode line‑breaker 3× faster than ICU, and a JSON‑RPC microservice plugin model that demonstrably works.
AI-written summary · about
chapters (14)
- 0:00Intro
- 3:03Main goal: performance
- 4:37Architecture overview
- 5:40Life of an editing event 4
- 7:58Cocoa front-end
- 9:09Operational Transformation
- 12:26Xi-rope internals
- 16:46Monoid homomorphisms 2
- 18:27Incremental word wrap
- 19:32Plug-in architecture
- 23:26Syntax highlighting future
- 29:02xi-unicode
- 32:01Community involvement
- 33:41Questions
related talks
51mA Collaborative Editor in Rust, WebAssembly and Vue js
49mThe State of Rust Ul
22mRewriting Vim in Rust: Lessons Learned
29m"High-Level Rust and the Future of Application Development"
30mRust: an alternative to high-level programming languages?
30mA note on Editor performance
12mBuilding a rich text editor with Svelte 5
40mNew algorithms for collaborative text editing
