[Date Prev][Date Next][Thread Prev][Thread Next] [Search] [Date Index] [Thread Index]

Re: [MacPerl] MacPerl pod2html?



On Feb 25, 11:19pm, Paul Schinder wrote:
} Subject: Re: [MacPerl] MacPerl pod2html?
} 
} } On Feb 11,  2:29am, "Michael Kearney" wrote:
} } } Subject: [MacPerl] MacPerl pod2html?
} } 
} } Now runs on Macintosh with a simple configuration change.
} 
} Well, not quite.  The problem is that you're expecting ARGV to contain
} simple file names, while on a Mac ARGV in the way it's typically used
} gets filled with the full paths by MacPerl. You script then proceeds to
} construct file names too long (> 31 char) for the Mac OS, and it bombs.
} (I keep scripts I'm fooling with in many places, not just in
} $installprivlib, so the name can get long easily.)

If all your pods/pms are under one directory, put that directory name
in $installprivlib, and that base path will not be part of the
resultant html filenames.  That's why it comes pre-configured as
/usr/local/lib/perl5.  Under the most recent releases of perl for
unix, the master set of perl pods are installed in /usr/local/lib/perl5/pod,
and thats the one case which I strip the full base path.  The rest
of the pods wind up with names like File_Find.html, Text_ParseWords.html,
etc.  I confess I had neglected to consider Mac's 31 char limit, tho.

} You might also change the ^C in the print warning about the non-existant
} $installhtmldir to command-. on a Mac.

Yup.  Will do.

 
} Otherwise, this works just fine on a Mac if the filename is forced to
} be short enough.  The output looks just fine, the relative links work,
} and I'm glad you lost the ugly all-caps <title>s.  Just trim off
} everything up to the final : from the file name you try to create (or
} use the last 31 characters of the string you generate for the file
} name). 
} Personally I prefer having filename.html as the name of the html
} file, but of course that causes problems if more than one package has
} the same filename.

Hey, that's easy.  I'm already doing this for <whisper>dos</whisper>
8.3 names.  See the if($DOSify){...} block for my simple resolution.  I'll
modify this for 31 char max length.  Basically it just accounts for
multiplicity by incrementing the last char in the name, if a match
already exists.


Thanks for the comments,

Bill