William Pursell <bill.pursell@xxxxxxxxx> writes: > Junio C Hamano wrote: > >> One thing I will not do after such a discussion, unless I am really really >> interested in having the new feature personally myself, is to go back to >> the discussion thread and assemble the pieces together to make the final >> series of patches for inclusion. The responsibility for doing that lies >> on the original contributor. >> > > That is a perfectly reasonable policy, and I did not intend > to suggest that you should do that work. Heh, that is not a policy but just the way I work (rather, "the way I don't work and push the work to others instead") with a limited amount of time. > diff --git a/git-add--interactive.perl b/git-add--interactive.perl > index b0223c3..daf8d5d 100755 > --- a/git-add--interactive.perl > +++ b/git-add--interactive.perl > @@ -836,6 +836,45 @@ sub patch_update_cmd { > } > } > > +# Generate a one line summary of a hunk. > +sub summarize_hunk { > + my $rhunk = shift; > + my $summary = $rhunk->{TEXT}[0]; > + > + # Keep the line numbers, discard extra context. > + $summary =~ s/(@@.*@@).*/$1 /s; You would need to make the first glob less eager, i.e. /(@@.*?@@).*/, otherwise you will be folled by a literal @@ in the contents that is tacked after "@@ -j,k +l,m @@". Do you really want the surrounding @@ in the result, by the way? > + # Add some user context. (Just take first changed line.) > + for my $line (@{$rhunk->{TEXT}}) { > + if ($line =~ m/^[+-]/) { Even if it is a blank line? > + $summary .= $line; > + last; > + } > + } > + > + return substr ($summary, 0, 80); s/str /str/; How well does substr() work with utf-8 and other multi-byte encodings these days, I have to wonder... > +} > + > + > +# Print a one-line summary of each hunk in the array ref in > +# the first argument, starting wih the index in the 2nd. > +sub display_hunks { > + my ($hunks, $i) = @_; > + my $ctr = 0; > + $i = 0 if not $i; I think "$i ||= 0" is more common. > + $status, > + $i + 1, > + summarize_hunk ($hunks->[$i]); s/_hunk /_hunk/; -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html