美国yahoo内部人员文档交流使用的的twiki页面是twiki页面,但是twiki对UTF-8汉字处理不太好,导致一些莫名其妙的问题,如字体从上到下,越来越大。为了解决这个症状,本人跟踪了一下这个原因,应该是twiki的一个bug。
我们知道在firefox里面字体url转码和不转码是没有什么区别的,但是在ie6下必须要url转码,否则ie6就会成为乱码,(ie7正常)于是:
1,修改TWiki/Render.pm文件:
找到函数:
接着在该函数后面加上函数urlEncode:
2,修改TWiki.pm文件:
找到函数:
我们知道在firefox里面字体url转码和不转码是没有什么区别的,但是在ie6下必须要url转码,否则ie6就会成为乱码,(ie7正常)于是:
1,修改TWiki/Render.pm文件:
找到函数:
sub makeAnchorName {在函数末尾修改返回值为:
return urlEncode($anchorName);
接着在该函数后面加上函数urlEncode:
sub urlEncode {
my $text = shift;
$text =~ s/([^0-9a-zA-Z-_.:~!*'\/%])/'%'.sprintf('%02x',ord($1))/ge;
return $text;
}
2,修改TWiki.pm文件:
找到函数:
sub _make_params {修改:
$anchor .= '#' . shift( @args );为
$anchor .= '#' . urlEncode(shift( @args ));即可。
查看全文: 修正Twiki4.2.2的一个Bug»
