X-Git-Url: http://git.ieval.ro/?a=blobdiff_plain;f=lib%2FZeal.pm;h=b5cc99e83b5eb7fd50712c63641b4c377a29235d;hb=1a477fa4fdc40fd4142e2a01ff12865381cd7d8e;hp=8fab14a733d2c7c25f16e8692196cdc64ed5d9fa;hpb=0c1fd452784d83601cfe34a2cef195fe03190625;p=zeal.git diff --git a/lib/Zeal.pm b/lib/Zeal.pm index 8fab14a..b5cc99e 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.001'; 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 @@ -124,7 +121,7 @@ Marius Gavrilescu, Emarius@ieval.roE =head1 COPYRIGHT AND LICENSE -Copyright (C) 2014 by Marius Gavrilescu +Copyright (C) 2014-2015 by Marius Gavrilescu This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.20.1 or,