#!/usr/bin/perl use v5.14; use warnings; use lib 'lib'; use lib '../zeal/lib'; use App::Zealc; App::Zealc->run; __END__ =encoding utf-8 =head1 NAME zealc - Browse API documentation for various projects =head1 SYNOPSIS zealc download Perl # Downloading Perl version 5.20.1 from http://sanfrancisco.kapeli.com/feeds/Perl.tgz zealc list # Perl zealc list -l # Perl perl: zealc expand perl_os -l # perl:perldos # perl:perlvos zealc query perldos zealc query perldoc --elinks =head1 DESCRIPTION zealc is a command-line offline documentation browser inspired by L and L. It uses Dash/Zeal format docsets via the L library. =head2 Global options =over =item B<--config>=I Specify a configuration file to use. If this argument is missing, B will look for files F, F, F, F<.zealcrc> in the current directory, the home directory, in F, and in F. This behaviour is described in the "HOW IT WORKS" section of the L manpage. See also the L section below. =item B<--path>=I The path to a directory containing docsets. Defaults to F<~/.docset> if the home directory is known, F<.docset> otherwise. =item B<--verbose>, B<--no-verbose> If B<--verbose> is in effect, more messages will be printed. Default is B<--no-verbose>. =back =head2 Commands =over =item B View the list of official Dash docsets. The docsets that are already installed will be displayed in a bold font and with a * after their name. =item B I Download an official Dash docset. I is one of the ids returned by B. =item B I Download a docset from a given docset feed. =item B [-f|--family] I List all documents matching I, where I is a SQL LIKE pattern. If I<-f> or I<--family> is present, include the docset family of each found document. This command is mostly intended for use in scripts, as each line of the output can be directly passed to B. =item B [-l|--long] List the names of all installed docsets. If I<-l> or I<--long> is present, also display the family of each docset. =item B [-w WITH|--with=WITH] [-f FORMAT|--format FORMAT] I Display the documentation for a given pattern. I is a SQL LIKE pattern. If more than one document is found and STDOUT is a terminal, the user will be asked to choose one of them. If more than one document is found and STDOUT is not a terminal, a randomly chosen document will be displayed. To display the document, it will first be converted in the format specified by I<--format>, then it will be opened with the program specified by I<--with>. I<--format> can be one of: =over =item html, in which case no conversion will be done =item text, in which case it will be converted to text with L =item program arg1 arg2, in which case the HTML document will be passed as the first argument to this program =back =back =head1 CONFIGURATION B uses L for configuration. please read its manpage for a detailed explanation. Command-line arguments override configuration directives. The available configuration directives are: =over =item B Path to the directory containing the docsets. Equivalent to the B<--config> global option. =item B If true, print more detailed messages. Equivalent to the B<--verbose> global option. If false, do not print detailed messages. Equivalent to the B<--no-verbose> global option, which is the default. =item B The program used to open documents. Usually a web browser or a pager. Equivalent to the B<--with> option to B. =item B The program used to format documents. This can also be one of the special values I (do not format this document) or I (convert to text via L). Equivalent to the B<--format> option to B. =back To get started with configuration, create a file named F<.zealcrc> in your home directory (or in the current directory) with keys separated by values using an equals sign. For example: path=/home/mgv/docsets/ with=/usr/bin/lynx -color format=html verbose=1 =head1 SEE ALSO L, L =head1 AUTHOR Marius Gavrilescu, Emarius@ieval.roE =head1 COPYRIGHT AND LICENSE Copyright (C) 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, at your option, any later version of Perl 5 you may have available. =cut