Lingo.dev + .xcstrings (Xcode)

تقوم واجهة سطر أوامر Lingo.dev بترجمة ملفات Xcode .xcstrings مع الحفاظ على قواعد الجمع، واختلافات الأجهزة، والبيانات الوصفية الخاصة بنظام iOS. تعمل واجهة سطر الأوامر مباشرة مع سير عمل التوطين في Xcode، وتنشئ ثوابت سلسلة يمكن الوصول إليها من خلال الكود، وتتعامل تلقائيًا مع قواعد الجمع المعقدة في iOS، وتدعم اختلافات السلاسل النصية الخاصة بالمنصات، وتتكامل بسلاسة مع عمليات بناء Xcode.

الإعداد السريع

التكوين لتنسيق كتالوج السلاسل النصية الحديث في Xcode:

{
  "locale": {
    "source": "en",
    "targets": ["es", "fr", "de", "ja"]
  },
  "buckets": {
    "xcode-xcstrings": {
      "include": ["Resources/Localizable.xcstrings"]
    }
  }
}

ترجمة كتالوجات السلاسل النصية

npx lingo.dev@latest i18n

يتعامل تلقائيًا مع صيغ الجمع، واختلافات الأجهزة، والبيانات الوصفية الخاصة بـ Xcode مع الحفاظ على اتفاقيات iOS.

ميزات كتالوج السلاسل النصية

التوطين الأساسي

{
  "sourceLanguage": "en",
  "strings": {
    "welcome_message": {
      "localizations": {
        "en": {
          "stringUnit": {
            "state": "translated",
            "value": "Welcome to our app!"
          }
        }
      }
    }
  }
}

اختلافات صيغ الجمع

{
  "item_count": {
    "localizations": {
      "en": {
        "variations": {
          "plural": {
            "zero": {
              "stringUnit": {
                "state": "translated",
                "value": "No items"
              }
            },
            "one": {
              "stringUnit": {
                "state": "translated",
                "value": "%d item"
              }
            },
            "other": {
              "stringUnit": {
                "state": "translated",
                "value": "%d items"
              }
            }
          }
        }
      }
    }
  }
}

اختلافات الأجهزة

يدعم السلاسل النصية الخاصة بالأجهزة لـ iPhone وiPad وApple Watch ومنصات Apple الأخرى.

الحفاظ على التنسيق

  • البيانات الوصفية سليمة: يتم الحفاظ على الحالة والتعليقات وحالة الاستخراج
  • الاختلافات آمنة: يتم الحفاظ على جميع اختلافات صيغ الجمع والأجهزة
  • الهيكل محفوظ: تبقى تسلسل JSON والمفاتيح الخاصة بـ Xcode دون تغيير
  • العناصر النائبة آمنة: يتم الحفاظ على محددات تنسيق iOS مثل %@ و%d

التكوين المتقدم

كتالوجات متعددة

"xcode-xcstrings": {
  "include": [
    "Resources/Localizable.xcstrings",
    "Resources/InfoPlist.xcstrings"
  ]
}

قفل مفاتيح النظام

"xcode-xcstrings": {
  "include": ["Resources/Localizable.xcstrings"],
  "lockedKeys": ["CFBundleName", "NSHumanReadableCopyright"]
}

ملاحظات المترجم

تدعم ملفات Xcode .xcstrings ملاحظات المترجم من خلال حقل comment في إدخالات النصوص. توفر هذه الملاحظات سياقًا أساسيًا لنماذج الذكاء الاصطناعي أثناء الترجمة، مما يساعدها على فهم الغرض والاستخدام لكل نص.

{
  "strings": {
    "light_mode": {
      "comment": "UI theme setting - refers to brightness, not weight",
      "localizations": {
        "en": {
          "stringUnit": {
            "state": "translated",
            "value": "Light Mode"
          }
        }
      }
    },
    "records_label": {
      "comment": "Medical context: patient health records, not audio recordings",
      "localizations": {
        "en": {
          "stringUnit": {
            "state": "translated",
            "value": "View Records"
          }
        }
      }
    }
  }
}

لمعرفة المزيد، راجع ملاحظات المترجم.