Add built local::lib
[catagits/Gitalist.git] / local-lib5 / man / man3 / File::Spec::VMS.3pm
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 "File::Spec::VMS 3"
132 .TH File::Spec::VMS 3 "2009-05-10" "perl v5.8.7" "User Contributed Perl Documentation"
133 .SH "NAME"
134 File::Spec::VMS \- methods for VMS file specs
135 .SH "SYNOPSIS"
136 .IX Header "SYNOPSIS"
137 .Vb 1
138 \& require File::Spec::VMS; # Done internally by File::Spec if needed
139 .Ve
140 .SH "DESCRIPTION"
141 .IX Header "DESCRIPTION"
142 See File::Spec::Unix for a documentation of the methods provided
143 there. This package overrides the implementation of these methods, not
144 the semantics.
145 .PP
146 The mode of operation of these routines depend on the \s-1VMS\s0 features that
147 are controlled by the \s-1DECC\s0 features \f(CW\*(C`DECC$FILENAME_REPORT_UNIX\*(C'\fR and
148 \&\f(CW\*(C`DECC$EFS_CHARSET\*(C'\fR.
149 .PP
150 Perl needs to be at least at 5.10 for these feature settings to work.
151 Use of them on older perl versions on \s-1VMS\s0 will result in unpredictable
152 operations.
153 .PP
154 The default and traditional mode of these routines have been to expect \s-1VMS\s0
155 syntax on input and to return \s-1VMS\s0 syntax on output, even when Unix syntax was
156 given on input.
157 .PP
158 The default and traditional mode is also incompatible with the \s-1VMS\s0
159 \&\f(CW\*(C`EFS\*(C'\fR, Extended File system character set, and with running Perl scripts
160 under <\s-1GNV\s0>, Gnu is not \s-1VMS\s0, an optional Unix like runtime environment on \s-1VMS\s0.
161 .PP
162 If the \f(CW\*(C`DECC$EFS_CHARSET\*(C'\fR feature is enabled, These routines will now accept
163 either \s-1VMS\s0 or \s-1UNIX\s0 syntax.  If the input parameters are clearly \s-1VMS\s0 syntax,
164 the return value will be in \s-1VMS\s0 syntax.  If the input parameters are clearly
165 in Unix syntax, the output will be in Unix syntax.
166 .PP
167 This corresponds to the way that the \s-1VMS\s0 C library routines have always
168 handled filenames, and what a programmer who has not specifically read this
169 pod before would also expect.
170 .PP
171 If the \f(CW\*(C`DECC$FILENAME_REPORT_UNIX\*(C'\fR feature is enabled, then if the output
172 syntax can not be determined from the input syntax, the output syntax will be
173 \&\s-1UNIX\s0.  If the feature is not enabled, \s-1VMS\s0 output will be the default.
174 .IP "canonpath (override)" 4
175 .IX Item "canonpath (override)"
176 Removes redundant portions of file specifications according to the syntax
177 detected.
178 .IP "catdir (override)" 4
179 .IX Item "catdir (override)"
180 Concatenates a list of file specifications, and returns the result as a
181 directory specification.  No check is made for \*(L"impossible\*(R"
182 cases (e.g. elements other than the first being absolute filespecs).
183 .IP "catfile (override)" 4
184 .IX Item "catfile (override)"
185 Concatenates a list of directory specifications with a filename specification
186 to build a path.
187 .IP "curdir (override)" 4
188 .IX Item "curdir (override)"
189 Returns a string representation of the current directory: '[]' or '.'
190 .IP "devnull (override)" 4
191 .IX Item "devnull (override)"
192 Returns a string representation of the null device: '_NLA0:' or '/dev/null'
193 .IP "rootdir (override)" 4
194 .IX Item "rootdir (override)"
195 Returns a string representation of the root directory: 'SYS$DISK:[000000]'
196 or '/'
197 .IP "tmpdir (override)" 4
198 .IX Item "tmpdir (override)"
199 Returns a string representation of the first writable directory
200 from the following list or '' if none are writable:
201 .Sp
202 .Vb 3
203 \&    /tmp if C<DECC$FILENAME_REPORT_UNIX> is enabled.
204 \&    sys$scratch:
205 \&    $ENV{TMPDIR}
206 .Ve
207 .Sp
208 Since perl 5.8.0, if running under taint mode, and if \f(CW$ENV\fR{\s-1TMPDIR\s0}
209 is tainted, it is not used.
210 .IP "updir (override)" 4
211 .IX Item "updir (override)"
212 Returns a string representation of the parent directory: '[\-]' or '..'
213 .IP "case_tolerant (override)" 4
214 .IX Item "case_tolerant (override)"
215 \&\s-1VMS\s0 file specification syntax is case\-tolerant.
216 .IP "path (override)" 4
217 .IX Item "path (override)"
218 Translate logical name \s-1DCL$PATH\s0 as a searchlist, rather than trying
219 to \f(CW\*(C`split\*(C'\fR string value of \f(CW$ENV{'PATH'}\fR.
220 .IP "file_name_is_absolute (override)" 4
221 .IX Item "file_name_is_absolute (override)"
222 Checks for \s-1VMS\s0 directory spec as well as Unix separators.
223 .IP "splitpath (override)" 4
224 .IX Item "splitpath (override)"
225 .Vb 2
226 \&    ($volume,$directories,$file) = File::Spec\->splitpath( $path );
227 \&    ($volume,$directories,$file) = File::Spec\->splitpath( $path, $no_file );
228 .Ve
229 .Sp
230 Passing a true value for \f(CW$no_file\fR indicates that the path being
231 split only contains directory components, even on systems where you
232 can usually (when not supporting a foreign syntax) tell the difference
233 between directories and files at a glance.
234 .IP "splitdir (override)" 4
235 .IX Item "splitdir (override)"
236 Split a directory specification into the components.
237 .IP "catpath (override)" 4
238 .IX Item "catpath (override)"
239 Construct a complete filespec.
240 .IP "abs2rel (override)" 4
241 .IX Item "abs2rel (override)"
242 Attempt to convert a file specification to a relative specification.
243 On a system with volumes, like \s-1VMS\s0, this may not be possible.
244 .IP "rel2abs (override)" 4
245 .IX Item "rel2abs (override)"
246 Return an absolute file specification from a relative one.
247 .SH "COPYRIGHT"
248 .IX Header "COPYRIGHT"
249 Copyright (c) 2004 by the Perl 5 Porters.  All rights reserved.
250 .PP
251 This program is free software; you can redistribute it and/or modify
252 it under the same terms as Perl itself.
253 .SH "SEE ALSO"
254 .IX Header "SEE ALSO"
255 See File::Spec and File::Spec::Unix.  This package overrides the
256 implementation of these methods, not the semantics.
257 .PP
258 An explanation of \s-1VMS\s0 file specs can be found at
259 \&\*(L"http://h71000.www7.hp.com/doc/731FINAL/4506/4506pro_014.html#apps_locating_naming_files\*(R".