Re: [PATCH 1/3] git-add -i/-p: Change prompt separater from slash to comma
- From
William Pursell <bill.pursell@gmail.com>
- Date
- Feb 2, 2009, 09:17 UTC
- Message-ID
- <4986BA28.10608@gmail.com>
- In-Reply-To
- <7vy6wpl1mx.fsf@gitster.siamese.dyndns.org>
Junio C Hamano wrote:
Show 11 quoted lines
> William Pursell <bill.pursell@gmail.com> writes: > >> Not a major complaint, but how about localizing the occurence >> of the separator. Something like this: > > I think that is sensible. I've already queued the resurrected series to > 'next' and am deep in the process of tonight's pushout preparation (this > time I've even written What's cooking), so I'd rather not rewind what I > have already and redo it. Could you send an incremental update on top of > what's in next (more specifically ace30ba (In add --patch, Handle K,k,J,j > slightly more gracefully., 2008-11-27) please?
Here's a patch against ace30ba. Minor change from the initial patch includes adding '?' to the join argument for consistency with previous prompt string, and adding '/' to the initialization of $other to accomodate dd971cc.
Localize the command separator.
Signed-off-by: William Pursell <bill.pursell@gmail.com> --- git-add--interactive.perl | 19 ++++++++++--------- 1 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/git-add--interactive.perl b/git-add--interactive.perl index 30ddab2..4500e62 100755 --- a/git-add--interactive.perl +++ b/git-add--interactive.perl @@ -922,7 +922,7 @@ sub patch_update_file { while (1) { my ($prev, $next, $other, $undecided, $i); - $other = ''; + $other = 'ynad/'; if ($num <= $ix) { $ix = 0; @@ -930,25 +930,25 @@ sub patch_update_file { for ($i = 0; $i < $ix; $i++) { if (!defined $hunk[$i]{USE}) { $prev = 1; - $other .= ',k'; + $other .= 'k'; last; } } if ($ix) { - $other .= ',K'; + $other .= 'K'; } for ($i = $ix + 1; $i < $num; $i++) { if (!defined $hunk[$i]{USE}) { $next = 1; - $other .= ',j'; + $other .= 'j'; last; } } if ($ix < $num - 1) { - $other .= ',J'; + $other .= 'J'; } if ($num > 1) { - $other .= '/g'; + $other .= 'g'; } for ($i = 0; $i < $num; $i++) { if (!defined $hunk[$i]{USE}) { @@ -959,13 +959,14 @@ sub patch_update_file { last if (!$undecided); if (hunk_splittable($hunk[$ix]{TEXT})) { - $other .= ',s'; + $other .= 's'; } - $other .= ',e'; + $other .= 'e'; for (@{$hunk[$ix]{DISPLAY}}) { print; } - print colored $prompt_color, "Stage this hunk [y,n,a,d,/$other,?]? "; + print colored $prompt_color, "Stage this hunk [" . + join(",", split("", $other . "?")) . "]? "; my $line = <STDIN>; if ($line) { if ($line =~ /^y/i) {
-- 1.6.1.265.g9a013.dirty -- William Pursell