At 2:00 PM -0800 3/26/05, Michael G Schwern wrote:
>On Sat, Mar 26, 2005 at 09:35:10AM -0600, Craig A. Berry wrote:
>> 2.) Use '_author' instead of '.author' when on VMS since a dot in a
>> directory name is usually invalid and always awkward.
>
>Really?  I've yet to see a problem with .foo style on VMS.  Where does it
>go wrong?
>
>If it is a bad thing on VMS, MI should use _foo everywhere rather than
>create Yet Another VMS Exception.

The problem is it does a C<-d '.author'>, expecting the dot to be
part of the directory name, not just a directory separator.  So in
VMS syntax, that's C<[..author]>, which is invalid on ODS-2 volumes
or with traditional parsing in effect:

$ create/directory [..author]
%CREATE-E-DIRNOTCRE, [..AUTHOR] directory file not created
-RMS-F-SYN, file specification syntax error

On an ODS-5 volume on VMS 7.2 or later with extended parsing enabled,
you can force a dot into a directory name by escaping it with a caret:

$ create/directory [.^.author]
$ directory ^.author.dir

Directory DISK1:[perlStuff]

^.author.DIR;1

Total of 1 file.
$ perl -e "print -d '^.author';"
1

But then you have to stick the caret in whenever you refer to it in
order to make clear the dot is not a directory separator, and neither
the File::Spec nor the VMS::Filespec functions handle the carets
properly (yet).

So that's the long-winded version of "usually invalid and always
awkward".  As far as using an underscore on all platforms (or getting
rid of non-word characters entirely and just having C<author>),
that'd be fine by me, but wouldn't it break things for anybody who's
already got a .author directory?

-- 
________________________________________
Craig A. Berry
mailto:[EMAIL PROTECTED]

"... getting out of a sonnet is much more
 difficult than getting in."
                 Brad Leithauser

Reply via email to