标签为“twiki”的日记

TeX的字体的相关基础知识

    TeX对于某些长期在linux系统工作的人并不陌生,这里打个比方,熟悉在web上写文档的人都知道wiki或twiki吧?TeX就好比wiki&twiki,熟悉TeX的语法就相当于熟悉了wiki&twiki的语法,然而偶觉得这点并不是最重要的,至少它像其他文档编写一样有简易的语法文档。
    而偶觉得最重要的是弄懂TeX的字体,这个才是tex编辑中的精髓。
    熟悉wiki&twiki的人都知道编辑的文字在wiki&twiki中显示,需要一个载体,目前这个载体就是浏览器(比如Firefox、IE、Safari),浏览器管理着这个字体的风格,大小、颜色等等,随着版本不同,甚至操作系统的不同,会导致你在浏览器上看到的文字呈现出千变万化来,而tex不一样,只要你指定了相关的描述,不管是什么操作系统或软件是什么版本,它的排版样式不会因为外界的变化而改变,这就是各种期刊杂志和一些学术界为什么要采用TeX的原因。
    关于TeX还有一个故事,20世纪60年代,著名计算机专家和数学家,美国科学艺术学院院士,美国国家科学院院士,工程院院士,计算机界的诺贝尔奖——图灵奖获奖者斯坦福大学的 Knuth 教授准备出系列专著《计算机程序设计艺术》,出版社拿来书样给他过目,结果令他大失所望,尤其是在数学公式和字体上面的缺陷更令他无法接受,于是牛人自己写一个既能供科学家编排手稿又符合出版社印刷要求的高质量的计算机排版系统,这就是后来的TeX。后来,美国计算机学家 Lamport 博士于1985年对tex进行了改进,开发了lateX。由此可以见TeX的产生,主要用于排版。
    与Microsoft Word相比,TeX相对起点比较高,且不是所见即所得,所以存在一定的劣势,而Tex在复杂的排版方面比Microsoft Word有着先天的优势,特别是数学公式、图、表、自定义编号、交叉引用、索引、参考文献、文章修改频度等等。

TWiki4.2.4的一个小问题

在维护stlchina.org的时候,发现了一个问题,就是如果网站使用.pl做后缀的时候,发现%TOC%标签出现了问题,有两个pl的重复,不知道是不是TWiki的一个bug?

临时解决方案如下:
找到TWiki.pm文件,将
$url .= $TWiki::cfg{ScriptSuffix} if $script;
修改成:
$url .= $TWiki::cfg{ScriptSuffix} if ($script && $script !~ /$TWiki::cfg{ScriptSuffix}$/);
即可。

很黄很暴力吧!! 呵呵 :)

修正Twiki4.2.2的一个Bug

美国yahoo内部人员文档交流使用的的twiki页面是twiki页面,但是twiki对UTF-8汉字处理不太好,导致一些莫名其妙的问题,如字体从上到下,越来越大。为了解决这个症状,本人跟踪了一下这个原因,应该是twiki的一个bug。

我们知道在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 ));
即可。


怎么迁移Twiki数据?

著名的Twiki,相信很多人都用过吧。
Twiki的安装方法在这里我不再累述,安装参考资料如下:


  1. Twiki安装向导
  2. Twiki安装FAQ
  3. 文德的 如何安装TWiki(中文TWiki 4.0安装)

这里我只重点讲讲迁移Twiki数据前期工作以及迁移数据过程中所遇到的一些问题。

1

标签