From: Joey Hess Date: Thu, 24 Jul 2008 16:36:10 +0000 (-0400) Subject: fix encoding issues with link conversion X-Git-Tag: 2.55~42^2 X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/commitdiff_plain/c2f621cb1c2eb8bb898acfbfac059c5ee2d9568e?hp=8b3d2ab0bcd5b79c30d6e07dd8f363431d94dd72 fix encoding issues with link conversion Have to convert link text to page name going in. And on the way out, need to replace spaces with underscores in the link text, which is not normally done with titles. --- diff --git a/IkiWiki/Plugin/link.pm b/IkiWiki/Plugin/link.pm index 529610710..2ea6aa19e 100644 --- a/IkiWiki/Plugin/link.pm +++ b/IkiWiki/Plugin/link.pm @@ -90,8 +90,9 @@ sub renamepage (@) { #{{{ $params{content} =~ s{(? 20; +use Test::More tests => 21; use Encode; BEGIN { use_ok("IkiWiki"); } @@ -45,6 +45,7 @@ is(try("z", "foo" => "bar", "[[!moo ]]"), "[[!moo ]]"); # preprocessor directive is(try("bugs", "bugs/foo" => "wishlist/bar", "[[foo]]"), "[[wishlist/bar]]"); # subpage link is(try("z", "foo_bar" => "bar", "[[foo_bar]]"), "[[bar]]"); # old link with underscore is(try("z", "foo" => "bar_foo", "[[foo]]"), "[[bar_foo]]"); # new link with underscore +is(try("z", "foo_bar" => "bar_foo", "[[foo_bar]]"), "[[bar_foo]]"); # both with underscore is(try("z", "foo" => "bar__".ord("(")."__", "[[foo]]"), "[[bar(]]"); # new link with escaped chars -is(try("z", "foo__".ord("(")."__" => "bar", "[[foo(]]"), "[[bar(]]"); # old link with escaped chars +is(try("z", "foo__".ord("(")."__" => "bar(", "[[foo(]]"), "[[bar(]]"); # old link with escaped chars is(try("z", "foo__".ord("(")."__" => "bar__".ord(")")."__", "[[foo(]]"), "[[bar)]]"); # both with escaped chars