]> sipb.mit.edu Git - ikiwiki.git/blobdiff - IkiWiki.pm
My fix to support encoded underscores in page titles broke links to pages
[ikiwiki.git] / IkiWiki.pm
index 763f24e6c72d638099a7f8a73f935049061efbba..385d16a56a96e32506dd4e6f8e3da690502b60a7 100644 (file)
@@ -376,6 +376,12 @@ sub titlepage ($) { #{{{
        return $title;
 } #}}}
 
+sub linkpage ($) { #{{{
+       my $link=shift;
+       $link=~s/([^-[:alnum:]:+\/._])/$1 eq ' ' ? '_' : "__".ord($1)."__"/eg;
+       return $link;
+} #}}}
+
 sub cgiurl (@) { #{{{
        my %params=@_;
 
@@ -422,6 +428,8 @@ sub htmllink ($$$;@) { #{{{
        my $link=shift;
        my %opts=@_;
 
+print STDERR "bestlink $lpage $link\n" if $lpage eq "roadmap" && $link =~/rcs/;
+
        my $bestlink;
        if (! $opts{forcesubpage}) {
                $bestlink=bestlink($lpage, $link);
@@ -496,8 +504,8 @@ sub linkify ($$$) { #{{{
 
        $content =~ s{(\\?)$config{wiki_link_regexp}}{
                defined $2
-                       ? ( $1 ? "[[$2|$3]]" : htmllink($lpage, $page, titlepage($3), anchor => $4, linktext => pagetitle($2)))
-                       : ( $1 ? "[[$3]]"    : htmllink($lpage, $page, titlepage($3), anchor => $4))
+                       ? ( $1 ? "[[$2|$3]]" : htmllink($lpage, $page, linkpage($3), anchor => $4, linktext => pagetitle($2)))
+                       : ( $1 ? "[[$3]]"    : htmllink($lpage, $page, linkpage($3), anchor => $4))
        }eg;
        
        return $content;