NAME

posy_static - Script which uses the Posy engine to generate static files.

VERSION

This describes version 0.99 of posy_static.

SYNOPSIS

posy_static --help | --manpage | --version

posy_static { --actions action } ( --base_dir dirname | --config_dir dirname --data_dir dirname --flavour_dir dirname --state_dir dirname ) { --DayWeek2Name num=name } [ --debug_level num ] { --entry_actions action } { --file_extensions extension=type } [ --flavours flavour ] [--gen_match match ] --gen_type types [ --libdir dirname ] { --MonthNum2Name num=name } [ --outfile filename ] { --plugins plugin } --static_dir dirname --url url parameter=value ...

DESCRIPTION

This is a script which uses the Posy engine to generate multiple static files from a standard posy data collection.

OPTIONS

--actions action

The list of actions which Posy will perform. Only use this if you're using a plugin which requires inserting a new action. Note that if you do, you must specify every action to be performed; once the default actions are not being used, they must be replaced completely.

--actions init_params --actions parse_path --actions stop_if_not_found --actions set_config --actions index_entries --actions select_entries --actions filter_by_date --actions sort_entries --actions content_type --actions head_template --actions dynamic_css_set --actions theme_css_set --actions flavour_menu_set --actions head_render --actions do_entry_actions --actions foot_template --actions foot_render --actions render_page

--base_dir dirname

The base directory to use to set the data, flavour, config and state data directories if they are not explicitly set. This works only if you use the convention that the directories are base_dir/data, base_dir/flavours, base_dir/data (for config) and base_dir/state.

--config_dir dirname

If you want your config files to be in a different directory to the data directory, then use this argument. This can be useful if you want to set different config values for static generation versus dynamic generation: use a different config_dir.

--data_dir dirname

Where are this site's entries kept?

--DayWeek2Name num=name

This is a hash which sets how a day-of-the-week number will be converted into a name. Set this if you want, for example, all weekdays to be truncated. Most of the time one can leave it at the default.

--DayWeek2Name 0=Sunday --DayWeek2Name 1=Monday
--DayWeek2Name 2=Tuesday --DayWeek2Name 3=Wednesday
--DayWeek2Name 4=Thursday --DayWeek2Name 5=Friday
--DayWeek2Name 6=Saturday
--debug_level number

Turn on debugging. The larger the number, the more verbose the output. (don't do this unless you're a developer)

--entry_actions action

The list of actions which Posy will perform on each entry. Only use this if you're using a plugin which requires inserting a new action. Note that if you do, you must specify every action to be performed; once the default actions are not being used, they must be replaced completely.

--entry_actions header --entry_actions entry_template --entry_actions read_entry --entry_actions parse_entry --entry_actions short_body --entry_actions render_entry --entry_actions append_entry

--file_extensions ext=type

If you wish to change the default file extensions, then use this argument. Generally one would only do this if one had added a plugin to deal with a new kind of file. Or if one wanted to give a different extension to a standard type of file. Note that if you use this option, you must specify every file extension setting you want to use; the defaults are overridden.

--file_extensions txt=text --file_extensions html=html --file_extensions blx=blosxom
--flavours flavour
--flavours html --flavours rss

The flavour(s) of files to generate. If no --flavours is given, will use the default flavour only.

--flavour_dir dirname

If you want your "flavour" template files to be in a different directory to the default, then use this argument.

--flavour_dir /files/www/posy/data/flavours

--gen_match match_string

Generate only those files which match.

--gen_type types

Comma-separated list of the types of pages to generate.

init

Run the given actions, but produce no output. This is useful for things like setting up the file indexes before doing a full run.

path

Generate one file, given by the path. If --outfile is set, then will output to that file, otherwise will output to the relevant file under --static_dir.

entry

Generate all entry files.

category

Generate all category files.

chrono

Generate all chrono files.

--help

Print help message and exit.

--libdir dirname

If you installed the Posy modules in your home directory (or some other non-global place), then you need to tell this script where to look for them. Set --libdir to that directory.

For example, if you installed the Posy modules in /home/fred/perl (and thus the Posy.pm module file is in /home/fred/perl/lib) then

--libdir '/home/fred/perl/lib'

This assumes that any Posy plugins are also under the same directory.

--manpage

Print the full help documentation (manual page) and exit.

--MonthNum2Name

This is a hash which sets how a month-number will be converted into a name. Use this if you want, for example, all month-names to be truncated.

--MonthNum2Name 1=January --MonthNum2Name 2=February --MonthNum2Name 3=March --MonthNum2Name 4=April --MonthNum2Name 5=May --MonthNum2Name 6=June --MonthNum2Name 7=July --MonthNum2Name 8=August --MonthNum2Name 9=September --MonthNum2Name 10=October --MonthNum2Name 11=November --MonthNum2Name 12=December

--outfile filename

Optional name of an output file if --gen_type is 'path'. Setting --outfile to '-' will print the result to Standard Output; useful to check if the output is what you want, first.

--plugins plugin

If you wish to use any plugins, you must put them in the plugins list, as well as installing the actual plugin modules.

For example, if you are using the Posy::Plugin::TextTemplate module, then the TextTemplate module should be installed in the same way that you installed the core Posy modules.

Then you add the name of the plugin to this plugins list.

--plugins Posy::Plugin::TextTemplate --plugins Posy::Plugin::TextToHTML

Remember that the order of plugins in the list is important if two plugins override the same function.

Note that this will always use the Posy::Core and Posy::Plugin::GenStatic plugins.

--state_dir dirname

The directory where "state" information is put.

--static_dir dirname

The directory where the output files are put.

--url url

What is my preferred base URL for this site/blog? (needs to be set for static generation, even if you didn't need to set it for dynamic generation).

--verbose

Print informational messages.

--version

Print version information and exit.

REQUIRES

Getopt::Long
Pod::Usage
Getopt::ArgvFile
File::Spec
Storable
Posy

SEE ALSO

perl(1) Getopt::Long Getopt::ArgvFile Pod::Usage

BUGS

Please report any bugs or feature requests to the author.

AUTHOR

Kathryn Andersen (RUBYKAT)
perlkat AT katspace dot com
http://www.katspace.com

COPYRIGHT AND LICENCE

Copyright (c) 2004 by Kathryn Andersen

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.