A simple CPU rendered GUI IDE experience.
Adding ability to open file menu in space mode
| -rw-r--r-- | src/edi.rs | 1 | ||||
| -rw-r--r-- | src/edi/st.rs | 12 |
2 files changed, 8 insertions, 5 deletions
@@ -260,6 +260,7 @@ impl Editor { .map(|x| x.path().to_owned()) .collect::<Vec<_>>() }); + assert!(me.tree.is_some()); let l = me.workspace.as_ref().map(|workspace| { let dh = std::panic::take_hook(); let main = std::thread::current_id(); diff --git a/src/edi/st.rs b/src/edi/st.rs index d7e60ff..e2a14b7 100644 --- a/src/edi/st.rs +++ b/src/edi/st.rs @@ -39,7 +39,7 @@ Dead => K(Key => _) => Dead, Normal => { K(Key::Character(x) if x == "i") => Insert, K(Key::Character(x) if x == ":") => Command (Commands => default()), - K(Key::Named(Space)) => SpaceMode ( SpaceModes => default() ), + K(Key::Named(Space)) => SpaceMode, K(_) => _, M(_) => _, C(_) => _, @@ -59,9 +59,11 @@ Command(mut t) => K(k) => Command({ handle2(&k, &mut t.tedit, None); t }), Command(t) => C(_) => _, Command(t) => K(_) => _, -SpaceMode(_) => K(Key::Named(Escape)) => Normal, -SpaceMode(t) => C(_) => _, -SpaceMode(t) => K(_) => _, +SpaceMode => K(Key::Named(Escape)) => Normal, +SpaceMode => K(Key::Character(x) if x == "f") => _ [Symbols], +SpaceMode => K(Key::Character(x) if x == "a") => _ [CodeAction], +SpaceMode => C(_) => _, +SpaceMode => K(_) => _, Default => { K(Key::Character(x) if x == "n" && ctrl()) => Normal, @@ -103,7 +105,7 @@ Symbols(Rq { result: Some(_x), request: _rq }) => { K(Key::Named(ArrowDown)) => _ [SymbolsSelectNext], K(Key::Named(ArrowUp | Tab)) => _ [SymbolsSelectPrev], K(Key::Named(Enter)) => _ [SymbolsSelect], - K(Key::Named(Escape)) => Default, + K(Key::Named(Escape)) => Normal, }, Symbols(Rq::<Symbols, Option<SymbolsList>, (), AQErr> => _rq) => { K(Key::Character(x) if x == "d" && ctrl()) => _ [SwitchType], // crahs cond methinks |