|
文件扩展名 |
.csv |
|
API 扩展 |
csv |
|
导入 |
是 |
|
导出 |
是 |
|
复数形式支持 |
是 |
|
描述支持 |
是 |
|
格式选项 这些选项可以在文件上传和/或下载时指定。根据上传/下载方法(API、CLI、Repo同步等),它们可以在查询参数中指定 |
key_index comment_index tag_column max_characters_allowed_column column_separator quote_char header_content_row enable_pluralization export_tags export_max_characters_allowed custom_metadata_columns export_key_id key_id_column |
CSV(逗号分隔值)是一种流行的文件格式,主要用于各种应用程序和程序中的数据传输。在CSV文件中,每一行都是一个数据记录。每个记录由几个用逗号分隔的字段组成。 在导入之前,请确保CSV文件的每一行有三个字段,分别表示源内容、翻译和评论(可选)。
locale_mapping 参数(类型为哈希映射)是必需的,用于指定文档中每个区域对应的列。有关示例,请参见 配置文件示例 和 API 文档 以获取上传信息。
格式选项
|
标识符 |
custom_metadata_columns |
|
类型 |
哈希 |
|
上传 |
是 |
|
下载 |
是 |
|
默认 |
[空] |
|
说明 |
需要导入或导出的 自定义元数据 值的 HashMap:
|
|
标识符 |
export_key_id |
|
类型 |
布尔值 |
|
上传 |
否 |
|
下载 |
是 |
|
默认 |
假 |
|
说明 |
导出键字符限制以及键和翻译。 |
|
标识符 |
key_id_column |
|
类型 |
整数 |
|
上传 |
否 |
|
下载 |
是 |
|
默认 |
[空] |
|
说明 |
包含键 ID 的列的索引。列索引从1开始。 |
代码示例
boolean_key,"--- true " empty_string_translation,"" key_with_description,Check it out!此键有一个描述!(至少在某些格式中),这是此键的惊人描述! key_with_line-break,"此翻译包含 一个换行符。" nested.deeply.key,"哇,这个键嵌套得更深了。" nested.key,此键嵌套在一个命名空间内。 null_translation, pluralized_key.one, "只找到一只小猫。" pluralized_key.other,"哇,你有 %s 只小猫!" pluralized_key.zero,"你没有小猫。" sample_collection,"--- - 第一个条目 - 第二个条目 - 第三个条目 " simple_key,这是一个简单的键,带有简单的信息。 unverified_key,此翻译尚未验证,正在等待验证。(在某些格式中,我们也导出此状态)
文件结构
典型的 .CSV 文件结构:
1 (键列), 2 (翻译列), 3 (备注列) app_title, 我的软件项目, 这是主标题 apples.zero, 一只苹果, 我的备注 ...
配置示例
一个 .phrase.yml 的推送部分示例,用于 .CSV 文件:
push:
sources:
- file: "./multi.csv"
params:
update_translations: true
locale_mapping:
en: 2
de: 3
format_options:
comment_index: 4
tag_column: 5
此格式使用命名的类别来标识键的不同复数形式。以下类别作为复数形式保留:
.zero | .one | .two | .few | .many | .other
正确识别、保留和标记复数键的名称示例:
-
inbox.messages.notification.one
-
inbox.messages.notification.other
文件应遵循此结构:
1 (键列), 2 (翻译列), 3 (备注列) messages.zero, 没有收到消息, messages.one, 收到一条消息, messages.other, %s 条消息已收到,