2007
5月
20
(日)
Ver 2.02 (上層階層省略オートリンクなど)
[6]
[7]
オートリンクの正規表現は、32KB 以上になると正常に処理できなくなります。これはPHPの制限*1によります。このことは、ページ数が増加しオートリンクの正規表現が肥大化した時にオートリンクが機能しなくなることを意味しています。(現状のPukiWiki[8]の実装だとページのパラグラフ部分が表示されなくなります。)
そこで、PukiWikiMod では、32KB以上になった時に正規表現を分割して処理する方法をとっていましたが、その分割の処理が甘く、一つの階層以下に多量のページがある場合に、上手く分割できていませんでした。xpWiki[9] では、もう少しつっこんで、どのような場合にも正常に分割できるようにロジックを考えてみました。
また、分割された正規表現に対応するために、オートリンクの方式を、パラグラフ単位の処理からページ一括処理に変更しましたので、オートリンクの適用範囲が微妙に増えています。
さらに、せっかく階層を意識して修正したので、上層階層を省略してもオートリンクされるオプションをpukiwiki[8].ini.php に追加しました。
1
2
3
| // Is upper directory hierarchy omissible?
// 上層階層名は省略可能 ?
$root->autolink_omissible_upper = 0; // Bytes(need $root->autolink = ON), 0 = OFF
|
上記の部分です。オートリンクが有効の場合に有効になります。設定値はオートリンクと同じくバイト数です。
詳しく説明すると、この開発日記は xpWiki開発日記[3] の階層下に日付をページ名として書かれています。このページまたは親の xpWiki開発日記[3] にて、2007年5月15日の日記にオートリンクしたい場合は、 2007-05-15[1] とすればオートリンクされます。 xpWiki開発日記[3]/2007-05-15[1] とフルネームを書かなくてもOKです。
- 2007-05-20 22:23 nao-pon[12]
- * class/ext_autolink.php (1.6):
- 2007-05-20 10:00 nao-pon[12]
- * xoops_version.php (1.120):
- 2007-05-20 10:00 nao-pon[12]
- * class/ext_autolink.php (1.5), class/make_link.php (1.14),
class/func/pukiwiki_func.php (1.71), ini/pukiwiki[8].ini.php (1.35),
plugin[13]/api.inc.php (1.3):
- maintenanced autolink system & new config
root->autolink_omissible_upper.
- 2007-05-20 09:55 nao-pon[12]
- * plugin[13]/attach.inc.php (1.10):
- fixed touch problem on PHP Safemode.
- 2007-05-20 09:54 nao-pon[12]
- * language/: english/admin.php (1.3), japanese/admin.php (1.3),
japaneseutf/admin.php (1.2):
- edited message in admin panel.