summaryrefslogtreecommitdiff
path: root/src/main.zig
blob: 30aacca6e484dbc95ec061fd9732a093e098b725 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
const std = @import("std");

var stdin_buffer: [4096]u8 = undefined;
var stdin_reader = std.fs.File.stdin().readerStreaming(&stdin_buffer);
const stdin = &stdin_reader.interface;

var stdout_writer = std.fs.File.stdout().writerStreaming(&.{});
const stdout = &stdout_writer.interface;

pub fn main() !void {
    while (true) {
        try stdout.print("$ ", .{});

        const command = try stdin.takeDelimiter('\n');
        if (command) |cmd| {
            if (std.mem.eql(u8, cmd, "exit")) {
                break;
            }
            try stdout.print("{s}: command not found\n", .{cmd});
        } else {
            break;
        }
    }
}