Add built local::lib
[catagits/Gitalist.git] / local-lib5 / man / man1 / config_data.1p
1 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.3
2 .\"
3 .\" Standard preamble:
4 .\" ========================================================================
5 .de Sh \" Subsection heading
6 .br
7 .if t .Sp
8 .ne 5
9 .PP
10 \fB\\$1\fR
11 .PP
12 ..
13 .de Sp \" Vertical space (when we can't use .PP)
14 .if t .sp .5v
15 .if n .sp
16 ..
17 .de Vb \" Begin verbatim text
18 .ft CW
19 .nf
20 .ne \\$1
21 ..
22 .de Ve \" End verbatim text
23 .ft R
24 .fi
25 ..
26 .\" Set up some character translations and predefined strings.  \*(-- will
27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
28 .\" double quote, and \*(R" will give a right double quote.  | will give a
29 .\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
30 .\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
31 .\" expand to `' in nroff, nothing in troff, for use with C<>.
32 .tr \(*W-|\(bv\*(Tr
33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
34 .ie n \{\
35 .    ds -- \(*W-
36 .    ds PI pi
37 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
38 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
39 .    ds L" ""
40 .    ds R" ""
41 .    ds C` ""
42 .    ds C' ""
43 'br\}
44 .el\{\
45 .    ds -- \|\(em\|
46 .    ds PI \(*p
47 .    ds L" ``
48 .    ds R" ''
49 'br\}
50 .\"
51 .\" If the F register is turned on, we'll generate index entries on stderr for
52 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
53 .\" entries marked with X<> in POD.  Of course, you'll have to process the
54 .\" output yourself in some meaningful fashion.
55 .if \nF \{\
56 .    de IX
57 .    tm Index:\\$1\t\\n%\t"\\$2"
58 ..
59 .    nr % 0
60 .    rr F
61 .\}
62 .\"
63 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
64 .\" way too many mistakes in technical documents.
65 .hy 0
66 .if n .na
67 .\"
68 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
69 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
70 .    \" fudge factors for nroff and troff
71 .if n \{\
72 .    ds #H 0
73 .    ds #V .8m
74 .    ds #F .3m
75 .    ds #[ \f1
76 .    ds #] \fP
77 .\}
78 .if t \{\
79 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
80 .    ds #V .6m
81 .    ds #F 0
82 .    ds #[ \&
83 .    ds #] \&
84 .\}
85 .    \" simple accents for nroff and troff
86 .if n \{\
87 .    ds ' \&
88 .    ds ` \&
89 .    ds ^ \&
90 .    ds , \&
91 .    ds ~ ~
92 .    ds /
93 .\}
94 .if t \{\
95 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
96 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
97 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
98 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
99 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
100 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
101 .\}
102 .    \" troff and (daisy-wheel) nroff accents
103 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
104 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
105 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
106 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
107 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
108 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
109 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
110 .ds ae a\h'-(\w'a'u*4/10)'e
111 .ds Ae A\h'-(\w'A'u*4/10)'E
112 .    \" corrections for vroff
113 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
114 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
115 .    \" for low resolution devices (crt and lpr)
116 .if \n(.H>23 .if \n(.V>19 \
117 \{\
118 .    ds : e
119 .    ds 8 ss
120 .    ds o a
121 .    ds d- d\h'-1'\(ga
122 .    ds D- D\h'-1'\(hy
123 .    ds th \o'bp'
124 .    ds Th \o'LP'
125 .    ds ae ae
126 .    ds Ae AE
127 .\}
128 .rm #[ #] #H #V #F C
129 .\" ========================================================================
130 .\"
131 .IX Title "CONFIG_DATA 1"
132 .TH CONFIG_DATA 1 "2009-12-09" "perl v5.8.7" "User Contributed Perl Documentation"
133 .SH "NAME"
134 config_data \- Query or change configuration of Perl modules
135 .SH "SYNOPSIS"
136 .IX Header "SYNOPSIS"
137 .Vb 3
138 \&  # Get config/feature values
139 \&  config_data \-\-module Foo::Bar \-\-feature bazzable
140 \&  config_data \-\-module Foo::Bar \-\-config magic_number
141 .Ve
142 .PP
143 .Vb 3
144 \&  # Set config/feature values
145 \&  config_data \-\-module Foo::Bar \-\-set_feature bazzable=1
146 \&  config_data \-\-module Foo::Bar \-\-set_config magic_number=42
147 .Ve
148 .PP
149 .Vb 2
150 \&  # Print a usage message
151 \&  config_data \-\-help
152 .Ve
153 .SH "DESCRIPTION"
154 .IX Header "DESCRIPTION"
155 The \f(CW\*(C`config_data\*(C'\fR tool provides a command-line interface to the
156 configuration of Perl modules.  By \*(L"configuration\*(R", we mean something
157 akin to \*(L"user preferences\*(R" or \*(L"local settings\*(R".  This is a
158 formalization and abstraction of the systems that people like Andreas
159 Koenig (\f(CW\*(C`CPAN::Config\*(C'\fR), Jon Swartz (\f(CW\*(C`HTML::Mason::Config\*(C'\fR), Andy
160 Wardley (\f(CW\*(C`Template::Config\*(C'\fR), and Larry Wall (perl's own Config.pm)
161 have developed independently.
162 .PP
163 The configuration system emplyed here was developed in the context of
164 \&\f(CW\*(C`Module::Build\*(C'\fR.  Under this system, configuration information for a
165 module \f(CW\*(C`Foo\*(C'\fR, for example, is stored in a module called
166 \&\f(CW\*(C`Foo::ConfigData\*(C'\fR) (I would have called it \f(CW\*(C`Foo::Config\*(C'\fR, but that
167 was taken by all those other systems mentioned in the previous
168 paragraph...).  These \f(CW\*(C`...::ConfigData\*(C'\fR modules contain the
169 configuration data, as well as publically accessible methods for
170 querying and setting (yes, actually re\-writing) the configuration
171 data.  The \f(CW\*(C`config_data\*(C'\fR script (whose docs you are currently
172 reading) is merely a front-end for those methods.  If you wish, you
173 may create alternate front\-ends.
174 .PP
175 The two types of data that may be stored are called \f(CW\*(C`config\*(C'\fR values
176 and \f(CW\*(C`feature\*(C'\fR values.  A \f(CW\*(C`config\*(C'\fR value may be any perl scalar,
177 including references to complex data structures.  It must, however, be
178 serializable using \f(CW\*(C`Data::Dumper\*(C'\fR.  A \f(CW\*(C`feature\*(C'\fR is a boolean (1 or
179 0) value.
180 .SH "USAGE"
181 .IX Header "USAGE"
182 This script functions as a basic getter/setter wrapper around the
183 configuration of a single module.  On the command line, specify which
184 module's configuration you're interested in, and pass options to get
185 or set \f(CW\*(C`config\*(C'\fR or \f(CW\*(C`feature\*(C'\fR values.  The following options are
186 supported:
187 .IP "module" 4
188 .IX Item "module"
189 Specifies the name of the module to configure (required).
190 .IP "feature" 4
191 .IX Item "feature"
192 When passed the name of a \f(CW\*(C`feature\*(C'\fR, shows its value.  The value will
193 be 1 if the feature is enabled, 0 if the feature is not enabled, or
194 empty if the feature is unknown.  When no feature name is supplied,
195 the names and values of all known features will be shown.
196 .IP "config" 4
197 .IX Item "config"
198 When passed the name of a \f(CW\*(C`config\*(C'\fR entry, shows its value.  The value
199 will be displayed using \f(CW\*(C`Data::Dumper\*(C'\fR (or similar) as perl code.
200 When no config name is supplied, the names and values of all known
201 config entries will be shown.
202 .IP "set_feature" 4
203 .IX Item "set_feature"
204 Sets the given \f(CW\*(C`feature\*(C'\fR to the given boolean value.  Specify the value
205 as either 1 or 0.
206 .IP "set_config" 4
207 .IX Item "set_config"
208 Sets the given \f(CW\*(C`config\*(C'\fR entry to the given value.
209 .IP "eval" 4
210 .IX Item "eval"
211 If the \f(CW\*(C`\-\-eval\*(C'\fR option is used, the values in \f(CW\*(C`set_config\*(C'\fR will be
212 evaluated as perl code before being stored.  This allows moderately
213 complicated data structures to be stored.  For really complicated
214 structures, you probably shouldn't use this command-line interface,
215 just use the Perl \s-1API\s0 instead.
216 .IP "help" 4
217 .IX Item "help"
218 Prints a help message, including a few examples, and exits.
219 .SH "AUTHOR"
220 .IX Header "AUTHOR"
221 Ken Williams, kwilliams@cpan.org
222 .SH "COPYRIGHT"
223 .IX Header "COPYRIGHT"
224 Copyright (c) 1999, Ken Williams.  All rights reserved.
225 .PP
226 This library is free software; you can redistribute it and/or modify
227 it under the same terms as Perl itself.
228 .SH "SEE ALSO"
229 .IX Header "SEE ALSO"
230 \&\fIModule::Build\fR\|(3), \fIperl\fR\|(1).