CLI Lingo.dev bez problémů škáluje i pro projekty s tisíci překladových klíčů a desítkami cílových jazyků díky paralelnímu zpracování, inkrementálním překladům přes lockfile a možnostem cíleného zpracování.
Paralelní zpracování#
CLI rozděluje překladové úlohy mezi souběžně běžící workery. Výchozí úroveň souběžnosti je 10 workerů:
npx lingo.dev@latest runU velkých projektů můžete úroveň souběžnosti navýšit:
npx lingo.dev@latest run --concurrency 20U projektu s 50 soubory v 10 jazycích (500 překladových úloh) se vše zpracovává paralelně, ne postupně. Podrobnosti o architektuře workerů najdete v části Parallel Processing.
Cílené zpracování#
Zpracovávejte jen konkrétní části místo celého projektu:
# Specific languages
npx lingo.dev@latest run --target-locale es --target-locale fr
# Specific file format
npx lingo.dev@latest run --bucket json
# Specific files
npx lingo.dev@latest run --file components/header
# Specific keys
npx lingo.dev@latest run --key welcome.titleTyto volby lze kombinovat – --force --bucket json --target-locale es znovu přeloží veškerý JSON obsah pouze do španělštiny.
Integrace CI/CD#
Automatizujte překlady při každém pushi pomocí GitHub Actions:
name: Lingo.dev Localization
on:
workflow_dispatch:
permissions:
contents: write
pull-requests: write
jobs:
localize:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: lingodotdev/lingo.dev@main
with:
api-key: ${{ secrets.LINGODOTDEV_API_KEY }}Lockfile zajistí, že se překládá jen změněný obsah, takže běhy CI zůstávají rychlé i u velkých projektů.
Organizace bucketů#
Pro cílené zpracování rozdělte různé typy obsahu do samostatných bucketů:
{
"buckets": {
"json": {
"include": ["src/locales/[locale].json"]
},
"markdown": {
"include": ["docs/[locale]/*.md"]
}
}
}Díky tomu můžete zpracovávat dokumentaci a obsah aplikace nezávisle na sobě: --bucket markdown přeloží pouze dokumentaci.
