╭─────────────╮ │scroll to top│ ╰─────────────╯ ╭ Title.zig ────────────────────────────────────────────────────╮ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ╰───────────────────────────────────────────────────────────────╯
╭────╮ ╭ clone ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ╮ │http│ ssh │ │ ╰────╯ ╰ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ╯
556 var pattern: u6 = 0; 557 for (0..3) |sub_row| { 558 for (0..2) |sub_col| { 559 const row_idx = text_row * 3 + sub_row; 560 const col_idx = text_col * 2 + sub_col; 561 if (kept[row_idx][col_idx]) { 562 pattern |= @as(u6, 1) << @intCast(sub_row * 2 + sub_col); 563 } 564 } 565 } 566 const cp = sextantCodepoint(pattern); 567 var utf8_buf: [4]u8 = undefined; 568 const len = std.unicode.utf8Encode(cp, &utf8_buf) catch unreachable; 569 rows[text_row] = rows[text_row] ++ utf8_buf[0..len]; 570 } 571 } 572 } 573 return rows[0] ++ "\n" ++ rows[1] ++ "\n" ++ rows[2]; 574 } 575 } 576