From: Junio C Hamano Date: Mon, 14 Jul 2008 18:15:13 GMT Subject: Re: [PATCH] Make git-add -i accept ranges like 7- Message-ID: <7vfxqcgwni.fsf@gitster.siamese.dyndns.org> In-Reply-To: <1216058784-32584-1-git-send-email-ciaran.mccreesh@googlemail.com> Ciaran McCreesh writes: > git-add -i ranges expect number-number. But for the supremely lazy, typing in > that second number when selecting "from patch 7 to the end" is wasted effort. > So treat an empty second number in a range as "until the last item". You didn't describe why you changed the first regexp from \d+ to \d*, which would allow "-9" as a valid input as well. But in that case $bottom will become an empty string. Don't you need to adjust the users of this data in the codepaths that follow this part? I didn't check. > diff --git a/git-add--interactive.perl b/git-add--interactive.perl > index 801d7c0..72a8858 100755 > --- a/git-add--interactive.perl > +++ b/git-add--interactive.perl > @@ -406,9 +406,9 @@ sub list_and_choose { > if ($choice =~ s/^-//) { > $choose = 0; > } > - # A range can be specified like 5-7 > - if ($choice =~ /^(\d+)-(\d+)$/) { > - ($bottom, $top) = ($1, $2); > + # A range can be specified like 5-7 or 5-. > + if ($choice =~ /^(\d*)-(\d*)$/) { > + ($bottom, $top) = ($1, length($2) ? $2 : 1 + @stuff); > } > elsif ($choice =~ /^\d+$/) { > $bottom = $top = $choice; > -- > 1.5.6.2