跳转到主要内容

用于创建、增强、筛选和一般处理TMX文件的工具。

项目描述

tmxutil

tmxutil.py 允许您向您的 Europat tmx 文件添加域组,或根据它们进行筛选。

安装 & 要求

要安装 tmxutil.py,只需从 Github 下载并将其放置在可以从命令行访问的位置。除了Python 3.5或更高版本外,它没有外部依赖。

示例

示例 tmx 文件: DE-EN-2001-Abstract.tmx.gz,ipc 域组文件: ipc-groups.tab

提供的 IPC 分组有以下高级类别

描述
I 通用/默认
II 计算、科学和技术(科学、摄影、光学、密码学、通信)
III 生物技术和化学(食品、生物技术、纳米技术、化学)
IV 工程和制造(发动机、核物理、农业、林业、航空)
V 日常生活(家庭、音乐、艺术、服装、珠宝、运动和装饰)

通过 IPC 代码筛选: 筛选出仅来自具有特定 IPC 代码的专利的句子对。

gzip -cd DE-EN-2001-Abstract.tmx.gz \
| ./tmxutil.py -o tmx --with-ipc D06M15/59 D06P005/02 \
> selection.tmx

将选择导出为制表符分隔的句子对: 通过更改 tmxutil 的输出格式,您可以以纯文本形式获取句子对,并用制表符分隔。

此选项可以与数据增强和筛选选项结合使用,尽管仅导出每个句子对的第一个源文档。您还必须告诉它要导出的语言顺序。

gzip -cd DE-EN-2001-Abstract.tmx.gz \
| ./tmxutil.py \
    -o tab \
    --output-languages en de \
    --with-ipc D06M15/59 \
> selection-en-de.tsv

将 ipc 组添加到 tmx 文件中:为了能够进行更粗粒度的选择,您可以将 ipc 组(类似于领域)添加到句子对中,基于 tmx 文件中已有的 ipc 代码。然后,您可以使用这些 ipc 组通过 --with-ipc-group 来进行选择,它的工作方式与 --with-ipc 相同。

此处使用的 ipc-groups.tab 文件应该在每行包含一个 ipc 代码前缀和一个组名,用制表符分隔,作为前两列。您可以从项目的发布页面获取 ipc-groups.tab 文件。

gzip -cd DE-EN-2001-Abstract.tmx.gz \
| ./tmxutil.py \
	-o tmx \
	--ipc-group ipc-groups.tab \
| gzip > DE-EN-2001-Abstract-with-groups.tmx.gz

只有 tmx 输出格式会通过添加 ipc-group 属性来保留 ipc-group 元数据。其他输出格式不会保留,但您仍然可以直接使用 --with-ipc-group 来进行选择。

将 tsv 转换为 tmx:tmxutil 还可以用于从句子对生成 tmx 文件。输入格式与 tab 输出格式相同,即 source1 \t source2 \t sentence1 \t sentence2

要同时添加来自元数据的 IPC 代码,请使用 --ipc 选项。该文件的格式应为 l1_id \t _ \t _ \t _ \t l1_lang \t l1_ipcs \t l2_id \t _ \t _ \t _ \t l2_lang \t l2_ipcs,其中 id 是文档标识符,而 l1_ipc 是此文档所有 ipc 代码的逗号分隔列表。

cat DE-EN-2001-Abstract-aligned.tsv \
| ./tab2tmx.py \
    -o tmx \
    -l de en \
    -d \
    --ipc DE-EN-2001-Metadata.tab \
| gzip -9c > DE-EN-2001-Abstract.tmx.gz

参数

  • -i tmx|tab, --input-format tmx|tab 输入格式,如果未指定,则自动检测。可能的值:tmxtab
    • tab 的情况下,您必须使用 --languages l1 l2 指定其中包含的语言。
  • -o tmx|tab|txt, --output-format tmx|tab|txt 输出格式,可以是 tmxtabtxt
    • tab 的情况下,您必须指定语言,例如 --output-languages l1 l2
    • 当使用 txt 时,您必须选择您想要的纯文本语言,即 --output-languages en
  • -l L1 L2, --input-languages L1 L2。输入文件中的语言及其顺序。仅在读取 tab 文件时必要。
  • --output-languages L1 [L2] 输出文件中的语言或语言顺序。如果输出是 tmx,则不使用。
  • -d, --deduplicate 将具有相同文本或哈希值的句子对组合在一起。
  • --drop PROP [PROP ...] 在写入输出时从句子对中删除属性。
  • --renumber-output 将导致所有翻译单元标识符被重置。当提供多个输入文件时默认启用。
  • --ipc FILE 向每个句子对添加 ipc 元数据。
  • --with PROP=VALUE [PROP=VALUE ...] 根据文本或属性筛选句子对。支持的运算符有 =><>=<==~ 用于正则表达式。在 --with 选项中使用多个 PROP=VALUE 对来组合条件(即 AND)。或者使用多个 --with 选项来设置不同的条件(即 OR)。
  • --without PROP=VALUE [PROP=VALUE ...]--with 相同,但取反,用于排除而不是包含句子对。
  • --verbose 启用进度更新。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源分布

tmxutil-1.3.tar.gz (20.7 kB 查看哈希值)

上传时间

构建分布

tmxutil-1.3-py3-none-any.whl (23.0 kB 查看散列值)

上传时间 Python 3

由以下支持