hachem.wtf
aboutsummaryrefslogtreecommitdiff
path: root/kernel/shell.rv
diff options
context:
space:
mode:
authorhachem <im@hachem.wtf>2026-09-25 17:24:02 +0200
committerhachem <im@hachem.wtf>2026-09-25 17:24:02 +0200
commit6593ddc56fc96df0a566cc3b1a3e9396e4f3b2c6 (patch)
tree3760feea16872d3068001c673a0823b4690cad9b /kernel/shell.rv
parent12cb5114fa02bc8ab88914c0e25100559780363a (diff)
chore: update revo + cursor
Diffstat (limited to 'kernel/shell.rv')
-rw-r--r--kernel/shell.rv21
1 files changed, 10 insertions, 11 deletions
diff --git a/kernel/shell.rv b/kernel/shell.rv
index 562f3c4..9d3d95d 100644
--- a/kernel/shell.rv
+++ b/kernel/shell.rv
@@ -38,18 +38,17 @@ end
fn cmd_time() puts("utc " ~ bcd(rtc(4)) ~ ":" ~ bcd(rtc(2)) ~ ":" ~ bcd(rtc(0)) ~ "\n")
fn run(line) do
+ if line:trim():len() == 0 do puts("> ") return :nil end
const words = line:split(" ")
const cmd = words[0]
- if cmd == "help" do cmd_help() end
- else if cmd == "clear" do cmd_clear() end
- else if cmd == "bars" do cmd_bars() end
- else if cmd == "time" do cmd_time() end
- else if cmd == "run" do cmd_run() end
- else if cmd == "zoom" do cmd_zoom(words) end
- else if cmd == "echo" do
- if line:len() > 5 puts(line:sub(5, line:len() - 5) ~ "\n") else puts("\n")
- end
- else if line:len() == 0 do :nil end
- else do puts("unknown command: " ~ cmd ~ "\n") end
+ match cmd
+ | "help" => cmd_help()
+ | "clear" => cmd_clear()
+ | "bars" => cmd_bars()
+ | "time" => cmd_time()
+ | "run" => cmd_run()
+ | "zoom" => cmd_zoom(words)
+ | "echo" => if line:len() > 5 puts(line:sub(5, line:len() - 5) ~ "\n") else puts("\n")
+ | _ => puts("unknown command: " ~ cmd ~ "\n")
puts("> ")
end