Highlight any trailing whitespace in the diff view using a red background as is done in the terminal when color is enabled. Suggested-by: Tor Arvid Lund <torarvid@xxxxxxxxx> Signed-off-by: Pat Thoyts <patthoyts@xxxxxxxxxxxxxxxxxxxxx> --- Tor Arvid Lund <torarvid@xxxxxxxxx> writes: >Hi, all! When doing "git diff", whitespaces before EOL, for instance, >are marked with red background in my terminal. > >Is it possible to see this coloring in git gui too? > >-Tor Arvid- This patch should do the job. It probably should get some configuration item to control this though. git-gui.sh | 1 + lib/diff.tcl | 9 ++++++++- 2 files changed, 9 insertions(+), 1 deletions(-) diff --git a/git-gui.sh b/git-gui.sh index 25229a4..8d652f0 100755 --- a/git-gui.sh +++ b/git-gui.sh @@ -3314,6 +3314,7 @@ pack .vpane.lower.diff.header -side top -fill x pack .vpane.lower.diff.body -side bottom -fill both -expand 1 $ui_diff tag conf d_cr -elide true +$ui_diff tag conf ws -background red $ui_diff tag conf d_@ -foreground blue -font font_diffbold $ui_diff tag conf d_+ -foreground {#00a000} $ui_diff tag conf d_- -foreground red diff --git a/lib/diff.tcl b/lib/diff.tcl index c628750..83e3f6d 100644 --- a/lib/diff.tcl +++ b/lib/diff.tcl @@ -434,7 +434,14 @@ proc read_diff {fd cont_info} { } } } - $ui_diff insert end $line $tags + if {[regexp -indices {^.*\S(\s+)$} $line -> ndx]} { + set ndx [expr {[lindex $ndx 0] - 1}] + set nonws [string range $line 0 $ndx] + $ui_diff insert end $nonws $tags \ + [string range $line [incr ndx] end] [concat $tags ws] + } else { + $ui_diff insert end $line $tags + } if {[string index $line end] eq "\r"} { $ui_diff tag add d_cr {end - 2c} } -- 1.7.3.1.msysgit.0 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html