键锁定

更新时间:上季度 · 预计阅读 1 分钟

已弃用

这些文档介绍的是旧版 CLI(v0)。当前 CLI 版本为 v1。 查看当前 CLI 文档

被锁定的键会直接从源文件复制到所有目标文件,无需翻译。Lingo.dev CLI 会将这些键完全排除在翻译流程之外,并在所有语言中保留原始源值。

配置方法#

将 lockedKeys 添加到 i18n.json 的某个 bucket 中:

json
{
  "buckets": {
    "json": {
      "include": ["locales/[locale].json"],
      "lockedKeys": ["brand/name", "config/apiUrl", "system/version"]
    }
  }
}

工作方式#

假设有这样一个源文件:

json
{
  "welcome": "Welcome to our platform",
  "brand": {
    "name": "Lingo.dev"
  },
  "config": {
    "apiUrl": "https://api.example.com"
  }
}

启用 "lockedKeys": ["brand/name", "config/apiUrl"] 后,西班牙语目标文件会变成:

json
{
  "welcome": "Bienvenido a nuestra plataforma",
  "brand": {
    "name": "Lingo.dev"
  },
  "config": {
    "apiUrl": "https://api.example.com"
  }
}

只有 welcome 会被翻译;锁定的键会完整保留源值。

键路径表示法#

使用正斜杠(/)来定位嵌套键:

json
{ "lockedKeys": ["system/engine/component"] }

使用星号(*)来匹配多个键:

json
{ "lockedKeys": ["navigation/menuItems/*"] }

即使键名中包含点号,也能正常工作——modules/ai.translation 会定位到 "modules" 内部的键 "ai.translation"。

键锁定 vs. 键忽略#

键锁定键忽略
是否出现在目标文件中是——保留源值否
适用场景品牌名称、技术 ID、URL调试字符串、内部标记、测试数据

下一步#