A Rust implementation of the Kilo text editor tutorial: https://viewsourcecode.org/snaptoken/kilo/index.html
src | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
README.md |
Oxidized Kilo
An experimental reimplementation of the Kilo tutorial with a Rust implementation.
Implementation notes:
- The
editor
prefix has been removed from all the editor methods. Since this implementation usesimpl
s on a sharedEditor
struct, the prefix is redundant - Any C equivalent functionality based on memory allocating/deallocating, or other manual book-keeping is instead implemented in a more idiomatic Rust fashion.
- Row structs are referenced by their index in the Editor struct, rather than as a direct reference in method calls. This generally simplifies dealing with the rules of Rust (borrow checker).
Known issues:
- Tab key does not expand to an indent