はじめに †
PukiWikiで日本語(マルチバイト文字)で始まるページ名を付けると,正しく表示されません.
途中にシングル・バイト文字が含まれていると最初のシングル・バイト文字以後だけが表示されます.
PukiWiki 1.4.7とPHP 5.2.9で確認しました.
原因 †
PHP5のbasenameメソッドのバグらしいです.
解決方法 †
basenameメソッドの替わりにmb_ereg_replaceメソッドを使います.
skin/pukiwiki.skin.phpの
<h1 class="title"><?php echo ($is_page) ? htmlspecialchars(basename($vars['page'])):$page ?></h1>
という部分を
<h1 class="title"><?php echo ($is_page) ? htmlspecialchars(mb_ereg_replace('^.*/', '', $vars['page'])):$page ?></h1>
に置き換えます.