使用 WML

WML(Website META Language)代表网站元语言。元语言一词意味着 WML 接收输入的.wml 文件,处理其中的任何内容(可以是从基础 HTML 到 Perl 代码的任何内容!),然后输出您想要它输出的任何内容,例如 .html 或 .php 文件。

尽管 WML 文档非常完整且 WML 本身非常强大,但是直到您开始理解它是如何工作的之前,从示例中学习是最容易的方式。您可能会发现用于 Debian 站点的模板文件很有用。它们可以在webwml/english/template/debian/中被找到。

此处假定您在自己的计算机上安装了 WML。可通过 Debian 软件包获取 WML。

编辑 WML 源文件

所有.wml 文件都具备的一个特点是以一个或多个#use作为开头。您不应该更改或翻译其语法,只应更改或翻译带引号的字符串,如在 title=之后的字符串,这会改变在输出文件中的 <title> 元素。

除了标题行之外,我们的大多数.wml 页面都包含简单的 HTML。如果您遇到诸如 <define-tag> 或 <: ... :> 之类的标签,请小心,因为这些分界码是由WML 的特殊处理过程之一进行处理的。请查看下方以获得更多的信息。

构建 Debian 网页

简单地在 webwml/<lang> 中输入 make 。我们就已经创建了使用所有正确参数调用 wml 的 makefiles。

如果您执行 make install ,那么 HTML 文件就会被构建并存放在../../www/目录中。

我们使用的 WML 的额外功能

我们广泛使用的 WML 的功能之一是 Perl 的使用。请记住,我们并没有使用动态页面。在生成 HTML 页面时,Perl 作为编程语言被用来实现各种高级功能。有两个典型的例子可以展示 Perl 在页面中的用途:一是将其用于在网站主页创建最新新闻列表,二是在页面末尾生成指向翻译页面的链接。

要重新构建我们网站的模板,您需要安装 wml 版本 >= 2.0.6。要为非英语语言的翻译文件重新构建 gettext 模板, mp4h >= 1.3.0 是必需的。

WML 的特定问题

多字节语言可能需要对.wml 文件进行特殊的预处理或后处理,以便正确处理字符集。这可以通过恰当地改变 WMLPROLOG 和在 webwml/<lang>/Make.lang 中的 WMLEPILOG 变量来完成。根据您的 WMLEPILOG 的工作方式,您可能需要改变 WMLOUTFILE 的值。
有关示例,请参见日语或中文翻译。