Skip to content

Find a suitable swaynag alternative #3

@bernardassan

Description

@bernardassan

References

    fn swaynag(arena: mem.Allocator, comptime cmd: []const u8) void {
        var child: process.Child = .init(&.{
            "sh", "-c",
            \\cat <<EOF | fzf +s --tac
            \\
            ++ cmd ++
                \\EOF
                \\
        }, arena);
        child.stderr_behavior = .Pipe;
        child.stdin_behavior = .Pipe;
        child.stdout_behavior = .Pipe;

        const exec_status = child.spawnAndWait() catch unreachable;
        debug.assert(exec_status.Exited == 0);

        var stdout: std.ArrayList(u8) = .empty;
        var stderr: std.ArrayList(u8) = .empty;
        child.collectOutput(arena, &stdout, &stderr, 1024) catch unreachable;
        log.info("swaynag:output: {s}\n", .{stdout.items});
        log.info("swaynag:error: {s}\n", .{stderr.items});
    }

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions