[PATCH v5 07/21] range-diff: indent the diffs just like tbdiff
From: Johannes Schindelin via GitGitGadget <hidden>
Date: 2018-08-10 22:14:39
Subsystem:
the rest · Maintainer:
Linus Torvalds
From: Johannes Schindelin <redacted> The main information in the `range-diff` view comes from the list of matching and non-matching commits, the diffs are additional information. Indenting them helps with the reading flow. Signed-off-by: Johannes Schindelin <redacted> --- builtin/range-diff.c | 10 ++++++++++ 1 file changed, 10 insertions(+)
diff --git a/builtin/range-diff.c b/builtin/range-diff.c
index 19192ab31..f6df3f19a 100644
--- a/builtin/range-diff.c
+++ b/builtin/range-diff.c@@ -11,6 +11,11 @@ N_("git range-diff [<options>] <base> <old-tip> <new-tip>"), NULL }; +static struct strbuf *output_prefix_cb(struct diff_options *opt, void *data) +{ + return data; +} + int cmd_range_diff(int argc, const char **argv, const char *prefix) { int creation_factor = 60;
@@ -21,12 +26,16 @@ int cmd_range_diff(int argc, const char **argv, const char *prefix) OPT_END() }; int i, j, res = 0; + struct strbuf four_spaces = STRBUF_INIT; struct strbuf range1 = STRBUF_INIT, range2 = STRBUF_INIT; git_config(git_diff_ui_config, NULL); diff_setup(&diffopt); diffopt.output_format = DIFF_FORMAT_PATCH; + diffopt.output_prefix = output_prefix_cb; + strbuf_addstr(&four_spaces, " "); + diffopt.output_prefix_data = &four_spaces; argc = parse_options(argc, argv, NULL, options, builtin_range_diff_usage, PARSE_OPT_KEEP_UNKNOWN |
@@ -88,6 +97,7 @@ int cmd_range_diff(int argc, const char **argv, const char *prefix) strbuf_release(&range1); strbuf_release(&range2); + strbuf_release(&four_spaces); return res; }
--
gitgitgadget