食品百科全书:帮助
取自 食品百科全书
Wiki,源自夏威夷语的“wee kee wee kee”,本是“快点快点”之意。在这里wiki指的是一种可在网络上开放多人协同创作的超文本系统,是由“Wiki之父”沃德·坎宁安(Ward Cunningham)于1995年所创。
基本上,wiki包含一套能简易创造、改变HTML网页的系统,再加上一套纪录以及编目所有改变的系统,以提供还原改变的功能。使用wiki系统的网站称为wiki网站,wiki网站容许任何造访网站的人能快速轻易的加入、删除、编辑所有的内容,而且通常连登入都不必,因此特别适合团队合作的写作方式。wiki系统也可以包括各种辅助工具,让使用者能轻易追踪wiki的持续变化,或是让众使用者之间讨论解决关于wiki内容的固有争议。wiki的内容也可能有误,因为使用者必定会加上不正确的资料。
有人认为,Wiki系统属于一种人类知识的网络系统,我们可以在Web的基础上对Wiki文本进行浏览、创建、更改,而且这种创建、更改、及发布的代价远比HTML文本小;与此同时Wiki系统还支持那些面向社群的协作式写作,为协作式写作提供了必要的帮助;最后,Wiki的写作者自然构成了一个社群,Wiki系统为这个社群提供了简单的交流工具。与其它超文本系统相比,Wiki有使用简便且开放的特点,所以Wiki系统可以帮助我们在一个社群内共享某个领域的知识。
wiki的中文翻译有维基、维客、围纪、快纪等。其中,“维基”一词是中文维基百科人特别为维基百科而创的,属于维基媒体的专用术语。虽然如此,随著“维基”一词使用日广,已逐渐成为wiki最普及的译名之一。
关键特质
一个wiki网站让人能够用网页浏览器以及很简单的标记语言合作撰写文件。wiki技术的关键特质是能轻易用来创造与更新许多网页。一般来说,改变网页是不经审核的。大部分的wiki都是公开给一般大众,不用注册帐号。有些wiki会替使用者自动签名,并且要求使用者持有一个“cookie”。私人的wiki之中,大多会要求身分认证。大部分的编辑都是即时的,而且几乎会立即出现在网络上。这一点常导致系统被滥用。
页面与编辑
传统的wiki系统中,一个页面有三种形式:
适合使用者编辑的“源码”。这同时也是储存在服务器的格式。wiki原始码通常是普通文字,而只有在使用者编辑页面时,网页上的编辑框才会显示wiki原始码给使用者。 一个定义所有页面的元素与布局的模板。 某个特定页面被要求(request)时服务器即时根据源码生产的HTML页面。 原始格式使用了简化的标记语言来代表各种结构与样式。这种设计使使用者不必直接接触HTML标签。这种设计背后的主要理由是HTML标签不太适合人类阅读,也不太适合大多数使用者编辑,所以以普通文字为主,并且用简单的规则代表结构与样式会比较好。
有人认为不让使用者直接使用HTML标签还有另一些好处,例如使用者不能用“script”标签,提供额外的安全保障;使用者不能用CSS,让页面外观一致。还有些wiki的设计会使得超连结与超连结的文字说明一样,而不像HTML的超连结与文字说明没有关系。
最近还有些wiki引擎容许所谓所见即所得编辑,将这些技术细节都隐藏起来。
标准
连结与创造页面 wiki是超文本的媒体,拥有非线性的导览结构。每个页面通常有大量的连往其他页面的超连结。在大型的wiki中常会有阶级式的导览页面,但是未必要用到。
超连结是用特别的语法创造。“CamelCase”是第一种,接著有“free link”等等语法。维基百科用的Mediawiki的内部连结语法是这样:
连结 wiki之中的新页面往往是相关的页面在创造超连结时产生的。wiki会特别标示连往尚未存在页面的连结。顺著这种连结就可开启空白的编辑页面,让使用者输入新页面的内容。因此新页面往往已和其他页面有连结。
搜寻
大部分wiki都提供标题的搜寻,少数还提供全文搜寻。搜寻的规模是看wiki是否有使用数据库。
服务器端wiki对客户端wiki
目前大部分的wiki系统都是服务器端wiki,像是维基百科就是。基本上,编辑等各种动作都是依靠wiki引擎将内容陈列在HTML网页之中,提供给浏览器显示。
而客户端wiki系统的服务器只要送wiki源码档案(就像普通Web网站服务器让人透过HTTP取得HTML页面)。这种系统中将wiki源码转换成表现形式所需的程序都在客户端的浏览器。这种wiki对浏览器的要求较高。浏览器可能比单纯加上套件要更复杂。
版本控制
wiki设计的理念往往较倾向“要修正错误很容易”,而不是“要犯错很难”。因此wiki是高度开放并提供方法来验证近来页面的更动是否正当。几乎每个wiki最主要的方法都是提供“最近更改”页面。这个页面还可以有更进一步的功能:只显示大变动,只显示哪段时间内的变动,提供某一个版本的页面,提供比较功能等等。为了避免遗漏,某些wiki还有监视功能,让个别使用者能监视某些特定页面的变动。
维基百科用的MediaWiki进一步应用了复杂的版本控制概念与工具来提供监视、控制页面变动的功能。
历史
檀香山的Wiki Wiki站牌。wiki软件是由软件设计模式社群发展出来,用来书写与讨论模式语言。沃德·坎宁安(Ward Cunningham)于1995年3月25日成立了第一个wiki:WikiWikiWeb,用来补充他自己经营的软件设计模式网站。他发明了wiki这个名字以及相关概念,并且实作了第一个wiki引擎。坎宁安说自己是根据檀香山的Wiki Wiki公共汽车取名的。这是他到檀香山学会的第一个夏威夷语。
坎宁安说wiki的构想是来自他自己在1980年代晚期利用苹果电脑HyperCard程序作出的一个小功能。
HyperCard很像是名片整理程序,可用来纪录人物与相关事物。HyperCard管理许多称为“卡片”的资料。每张卡片上都可划分字段,加上图片、有样式的文字、按钮等等,而且这些内容都可在查阅卡片的同时编辑修改。HyperCard有点像后来的网页,但是缺乏一些重要特征。
坎宁安认为原本的HyperCard程序很有用,但是创造卡片与卡片之间的连结却很困难。于是他不用HyperCard程序原本的创造连结功能,而改用“随选搜寻”的方式自己增添了一个新的连结功能。使用者只要将连结输入卡片上的一个特殊字段,而这个字段每一行都有一个按钮。按下按钮时如果卡片已经存在,按钮就会带使用者去那张卡片,否则就发出哔声,而继续压著按钮不放程序就会为使用者产生一张卡片。
坎宁安将这个程序与他自己写的人事卡片展示给许多朋友看,往往会有人指出卡片之中的内容不太对,而他们也可以当场利用HyperCard原来的功能修正内容,以及利用坎宁安加入的新功能补充连结。
坎宁安后来在别处又写了这样的功能,而且这次他还增加了多使用者写作功能。新功能之一是程序会在每一次任何一张卡片被更改时,自动在“最近更改”卡片上增加一个连往被更改卡片的连结。坎宁安自己常常看“最近更改”卡片,而且还会注意到空白的说明字段会让他想要描述一下更改的摘要。一缺三