X-Git-Url: http://git.shiar.nl/perl/list-index.git/blobdiff_plain/356b069f60818a6ef5f0f8cf97a78924675c2c5b..c6b7152b5b448744cce44c7ae52cf530c1e19bba:/lib/List/Index.pm diff --git a/lib/List/Index.pm b/lib/List/Index.pm index bf4e04d..57027fa 100644 --- a/lib/List/Index.pm +++ b/lib/List/Index.pm @@ -24,7 +24,7 @@ sub ranges { $pagesize = @$self / $pages; my $offset = $pagesize; - my @links = (['']); + my @links = (''); while ($offset < @$self) { my $link = substr $self->[$offset], 0, $length; if ($context) { @@ -57,10 +57,12 @@ sub ranges { } } - push @links, [$link]; + push @links, $link; $offset += $pagesize; } + use List::MoreUtils 'uniq'; + @links = map { [$_] } uniq @links; for my $i (0 .. $#links - 1) { my ($link, $lastchar) = $links[$i + 1]->[0] =~ /(.*)(.)/; $link .= $lastchar le 'a' ? '.' : chr( ord($lastchar) - 1 );