# gt: General Translation CLI tool: 使用自动派生翻译
URL: https://generaltranslation.com/zh/docs/cli/guides/using-autoderive.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: 如何在 General Translation CLI 中使用 Autoderive，为每个插值值自动生成单独的翻译条目。

Autoderive 会将插值值按被 [`derive()`](/docs/react/reference/functions/derive) 包裹的方式进行解析，为每个可能的值生成单独的翻译条目。当句子中包含变量时，这样可以在不同语言中保留词形一致和动词变位。

Autoderive 默认禁用，适用于两种上下文：[`t()`](/docs/react/reference/functions/t-function)、`gt()` 和 [`msg()`](/docs/react/reference/functions/msg) 调用中的插值值，以及 [`<T>`](/docs/react/reference/components/t) 组件内引用 `const` 声明的表达式。

## 启用 Autoderive [#enable]

在 `gt.config.json` 的 `files.gt.parsingFlags` 下设置 `autoderive`。将其设为布尔值即可同时对字符串和 JSX 启用该功能。

```json title="gt.config.json"
{
  "files": {
    "gt": {
      "parsingFlags": {
        "autoderive": true
      }
    }
  }
}
```

如果只想为字符串或仅为 JSX 启用它，请传入一个对象。

```json title="gt.config.json"
{
  "files": {
    "gt": {
      "parsingFlags": {
        "autoderive": { "jsx": true, "strings": false }
      }
    }
  }
}
```

## 推导字符串值 [#strings]

启用 Autoderive 后，翻译调用中的插值值会针对每个可能的值生成一个条目。

```jsx
const gt = useGT();
const role = isAdmin ? 'admin' : 'user';

// 解析为派生值 — 生成：
//   "Welcome back, admin!" → "¡Bienvenido de nuevo, administrador!"
//   "Welcome back, user!"  → "¡Bienvenido de nuevo, usuario!"
gt(`Welcome back, ${role}!`);
```

如果不使用 Autoderive，显式调用 [`derive()`](/docs/react/reference/functions/derive) 也能得到相同的结果。

## 推导 JSX 中的值 [#jsx]

在 [`<T>`](/docs/react/reference/components/t) 组件中，Autoderive 会解析表达式里引用的 `const` 变量，并为每个取值生成一个条目。

```jsx
const label = condition ? 'boy' : 'girl';

// 生成两个条目：
//   "Hello, boy"  → "Hola, chico"
//   "Hello, girl" → "Hola, chica"
<T>Hello, {label}</T>
```

JSX 的 Autoderive 支持三元表达式和嵌套三元表达式、字符串/数字/布尔字面量、字符串拼接和模板字面量，以及链式 `const` 引用。

*注意：仅支持 `const` 声明。`let` 和 `var` 会产生警告，因为它们可以被重新赋值；同时也不支持解构变量，例如 `const { x } = obj`。[`t`](/docs/react/reference/functions/t-function) 标签模板宏不受影响——它会通过模板字面量语法处理派生。*

## Next steps

- /docs/cli/guides/using-auto-jsx
- /docs/cli/guides/generating-translations
- /docs/cli/guides/managing-translations
- /docs/cli/guides/configuring

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
