git@vger.kernel.org list mirror (unofficial, one of many)
 help / color / Atom feed
From: "Johannes Schindelin via GitGitGadget" <gitgitgadget@gmail.com>
To: git@vger.kernel.org
Cc: Junio C Hamano <gitster@pobox.com>,
	Johannes Schindelin <johannes.schindelin@gmx.de>
Subject: [PATCH v5 21/21] range-diff: use dim/bold cues to improve dual color mode
Date: Fri, 10 Aug 2018 15:14:56 -0700 (PDT)
Message-ID: <ccf8c1bb2459d33c7dc97098c08c47ca7d77ed3e.1533939264.git.gitgitgadget@gmail.com> (raw)
In-Reply-To: <pull.1.v5.git.gitgitgadget@gmail.com>

From: Johannes Schindelin <johannes.schindelin@gmx.de>

It *is* a confusing thing to look at a diff of diffs. All too easy is it
to mix up whether the -/+ markers refer to the "inner" or the "outer"
diff, i.e. whether a `+` indicates that a line was added by either the
old or the new diff (or both), or whether the new diff does something
different than the old diff.

To make things easier to process for normal developers, we introduced
the dual color mode which colors the lines according to the commit diff,
i.e. lines that are added by a commit (whether old, new, or both) are
colored in green. In non-dual color mode, the lines would be colored
according to the outer diff: if the old commit added a line, it would be
colored red (because that line addition is only present in the first
commit range that was specified on the command-line, i.e. the "old"
commit, but not in the second commit range, i.e. the "new" commit).

However, this dual color mode is still not making things clear enough,
as we are looking at two levels of diffs, and we still only pick a color
according to *one* of them (the outer diff marker is colored
differently, of course, but in particular with deep indentation, it is
easy to lose track of that outer diff marker's background color).

Therefore, let's add another dimension to the mix. Still use
green/red/normal according to the commit diffs, but now also dim the
lines that were only in the old commit, and use bold face for the lines
that are only in the new commit.

That way, it is much easier not to lose track of, say, when we are
looking at a line that was added in the previous iteration of a patch
series but the new iteration adds a slightly different version: the
obsolete change will be dimmed, the current version of the patch will be
bold.

At least this developer has a much easier time reading the range-diffs
that way.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
---
 Documentation/config.txt         |  6 ++++--
 Documentation/git-range-diff.txt | 17 +++++++++++++----
 color.h                          |  6 ++++++
 diff.c                           | 28 ++++++++++++++++++++++------
 diff.h                           |  8 +++++++-
 5 files changed, 52 insertions(+), 13 deletions(-)

diff --git a/Documentation/config.txt b/Documentation/config.txt
index 63365dcf3..90241ed77 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -1193,8 +1193,10 @@ color.diff.<slot>::
 	(highlighting whitespace errors), `oldMoved` (deleted lines),
 	`newMoved` (added lines), `oldMovedDimmed`, `oldMovedAlternative`,
 	`oldMovedAlternativeDimmed`, `newMovedDimmed`, `newMovedAlternative`
-	and `newMovedAlternativeDimmed` (See the '<mode>'
-	setting of '--color-moved' in linkgit:git-diff[1] for details).
+	`newMovedAlternativeDimmed` (See the '<mode>'
+	setting of '--color-moved' in linkgit:git-diff[1] for details),
+	`contextDimmed`, `oldDimmed`, `newDimmed`, `contextBold`,
+	`oldBold`, and `newBold` (see linkgit:git-range-diff[1] for details).
 
 color.decorate.<slot>::
 	Use customized color for 'git log --decorate' output.  `<slot>` is one
diff --git a/Documentation/git-range-diff.txt b/Documentation/git-range-diff.txt
index 82c71c682..f693930fd 100644
--- a/Documentation/git-range-diff.txt
+++ b/Documentation/git-range-diff.txt
@@ -35,10 +35,19 @@ OPTIONS
 	When the commit diffs differ, `git range-diff` recreates the
 	original diffs' coloring, and adds outer -/+ diff markers with
 	the *background* being red/green to make it easier to see e.g.
-	when there was a change in what exact lines were added. This is
-	known to `range-diff` as "dual coloring". Use `--no-dual-color`
-	to revert to color all lines according to the outer diff markers
-	(and completely ignore the inner diff when it comes to color).
+	when there was a change in what exact lines were added.
++
+Additionally, the commit diff lines that are only present in the first commit
+range are shown "dimmed" (this can be overridden using the `color.diff.<slot>`
+config setting where `<slot>` is one of `contextDimmed`, `oldDimmed` and
+`newDimmed`), and the commit diff lines that are only present in the second
+commit range are shown in bold (which can be overridden using the config
+settings `color.diff.<slot>` with `<slot>` being one of `contextBold`,
+`oldBold` or `newBold`).
++
+This is known to `range-diff` as "dual coloring". Use `--no-dual-color`
+to revert to color all lines according to the outer diff markers
+(and completely ignore the inner diff when it comes to color).
 
 --creation-factor=<percent>::
 	Set the creation/deletion cost fudge factor to `<percent>`.
diff --git a/color.h b/color.h
index 33e786342..98894d6a1 100644
--- a/color.h
+++ b/color.h
@@ -36,6 +36,12 @@ struct strbuf;
 #define GIT_COLOR_BOLD_BLUE	"\033[1;34m"
 #define GIT_COLOR_BOLD_MAGENTA	"\033[1;35m"
 #define GIT_COLOR_BOLD_CYAN	"\033[1;36m"
+#define GIT_COLOR_FAINT_RED	"\033[2;31m"
+#define GIT_COLOR_FAINT_GREEN	"\033[2;32m"
+#define GIT_COLOR_FAINT_YELLOW	"\033[2;33m"
+#define GIT_COLOR_FAINT_BLUE	"\033[2;34m"
+#define GIT_COLOR_FAINT_MAGENTA	"\033[2;35m"
+#define GIT_COLOR_FAINT_CYAN	"\033[2;36m"
 #define GIT_COLOR_BG_RED	"\033[41m"
 #define GIT_COLOR_BG_GREEN	"\033[42m"
 #define GIT_COLOR_BG_YELLOW	"\033[43m"
diff --git a/diff.c b/diff.c
index ea8ecae04..ae1314952 100644
--- a/diff.c
+++ b/diff.c
@@ -70,6 +70,12 @@ static char diff_colors[][COLOR_MAXLEN] = {
 	GIT_COLOR_BOLD_YELLOW,	/* NEW_MOVED ALTERNATIVE */
 	GIT_COLOR_FAINT,	/* NEW_MOVED_DIM */
 	GIT_COLOR_FAINT_ITALIC,	/* NEW_MOVED_ALTERNATIVE_DIM */
+	GIT_COLOR_FAINT,	/* CONTEXT_DIM */
+	GIT_COLOR_FAINT_RED,	/* OLD_DIM */
+	GIT_COLOR_FAINT_GREEN,	/* NEW_DIM */
+	GIT_COLOR_BOLD,		/* CONTEXT_BOLD */
+	GIT_COLOR_BOLD_RED,	/* OLD_BOLD */
+	GIT_COLOR_BOLD_GREEN,	/* NEW_BOLD */
 };
 
 static const char *color_diff_slots[] = {
@@ -89,6 +95,12 @@ static const char *color_diff_slots[] = {
 	[DIFF_FILE_NEW_MOVED_ALT]     = "newMovedAlternative",
 	[DIFF_FILE_NEW_MOVED_DIM]     = "newMovedDimmed",
 	[DIFF_FILE_NEW_MOVED_ALT_DIM] = "newMovedAlternativeDimmed",
+	[DIFF_CONTEXT_DIM]	      = "contextDimmed",
+	[DIFF_FILE_OLD_DIM]	      = "oldDimmed",
+	[DIFF_FILE_NEW_DIM]	      = "newDimmed",
+	[DIFF_CONTEXT_BOLD]	      = "contextBold",
+	[DIFF_FILE_OLD_BOLD]	      = "oldBold",
+	[DIFF_FILE_NEW_BOLD]	      = "newBold",
 };
 
 static NORETURN void die_want_option(const char *option_name)
@@ -1294,11 +1306,13 @@ static void emit_diff_symbol_from_struct(struct diff_options *o,
 
 			set_sign = set;
 			if (c == '-')
-				set = diff_get_color_opt(o, DIFF_FILE_OLD);
+				set = diff_get_color_opt(o, DIFF_FILE_OLD_BOLD);
 			else if (c == '@')
 				set = diff_get_color_opt(o, DIFF_FRAGINFO);
-			else if (c != '+')
-				set = diff_get_color_opt(o, DIFF_CONTEXT);
+			else if (c == '+')
+				set = diff_get_color_opt(o, DIFF_FILE_NEW_BOLD);
+			else
+				set = diff_get_color_opt(o, DIFF_CONTEXT_BOLD);
 			flags &= ~DIFF_SYMBOL_CONTENT_WS_MASK;
 		}
 		emit_line_ws_markup(o, set, reset, line, len, set_sign, '+',
@@ -1336,11 +1350,13 @@ static void emit_diff_symbol_from_struct(struct diff_options *o,
 
 			set_sign = set;
 			if (c == '+')
-				set = diff_get_color_opt(o, DIFF_FILE_NEW);
+				set = diff_get_color_opt(o, DIFF_FILE_NEW_DIM);
 			else if (c == '@')
 				set = diff_get_color_opt(o, DIFF_FRAGINFO);
-			else if (c != '-')
-				set = diff_get_color_opt(o, DIFF_CONTEXT);
+			else if (c == '-')
+				set = diff_get_color_opt(o, DIFF_FILE_OLD_DIM);
+			else
+				set = diff_get_color_opt(o, DIFF_CONTEXT_DIM);
 		}
 		emit_line_ws_markup(o, set, reset, line, len, set_sign, '-',
 				    flags & DIFF_SYMBOL_CONTENT_WS_MASK, 0);
diff --git a/diff.h b/diff.h
index cca4f9d6c..e1e54256c 100644
--- a/diff.h
+++ b/diff.h
@@ -248,7 +248,13 @@ enum color_diff {
 	DIFF_FILE_NEW_MOVED = 13,
 	DIFF_FILE_NEW_MOVED_ALT = 14,
 	DIFF_FILE_NEW_MOVED_DIM = 15,
-	DIFF_FILE_NEW_MOVED_ALT_DIM = 16
+	DIFF_FILE_NEW_MOVED_ALT_DIM = 16,
+	DIFF_CONTEXT_DIM = 17,
+	DIFF_FILE_OLD_DIM = 18,
+	DIFF_FILE_NEW_DIM = 19,
+	DIFF_CONTEXT_BOLD = 20,
+	DIFF_FILE_OLD_BOLD = 21,
+	DIFF_FILE_NEW_BOLD = 22,
 };
 const char *diff_get_color(int diff_use_color, enum color_diff ix);
 #define diff_get_color_opt(o, ix) \
-- 
gitgitgadget

  parent reply index

Thread overview: 387+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-03 15:30 [PATCH 00/18] Add `branch-diff`, a `tbdiff` lookalike Johannes Schindelin
2018-05-03 15:30 ` [PATCH 01/18] Add a function to solve least-cost assignment problems Johannes Schindelin
2018-05-13 18:19   ` Duy Nguyen
2018-05-21  9:52     ` Johannes Schindelin
2018-05-03 15:30 ` [PATCH 02/18] Add a new builtin: branch-diff Johannes Schindelin
2018-05-03 16:10   ` Ramsay Jones
2018-05-03 20:25     ` Johannes Schindelin
2018-05-03 23:20       ` Ramsay Jones
2018-05-04  6:40         ` Johannes Schindelin
2018-05-04 15:37           ` Ramsay Jones
2018-05-05 19:41             ` Johannes Schindelin
2018-05-09 16:24               ` Ramsay Jones
2018-06-01  8:23                 ` Johannes Schindelin
2018-05-04 16:34           ` Elijah Newren
2018-05-05 20:24             ` Johannes Schindelin
2018-05-03 16:41   ` Duy Nguyen
2018-05-03 20:30     ` Johannes Schindelin
2018-05-03 20:32       ` Johannes Schindelin
2018-05-04  5:15         ` Duy Nguyen
2018-05-04  7:23           ` Johannes Schindelin
2018-05-04 14:44             ` Duy Nguyen
2018-05-04 15:17               ` Duy Nguyen
2018-05-04 15:23               ` Johannes Schindelin
2018-05-04 15:29                 ` Duy Nguyen
2018-05-03 16:43   ` Stefan Beller
2018-05-03 20:42     ` Johannes Schindelin
2018-05-03 21:12       ` Stefan Beller
2018-05-03 21:49         ` Johannes Schindelin
2018-05-04  3:23           ` Junio C Hamano
2018-05-04  2:35   ` Eric Sunshine
2018-05-04  6:52     ` Johannes Schindelin
2018-05-04  7:27       ` Eric Sunshine
2018-05-03 15:30 ` [PATCH 03/18] branch-diff: first rudimentary implementation Johannes Schindelin
2018-05-03 16:30   ` Ramsay Jones
2018-05-03 20:44     ` Johannes Schindelin
2018-05-03 17:06   ` Stefan Beller
2018-05-03 21:01     ` Johannes Schindelin
2018-05-03 21:19       ` Stefan Beller
2018-05-03 22:00         ` Johannes Schindelin
2018-05-04  2:35   ` Eric Sunshine
2018-05-04  7:03     ` Johannes Schindelin
2018-05-04  4:56   ` Junio C Hamano
2018-05-04  7:18     ` Johannes Schindelin
2018-05-03 15:30 ` [PATCH 04/18] branch-diff: improve the order of the shown commits Johannes Schindelin
2018-05-03 15:30 ` [PATCH 05/18] branch-diff: also show the diff between patches Johannes Schindelin
2018-05-04  2:51   ` Eric Sunshine
2018-05-04  3:15     ` Eric Sunshine
2018-05-04  7:15     ` Johannes Schindelin
2018-05-03 15:30 ` [PATCH 06/18] branch-diff: right-trim commit messages Johannes Schindelin
2018-05-03 15:30 ` [PATCH 07/18] branch-diff: indent the diffs just like tbdiff Johannes Schindelin
2018-05-03 15:30 ` [PATCH 08/18] branch-diff: suppress the diff headers Johannes Schindelin
2018-05-03 15:30 ` [PATCH 09/18] branch-diff: adjust the output of the commit pairs Johannes Schindelin
2018-05-03 15:30 ` [PATCH 10/18] branch-diff: do not show "function names" in hunk headers Johannes Schindelin
2018-05-03 15:30 ` [PATCH 11/18] branch-diff: add tests Johannes Schindelin
2018-05-03 16:56   ` Ævar Arnfjörð Bjarmason
2018-05-03 21:03     ` Johannes Schindelin
2018-05-03 17:11   ` Stefan Beller
2018-05-03 21:05     ` Johannes Schindelin
2018-05-03 23:27   ` Philip Oakley
2018-05-04  6:42     ` Johannes Schindelin
2018-05-03 15:30 ` [PATCH 12/18] branch-diff: use color for the commit pairs Johannes Schindelin
2018-05-03 15:30 ` [PATCH 13/18] color: provide inverted colors, too Johannes Schindelin
2018-05-03 15:30 ` [PATCH 14/18] diff: add an internal option to dual-color diffs of diffs Johannes Schindelin
2018-05-03 15:31 ` [PATCH 15/18] branch-diff: offer to dual-color the diffs Johannes Schindelin
2018-05-03 15:31 ` [PATCH 16/18] branch-diff --dual-color: work around bogus white-space warning Johannes Schindelin
2018-05-03 15:31 ` [PATCH 17/18] branch-diff: add a man page Johannes Schindelin
2018-05-04  3:27   ` Eric Sunshine
2018-05-04  7:17     ` Johannes Schindelin
2018-05-03 15:31 ` [PATCH 18/18] completion: support branch-diff Johannes Schindelin
2018-05-03 18:05 ` [PATCH 00/18] Add `branch-diff`, a `tbdiff` lookalike Ævar Arnfjörð Bjarmason
2018-05-03 21:07   ` Johannes Schindelin
2018-05-03 21:50   ` Jacob Keller
2018-05-04  5:24 ` Junio C Hamano
2018-05-04  7:24   ` Johannes Schindelin
2018-05-04 15:34 ` [PATCH v2 " Johannes Schindelin
2018-05-04 15:34   ` [PATCH v2 01/18] Add a function to solve least-cost assignment problems Johannes Schindelin
2018-05-05 18:24     ` Jeff King
2018-05-05 21:55       ` Johannes Schindelin
2018-05-30 13:55     ` SZEDER Gábor
2018-05-30 16:14       ` Stefan Beller
2018-05-30 23:28         ` brian m. carlson
2018-05-31 12:19           ` Johannes Schindelin
2018-05-04 15:34   ` [PATCH v2 02/18] Add a new builtin: branch-diff Johannes Schindelin
2018-05-05 18:26     ` Jeff King
2018-05-05 21:57       ` Johannes Schindelin
2018-05-06  0:25         ` Todd Zullinger
2018-05-06  0:38           ` Todd Zullinger
2018-05-06 12:04             ` Johannes Schindelin
2018-05-06  1:05         ` Igor Djordjevic
2018-05-06  4:53           ` Jacob Keller
2018-05-06  8:32             ` Duy Nguyen
2018-05-06 12:08               ` Johannes Schindelin
2018-05-06 12:10           ` Johannes Schindelin
2018-05-06 13:37             ` Igor Djordjevic
2018-05-07  1:34               ` Johannes Schindelin
2018-05-07 22:05                 ` Igor Djordjevic
2018-05-07 22:24                   ` Stefan Beller
2018-05-07 23:39                     ` Igor Djordjevic
2018-05-08  3:44                     ` Jeff King
2018-05-08  3:48                       ` Jeff King
2018-05-22 11:38                       ` Ævar Arnfjörð Bjarmason
2018-05-25 22:06                         ` Stefan Beller
     [not found]                           ` <CAA8fPEkNjy+ETz4Mx+C2kUfLjLzR9uuOmO3GfN48ZH1SwyfE1A@mail.gmail.com>
2018-05-26  6:15                             ` Fwd: " Øyvind Rønningstad
2018-06-01  8:15                             ` Johannes Schindelin
2018-05-06  2:33         ` Junio C Hamano
2018-05-06 12:21           ` Johannes Schindelin
2018-05-06 20:51             ` Eric Sunshine
2018-05-07  2:04               ` Johannes Schindelin
2018-05-07  7:48                 ` Jeff King
2018-05-07 21:33                   ` Igor Djordjevic
2018-05-21 10:33                     ` Johannes Schindelin
2018-05-21 17:56                       ` Stefan Beller
2018-05-21 20:24                         ` Jeff King
2018-05-21 21:40                           ` Brandon Williams
2018-05-21 21:48                             ` Stefan Beller
2018-05-21 21:52                             ` Jeff King
2018-05-22  2:08                               ` Junio C Hamano
2018-05-08  0:30                   ` Junio C Hamano
2018-05-07  1:45             ` Junio C Hamano
2018-05-07  5:39               ` Johannes Schindelin
2018-05-07 15:12                 ` Junio C Hamano
2018-05-21 10:41                   ` Johannes Schindelin
2018-05-07  7:50         ` Jeff King
2018-05-07 15:28           ` Duy Nguyen
2018-05-07 19:58             ` Stefan Beller
2018-05-04 15:34   ` [PATCH v2 03/18] branch-diff: first rudimentary implementation Johannes Schindelin
2018-05-04 15:34   ` [PATCH v2 04/18] branch-diff: improve the order of the shown commits Johannes Schindelin
2018-05-04 15:34   ` [PATCH v2 05/18] branch-diff: also show the diff between patches Johannes Schindelin
2018-05-06  1:14     ` Igor Djordjevic
2018-05-06 12:18       ` Johannes Schindelin
2018-05-04 15:34   ` [PATCH v2 06/18] branch-diff: right-trim commit messages Johannes Schindelin
2018-05-04 15:34   ` [PATCH v2 07/18] branch-diff: indent the diffs just like tbdiff Johannes Schindelin
2018-05-06 14:15     ` Martin Ågren
2018-05-07  1:54       ` Johannes Schindelin
2018-05-04 15:34   ` [PATCH v2 08/18] branch-diff: suppress the diff headers Johannes Schindelin
2018-05-04 15:34   ` [PATCH v2 09/18] branch-diff: adjust the output of the commit pairs Johannes Schindelin
2018-05-04 16:25     ` Elijah Newren
2018-05-04 15:34   ` [PATCH v2 10/18] branch-diff: do not show "function names" in hunk headers Johannes Schindelin
2018-05-04 15:34   ` [PATCH v2 11/18] branch-diff: add tests Johannes Schindelin
2018-05-04 15:34   ` [PATCH v2 12/18] branch-diff: use color for the commit pairs Johannes Schindelin
2018-05-05 23:48     ` Todd Zullinger
2018-05-07  1:52       ` Johannes Schindelin
2018-05-08  2:10         ` Todd Zullinger
2018-06-01  8:17           ` Johannes Schindelin
2018-05-04 15:34   ` [PATCH v2 13/18] color: provide inverted colors, too Johannes Schindelin
2018-05-05 18:29     ` Jeff King
2018-05-05 22:03       ` Johannes Schindelin
2018-05-06  6:35         ` Jeff King
2018-05-06  6:41           ` Jeff King
2018-05-07  1:20             ` Johannes Schindelin
2018-05-07  7:37               ` Jeff King
2018-05-07  1:35             ` Junio C Hamano
2018-05-07  5:38               ` Johannes Schindelin
2018-05-07  7:40               ` Jeff King
2018-05-04 15:34   ` [PATCH v2 14/18] diff: add an internal option to dual-color diffs of diffs Johannes Schindelin
2018-05-04 15:35   ` [PATCH v2 15/18] branch-diff: offer to dual-color the diffs Johannes Schindelin
2018-05-04 15:35   ` [PATCH v2 16/18] branch-diff --dual-color: work around bogus white-space warning Johannes Schindelin
2018-05-04 15:35   ` [PATCH v2 17/18] branch-diff: add a man page Johannes Schindelin
2018-05-04 15:35   ` [PATCH v2 18/18] completion: support branch-diff Johannes Schindelin
2018-05-06  8:24     ` Duy Nguyen
2018-05-07  1:23       ` Johannes Schindelin
2018-05-04 16:21   ` [PATCH v2 00/18] Add `branch-diff`, a `tbdiff` lookalike Elijah Newren
2018-05-04 16:30     ` Elijah Newren
2018-05-05 20:03     ` Johannes Schindelin
2018-05-07 17:07       ` Elijah Newren
2018-05-07 17:50         ` SZEDER Gábor
2018-05-07 18:38           ` Elijah Newren
2018-05-06  5:22   ` Junio C Hamano
2018-05-06 12:23     ` Johannes Schindelin
2018-05-06 22:56   ` brian m. carlson
2018-05-07  2:05     ` Johannes Schindelin
2018-07-03 11:26   ` [PATCH v3 00/20] Add `range-diff`, " Johannes Schindelin via GitGitGadget
2018-04-30 21:54     ` [PATCH v3 01/20] linear-assignment: a function to solve least-cost assignment problems Johannes Schindelin via GitGitGadget
2018-07-06 22:43       ` Junio C Hamano
2018-07-07 11:34         ` Johannes Schindelin
2018-07-07 16:34           ` Junio C Hamano
2018-07-07 19:27             ` Johannes Schindelin
2018-07-07 22:23               ` Johannes Schindelin
2018-07-09 22:08                 ` refs/notes/amlog problems, was " Johannes Schindelin
2018-07-11 16:12                   ` Junio C Hamano
2018-07-12 15:23                     ` Johannes Schindelin
2018-07-12 16:59                       ` Junio C Hamano
2018-07-19 17:06                         ` Junio C Hamano
2018-07-20 18:51                           ` Johannes Schindelin
2018-07-20 19:34                             ` Junio C Hamano
2018-07-20 21:20                               ` Stefan Beller
2018-07-20 21:24                                 ` Junio C Hamano
     [not found]                                   ` <CAPc5daW-KoyUX3i7M5YbdQC2mFKAmVBS42-XT84hpm30VFcZ1g@mail.gmail.com>
2018-07-20 21:30                                     ` Stefan Beller
2018-07-21 22:02                                       ` Johannes Schindelin
2018-07-21 21:56                               ` Johannes Schindelin
2018-07-23  1:25                                 ` Jeff King
2018-07-24  1:50                                   ` Junio C Hamano
2018-07-24  9:45                                     ` Jeff King
2018-07-09 22:23                 ` Junio C Hamano
2018-07-10 10:47                   ` refs/notes/amlog woes, was " Johannes Schindelin
2018-07-11 10:07       ` SZEDER Gábor
2018-07-12 15:11         ` Johannes Schindelin
2018-05-01 19:42     ` [PATCH v3 02/20] Introduce `range-diff` to compare iterations of a topic branch Johannes Schindelin via GitGitGadget
2018-05-02  0:34     ` [PATCH v3 03/20] range-diff: first rudimentary implementation Johannes Schindelin via GitGitGadget
2018-07-16  6:55       ` Eric Sunshine
2018-07-17  9:53         ` Johannes Schindelin
2018-05-02 10:22     ` [PATCH v3 04/20] range-diff: improve the order of the shown commits Johannes Schindelin via GitGitGadget
2018-05-02 14:49     ` [PATCH v3 06/20] range-diff: right-trim commit messages Johannes Schindelin via GitGitGadget
2018-05-02 14:52     ` [PATCH v3 07/20] range-diff: indent the diffs just like tbdiff Johannes Schindelin via GitGitGadget
2018-05-02 14:53     ` [PATCH v3 08/20] range-diff: suppress the diff headers Johannes Schindelin via GitGitGadget
2018-05-02 15:19     ` [PATCH v3 11/20] range-diff: add tests Thomas Rast via GitGitGadget
2018-07-16  7:28       ` Eric Sunshine
2018-07-17 16:28         ` Johannes Schindelin
2018-05-02 21:35     ` [PATCH v3 09/20] range-diff: adjust the output of the commit pairs Johannes Schindelin via GitGitGadget
2018-07-16  7:21       ` Eric Sunshine
2018-07-17 16:24         ` Johannes Schindelin
2018-07-17 17:47           ` Stefan Beller
2018-07-20 18:57             ` Johannes Schindelin
2018-07-20 19:16               ` Stefan Beller
2018-07-21 22:07                 ` Johannes Schindelin
2018-05-02 23:32     ` [PATCH v3 12/20] range-diff: use color for " Johannes Schindelin via GitGitGadget
2018-05-03  0:14     ` [PATCH v3 13/20] color: add the meta color GIT_COLOR_REVERSE Johannes Schindelin via GitGitGadget
2018-05-03  0:17     ` [PATCH v3 14/20] diff: add an internal option to dual-color diffs of diffs Johannes Schindelin via GitGitGadget
2018-07-09 19:29       ` Stefan Beller
2018-07-10 17:45         ` [PATCH 0/2] " Stefan Beller
2018-07-10 17:45           ` [PATCH 1/2] diff.c: convert emit_line_ws_markup to take string for sign Stefan Beller
2018-07-10 17:45           ` [PATCH 2/2] WIP diff.c: clarify emit_line_0 Stefan Beller
2018-07-10 19:58             ` [PATCH 1/2] diff.c: convert emit_line_ws_markup to take string for sign Stefan Beller
2018-07-10 19:59             ` [PATCH] diff.c: clarify emit_line_0 Stefan Beller
2018-07-10 21:54               ` [PATCH] ws: do not reset and set color twice Stefan Beller
2018-07-21 21:13           ` [PATCH 0/2] Re: [PATCH v3 14/20] diff: add an internal option to dual-color diffs of diffs Johannes Schindelin
2018-05-03  1:01     ` [PATCH v3 15/20] range-diff: offer to dual-color the diffs Johannes Schindelin via GitGitGadget
2018-05-03  1:11     ` [PATCH v3 16/20] range-diff --dual-color: work around bogus white-space warning Johannes Schindelin via GitGitGadget
2018-07-09 19:34       ` Stefan Beller
2018-07-09 21:02         ` Junio C Hamano
2018-07-10 10:08           ` Johannes Schindelin
2018-07-10 15:50             ` Junio C Hamano
2018-07-10 16:32             ` Stefan Beller
2018-07-21 21:44               ` Johannes Schindelin
2018-05-03 13:50     ` [PATCH v3 17/20] range-diff: add a man page Johannes Schindelin via GitGitGadget
2018-07-09 18:20       ` Stefan Beller
2018-07-09 20:00         ` Johannes Schindelin
2018-07-09 20:25           ` Stefan Beller
2018-07-09 20:38             ` Johannes Schindelin
2018-07-16  8:01       ` Eric Sunshine
2018-07-17 16:39         ` Johannes Schindelin
2018-05-03 14:44     ` [PATCH v3 18/20] completion: support `git range-diff` Johannes Schindelin via GitGitGadget
2018-07-06 22:46       ` Junio C Hamano
2018-07-07 11:38         ` Johannes Schindelin
2018-05-05 19:52     ` [PATCH v3 19/20] range-diff: left-pad patch numbers Johannes Schindelin via GitGitGadget
2018-05-06 15:26     ` [PATCH v3 05/20] range-diff: also show the diff between patches Johannes Schindelin via GitGitGadget
2018-05-06 15:35     ` [PATCH v3 10/20] range-diff: do not show "function names" in hunk headers Johannes Schindelin via GitGitGadget
2018-06-30 20:41     ` [PATCH v3 20/20] range-diff: make --dual-color the default mode Johannes Schindelin via GitGitGadget
2018-07-16  8:06       ` Eric Sunshine
2018-07-17 16:40         ` Johannes Schindelin
2018-07-21 22:04     ` [PATCH v4 00/21] Add `range-diff`, a `tbdiff` lookalike Johannes Schindelin via GitGitGadget
2018-07-21 22:04       ` [PATCH v4 01/21] linear-assignment: a function to solve least-cost assignment problems Johannes Schindelin via GitGitGadget
2018-07-28  8:46         ` Thomas Gummerer
2018-07-30 15:59           ` Johannes Schindelin
2018-07-21 22:04       ` [PATCH v4 02/21] Introduce `range-diff` to compare iterations of a topic branch Johannes Schindelin via GitGitGadget
2018-07-21 22:04       ` [PATCH v4 03/21] range-diff: first rudimentary implementation Johannes Schindelin via GitGitGadget
2018-07-29 18:36         ` Thomas Gummerer
2018-07-30 16:21           ` Johannes Schindelin
2018-07-30 21:16             ` Thomas Gummerer
2018-08-10 20:50               ` Johannes Schindelin
2018-07-21 22:04       ` [PATCH v4 04/21] range-diff: improve the order of the shown commits Johannes Schindelin via GitGitGadget
2018-07-21 22:04       ` [PATCH v4 05/21] range-diff: also show the diff between patches Johannes Schindelin via GitGitGadget
2018-07-29 19:03         ` Thomas Gummerer
2018-07-29 19:22           ` Eric Sunshine
2018-07-29 21:45             ` Thomas Gummerer
2018-07-30 16:28               ` Johannes Schindelin
2018-07-30 21:26                 ` Thomas Gummerer
2018-07-30 21:51                   ` Eric Sunshine
2018-08-10 21:12                     ` Johannes Schindelin
2018-08-10 21:31                       ` Eric Sunshine
2018-08-10 22:02                         ` Johannes Schindelin
2018-08-10 20:36                   ` Johannes Schindelin
2018-07-21 22:04       ` [PATCH v4 06/21] range-diff: right-trim commit messages Johannes Schindelin via GitGitGadget
2018-07-21 22:04       ` [PATCH v4 07/21] range-diff: indent the diffs just like tbdiff Johannes Schindelin via GitGitGadget
2018-07-21 22:04       ` [PATCH v4 08/21] range-diff: suppress the diff headers Johannes Schindelin via GitGitGadget
2018-07-21 22:04       ` [PATCH v4 09/21] range-diff: adjust the output of the commit pairs Johannes Schindelin via GitGitGadget
2018-07-29 19:38         ` Thomas Gummerer
2018-08-10 21:01           ` Johannes Schindelin
2018-07-29 21:28         ` Thomas Gummerer
2018-07-21 22:04       ` [PATCH v4 10/21] range-diff: do not show "function names" in hunk headers Johannes Schindelin via GitGitGadget
2018-07-29 20:52         ` Thomas Gummerer
2018-08-10 21:03           ` Johannes Schindelin
2018-07-21 22:05       ` [PATCH v4 11/21] range-diff: add tests Thomas Rast via GitGitGadget
2018-07-22  5:04         ` Eric Sunshine
2018-07-30 16:30           ` Johannes Schindelin
2018-07-30 20:18             ` Junio C Hamano
2018-07-30 23:40               ` Stefan Beller
2018-07-31 15:19                 ` Junio C Hamano
2018-07-23 21:25         ` Stefan Beller
2018-07-21 22:05       ` [PATCH v4 12/21] range-diff: use color for the commit pairs Johannes Schindelin via GitGitGadget
2018-07-21 22:05       ` [PATCH v4 13/21] color: add the meta color GIT_COLOR_REVERSE Johannes Schindelin via GitGitGadget
2018-07-21 22:05       ` [PATCH v4 14/21] diff: add an internal option to dual-color diffs of diffs Johannes Schindelin via GitGitGadget
2018-07-23 22:27         ` Junio C Hamano
2018-07-23 22:48           ` Stefan Beller
2018-07-21 22:05       ` [PATCH v4 15/21] range-diff: offer to dual-color the diffs Johannes Schindelin via GitGitGadget
2018-07-21 22:05       ` [PATCH v4 16/21] range-diff --dual-color: fix bogus white-space warning Johannes Schindelin via GitGitGadget
2018-07-23 22:20         ` Stefan Beller
2018-08-10 21:05           ` Johannes Schindelin
2018-07-23 22:39         ` Junio C Hamano
2018-07-24  1:27           ` Junio C Hamano
2018-07-21 22:05       ` [PATCH v4 17/21] range-diff: populate the man page Johannes Schindelin via GitGitGadget
2018-07-29 21:23         ` Thomas Gummerer
2018-08-10 21:06           ` Johannes Schindelin
2018-07-21 22:05       ` [PATCH v4 18/21] completion: support `git range-diff` Johannes Schindelin via GitGitGadget
2018-07-22  5:49         ` Eric Sunshine
2018-08-10 20:24           ` Johannes Schindelin
2018-07-21 22:05       ` [PATCH v4 19/21] range-diff: left-pad patch numbers Johannes Schindelin via GitGitGadget
2018-07-21 22:05       ` [PATCH v4 20/21] range-diff: make --dual-color the default mode Johannes Schindelin via GitGitGadget
2018-07-29 21:33         ` Thomas Gummerer
2018-08-10 21:07           ` Johannes Schindelin
2018-07-21 22:05       ` [PATCH v4 21/21] range-diff: use dim/bold cues to improve dual color mode Johannes Schindelin via GitGitGadget
2018-07-23 21:03       ` [PATCH v4 00/21] Add `range-diff`, a `tbdiff` lookalike Stefan Beller
2018-07-23 21:49         ` Junio C Hamano
2018-07-25 17:44           ` Stefan Beller
2018-07-26  9:47         ` Johannes Schindelin
2018-08-08 13:05         ` Johannes Schindelin
2018-08-08 17:33           ` Stefan Beller
2018-08-10 21:18             ` Johannes Schindelin
2018-08-10 21:31               ` Junio C Hamano
2018-08-10 22:00                 ` Johannes Schindelin
2018-07-29 21:50       ` Thomas Gummerer
2018-08-10 22:14       ` [PATCH v5 00/21] Add range-diff, a tbdiff lookalike Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 01/21] linear-assignment: a function to solve least-cost assignment problems Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 02/21] Introduce `range-diff` to compare iterations of a topic branch Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 03/21] range-diff: first rudimentary implementation Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 04/21] range-diff: improve the order of the shown commits Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 05/21] range-diff: also show the diff between patches Johannes Schindelin via GitGitGadget
2018-08-12 21:47           ` Thomas Gummerer
2018-08-13  9:46             ` Johannes Schindelin
2018-08-13 18:01               ` Thomas Gummerer
2018-08-10 22:14         ` [PATCH v5 06/21] range-diff: right-trim commit messages Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 07/21] range-diff: indent the diffs just like tbdiff Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 08/21] range-diff: suppress the diff headers Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 09/21] range-diff: adjust the output of the commit pairs Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 10/21] range-diff: do not show "function names" in hunk headers Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 11/21] range-diff: add tests Thomas Rast via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 12/21] range-diff: use color for the commit pairs Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 13/21] color: add the meta color GIT_COLOR_REVERSE Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 14/21] diff: add an internal option to dual-color diffs of diffs Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 15/21] range-diff: offer to dual-color the diffs Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 16/21] range-diff --dual-color: skip white-space warnings Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 17/21] range-diff: populate the man page Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 18/21] completion: support `git range-diff` Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 19/21] range-diff: left-pad patch numbers Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` [PATCH v5 20/21] range-diff: make --dual-color the default mode Johannes Schindelin via GitGitGadget
2018-08-10 22:14         ` Johannes Schindelin via GitGitGadget [this message]
2018-08-13 11:32         ` [PATCH v6 00/21] Add range-diff, a tbdiff lookalike Johannes Schindelin via GitGitGadget
2018-08-13 11:33           ` [PATCH v6 01/21] linear-assignment: a function to solve least-cost assignment problems Johannes Schindelin via GitGitGadget
2018-08-13 11:33           ` [PATCH v6 02/21] Introduce `range-diff` to compare iterations of a topic branch Johannes Schindelin via GitGitGadget
2018-08-13 11:33           ` [PATCH v6 03/21] range-diff: first rudimentary implementation Johannes Schindelin via GitGitGadget
2019-03-05  6:29             ` Junio C Hamano
2018-08-13 11:33           ` [PATCH v6 04/21] range-diff: improve the order of the shown commits Johannes Schindelin via GitGitGadget
2018-08-13 11:33           ` [PATCH v6 05/21] range-diff: also show the diff between patches Johannes Schindelin via GitGitGadget
2018-08-13 11:33           ` [PATCH v6 06/21] range-diff: right-trim commit messages Johannes Schindelin via GitGitGadget
2018-08-13 11:33           ` [PATCH v6 07/21] range-diff: indent the diffs just like tbdiff Johannes Schindelin via GitGitGadget
2018-08-13 11:33           ` [PATCH v6 08/21] range-diff: suppress the diff headers Johannes Schindelin via GitGitGadget
2018-08-13 11:33           ` [PATCH v6 09/21] range-diff: adjust the output of the commit pairs Johannes Schindelin via GitGitGadget
2018-08-13 11:33           ` [PATCH v6 10/21] range-diff: do not show "function names" in hunk headers Johannes Schindelin via GitGitGadget
2018-08-13 11:33           ` [PATCH v6 11/21] range-diff: add tests Thomas Rast via GitGitGadget
2018-08-13 18:35             ` Thomas Gummerer
2018-08-14 14:53               ` Johannes Schindelin
2018-08-14 15:03                 ` Jeff King
2018-08-14 15:06                   ` Jeff King
2018-08-14 15:18                 ` Junio C Hamano
2018-08-13 11:33           ` [PATCH v6 12/21] range-diff: use color for the commit pairs Johannes Schindelin via GitGitGadget
2018-08-13 11:33           ` [PATCH v6 13/21] color: add the meta color GIT_COLOR_REVERSE Johannes Schindelin via GitGitGadget
2018-08-13 11:33           ` [PATCH v6 14/21] diff: add an internal option to dual-color diffs of diffs Johannes Schindelin via GitGitGadget
2018-08-13 11:33           ` [PATCH v6 15/21] range-diff: offer to dual-color the diffs Johannes Schindelin via GitGitGadget
2018-08-13 11:33           ` [PATCH v6 16/21] range-diff --dual-color: skip white-space warnings Johannes Schindelin via GitGitGadget
2018-08-13 17:48             ` Junio C Hamano
2018-08-13 11:33           ` [PATCH v6 17/21] range-diff: populate the man page Johannes Schindelin via GitGitGadget
2018-09-09 11:14             ` Ævar Arnfjörð Bjarmason
2018-09-09 16:54               ` SZEDER Gábor
2018-09-09 17:19                 ` Ævar Arnfjörð Bjarmason
2018-09-10 13:37                   ` Jeff King
2018-10-02 15:06                     ` Johannes Schindelin
2018-09-10 17:17                   ` Junio C Hamano
2018-08-13 11:33           ` [PATCH v6 18/21] completion: support `git range-diff` Johannes Schindelin via GitGitGadget
2018-08-13 11:33           ` [PATCH v6 19/21] range-diff: left-pad patch numbers Johannes Schindelin via GitGitGadget
2018-08-13 11:33           ` [PATCH v6 20/21] range-diff: make --dual-color the default mode Johannes Schindelin via GitGitGadget
2018-08-13 11:33           ` [PATCH v6 21/21] range-diff: use dim/bold cues to improve dual color mode Johannes Schindelin via GitGitGadget
2018-08-13 11:38           ` [PATCH v6 00/21] Add range-diff, a tbdiff lookalike Johannes Schindelin
2018-08-13 20:47             ` Thomas Gummerer
2018-05-21  4:48 ` [PATCH 00/18] Add `branch-diff`, a `tbdiff` lookalike Junio C Hamano
2018-05-21  9:51   ` Johannes Schindelin
2018-05-22  1:42     ` Junio C Hamano
2018-06-01  8:28       ` Johannes Schindelin

Reply instructions:

You may reply publically to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ccf8c1bb2459d33c7dc97098c08c47ca7d77ed3e.1533939264.git.gitgitgadget@gmail.com \
    --to=gitgitgadget@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=johannes.schindelin@gmx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

git@vger.kernel.org list mirror (unofficial, one of many)

Archives are clonable:
	git clone --mirror https://public-inbox.org/git
	git clone --mirror http://ou63pmih66umazou.onion/git
	git clone --mirror http://czquwvybam4bgbro.onion/git
	git clone --mirror http://hjrcffqmbrq6wope.onion/git

Example config snippet for mirrors

Newsgroups are available over NNTP:
	nntp://news.public-inbox.org/inbox.comp.version-control.git
	nntp://ou63pmih66umazou.onion/inbox.comp.version-control.git
	nntp://czquwvybam4bgbro.onion/inbox.comp.version-control.git
	nntp://hjrcffqmbrq6wope.onion/inbox.comp.version-control.git
	nntp://news.gmane.org/gmane.comp.version-control.git

 note: .onion URLs require Tor: https://www.torproject.org/

AGPL code for this site: git clone https://public-inbox.org/ public-inbox