A simple CPU rendered GUI IDE experience.
this is a strange thing
bendn 3 weeks ago
parent 545f3f6 · commit afe0b74
-rw-r--r--src/edi/st.rs40
1 files changed, 39 insertions, 1 deletions
diff --git a/src/edi/st.rs b/src/edi/st.rs
index 3d0f282..7eea337 100644
--- a/src/edi/st.rs
+++ b/src/edi/st.rs
@@ -92,7 +92,45 @@ Hovering(x) => {
>, ((usize, usize), TextDocumentPositionParams)) => (h, d)) => Hovering({ let mut x = x; x.request_d(h, d); x }),
C(_) => _ [Hover],
MovedOut => Default,
- K(_) => _,
+
+ // reconsidering
+ K(Key::Character("s") if ctrl()) => Save [Save],
+ K(Key::Character("q") if ctrl()) => Dead [Quit],
+ K(Key::Character("v") if ctrl()) => Default [Paste],
+ K(Key::Character("z") if ctrl()) => Default [Undo],
+ K(Key::Character("d") if ctrl()) => Default [GoToMatch],
+ K(Key::Character("y") if ctrl()) => Default [Redo],
+ K(Key::Character("f") if ctrl()) => Procure((default(), InputRequest::Search)),
+ K(Key::Character("o") if ctrl()) => Procure((default(), InputRequest::OpenFile)),
+ K(Key::Character("c") if ctrl()) => Default ,
+ K(Key::Character("l") if ctrl()) => Default [Symbols],
+ K(Key::Character(".") if ctrl()) => Default [CodeAction],
+ K(Key::Character("0") if ctrl()) => Default [MatchingBrace],
+ K(Key::Character("`") if ctrl()) => Default [SpawnTerminal],
+ K(Key::Character("/") if ctrl()) => Default [Comment(State => State::Default)],
+ K(Key::Character("p") if ctrl()) => Command(Commands => default()),
+ K(Key::Named(Backspace) if alt()) => Default [DeleteBracketPair],
+ K(Key::Named(F1)) => Procure((default(), InputRequest::RenameSymbol)),
+ K(Key::Named(F10)) => GoToL(GoToList => default()) [GoToImplementations],
+ K(Key::Named(k @ (ArrowUp | ArrowDown)) if alt()) => Default [InsertCursor(Direction => {
+ if k == ArrowUp {Direction::Above} else { Direction::Below }
+ })],
+ K(Key::Named(ArrowUp | ArrowLeft | ArrowDown | ArrowRight | Home | End) if shift()) => Selection [StartSelection],
+ M(MouseButton::Left if shift()) => Selection [StartSelection],
+ M(MouseButton::Left if alt()) => Default [InsertCursorAtMouse],
+ M(MouseButton::Left if ctrl()) => Default [GoToDefinition(Option<TextDocumentPositionParams> => None)],
+ M(MouseButton::Left) => Default [MoveCursor],
+ K(Key::Character("=") if ctrl()) => Default [NavForward],
+ K(Key::Character("-") if ctrl()) => Default [NavBack],
+ M(MouseButton::Back) => Default [NavBack],
+ M(MouseButton::Forward) => _ [NavForward],
+ C(((usize, usize)) => .. if unsafe { CLICKING }) => Selection [StartSelection],
+ Changed => RequestBoolean(BoolRequest => BoolRequest::ReloadFile),
+ K(Key::Named(Escape)) => Default [Escape],
+ K(_) => Default [Edit],
+ // duplicate zone
+
+
M(MouseButton::Left if ctrl()) => Default [GoToDefinition(x.request.map(|x| x.1.1).or(x.result.map(|x| x.tdpp)))],
M(_) => _ [ClickedHover],
},