Lingo.dev + .csv(数据)

Lingo.dev CLI 翻译具有特定结构的 CSV 文件。它通过为每个目标语言区域添加翻译列来更新提供的 CSV 文件。CLI 保留了精确的 CSV 格式和分隔符,安全处理 UTF-8 和各种字符编码,并与 Excel、Google Sheets 和数据库导入无缝兼容。

CSV 翻译工作原理

CSV 文件必须具有以下结构:

  • 第一列命名为 KEY
  • 一个源语言区域列(例如,en

CLI 会扩展提供的 CSV 文件,添加每个目标语言区域的列(例如,esfr)。每个目标语言区域的翻译内容会被填充,同时保留原始内容。

示例:源文件和输出文件

输入文件(英文源):

KEY,en
dashboard.title,Dashboard
greeting.message,Hello world!
button.label,Submit

输出文件(翻译为西班牙语和法语后):

KEY,en,es,fr
dashboard.title,Dashboard,Panel de control,Tableau de bord
greeting.message,Hello world!,¡Hola mundo!,Bonjour le monde!
button.label,Submit,Enviar,Soumettre
  • KEY 列被保留。
  • 源语言区域列(en)保持不变。
  • 为每个目标语言区域(esfr)添加新列,并填充翻译内容。

快速设置

要配置 CSV 翻译,请在 i18n.json 中为您的 CSV 文件添加一个 bucket:

{
  "locale": {
    "source": "en",
    "targets": ["es", "fr"]
  },
  "buckets": {
    "csv": {
      "include": ["i18n/data.csv"]
    }
  }
}

翻译 CSV 数据

npx lingo.dev@latest i18n

CLI 在翻译目标列中的文本内容时,保留了 CSV 的结构、标题和数据类型。

高级功能

自定义分隔符支持

支持各种 CSV 方言:

  • 逗号分隔value1,value2,value3
  • 分号分隔value1;value2;value3
  • 制表符分隔value1\tvalue2\tvalue3

高级配置

多个 CSV 文件

"csv": {
  "include": [
    "i18n/data.csv",
    "content/static/*.csv"
  ]
}