Lingo.dev + .yaml (البيانات)
تقوم واجهة سطر أوامر Lingo.dev بترجمة ملفات YAML مع الحفاظ على البنية وأنواع البيانات والتنسيق لإدارة التكوين والمحتوى. تحافظ واجهة سطر الأوامر على التسلسل الهرمي والمسافات البادئة بدقة في YAML، وتعالج فقط قيم النصوص مع الحفاظ على الأرقام والقيم المنطقية، وتحافظ على تعليقات توثيق المطورين، وتضمن عمل مراسي YAML والاختصارات بشكل صحيح، وتتبع مواصفات YAML 1.2 بدقة.
الإعداد السريع
قم بالتكوين لملفات YAML مع التسمية المستندة إلى اللغة:
{
"locale": {
"source": "en",
"targets": ["es", "fr", "de"]
},
"buckets": {
"yaml": {
"include": ["config/[locale].yaml"]
}
}
}
تذكير: [locale]
هو عنصر نائب يجب أن يبقى في التكوين حرفيًا، حيث يتم استبداله باللغة الفعلية أثناء تشغيل واجهة سطر الأوامر.
ترجمة محتوى YAML
npx lingo.dev@latest i18n
يحافظ على بنية YAML وأنواع البيانات والتعليقات والتنسيق أثناء ترجمة قيم النصوص.
الحفاظ على البنية
التكوين المتداخل
app:
name: "My Application"
description: "A powerful tool for productivity"
features:
- "Real-time collaboration"
- "Advanced search"
- "Custom themes"
database:
host: "localhost"
port: 5432
تتم ترجمة قيم النصوص بينما يظل التكوين التقني دون تغيير.
أنواع البيانات المختلطة
user_interface:
welcome_message: "Welcome to our platform!"
max_items: 100
enable_notifications: true
created_at: 2024-01-15T10:30:00Z
تتم معالجة النصوص القابلة للترجمة فقط؛ بينما تبقى الأرقام والقيم المنطقية والتواريخ كما هي.
الميزات المتقدمة
الحفاظ على التعليقات
# Application configuration
app:
# User-facing strings
title: "Dashboard"
tagline: "Manage your projects efficiently"
# Technical settings (not translated)
version: "1.2.0"
تبقى التعليقات تمامًا كما هي مكتوبة في الملف المصدر.
دعم المراسي والمراجع
defaults: &defaults
timeout: 30
retries: 3
production:
<<: *defaults
message: "Production environment ready"
يتم الحفاظ على مراسي YAML والمراجع أثناء الترجمة.
التكوين المتقدم
ملفات YAML المتعددة
"yaml": {
"include": [
"config/[locale].yaml",
"content/[locale]/*.yml"
]
}
قفل المفاتيح التقنية
"yaml": {
"include": ["config/[locale].yaml"],
"lockedKeys": ["database", "api/endpoint", "version"]
}