Do you wish to register an account?
A Rust implementation of the Kilo text editor tutorial:
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Timothy Warren 44a1d5ce9a Be more robust in restoring canonical mode 1 year ago
src Be more robust in restoring canonical mode 1 year ago
.gitignore Ugly progress commit 1 year ago
Cargo.lock Update version 1 year ago
Cargo.toml Update version 1 year ago Minor code cleanup 1 year ago

Oxidized Kilo

A reimplementation of the Kilo tutorial in Rust.

Implementation notes:

  • The editor prefix has been removed from all the editor methods. Since this implementation uses impls on a shared Editor 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).
  • The prompt method of the editor can not take an arbitrary formatting string, due to Rust requiring a string literal for string formatting macros.

Additions / Changes

  • Reverse coloring for search results, so comment types can have different colors
  • Two separate vectors are used to define the two types of keywords, rather than the weird pipe suffix