From: intrigeri Date: Fri, 10 Oct 2008 13:16:04 +0000 (+0200) Subject: po plugin: implement linking specification in one of the main cases X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/commitdiff_plain/e82c6b1908b21b5e4246767d6a87fe46245e5e29?ds=sidebyside po plugin: implement linking specification in one of the main cases i.e. in case usedirs is enabled and po_link_to_current_language is disabled Signed-off-by: intrigeri --- diff --git a/IkiWiki/Plugin/po.pm b/IkiWiki/Plugin/po.pm index fea4ca6eb..63be0e389 100644 --- a/IkiWiki/Plugin/po.pm +++ b/IkiWiki/Plugin/po.pm @@ -15,6 +15,7 @@ sub import { hook(type => "getsetup", id => "po", call => \&getsetup); hook(type => "checkconfig", id => "po", call => \&checkconfig); hook(type => "targetpage", id => "po", call => \&targetpage); + hook(type => "tweakurlpath", id => "po", call => \&tweakurlpath); hook(type => "filter", id => "po", call => \&filter); hook(type => "preprocess", id => "translatable", call => \&preprocess_translatable); hook(type => "htmlize", id => "po", call => \&htmlize); @@ -91,6 +92,15 @@ sub targetpage (@) { #{{{ } } #}}} +sub tweakurlpath ($) { #{{{ + my %params = @_; + my $url=$params{url}; + if (! $config{po_link_to_current_language} && $config{usedirs}) { + $url =~ s!/index.$config{po_master_language}{code}.$config{htmlext}$!/!; + } + return $url; +} #}}} + # We use filter to convert PO to the master page's type, # since other plugins should not work on PO files sub filter (@) { #{{{