style: fill diff gaps with adjacent slash stripes
This commit is contained in:
+4
-12
@@ -1296,9 +1296,8 @@ fn draw_diff_pane(
|
||||
let style = Style::default().fg(Color::Rgb(72, 72, 72)).bg(Color::Reset);
|
||||
let buffer = frame.buffer_mut();
|
||||
for x in 0..content.width {
|
||||
let slash = (usize::from(x) % 2 + aligned_row % 2 + left % 2) % 2 == 0;
|
||||
buffer[(content.x + x, row_area.y)]
|
||||
.set_symbol(if slash { "/" } else { " " })
|
||||
.set_symbol("/")
|
||||
.set_style(style);
|
||||
}
|
||||
continue;
|
||||
@@ -2568,8 +2567,7 @@ mod tests {
|
||||
let gap_symbols: Vec<_> = (after.x + 1..after.right() - 1)
|
||||
.map(|x| {
|
||||
let cell = &buffer[(x, y)];
|
||||
let column = x - after.x - 1;
|
||||
assert_eq!(cell.symbol(), [" ", "/"][usize::from(column % 2)]);
|
||||
assert_eq!(cell.symbol(), "/");
|
||||
assert_eq!(cell.bg, Color::Reset);
|
||||
assert_eq!(cell.fg, Color::Rgb(72, 72, 72));
|
||||
cell.symbol().to_owned()
|
||||
@@ -2618,10 +2616,8 @@ mod tests {
|
||||
for offset in 0..2 {
|
||||
let y = before.y + 1 + offset;
|
||||
for x in before.x + 1..before.right() - 1 {
|
||||
let column = x - before.x - 1;
|
||||
let cell = &buffer[(x, y)];
|
||||
let pattern = if offset == 0 { ["/", " "] } else { [" ", "/"] };
|
||||
assert_eq!(cell.symbol(), pattern[usize::from(column % 2)]);
|
||||
assert_eq!(cell.symbol(), "/");
|
||||
assert_eq!(cell.bg, Color::Reset);
|
||||
assert_eq!(cell.fg, Color::Rgb(72, 72, 72));
|
||||
}
|
||||
@@ -2641,11 +2637,7 @@ mod tests {
|
||||
render_diff(&mut terminal, &diff, &mut panels);
|
||||
let buffer = terminal.backend().buffer();
|
||||
for x in before.x + 1..before.right() - 1 {
|
||||
let column = x - before.x - 1;
|
||||
assert_eq!(
|
||||
buffer[(x, before.y + 1)].symbol(),
|
||||
["/", " "][usize::from(column % 2)],
|
||||
);
|
||||
assert_eq!(buffer[(x, before.y + 1)].symbol(), "/");
|
||||
}
|
||||
assert_eq!(buffer[(before.x, before.y + 1)].symbol(), "│");
|
||||
assert_eq!(buffer[(before.right() - 1, before.y + 1)].symbol(), "│");
|
||||
|
||||
Reference in New Issue
Block a user