diff --git a/turntable/src/main.rs b/turntable/src/main.rs index ef457bc..1d7277c 100644 --- a/turntable/src/main.rs +++ b/turntable/src/main.rs @@ -111,14 +111,14 @@ fn lsdir(env: &Environment<'_>) { println("unexpected eod"); break; } - print(" - "); + print("- "); liblbos::syscalls::write_terminal( &record.name[..record.name.iter().position(|&x| x == 0).unwrap_or(11)], ); if record.record_type == liblbos::fs::RecordType::Directory as u8 { - print(" (dir)"); + print("(dir)"); } else { - print(" (file)"); + print("(file)"); } } print("\n"); @@ -301,7 +301,7 @@ extern "C" fn main() { print(VERSION); print("\n"); - println("(c) 2025 Real Microsoft, LLC"); + println("(c) 2025\nReal Microsoft, LLC"); print("> "); @@ -319,20 +319,18 @@ extern "C" fn main() { if *c == 0x7f && cmdbuf_len > 0 { cmdbuf_len -= 1; print("\x08 \x08"); - } else { + } else if *c == b'\r' { + execute(unsafe { + core::str::from_utf8_unchecked(&cmdbuf[0..cmdbuf_len]) + }, + &mut environment); + cmdbuf_len = 0; + print("> "); + break; + } else if !c.is_ascii_control() { cmdbuf[cmdbuf_len] = *c; cmdbuf_len += 1; - if *c == b'\r' { - execute(unsafe { - core::str::from_utf8_unchecked(&cmdbuf[0..cmdbuf_len - 1]) - }, - &mut environment); - cmdbuf_len = 0; - print("> "); - break; - } else { - liblbos::syscalls::write_terminal(&[*c]); - } + liblbos::syscalls::write_terminal(&[*c]); } } }