A simple CPU rendered GUI IDE experience.
Diffstat (limited to 'src/edi/st.rs')
-rw-r--r--src/edi/st.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/edi/st.rs b/src/edi/st.rs
index 4c3bab3..e68da23 100644
--- a/src/edi/st.rs
+++ b/src/edi/st.rs
@@ -34,6 +34,12 @@ rust_fsm::state_machine! {
pub(crate) State => #[derive(Debug)] pub(crate) Action => #[derive(Debug)] pub(crate) Do
Dead => K(Key => _) => Dead,
+ K(Key::Named(Space)) => SpaceMode ( SpaceModes => default() ),
+
+SpaceMode(_) => K(Key::Named(Escape)) => Normal,
+SpaceMode(t) => C(_) => _,
+SpaceMode(t) => K(_) => _,
+
Default => {
K(Key::Character(x) if x == "s" && ctrl()) => Save [Save],
K(Key::Character(x) if x == "q" && ctrl()) => Dead [Quit],