At 02:13 PM 2001-04-20 -0400, Stephen P. Potter wrote:
>"Sean M. Burke" <[EMAIL PROTECTED]>:
>|                  L<name>             manual page
>|                  L<name/"sec">       section or item in other manual page
>|                                      (the quotes are optional)
>|                  L</"sec">           section or item in this manual page
>|                                      (the quotes are optional)
>|                  L<"sec">            section or item in this manual page
>|                                      (the quotes are recommended; sec
>|                                      also cannot contain a '|')
>
>So how do you differential between L<name> and L<sec> if the quotes are
>only recommended?

You can't, and that's a well-known problem.  It's a problem separate from
what my post was actually about, but that didn't stop me from proposing a
solution a few lines down from what you quoted:

                    L<"sec"> and L<sec> (deprecated: use L</"sec">)
and
                    L<text|"sec">
                     and L<text|sec>    (deprecated: use L<text|/"sec">)


Now, your suggestion:

>L<link>           A link (cross reference) to "link"
>   "link" follows these rules:
>   name(#)       A manual Page (# is optional)
>   /"sec"        A section (" optional)
>   :"ident"      An item (" optional)
>   "text"|       An arbitrary text string to print (" optional)
>[...]  L<"text"|name(#)/"sec":"ident">

is rather more ambitious than mine, and is yet a third way to impute the
semantics of section-link-destination versus item-link-destination: it
apparently envisages a distinction between the two, such that they are no
longer mutually exclusive!
(At least as I understand things, they /are/ mutually exclusive currently:
a link is either to L<name/item> or L<name/"section">.)

So does L<name/"sec":"foos"> mean a link to the link-tag in the "sec"
section, ignoring any other "foos" things in the document?  I don't think
those semantics are feasable in HTML, and I think of hypertextification as
basically the whole point of the L<...> construct (since otherwise you
could just have plaintext saying: "See Foo::Bar's section on Baz").  And
making a hypertext construct that's hard to make into HTML is very bad idea.


Also, if I read it right, your proposal is incompatible with existing POD;
it would reject like L<perlvar/Predefined Names> and L<perlvar/$^F>.  And,
for incompatibility in the other direction, I think that current POD
parsers would misread L<foo|"name":"section"> as making the text foo a link
to a man page called name":"section [sic!].


But I like compatibility; and my suggestion is basically a clarification of
existing practice (i.e., clarifying that section-link-targets and
item-link-targes might as well be the same thing), and my further
suggestion for deprecation (above) is just to shoo people away from
pointlessly ambiguous constructs.


--
Sean M. Burke  [EMAIL PROTECTED]  http://www.spinn.net/~sburke/

Reply via email to