X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/1202b4fd7b305b223d64f9e9f24424b72c81ab6d..cfb2da268b323f55d7e742d0a42eb8fe6ef32ca6:/IkiWiki.pm diff --git a/IkiWiki.pm b/IkiWiki.pm index 763f24e6c..0ed52aeae 100644 --- a/IkiWiki.pm +++ b/IkiWiki.pm @@ -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=@_; @@ -496,8 +502,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;