git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [WIP PATCH v2] diff.c: emit moved lines with a different color

From
Junio C Hamano <gitster@pobox.com>
Date
Sep 5, 2016, 18:57 UTC
Message-ID
<xmqq1t0yqinr.fsf@gitster.mtv.corp.google.com>
In-Reply-To
<20160904191435.14144-1-stefanbeller@gmail.com>
Stefan Beller <stefanbeller@gmail.com> writes:
Show 13 quoted lines
> diff --git a/Documentation/config.txt b/Documentation/config.txt
> index 0bcb679..f4f51c2 100644
> --- a/Documentation/config.txt
> +++ b/Documentation/config.txt
> @@ -980,8 +980,9 @@ color.diff.<slot>::
>  	of `context` (context text - `plain` is a historical synonym),
>  	`meta` (metainformation), `frag`
>  	(hunk header), 'func' (function in hunk header), `old` (removed lines),
> -	`new` (added lines), `commit` (commit headers), or `whitespace`
> -	(highlighting whitespace errors).
> +	`new` (added lines), `commit` (commit headers), `whitespace`
> +	(highlighting whitespace errors), `moved-old` (removed lines that
> +	reappear), `moved-new` (added lines that were removed elsewhere).

Could we have a config to disable this rather costly new feature, too?

Also the first and the third level configuration names (the <slot> is at the third level) used by the core-git do not use dashed-words format. Please adhere to the current convention.

Show 20 quoted lines
> diff --git a/diff.c b/diff.c
> index 534c12e..d37cb4f 100644
> --- a/diff.c
> +++ b/diff.c
> @@ -18,6 +18,7 @@
>  #include "ll-merge.h"
>  #include "string-list.h"
>  #include "argv-array.h"
> +#include "git-compat-util.h"
>  
>  #ifdef NO_FAST_WORKING_DIRECTORY
>  #define FAST_WORKING_DIRECTORY 0
> @@ -42,6 +43,11 @@ static int diff_dirstat_permille_default = 30;
>  static struct diff_options default_diff_options;
>  static long diff_algorithm;
>  
> +static struct hashmap *duplicates_added;
> +static struct hashmap *duplicates_removed;
> +static int hash_previous_line_added;
> +static int hash_previous_line_removed;

I think these should be added as new fields to diff_options structure.

Previous: Stefan BellerNext: Jacob Keller
Message 2 of 7 in “diff.c: emit moved lines with a different color”
  1. diff.c: emit moved lines with a different colorStefan Beller, Sep 4, 2016
  2. Junio C HamanoSep 5, 2016
  3. Jacob KellerSep 6, 2016
  4. Stefan BellerSep 6, 2016
  5. Junio C HamanoSep 6, 2016
  6. Stefan BellerSep 6, 2016
  7. Stefan BellerSep 6, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.