From a6cf1831c022546d8b882d5b7d1d10092e765dd5 Mon Sep 17 00:00:00 2001 From: alice pellerin Date: Sun, 22 Mar 2026 20:09:47 -0500 Subject: [PATCH] fix space rendering for partial chunks --- src/buffer/widget.rs | 23 +++++++++++++---------- src/main.rs | 1 - 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/src/buffer/widget.rs b/src/buffer/widget.rs index d74e718..fe4d0cc 100644 --- a/src/buffer/widget.rs +++ b/src/buffer/widget.rs @@ -188,16 +188,19 @@ mod hex { bytes: &[u8] ) -> impl Iterator> { #[allow(unstable_name_collisions)] - bytes - .iter() - .copied() - .zip(address..) - .map(|(byte, address)| self.render_byte_at(address, byte)) - .interleave( - (address..) - .take(BYTES_PER_CHUNK) - .skip(1) - .map(|address| self.render_space_before(address)) + iter::once(self.render_large_space_before(address)) + .chain( + bytes + .iter() + .copied() + .zip(address..) + .map(|(byte, address)| self.render_byte_at(address, byte)) + .interleave( + (address..) + .take(BYTES_PER_CHUNK) + .skip(1) + .map(|address| self.render_space_before(address)) + ) ) } diff --git a/src/main.rs b/src/main.rs index 0bbb782..3d07055 100644 --- a/src/main.rs +++ b/src/main.rs @@ -27,7 +27,6 @@ const LINES_OF_PADDING: usize = 5; const BYTES_OF_PADDING: usize = LINES_OF_PADDING * BYTES_PER_LINE; // TODO: -// - some way to inspect just one interpretation // - search // - ascii and bytes (`/` and `A-/`?) // - diffing