1 unstable release
| 0.1.0 | Nov 15, 2025 |
|---|
#228 in Text editors
79KB
1.5K
SLoC
gpuikit-editor
🚧 This crate is a work in progress – it is currently in a prototype state 🚧
A open editor component for gpui – aspires to a Monaco-equivalent for gpui
Game plan
Building a standalone editor component is probably like trying to boil the ocean... so I'll be trying to break it down into some smaller steps.
- Just make it work for the simplest possible usecase, with the simplest possible approach (GapBuffer-based.)
- Split up the pieces that should be generic/shared with other components - likely split up into smaller crates to power this and gpui-kit. Think
theme,utils,highlight, etc. - Start using in anger, leveling up testing, using in other projects, etc.
- Syntax highligting???? LSP???, ???
- Level up the editing approach - Likely some mix of the current approach and ropes, sumtree.
There are probably 800 missing steps in there, we'll just have to figure it out on the way.
Note: It's likely this crate becomes gpui-kit-editor in the future.
Try it:
- Navigation: Arrow keys for cursor movement
- Editing: Type to insert, Backspace/Delete to remove text
- Themes:
Cmd+T/Cmd+Shift+Tto cycle through themes - Languages:
Cmd+L/Cmd+Shift+Lto cycle through language samples
License
Licensed under either of:
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
By submitting a contribution to this repository, you agree to license it under both Apache-2.0 and MIT as described above.
Third-party licenses
- gpui: LICENSE-APACHE
Dependencies
~53–96MB
~1.5M SLoC