return( "http://perldoc.perl.org/", 'Perl documentation' ) unless $suffix; if( $suffix =~ /^[\$\@%]/ ) { "http://perldoc.perl.org/perlvar.html#$escsuffix" } else { my ( $page, $anchor ) = split '#', $suffix, 2; my ( $uri, $title ) = ( "http://perldoc.perl.org/" ); my $func= getVars(getNode('perl keyword list setting','setting')); if( $func->{$page} ) { # LanX: handle functions $uri .= "functions/$page"; # ??? do functions need to escaped? } else { # LanX: handle core modules and pragmas $uri .= join '/', map $q->escape( $_ ), split /::/, $page; } $uri .= '.html'; if( defined $anchor ) { $uri .= '#' . $q->escape( $anchor ); ( $title = $q->escapeHTML( $q->unescape( $anchor ) ) ) =~ y/-/ /; } ( $uri, ( $title ) x!! defined $title ); }