Re: [PATCH] xdl_merge(): introduce XDL_MERGE_ZEALOUS_ALNUM
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Feb 13, 2008, 11:22 UTC
- Message-ID
- <alpine.LSU.1.00.0802131116370.30505@racer.site>
- In-Reply-To
- <alpine.LFD.1.00.0802121758220.2920@woody.linux-foundation.org>
Hi,
On Tue, 12 Feb 2008, Linus Torvalds wrote:
Show 16 quoted lines
> On Wed, 13 Feb 2008, Johannes Schindelin wrote: > > > > With XDL_MERGE_ZEALOUS_ALNUM, we use the following heuristics: when a > > hunk does not contain any letters or digits, it is treated as > > conflicting. > > [...] > > So the "merge adjacent conflicts" logic should actually be pretty > simple: if there is less than three lines between two conflicts, the > conflicts should always be merged, because the end result is smaller. > > (And with three lines in between the end result is as many lines, but > arguably simpler, so it's probably better to merge then too). > > Hmm? What do you think?
Makes sense. As I said to Junio, I'll think about an interface to do this. The obvious choice is to have a struct, but that has to be memset() to 0 for future compatibility.
OTOH there's xpparam_t already, and we could just have that as a member of the new struct, something like
typedef struct s_xmergeparam {
xpparam_t xpp;
enum {
XDL_MERGE_MINIMAL = 0,
XDL_MERGE_EAGER,
XDL_MERGE_ZEALOUS,
XDL_MERGE_ZEALOUS_ALNUM
} mode;
/* minimum number of inter-conflict lines goes here */
} xmergeparam_t;Hmm. This has to simmer in my head a bit.
Ciao, Dscho