unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (OpenBSD-3.6)
Page:
Section:
Apropos / Subsearch:
optional field



Pod::ParseLink(3pPerl Programmers Reference GuiPod::ParseLink(3p)


NAME
       Pod::ParseLink - Parse an L<> formatting code in POD text

SYNOPSIS
           use Pod::ParseLink;
           my ($text, $inferred, $name, $section, $type) = parselink ($link);

DESCRIPTION
       This module only provides a single function, parselink(),
       which takes the text of an L<> formatting code and parses
       it.  It returns the anchor text for the link (if any was
       given), the anchor text possibly inferred from the name
       and section, the name or URL, the section if any, and the
       type of link.  The type will be one of 'url', 'pod', or
       'man', indicating a URL, a link to a POD page, or a link
       to a Unix manual page.

       Parsing is implemented per perlpodspec.  For backward com-
       patibility, links where there is no section and name con-
       tains spaces, or links where the entirety of the link
       (except for the anchor text if given) is enclosed in dou-
       ble-quotes are interpreted as links to a section (L</sec-
       tion>).

       The inferred anchor text is implemented per perlpodspec:

           L<name>         =>  L<name|name>
           L</section>     =>  L<"section"|/section>
           L<name/section> =>  L<"section" in name|name/section>

       The name may contain embedded E<> and Z<> formatting
       codes, and the section, anchor text, and inferred anchor
       text may contain any formatting codes.  Any double quotes
       around the section are removed as part of the parsing, as
       is any leading or trailing whitespace.

       If the text of the L<> escape is entirely enclosed in dou-
       ble quotes, it's interpreted as a link to a section for
       backwards compatibility.

       No attempt is made to resolve formatting codes.  This must
       be done after calling parselink (since E<> formatting
       codes can be used to escape characters that would other-
       wise be significant to the parser and resolving them
       before parsing would result in an incorrect parse of a
       formatting code like:

           L<verticalE<verbar>barE<sol>slash>

       which should be interpreted as a link to the "verti-
       cal|bar/slash" POD page and not as a link to the "slash"
       section of the "bar" POD page with an anchor text of "ver-
       tical".  Note that not only the anchor text will need to
       have formatting codes expanded, but so will the target of



perl v5.8.5                 2002-11-06                          1





Pod::ParseLink(3pPerl Programmers Reference GuiPod::ParseLink(3p)


       the link (to deal with E<> and Z<> formatting codes), and
       special handling of the section may be necessary depending
       on whether the translator wants to consider markup in sec-
       tions to be significant when resolving links.  See
       perlpodspec for more information.

SEE ALSO
       Pod::Parser

       The current version of this module is always available
       from its web site at <http://www.eyrie.org/~eagle/soft-
       ware/podlators/>.

AUTHOR
       Russ Allbery <rraATstanford.edu>.

COPYRIGHT AND LICENSE
       Copyright 2001 by Russ Allbery <rraATstanford.edu>.

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




































perl v5.8.5                 2002-11-06                          2