A terminal based spreadsheet program built in Rust.

This is my first time using Rust, and I thought a terminal spreadsheet program would be a great project to get started with. This was only intended to be a toy spreadsheet, but it should be able to read/write arbitrary CSV files and do simple math.
The Rust by Example book was a very helpful resource along the way.
The app is split into Nav mode and Edit mode.
When in Nav mode:
- Press
q
to exit the program - Press
ctrl+s
to save the file (then type in a file name and pressenter
) - Use the
arrow keys
to move around - Press
=
to start editing a cell (see Edit mode controls below) - Press
Backspace
to clear a cell - Use
wasd
to scroll the viewport - Press
ctrl+z
to undo - Press
ctrl+y
to redo
When in Edit mode:
- Press
enter
to finish editing the cell - Press
escape
to abort your changes - Use
left-arrow
andright-arrow
to move the cursor
- Status bar
- Compute values
- Edit cursor
- Compute with cell references (A1, B2)
- Support for string values
- Undo / redo
- Save / load
- Pretty error messages