Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
In add --patch, Handle K,k,J,j slightly more gracefully.
author
William Pursell
<bill.pursell@gmail.com>
Thu, 27 Nov 2008 04:08:03 +0000
(
04:08
+0000)
committer
Junio C Hamano
<gitster@pobox.com>
Mon, 2 Feb 2009 03:43:38 +0000
(19:43 -0800)
Instead of printing the help menu, this will print "No next hunk" and then
process the given hunk again.
Signed-off-by: William Pursell <bill.pursell@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-add--interactive.perl
patch
|
blob
|
history
raw
|
patch
|
inline
| side by side (parent:
dd971cc
)
diff --git
a/git-add--interactive.perl
b/git-add--interactive.perl
index 64ad28998e55f189cfa079db232bbf7ef12d93ba..30ddab293b4b4eb2862d068b352e8ccedc31ea5e 100755
(executable)
--- a/
git-add--interactive.perl
+++ b/
git-add--interactive.perl
@@
-1039,29
+1039,42
@@
sub patch_update_file {
$ix = $iy;
next;
}
$ix = $iy;
next;
}
- elsif ($other =~ /K/ && $line =~ /^K/) {
- $ix--;
+ elsif ($line =~ /^K/) {
+ if ($other =~ /K/) {
+ $ix--;
+ }
+ else {
+ print STDERR "No previous hunk\n";
+ }
next;
}
next;
}
- elsif ($other =~ /J/ && $line =~ /^J/) {
- $ix++;
+ elsif ($line =~ /^J/) {
+ if ($other =~ /J/) {
+ $ix++;
+ }
+ else {
+ print STDERR "No next hunk\n";
+ }
next;
}
next;
}
- elsif ($other =~ /k/ && $line =~ /^k/) {
- while (1) {
- $ix--;
- last if (!$ix ||
- !defined $hunk[$ix]{USE});
+ elsif ($line =~ /^k/) {
+ if ($other =~ /k/) {
+ while (1) {
+ $ix--;
+ last if (!$ix ||
+ !defined $hunk[$ix]{USE});
+ }
+ }
+ else {
+ print STDERR "No previous hunk\n";
}
next;
}
}
next;
}
- elsif ($other =~ /j/ && $line =~ /^j/) {
- while (1) {
- $ix++;
- last if ($ix >= $num ||
- !defined $hunk[$ix]{USE});
+ elsif ($line =~ /^j/) {
+ if ($other !~ /j/) {
+ print STDERR "No next hunk\n";
+ next;
}
}
- next;
}
elsif ($other =~ /s/ && $line =~ /^s/) {
my @split = split_hunk($hunk[$ix]{TEXT}, $hunk[$ix]{DISPLAY});
}
elsif ($other =~ /s/ && $line =~ /^s/) {
my @split = split_hunk($hunk[$ix]{TEXT}, $hunk[$ix]{DISPLAY});