#include #include #include using os::File; Result luna_main(int argc, char** argv) { StringView pathname; os::ArgumentParser parser; parser.add_description("Edit a file using basic line-based shell editing."_sv); parser.add_positional_argument(pathname, "path"_sv, true); parser.parse(argc, argv); auto file = TRY(File::open_or_create(pathname, File::WriteOnly)); auto input = File::standard_input(); while (1) { String line = TRY(input->read_line()); if (line.is_empty()) break; TRY(file->write(line.view())); } return 0; }