Lingo.dev + .csv (данные)
Lingo.dev CLI переводит файлы CSV со специфической структурой. Оно обновляет предоставленный CSV-файл, добавляя столбцы с переводами для каждой целевой локали. CLI сохраняет точный формат и разделители CSV, безопасно обрабатывает UTF-8 и различные кодировки символов, а также работает без проблем с Excel, Google Sheets и импортом баз данных.
Как работает перевод CSV
Файлы CSV должны иметь следующую структуру:
- Первый столбец с названием
KEY
- Столбец исходной локали (например,
en
)
CLI расширяет предоставленный CSV-файл, добавляя столбцы для каждой целевой локали (например, es
, fr
). Переводы заполняются для каждой целевой локали, при этом оригинальное содержимое сохраняется.
Пример: исходный файл и результат
Исходный файл (английский источник):
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
) остается неизменным. - Добавляются новые столбцы для каждой целевой локали (
es
,fr
) с заполненными переводами.
Быстрая настройка
Чтобы настроить перевод CSV, добавьте bucket для ваших CSV-файлов в i18n.json
:
{
"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"
]
}