X-Git-Url: http://git.ieval.ro/?a=blobdiff_plain;f=lib%2FZeal.pm;h=5fd8d5a4c706bf5f03cf6212bf391cef14f01200;hb=058f5fcbe63cc474a1b7ae49a3eee811f0e88bc8;hp=8fab14a733d2c7c25f16e8692196cdc64ed5d9fa;hpb=0c1fd452784d83601cfe34a2cef195fe03190625;p=zeal.git diff --git a/lib/Zeal.pm b/lib/Zeal.pm index 8fab14a..5fd8d5a 100644 --- a/lib/Zeal.pm +++ b/lib/Zeal.pm @@ -5,7 +5,7 @@ use strict; use warnings; use re '/s'; -our $VERSION = '0.000_001'; +our $VERSION = '0.000_002'; use File::Spec::Functions qw/catfile/; @@ -41,12 +41,13 @@ sub add { sub sets { my ($self, $family) = @_; return map { @$_ } values %{$self->{sets}} unless $family; + die "No docsets in family '$family'\n" unless $self->{sets}{$family}; @{$self->{sets}{$family}} } sub query { my ($self, $query, $family) = @_; - ($family, $query) = split /:/, $query, 2 if !$family && $query =~ /:/; + ($family, $query) = split /:/, $query, 2 if !$family && $query =~ /^\w+:[^:]/; my @res = map { $_->query($query) } $self->sets($family); wantarray ? @res : $res[0] } @@ -64,16 +65,12 @@ Zeal - Read and query Dash/Zeal docsets use Zeal; my $zeal = Zeal->new("/home/mgv/docsets/:/home/mgv/something.docset"); - # Add another docset - $zeal->add('/home/mgv/somethingelse.docset'); - # Add a directory containing docsets - $zeal->add('/home/mgv/moredocsets/'); - # Documentation for 'length' in all docsets - my $doc = $zeal->query('length'); - # Documentation for all Test:: perl modules - my @docs = $zeal->query('Test::%', 'perl'); - # Alternative syntax - @docs = $zeal->query('perl:Test::%); + $zeal->add('/home/mgv/somethingelse.docset'); # Add another docset + $zeal->add('/home/mgv/moredocsets/'); # Add a directory containing docsets + + my $doc = $zeal->query('length'); # Documentation for 'length' in all docsets + my @docs = $zeal->query('Test::%', 'perl'); # Documentation for all Test:: perl modules + @docs = $zeal->query('perl:Test::%); # Alternative syntax =head1 DESCRIPTION