From 5ba60783543dd98468121bdbe7a16b22b4b37aff Mon Sep 17 00:00:00 2001 From: Martin von Zweigbergk Date: Mon, 24 Jun 2024 18:31:31 -0700 Subject: [PATCH] cli: add label for line numbers in `--color-words` diff If you want to set a background color on added/removed lines, you currently get the same style on the line numbers. This patch lets you specify a different style by overriding it on the line numbers. --- cli/src/diff_util.rs | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/cli/src/diff_util.rs b/cli/src/diff_util.rs index 41cdd6893..7ea57d2f4 100644 --- a/cli/src/diff_util.rs +++ b/cli/src/diff_util.rs @@ -375,21 +375,25 @@ fn show_color_words_diff_line( diff_line: &DiffLine, ) -> io::Result<()> { if diff_line.has_left_content { - write!( - formatter.labeled("removed"), - "{:>4}", - diff_line.left_line_number - )?; + formatter.with_label("removed", |formatter| { + write!( + formatter.labeled("line_number"), + "{:>4}", + diff_line.left_line_number + ) + })?; write!(formatter, " ")?; } else { write!(formatter, " ")?; } if diff_line.has_right_content { - write!( - formatter.labeled("added"), - "{:>4}", - diff_line.right_line_number - )?; + formatter.with_label("added", |formatter| { + write!( + formatter.labeled("line_number"), + "{:>4}", + diff_line.right_line_number + ) + })?; write!(formatter, ": ")?; } else { write!(formatter, " : ")?;