@@ -21,6 +21,7 @@ import (
2121
2222const narrowWidth = 55
2323const wideWidth = 80
24+ const maxBeforeColorAlternating = 14
2425
2526func pickWidth (mode tally.TallyMode , showEmail bool ) int {
2627 wideMode := mode == tally .FilesMode || mode == tally .LinesMode
@@ -309,39 +310,51 @@ func writeTable(
309310 fmt .Printf ("├%s┤\n " , rule )
310311
311312 // -- Write table rows --
312- for _ , t := range tallies {
313+ totalRows := len (tallies )
314+ for i , t := range tallies {
315+ alternating := ""
316+ if totalRows > maxBeforeColorAlternating && i % 2 == 1 {
317+ alternating = pretty .Invert
318+ }
319+
313320 lines := fmt .Sprintf (
314321 "%s%7s%s / %s%7s%s" ,
315322 pretty .Green ,
316323 format .Number (t .LinesAdded ),
317- pretty .Reset ,
324+ pretty .DefaultColor ,
318325 pretty .Red ,
319326 format .Number (t .LinesRemoved ),
320- pretty .Reset ,
327+ pretty .DefaultColor ,
321328 )
322329
323330 if mode == tally .LinesMode || mode == tally .FilesMode {
324331 fmt .Printf (
325- "│%s %-11s %7s %7s %17s│\n " ,
332+ "│%s%s %-11s %7s %7s %17s%s│\n " ,
333+ alternating ,
326334 formatAuthor (t , showEmail , colwidth - 36 - 13 ),
327335 format .RelativeTime (progStart , t .LastCommitTime ),
328336 format .Number (t .Commits ),
329337 format .Number (t .FileCount ),
330338 lines ,
339+ pretty .Reset ,
331340 )
332341 } else if mode == tally .FirstModifiedMode {
333342 fmt .Printf (
334- "│%s %-11s %7s│\n " ,
343+ "│%s%s %-11s %7s%s│\n " ,
344+ alternating ,
335345 formatAuthor (t , showEmail , colwidth - 22 ),
336346 format .RelativeTime (progStart , t .FirstCommitTime ),
337347 format .Number (t .Commits ),
348+ pretty .Reset ,
338349 )
339350 } else {
340351 fmt .Printf (
341- "│%s %-11s %7s│\n " ,
352+ "│%s%s %-11s %7s%s│\n " ,
353+ alternating ,
342354 formatAuthor (t , showEmail , colwidth - 22 ),
343355 format .RelativeTime (progStart , t .LastCommitTime ),
344356 format .Number (t .Commits ),
357+ pretty .Reset ,
345358 )
346359 }
347360 }
0 commit comments