如何使用For语句

火狐知识库的一个伟大的功能就是能够为特定的操作系统(Windows、Android,等等)和火狐版本的用户定制特定的建议。比如,我们文章的某一部分是写给(for) Windows 用户的,那么 Mac 用户和 Linux 用户就看不到这部分内容。当一个用户打开一篇帮助文章,我们会自动检测他/她正在使用的操作系统和火狐版本,依此显示合适的内容。本文将介绍如何使用{for} 语句来编写技术支持文章。

如何为不同的操作系统和 Firefox 版本显示不同的说明

为了实践本文,你需要使用 选择器 切换不同的操作系统和 Firefox 版本,它位于页面左侧的 编辑工具 内。

基本语法和行为

本语法将为 Windows 7/Vista 显示一张图片:
{for win7}[[Image:vista.jpg]]{/for}

  • 修改选择器到 Windows 7/Vista 来查看图片

    vista.jpg
  • 如果你选择 Windows XP,Windows 8,Mac OS X 或者 Linux,上面的图片就不会显示,因为这些语句不是 为了(for) 它们而写的。

虽然选择器里不存在“Windows”这样一个项目,但是你也可以给所有版本的 Windows 编写说明:
{for win}[[Image:Windows Logo]]{/for}

  • 修改选择器到 Windows XP,Windows 7/Vista 或 Windows 8 来查看图片:

    Windows Logo
  • 如果你修改选择器到 Mac OS X 或 Linux,上面的图片就不会显示,因为这些语句不是 为了(for) 它们而写的。
注: 如果你修改选择器到 Android 你仍能看见上面的图片,虽然上面的代码没有指定在 Android 下显示。这是因为当你使用 Firefox for Android 时我们默认显示 Windows 7/Vista 的说明(除非特别指定)。我们也默认在你使用 Windows,Mac 或 Linux 访问 Firefox for Android 网站 时显示 Android 版本的说明

Firefox 版本

本语法将为 Firefox 22 或更高版本 显示一些东西:
{for fx22}[[Image:Firefox Logo]]{/for}

  • 修改选择器到 Firefox 22 或更高版本来查看图片:

    Firefox Logo
  • 如果你修改选择器到 Firefox ESR 上面的消息将不会显示,因为这些语句不是 为了(for) 它们而写的。(Firefox ESR 目前基于 Firefox 17)

仅为某一版本的 Firefox 显示说明

为了 Firefox 22 显示说明,请使用 “=” 符号:
{for =fx22}[[Image:Firefox Logo]]{/for}

  • 现在只有你修改选择器到 Firefox 22 时才显示图片:

    Firefox Logo

同时指定操作系统和 Firefox 版本

你可以使用逗号分隔以同时指定操作系统和 Firefox 版本:
{for win,fx22}[[Image:Windows Logo]][[Image:Firefox Logo]]{/for}

  • 修改选择器到 Windows 和 Firefox 22 或更高版本来查看图片:

    Windows Logo Firefox Logo

要表达“或者”这样更复杂的关系,可以写成这样:
{for mac, winxp, win7, =fx17, fx22}[[Image:Windows Logo]][[Image:macos.jpg]][[Image:Firefox Logo]]{/for}

  • 修改选择器到 Mac 或者 Windows XP 或者 Windows 7/Vista,同时选择 Firefox ESR 或者 Firefox 22 及以上来查看图片::

    Windows Logo macos.jpg Firefox Logo

位于 {for} 和 {/for} 之间的标记会在满足以下任一条件时显示:

  • {for} 列出了至少一个操作系统,且包括用户正在使用的(或手动选择的)操作系统。
  • {for} 列出了至少一个 Firefox 版本,且包括用户正在使用的(或手动选择的) Firefox 版本。

否则,{for}…{/for} 中的内容就不会显示。

注意:

  • 逗号后的空格可以省略。
  • {for} 仅在 Firefox 知识库的文章中有效
  • 被 {for} 隐藏的标题不会显示在页面目录中。当用户手动选择正确的操作系统和 Firefox 版本组合后,被隐藏的内容将立即全部显示出来。

操作系统和浏览器缩写

以下列出 {for} 可以使用的操作系统和浏览器缩写

  • win (Windows)
  • winxp (Windows XP/2000/Server 2003)
  • win7 (Windows 7/Vista/Server 2008)
  • win8 (Windows 8/8.1/Server 2012)
  • mac (Mac OS X)
  • linux (Linux)
  • android (Android mobile OS)
  • fxN 其中 N 是 Firefox 版本号,例如 fx22,fx23。
  • mN 其中 M 是 Firefox 版本号,例如 m22,m23。
注: 每六周我们加入对最新 beta 版 Firefox 的支持,同时我们移除选择器中最老的版本,但是旧的标记任然有效。所以比如一个人用 Firefox 12 查看知识库文章它仍然会看到为他的版本编写的说明(要了解不再受支持的版本,请参见 这个论坛帖子(英文))。

嵌入 和 块级上下文

{for} 既可以用作嵌入,也可以用作块级上下文(HTML 的意义上)。嵌入形式仅在同一行文字内生效,比如:

这是 {for win}嵌入用法{/for}.

块级形式可以包括整个段落、有序列表、标题等等。唯一的要求是此时 {for} 和 {/for} 必须独立一行。否则它们可能会被认为是相邻段落的一部分而造成意外结果。

{for win}
这是一个块
*序列一
*序列二
{/for}

使用自动完成的 {for} 代码片段

如果你突然不记得语法了,只需要在开启代码高亮时按下 Ctrl + Spacecommand + space,然后在自动完成列表里选择 for snippet。你会得到 {for os_or_firefox_version}text{/for} 的形式,替换成你想要的内容就完事 OK 了。

在文档编辑器中使用方便的 {for} 按钮

当你编辑知识库文章时你可以使用工具栏上的 {for} 按钮帮你插入标记。

  1. 选中你想要放在 {for} 标签中的内容。
  2. 单击工具栏上的 For 语法... 按钮。
  3. 勾选你想要显示这些内容的 Firefox 版本和操作系统旁的选择框,然后点击 添加规则 ,自定义的 {for} 标签就会包含你选中的内容了。

关于在文章中使用 {for} 的好习惯

当为不同的目标编写说明时,即使它们对应的内容一样,也要为不同的操作系统/Firefox 版本编写完整的句子。 这使得文章更容易理解,维护和本地化。当需要移除为 Firefox 6 以下版本编写的说明时,可以仅仅删除对应的块而不是从更大的块中挑出它们。

例子:
坏习惯:
#{for win,linux}在 Firefox 窗口顶端{/for}{for mac}在菜单栏{/for}, 点击 {for fx35}{menu 工具}{/for}{for mac,linux,fx4}{menu 工具}{for win,fx4}{menu Firefox} 菜单, 选择 {menu 历史} 菜单并选择 {menu 清除最近历史纪录...}{/for}{for not win,fx4} 菜单并选择 {/for}{for win,fx35}{menu 清除最近历史纪录…}{/for}{for mac,linux}{menu 清除最近历史纪录…}{/for} {for win,fx4}<br>'''Windows XP:''' 在 Firefox 窗口顶端,选择 {menu 工具} 菜单并选择 {menu 清除最近历史纪录…}{/for}

好习惯
{for fx4}
#{for win}在 Firefox 窗口顶端,单击 {menu Firefox} 菜单,选择 {menu 历史} 菜单并选择 {menu 清除最近历史纪录…} ('''Windows XP:''' 单击 {menu 工具} 菜单并选择 {menu 清除最近历史纪录…}).{/for}{for mac}在菜单栏,单击 {menu 工具} 菜单并选择 {menu 清除最近历史纪录…}{/for}{for linux}在 Firefox 窗口顶部,点击 {menu 工具} 菜单并选择 {menu 清除最近历史纪录…}{/for}
{/for}
{for fx35}
#{for win,linux}在 Firefox 窗口顶部,点击 {menu 工具} 菜单并选择 {menu 清除最近历史纪录…}{/for}{for mac}在菜单栏,单击 {menu 工具} 菜单并选择 {menu 清除最近历史纪录…}{/for}
{/for}

另一个例子
在下面的例子中,我们要给 Firefox 20 及以下、Firefox 21/22 和 Firefox 23 及以上分辨编写三套说明。这会经常遇到,而且随着我们每六周就发布一个版本未来将会有更多变动。来看下面的例子:

好习惯:
{for not fx21}
#老版本的说明。
{/for}
{for =fx21,=fx22}
#新版本的说明。
{/for}
{for fx23}
#更新版本的说明。
{/for}

这篇文章对您有帮助吗? 请稍候...

这些人帮助撰写了这篇文章:catmq, CnSimonChan。你也可以提供帮助,来看看该怎么做