const ceditline = @cImport({ @cInclude("stdio.h"); @cInclude("editline.h"); }); const std = @import("std"); const io = std.io; pub fn readline(prompt: [*c]const u8) ?[]u8 { var line = ceditline.readline(@as([*c]const u8, prompt)); if (line == 0) { std.c.free(line); return null; } return std.mem.sliceTo(line, 0); } pub fn init() void { ceditline.rl_initialize(); } pub fn deinit() void { ceditline.rl_uninitialize(); }