forked from rho_n/hpr_generator
Add command line option all
Use --all or -a when calling site-generator instead of special page ALL to generate all the configured pages for a website.
This commit is contained in:
parent
b36293e52f
commit
694c100bcf
@ -26,7 +26,7 @@ Generate two specific pages:
|
|||||||
`site-generator index about`
|
`site-generator index about`
|
||||||
|
|
||||||
Generate the whole site:
|
Generate the whole site:
|
||||||
`site-generator ALL`
|
`site-generator --all`
|
||||||
|
|
||||||
Generate pages based on the same template:
|
Generate pages based on the same template:
|
||||||
`site-generator correspondent=1,3,5..10`
|
`site-generator correspondent=1,3,5..10`
|
||||||
|
@ -8,6 +8,7 @@
|
|||||||
|
|
||||||
site-generator [OPTION]... PAGE|PAGE=<comma separated list of ids>...
|
site-generator [OPTION]... PAGE|PAGE=<comma separated list of ids>...
|
||||||
|
|
||||||
|
-a, --all generate all pages defined in configuration file
|
||||||
-l, --list print list of configured pages
|
-l, --list print list of configured pages
|
||||||
-p, --preview print generated pages to standard out
|
-p, --preview print generated pages to standard out
|
||||||
-q, --quiet suppress progress information while generating pages
|
-q, --quiet suppress progress information while generating pages
|
||||||
@ -23,7 +24,7 @@
|
|||||||
site-generator index about
|
site-generator index about
|
||||||
|
|
||||||
Generate the whole site:
|
Generate the whole site:
|
||||||
site-generator ALL
|
site-generator --all
|
||||||
|
|
||||||
Generate pages based on the same template:
|
Generate pages based on the same template:
|
||||||
site-generator correspondent=1,3,5..10
|
site-generator correspondent=1,3,5..10
|
||||||
@ -92,33 +93,32 @@ exit main();
|
|||||||
sub main {
|
sub main {
|
||||||
|
|
||||||
# Argument parsing
|
# Argument parsing
|
||||||
|
my $all;
|
||||||
my $preview;
|
my $preview;
|
||||||
my $verbose;
|
my $verbose;
|
||||||
my $quiet;
|
my $quiet;
|
||||||
GetOptions(
|
GetOptions(
|
||||||
|
'all' => \$all,
|
||||||
'list' => \&print_available_pages,
|
'list' => \&print_available_pages,
|
||||||
'preview' => \$preview,
|
'preview' => \$preview,
|
||||||
'verbose' => \$verbose,
|
'verbose' => \$verbose,
|
||||||
'quiet' => \$quiet,
|
'quiet' => \$quiet,
|
||||||
) or pod2usage(1);
|
) or pod2usage(1);
|
||||||
pod2usage(1) unless @ARGV;
|
pod2usage(1) unless @ARGV || $all;
|
||||||
my (@page_args) = @ARGV;
|
my (@page_args) = @ARGV;
|
||||||
|
|
||||||
if ($quiet) {
|
if ($quiet) {
|
||||||
$verbose = 'quiet';
|
$verbose = 'quiet';
|
||||||
};
|
};
|
||||||
|
|
||||||
# Set flag indicating whether or not to generate all pages.
|
|
||||||
# The flag is set to true if the special argument ALL is
|
|
||||||
# passed into the generator
|
|
||||||
my $ALL = grep { $_ eq 'ALL' } @page_args;
|
|
||||||
|
|
||||||
# Load config file
|
# Load config file
|
||||||
read_config "site.cfg" => my %config;
|
read_config "site.cfg" => my %config;
|
||||||
|
|
||||||
my $tt = get_template_html($config{DBI});
|
my $tt = get_template_html($config{DBI});
|
||||||
|
|
||||||
if ($ALL) {
|
# If command line option all is set, parse configuration file
|
||||||
|
# for all pages
|
||||||
|
if ($all) {
|
||||||
@page_args = keys %config;
|
@page_args = keys %config;
|
||||||
|
|
||||||
# Remove non page sections of the configuration file
|
# Remove non page sections of the configuration file
|
||||||
|
Loading…
Reference in New Issue
Block a user