2008-08-27 00:17:17 +02:00
|
|
|
It is possible to set a Page-Title in the meta-plugin, but that one isn't
|
2008-10-02 23:33:55 +02:00
|
|
|
reused in parentlinks. This [[patch]] may fix it.
|
2008-08-27 00:17:17 +02:00
|
|
|
|
|
|
|
<ul>
|
|
|
|
<li> I give pagetitle the full path to a page.
|
|
|
|
<li> I redefine the 'pagetitle'-sub to deal with it.
|
|
|
|
<li> to maintain compatibility for IkiWikis without the meta-plugin, i added a 'basename' to the Original-pagetitle.
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
<pre>
|
|
|
|
diff -c /usr/share/perl5/IkiWiki/Render.pm.distrib /usr/share/perl5/IkiWiki/Render.pm
|
|
|
|
*** /usr/share/perl5/IkiWiki/Render.pm.distrib Wed Aug 6 07:34:55 2008
|
|
|
|
--- /usr/share/perl5/IkiWiki/Render.pm Tue Aug 26 23:29:32 2008
|
|
|
|
***************
|
|
|
|
*** 102,108 ****
|
|
|
|
$template->param(
|
|
|
|
title => $page eq 'index'
|
|
|
|
? $config{wikiname}
|
|
|
|
! : pagetitle(basename($page)),
|
|
|
|
wikiname => $config{wikiname},
|
|
|
|
content => $content,
|
|
|
|
backlinks => $backlinks,
|
|
|
|
--- 102,108 ----
|
|
|
|
$template->param(
|
|
|
|
title => $page eq 'index'
|
|
|
|
? $config{wikiname}
|
|
|
|
! : pagetitle($page),
|
|
|
|
wikiname => $config{wikiname},
|
|
|
|
content => $content,
|
|
|
|
backlinks => $backlinks,
|
|
|
|
|
|
|
|
diff -c /usr/share/perl5/IkiWiki/Plugin/parentlinks.pm.distrib /usr/share/perl5/IkiWiki/Plugin/parentlinks.pm
|
|
|
|
*** /usr/share/perl5/IkiWiki/Plugin/parentlinks.pm.distrib Wed Aug 6 07:34:55 2008
|
|
|
|
--- /usr/share/perl5/IkiWiki/Plugin/parentlinks.pm Tue Aug 26 23:19:43 2008
|
|
|
|
***************
|
|
|
|
*** 44,50 ****
|
|
|
|
"height_$height" => 1,
|
|
|
|
};
|
|
|
|
$path.="/".$dir;
|
|
|
|
! $title=IkiWiki::pagetitle($dir);
|
|
|
|
$i++;
|
|
|
|
}
|
|
|
|
return @ret;
|
|
|
|
--- 44,50 ----
|
|
|
|
"height_$height" => 1,
|
|
|
|
};
|
|
|
|
$path.="/".$dir;
|
|
|
|
! $title=IkiWiki::pagetitle($path);
|
|
|
|
$i++;
|
|
|
|
}
|
|
|
|
return @ret;
|
|
|
|
|
|
|
|
diff -c /usr/share/perl5/IkiWiki.pm.distrib /usr/share/perl5/IkiWiki.pm
|
|
|
|
*** /usr/share/perl5/IkiWiki.pm.distrib Wed Aug 6 07:48:34 2008
|
|
|
|
--- /usr/share/perl5/IkiWiki.pm Tue Aug 26 23:47:30 2008
|
|
|
|
***************
|
|
|
|
*** 792,797 ****
|
|
|
|
--- 792,799 ----
|
|
|
|
my $page=shift;
|
|
|
|
my $unescaped=shift;
|
|
|
|
|
|
|
|
+ $page=basename($page);
|
|
|
|
+
|
|
|
|
if ($unescaped) {
|
|
|
|
$page=~s/(__(\d+)__|_)/$1 eq '_' ? ' ' : chr($2)/eg;
|
|
|
|
}
|
|
|
|
|
|
|
|
diff -c /usr/share/perl5/IkiWiki/Plugin/meta.pm.distrib /usr/share/perl5/IkiWiki/Plugin/meta.pm
|
|
|
|
*** /usr/share/perl5/IkiWiki/Plugin/meta.pm.distrib Wed Aug 6 07:34:55 2008
|
|
|
|
--- /usr/share/perl5/IkiWiki/Plugin/meta.pm Tue Aug 26 23:30:58 2008
|
|
|
|
***************
|
|
|
|
*** 3,8 ****
|
|
|
|
--- 3,9 ----
|
|
|
|
package IkiWiki::Plugin::meta;
|
|
|
|
|
|
|
|
use warnings;
|
|
|
|
+ no warnings 'redefine';
|
|
|
|
use strict;
|
|
|
|
use IkiWiki 2.00;
|
|
|
|
|
|
|
|
***************
|
|
|
|
*** 289,294 ****
|
2008-08-27 08:18:39 +02:00
|
|
|
--- 290,319 ----
|
2008-08-27 00:17:17 +02:00
|
|
|
}
|
|
|
|
} #}}}
|
|
|
|
|
|
|
|
+ sub IkiWiki::pagetitle ($;$) { #{{{
|
|
|
|
+ my $page=shift;
|
|
|
|
+ my $unescaped=shift;
|
|
|
|
+
|
|
|
|
+ if ($page =~ m#/#) {
|
|
|
|
+ $page =~ s#^/##;
|
|
|
|
+ $page =~ s#/index$##;
|
|
|
|
+ if ($pagestate{"$page/index"}{meta}{title}) {
|
|
|
|
+ $page = $pagestate{"$page/index"}{meta}{title};
|
|
|
|
+ } else {
|
|
|
|
+ $page = IkiWiki::basename($page);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if ($unescaped) {
|
|
|
|
+ $page=~s/(__(\d+)__|_)/$1 eq '_' ? ' ' : chr($2)/eg;
|
|
|
|
+ }
|
|
|
|
+ else {
|
|
|
|
+ $page=~s/(__(\d+)__|_)/$1 eq '_' ? ' ' : "&#$2;"/eg;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return $page;
|
|
|
|
+ } #}}}
|
|
|
|
+
|
|
|
|
package IkiWiki::PageSpec;
|
|
|
|
|
|
|
|
sub match_title ($$;@) { #{{{
|
|
|
|
|
|
|
|
|
|
|
|
</pre>
|
2008-11-03 01:33:33 +01:00
|
|
|
|
|
|
|
<p>
|
|
|
|
This is actually a duplicate for
|
|
|
|
[[bugs/pagetitle_function_does_not_respect_meta_titles]], where I'm
|
|
|
|
following up a bit. --[[intrigeri]]
|
|
|
|
</p>
|