MooseX::App::Command - Load command class metaclasses
package MyApp::SomeCommand; use Moose; # optional use MooseX::App::Command option 'testattr' => ( isa => 'rw', cmd_tags => [qw(Important! Nice))], ); command_short_description 'This is a short description'; command_long_description 'This is a much longer description yadda yadda'; command_usage 'script some_command --testattr 123';
By loading this class into your command classes you enable all documentation features such as:
Parsing command documentation from Pod
Setting the command documentation manually via command_short_description and command_long_description
command_short_description
command_long_description
Overriding the automated usage header with custom usage from Pod or via command_usage
command_usage
Adding the cmd_tags, cmd_flag, cmd_aliases and cmd_type attributes to options
cmd_tags
cmd_flag
cmd_aliases
cmd_type
Set the short description. If not set this information will be taken from the Pod NAME or ABSTRACT section. Alternative this will be taken from the DistZilla ABSTRACT tag.
Set the long description. If not set this information will be taken from the Pod DESCRIPTION or OVERVIEW sections.
Set custom usage. If not set this will be taken from the Pod SYNOPSIS or USAGE section. If those sections are not available, the usage information will be autogenerated.
command_strict(0); # default OR command_strict(1);
If strict is enabled the program will terminate with an error message if superfluous/unknown positional parameters are supplied. If disabled all extra parameters will be copied to the extra_argv attribute.
The app_strict function in the app classes allows one to set this option globally.
To install MooseX::App, copy and paste the appropriate command in to your terminal.
cpanm
cpanm MooseX::App
CPAN shell
perl -MCPAN -e shell install MooseX::App
For more information on module installation, please visit the detailed CPAN module installation guide.