Julian Foad wrote on Wed, Jun 12, 2013 at 16:41:59 +0100:
> Prabhu wrote:
> 
> > On 06/12/2013 05:55 PM, Julian Foad wrote:
> >>  I have thought before that it would sometimes be useful to include blame 
> >> information on the gaps between lines.  For each gap between adjacent 
> >> lines (and 
> >> before the first and after the last line), there is a revision in which 
> >> any text 
> >> between these two lines was deleted.
> >> 
> >>  Example: blame -r1:30 foo.c@30 could produce these (revnum | line-text) 
> >> pairs:
> >>     r20 | "int main()"
> >>     r20 | "{"
> >>     r25 | NULL
> >>     r30 | "    return 0;"
> >>     r20 | "}"
> >> 
> >>  where NULL means some line(s) were at this position in r24 but nothing 
> >> was 
> >> here in r25 up to the revision being blamed.
> > 
> > How would we handle/show if the line existed in 24r but not in r25.. 
> > Again existed in r27 and removed in r29 ? I can't think of the UI...
> 
> Blame is only intended to identify the most recent change to each line.  In 
> this case, we would identify the most recent change of the inter-line gap, so 
> that would be r29.  I think that is useful and consistent with the way Blame 
> works already.
> 
> As a different example, if there were two lines in that "gap" in r24, and one 
> of them was removed in r25, and the second one was removed in r29, then again 
> we'd only show "r29" for the gap, because that is the most recent change in 
> that gap.

What about an optional output mode that prints the gaps only, but all of
them?

e.g., if I do 'blame -r 25:29', the optional output mode would print all
lines added in r26 or in r27 or in r28 that are not present in r29, and
only them.

Reply via email to