diff options
| author | Jonas Maier <> | 2026-03-05 11:26:45 +0100 |
|---|---|---|
| committer | Jonas Maier <> | 2026-03-05 11:26:45 +0100 |
| commit | e26fb0123eaafb0889537c92ba66592c64249c1d (patch) | |
| tree | 92f3b758127ffd17ebc41027434898f8444ebd5e /src | |
| parent | 7db3154e9ebdf3c4e4863a9f2ab13daffe6e7285 (diff) | |
| download | pish-e26fb0123eaafb0889537c92ba66592c64249c1d.tar.gz | |
some more special key codes
Diffstat (limited to 'src')
| -rw-r--r-- | src/main.rs | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/main.rs b/src/main.rs index 2cb1ba7..44985fb 100644 --- a/src/main.rs +++ b/src/main.rs @@ -43,6 +43,7 @@ fn run_command(raw: &ScopedRawMode, line: Vec<u8>) { let parsed = match parsed { Ok(p) => p, Err(err) => { + println!("{line:?}"); print!("{err:?}\r\n{PROMPT}"); return; } @@ -148,7 +149,16 @@ fn run_command(raw: &ScopedRawMode, line: Vec<u8>) { print!("\r{status_string}{PROMPT}"); } +fn env_path() { + let path = std::env::var("PATH").unwrap(); + for p in path.split(":") { + println!("{p}"); + } +} + fn event_loop() { + env_path(); + let stdin = io::stdin(); let stdout = io::stdout(); @@ -176,6 +186,18 @@ fn event_loop() { break; } + // Ctrl+L + 12 => todo!(), + + // Ctrl+R + 18 => { + // restart shell + raw.disable(); + let _ = Command::new("cargo").arg("run").status(); + raw.disable(); + std::process::exit(0); + }, + // Enter b'\r' => { let line = line.dump(); |
