Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
AppConfig::Std(3)     User Contributed Perl Documentation    AppConfig::Std(3)

NAME
       AppConfig::Std -	subclass of AppConfig that provides standard options

SYNOPSIS
	   use AppConfig::Std;

	   $config = AppConfig::Std->new();

	   # all AppConfig methods supported
	   $config->define('foo');	      #	define variable	foo
	   $config->set('foo', 25);	      #	setting	a variable
	   $val	= $config->get('foo');	      #	getting	variable
	   $val	= $config->foo();	      #	shorthand for getting

	   $config->args(\@ARGV);	      #	parse command-line
	   $config->file(".myconfigrc")	      #	read config file

DESCRIPTION
       AppConfig::Std is a Perl	module that provides a set of standard
       configuration variables and command-line	switches.  It is implemented
       as a subclass of	AppConfig; AppConfig provides a	general	mechanism for
       handling	global configuration variables.

       The features provided by	AppConfig::Std are:

       o   Standard command-line arguments: -help, -doc, -version, -verbose,
	   and -debug. AppConfig::Std handles the -help, -doc, and -version
	   switches for	you, so	you don't need to duplicate that code in all
	   of your scripts.  These are described below.

       o   The ARGCOUNT	default	is set to 1. This means	that by	default	all
	   switches are	expected to take a value. To change this, set the
	   ARGCOUNT parameter when defining the	variable:

	       $config->define('verbose', { ARGCOUNT =>	0 } );

       Please read the copious documentation for AppConfig to find out what
       else you	can do with this module.

STANDARD OPTIONS
       The module adds five standard configuration variables and command-line
       switches. You can define	additional variables as	you would with
       AppConfig.

   HELP
       The -help switch	will result in a short help message.  This is
       generated using Pod::Usage, which displays the OPTIONS section of your
       pod. The	script will exit with an exit value of 0.

   DOC
       The -doc	switch will result in the entire documentation being formatted
       to the screen.  This is also done with Pod::Usage.  The script will
       exit with an exit value of 0.

   VERSION
       The -version switch will	display	the version of the invoking script.
       This assumes that you have defined $VERSION in your script with
       something like the following:

	   use vars qw(	$VERSION );
	   $VERSION = sprintf("%d.%02d", q$Revision: 1.7 $ =~ /(\d+)\.(\d+)/);

       The script will exit with an exit value of 0.

   DEBUG
       The -debug switch just sets the debug variable.	This is	useful for
       displaying information in debug mode:

	   $foobar->dump() if $config->debug;

   VERBOSE
       The -verbose switch just	sets the verbose variable.  This is useful for
       displaying verbose information as a script runs:

	   print STDERR	"Running foobar\n" if $config->verbose;

TODO
       Please let me know if you have ideas for	additional switches, or	other
       modifications. Things currently being mulled:

       o   Support brief switches, such	as -h as well as -help.	 This could be
	   a config option for the constructor.

       o   Include a sample script called mkscript, which would	create a
	   template script along with Makefile.PL, MANIFEST, etc.  Kinda of a
	   h2xs	for scripts.

EXAMPLE
       The following is	the outline of a simple	script that illustrates	use of
       the AppConfig::Std module:

	   #!/usr/bin/perl -w
	   use strict;
	   use AppConfig::Std;

	   use vars qw(	$VERSION );
	   $VERSION = '1.0';

	   my $config =	AppConfig::Std->new();

	   # parse command-line	and handle std switches
	   $config->args(\@ARGV);

	   exit	0;

	   __END__

	   =head1 NAME

	   standard pod	format documentation

       The pod documentation is	expected to have the NAME, SYNOPSIS,
       DESCRIPTION, and	OPTIONS	sections. See the documentation	for "pod2man"
       for more	details.

SEE ALSO
       AppConfig - Andy	Wardley's module for unifying command-line switches
       and cofiguration	files into the notion of configuration variables.
       AppConfig::Std requires version 1.52+ of	the module, which is available
       from CPAN.

       Pod::Usage - Brad Appleton's module for extracting usage	information
       out of a	file's pod. This is used for the -doc and -help	switches.
       Available from CPAN as part of the PodParser distribution.

       perlpod <https://metacpan.org/pod/distribution/perl/pod/perlpod.pod> -
       documentation from the perl distribution	that describes the pod format.

       pod2man
       <https://metacpan.org/pod/distribution/podlators/scripts/pod2man> -
       particularly the	NOTES section in the documentation which describes the
       sections	you should include in your documentation.  AppConfig::Std uses
       Pod::Usage, which assumes well-formed pod.

REPOSITORY
       <https://github.com/neilb/AppConfig-Std>

AUTHOR
       Neil Bowers <neil@bowers.com>

COPYRIGHT
       Copyright (c) 2002-2013 Neil Bowers.

       Copyright (c) 1998-2001 Canon Research Centre Europe. All rights
       reserved.

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

perl v5.32.0			  2015-10-26		     AppConfig::Std(3)

NAME | SYNOPSIS | DESCRIPTION | STANDARD OPTIONS | TODO | EXAMPLE | SEE ALSO | REPOSITORY | AUTHOR | COPYRIGHT

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=AppConfig::Std&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help