跳转到内容

CAT 工具/OmegaT/用户手册/文件过滤器

来自维基教科书,开放的书籍,为开放的世界

上一页: 带标签(格式化)的文件文本编辑 - 下一页: 项目文件和目录

文件过滤器

[编辑 | 编辑源代码]

从 OmegaT 1.4.5 版本开始,新增了用户可配置的文件(转换)过滤器。

文件过滤器负责

  • 从特定格式的文件中读取源文档(例如,存在用于处理纯文本和 OpenDocument/OpenOffice 文件的不同过滤器);
  • 从文件中提取可翻译的内容;
  • 将目标文档写入文件(在此过程中用其翻译替换可翻译的内容)。

由于过滤器是在此版本中新添加的功能,因此可能仍然存在未知的错误、用户界面怪癖和不清楚的流程——希望这份文档能在这方面澄清一些事情。目前,文件过滤器的用户界面文本仅提供英文版本。这是当前版本的限制,将在新版本的 OmegaT 中得到解决。

在配置过滤器时,请使用现实的设置,否则可能会出现意外结果。仔细阅读说明,如果对操作过滤器的结果不理解,请使用默认设置或使用测试项目,然后再用于正式工作。在 OmegaT 用户组中提问以获取更多帮助。

请注意,文件过滤器只能在没有打开项目的情况下配置。要修改特定项目的处理文件方式,必须在打开项目之前进行。

过滤器对话框

[编辑 | 编辑源代码]

每个对话框和过滤器使用的详细信息如下所示。

文件过滤器

[编辑 | 编辑源代码]

通过从“设置”菜单中选择“文件过滤器...”来访问此对话框。

在对话框中,将显示一个包含可用文件格式的表格。左侧列显示可用的过滤器类型。右侧列显示每个过滤器类型旁边的复选框,指示该类型是否已启用(即带有复选标记)。

当前可用的过滤器类型有:文本、XHTML、HTML、OpenDocument/OpenOffice.org 和 Java 资源包。

要从可用类型中编辑文件过滤器,请突出显示它并选择“编辑...”按钮,为其打开“编辑文件过滤器”配置对话框。

要在更改后重置文件过滤器,请选择“默认值”按钮。选择“确定”使重置为默认值生效,或选择“取消”退出重置。在接受更改之前,请确保重置过滤器为默认值是您想要的。

编辑文件过滤器

[编辑 | 编辑源代码]

通过“文件过滤器”对话框中的“编辑...”按钮访问此对话框。

这里为用户展示了一个包含四个列的表格,用于所选的文件过滤器类型。表格包含以下标题:“源文件名模式”、“源文件编码”、“目标文件编码”和“目标文件名模式”,用于配置特定过滤器的设置。这些用于以下目的

  • 源文件名模式 - 确定 /source 目录中的哪些文件将应用特定过滤器。模式可以根据用户的偏好进行自定义。
  • 源文件编码 - 源文件有效的字符编码。用于读取源文件。有一个下拉列表供您选择编码。
  • 目标文件编码 - 目标文件有效的字符编码。用于写入目标文件。有一个下拉列表供您选择编码。
  • 目标文件名模式 - 确定用于为在 /target 中创建的目标文档分配文件名的模式。模式可以根据用户的偏好进行自定义。

在对话框的右侧是“添加...”、“编辑...”和“删除...”按钮,它们分别用于打开“添加过滤器”、“编辑过滤器”和“删除过滤器”对话框

此对话框中还有另一个“默认值”按钮。使用此按钮将把该过滤器类型的过滤器重置为其原始过滤器数量和默认设置。同样,在使用它之前,请确保这正是您想要的。

添加过滤器和编辑过滤器

[编辑 | 编辑源代码]

通过“编辑文件过滤器”对话框中的“添加...”和“编辑...”按钮分别访问这些对话框。

这些对话框及其说明是相同的,但用法略有不同。用户定义的过滤器是在“添加过滤器”对话框中创建的。通过此对话框,新创建的过滤器将添加到特定过滤器类型的可用过滤器列表中。默认过滤器和用户定义的过滤器在“编辑过滤器”对话框中进行编辑。当在此处接受更改时,所选过滤器将被更新。

每个对话框都包含一些必须填写的条目才能正确配置过滤器的设置。这些对应于在“编辑文件过滤器”对话框中看到的设置。选择“确定”添加新过滤器或接受对现有过滤器的更改,或选择“取消”退出特定操作。

源文件名模式

[编辑 | 编辑源代码]

指定用于确定 /source 目录中哪些文件将应用特定过滤器的模式。模式可以根据用户的偏好进行自定义,并遵守正常的 shell(全局)模式的限制。

在文本区域中输入相应的源文件模式。这里设置了一个默认模式,该模式取决于所考虑的特定过滤器。使用默认模式或根据要与过滤器一起使用的特定源文件设置自定义模式。源文件编码

指定源文件的字符编码。这可以通过外部确定并输入(例如,提前知道、来自 OpenOffice.org 等)、通过某些预设文件格式的文件扩展名(即拉丁-1 中的纯文本使用 *.txt1 或,如果适用,可以使用 <auto> 设置。对于某些格式,将禁用更改编码的功能。有关 <auto> 和禁用设置的详细信息,请参阅此页面上的“编码”部分。

从下拉列表中选择相应的编码,或使用 <auto> 使过滤器自动选择读取源文件。目标文件编码

指定目标文件字符编码。目标文档将使用所选编码创建。提前了解特定目标区域所需的编码可能是一个好主意。如果适用,可以使用 <auto> 设置尝试自动设置编码。同样,对于某些格式,更改编码的功能将被禁用。有关 <auto> 和禁用设置的详细信息,请参见本页的编码部分。目标文件名模式

指定用于将文件名分配给在 /target 中创建的目标文档的模式。可以在正常 shell(glob)模式的限制内,根据用户的偏好自定义模式。

在文本区域中输入适当的目标文件模式。此处设置的默认模式取决于正在考虑的特定过滤器。使用默认模式或设置自定义模式以更改此过滤器的目标文件的名称。为此目的,可以使用许多预设的文件名变量。文件名变量

对于目标文件名模式,可以使用一些预设的文件名变量来帮助创建目标文档的文件名。这些变量的语法为 ${VARIABLE},它遵循 shell(命令行)使用中常见的 glob 模式。变量在目标文件名模式文本区域中使用,以插入从项目中的文件和设置确定的文件名变量的值。

从下拉列表中选择文件名变量。使用“插入”按钮将所选变量放在目标文件名模式文本区域中的光标位置。文件名变量 变量说明 ${filename} 源文件的名称(名称和扩展名) ${nameOnly} 仅源文件名,不含扩展名 ${extension} 仅源文件扩展名 ${sourceLanguage} 项目的源语言(区域设置)(xx-YY 或 xx_YY) ${targetLocale} 项目的目标区域设置(xx_YY) ${targetLanguage} 项目的目标语言(xx-YY) ${targetLanguageCode} 项目的目标语言代码(xx) ${targetCountryCode} 项目的目标国家/地区代码(YY)

${filename} 是大多数情况下目标文件名模式的默认配置,这意味着源文件名和目标(翻译)文件名将相同。

有关语言(区域设置)和代码的信息,请参见示例项目。删除过滤器

这只是一个确认对话框。选择“确定”永久删除过滤器。确认删除后,用户定义的过滤器将不可用。特定文件格式的默认过滤器在删除后也将不可用,但可以通过在“编辑文件过滤器”对话框中选择“默认值”来还原这些过滤器。编码

源和目标的编码可以在“编辑文件过滤器”、“添加过滤器”和“编辑过滤器”对话框中的下拉列表中选择。可用的编码仅限于运行中的 Java 运行时环境中的编码。此外,可以使用 <auto> 变量尝试自动检测所需的源文件编码。<auto> 设置

根据所使用的特定过滤器,当遇到 <auto> 设置时,将执行以下三种操作之一

  1. OmegaT will attempt to determine the encoding automatically; applies to source files only.
  2. the default encoding of the operating system will be used.
  3. no action will occur. This happens when the filter only supports a single source and target encoding.

禁用(灰色)设置

使用禁用变量的特定过滤器不支持多个文件编码,或者文件格式是编码中立的。在这种情况下,无法指定其他编码。示例:目标文件名模式

也许将目标文件名更改为反映正在翻译到的特定目标语言或区域设置会很好。一种可能性是在文件名(扩展名之前)添加后缀。例如,如果目标语言是法语,那么添加语言代码可能是一个好主意。

在这种情况下,模式可以是

${nameOnly}-fr.${extension},

但是已经有一个用于目标语言代码的变量,因此插入该变量以给出

${nameOnly}-${targetLanguageCode}.${extension}。

现在,如果源文件名为 test.txt。(例如,在 *.txt. 文本过滤器下)它的目标文件名将变为 test-fr.txt。

请注意,文件名分隔符 '.'. 不是通过使用 ${extension} 插入的,如果您希望使用它,则必须在模式中手动包含它。

继续,也许国家/地区代码也很好。它可以添加为

${nameOnly}-${targetLanguageCode}-CA.${extension}

适用于法语作为目标语言,加拿大作为国家/地区的情况。在这种情况下,test.txt. 将变为 test-fr-CA.txt。

在这种情况下,已经有一个可用的用于目标国家/地区代码的变量,因此插入该变量以给出

${nameOnly}-${targetLanguageCode}-${targetCountryCode}.${extension}

对于手头的案例,更简单的方法是将目标语言插入目标语言代码和目标国家/地区代码文件名变量的位置。

${nameOnly}-${targetLanguage}.${extension}

结果与前面最后两种情况相同。在此示例中,目标文件名现在在扩展名之前的所有文件名后缀中都包含语言(语言加国家/地区代码),扩展名保持不变。问答 如何确定适用于文件的过滤器?

这是由文件的模式决定的。每个过滤器都列出了其可以处理的文件的源文件模式。这可以通过添加或编辑文件过滤器来设置。每个过滤器可能具有与之关联的独特模式。例如,如果要使用纯文本过滤器来处理所有没有扩展名的文件,请添加或编辑过滤器以具有 *.. 源文件名模式。还有一些预设过滤器适用于特定文件类型,但使用不同的编码。例如,Latin-1 编码的纯文本文件可以通过 .txt1 扩展名识别。所有文件在项目中使用之前都可以使用特定模式进行识别,这样它们将自动被识别。在示例中,扩展名是将文件与过滤器关联的决定性因素。如果文件编码似乎不正确怎么办?

通过更改相应文件过滤器的源文件编码来设置其他编码。如果单个编码不适用于源语言和目标语言,该怎么办?

实际上,UTF-8、UTF-16 和 UTF-32 编码几乎在所有情况下都能正常工作。可以使用这些编码之一来共同使用源和目标。要对源和目标使用两种不同的编码,请确保为每个字符集选择了合适的编码,并且源文档文件在打开项目之前以正确的编码保存。OmegaT 徽标 之前标记(格式化)文件 文本编辑 下一步 项目文件和目录

华夏公益教科书