Magic Translate vs. Lingui
Lingui هي مكتبة i18n مفتوحة المصدر لجافا سكريبت وReact. مثل Magic Translate، يتيح لك كتابة كلماتك الخاصة في مكوناتك بدلاً من المفاتيح. الفرق هو ما سيحدث بعد ذلك: باستخدام Lingui، يمكنك استخراج الرسائل وترجمتها وتجميعها لكل لغة. باستخدام Magic Translate، يتم إنشاء الترجمات من أجلك.
في لمحة
| Magic Translate | Lingui | |
|---|---|---|
| كيف تكتب النص | كلماتك الخاصة، ملفوفة في <T> | كلماتك الخاصة، ملفوفة في <Trans> |
| الترجمات | ترجمة الذكاء الاصطناعي، تم إنشاؤها تلقائيًا | تقوم باستخراج الرسائل وترجمتها |
| ملفات الرسائل | لا شيء | كتالوج واحد لكل لغة، مثل ملف PO |
| خطوات البناء | لا شيء | استخراج وتجميع الكتالوجات |
| لغات جديدة | قم بتغيير إعداد language | ترجم كل رسالة إلى اللغة الجديدة |
| صيغ الجمع والتنسيق | تمت ترجمته كجزء من الجملة | رسائل ICU بقواعد الجمع لكل لغة |
| السعر | خطة مجانية، ثم خطط شهرية تعتمد على الاستخدام | مفتوح المصدر ومجاني |
كيف تختلف الشفرة
باستخدام Lingui، يظل النص في المكون، ولكن كل رسالة تمر عبر كتالوج:
import { Trans } from '@lingui/react/macro';const Cart = () => (<h2><Trans>Your shopping cart</Trans></h2>);// Then run `lingui extract`, translate the catalogs for every language,// run `lingui compile` and load the right catalog when the app starts.
باستخدام Magic Translate، يبدو المكون متشابهًا، ويتم إنشاء الترجمات تلقائيًا:
import { T } from '@magic-translate/react';const Cart = () => (<h2><T>Your shopping cart</T></h2>);
متى تختار Magic Translate
- تحب كتابة كلماتك الخاصة في مكوناتك، ولا تريد الاحتفاظ بالكتالوجات.
- ليس لديك مترجمين، أو تريد إصدار تحديثات دون انتظار الترجمات.
- تريد إضافة لغات بدون إدارة مشروع ترجمة.
متى تختار Lingui
- يجب ترجمة جميع النصوص أو مراجعتها من قبل شخص.
- أنت بحاجة إلى رسائل ICU للتعددية المعقدة والجنس.
- تريد مكتبة مجانية مفتوحة المصدر بدون خدمة خارجية.
الانتقال من Lingui إلى Magic Translate
ونظرًا لأن كلا المكتبتين تحتفظان بالنص في المكون، فإن الترحيل في الغالب يتعلق باستبدال مكونات الترجمة ووظائفها: <Trans> يصبح <T>، ويصبح ماكرو t هو useT hook. يمكنك ترحيل مكون واحد في كل مرة.
هل أنت مستعد لتجربته؟ اتبع دليل البدء لترجمة المكون الأول في خمس دقائق.