You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
التدويل التقليدي متطفل. تقوم بتغليف كل سلسلة نصية في دوال `t()`، وابتكار مفاتيح ترجمة (`home.hero.title.v2`)، وصيانة ملفات JSON متوازية، ومشاهدة مكوناتك تنتفخ بشفرة التوطين الإضافية. إنه ممل للغاية لدرجة أن الفرق تؤجل التدويل حتى يصبح إعادة هيكلة ضخمة.
339
+
التدويل التقليدي متطفل. تقوم بتغليف كل نص في دوال `t()`، وتخترع مفاتيح الترجمة (`home.hero.title.v2`)، وتحافظ على ملفات JSON موازية، وتشاهد مكوناتك تنتفخ بشيفرة التوطين الإضافية. إنها مملة للغاية لدرجة أن الفرق تؤجل التدويل حتى يصبح إعادة هيكلة ضخمة.
340
340
341
341
يُلغي Lingo.dev Compiler التعقيدات. اكتب مكونات React بنص إنجليزي عادي. يكتشف المُجمِّع النصوص القابلة للترجمة في وقت البناء ويُنشئ متغيرات محلية تلقائيًا. لا مفاتيح، لا ملفات JSON، لا دوال تغليف - فقط كود React يعمل بلغات متعددة.
342
342
@@ -432,17 +432,17 @@ export function LanguageSwitcher() {
432
432
}
433
433
```
434
434
435
-
**التطوير:** `npm run dev` (يستخدم مترجمًا وهميًا، بدون استدعاءات API)
435
+
**التطوير:** `npm run dev` (يستخدم المترجم الوهمي، بدون استدعاءات API)
436
436
437
-
**الإنتاج:** اضبط `usePseudotranslator: false`، ثم `next build`
437
+
**الإنتاج:** قم بتعيين `usePseudotranslator: false`، ثم `next build`
438
438
439
439
قم بإيداع دليل `.lingo/` في نظام التحكم بالإصدارات.
440
440
441
441
**الميزات الرئيسية:**
442
442
443
443
- تكلفة أداء صفرية في وقت التشغيل
444
-
- لا مفاتيح ترجمة أو ملفات JSON
445
-
- لا دوال `t()` أو مكونات تغليف `<T>`
444
+
- لا توجد مفاتيح ترجمة أو ملفات JSON
445
+
- لا توجد دوال `t()` أو مكونات تغليف `<T>`
446
446
- اكتشاف تلقائي للنصوص القابلة للترجمة في JSX
447
447
- دعم TypeScript
448
448
- تنسيق ICU MessageFormat للجمع
@@ -453,7 +453,7 @@ export function LanguageSwitcher() {
453
453
454
454
- `pseudotranslator`: وضع التطوير مع ترجمات نائبة (بدون تكاليف API)
455
455
- `real`: إنشاء ترجمات فعلية باستخدام نماذج اللغة الكبيرة
456
-
- `cache-only`: وضع الإنتاج باستخدام ترجمات مُنشأة مسبقًا من CI (بدون استدعاءات API)
456
+
- `cache-only`: وضع الإنتاج باستخدام ترجمات مُنشأة مسبقاً من CI (بدون استدعاءات API)
457
457
458
458
**الأطر المدعومة:**
459
459
@@ -470,11 +470,11 @@ export function LanguageSwitcher() {
470
470
471
471
المساهمات مرحب بها. يرجى اتباع هذه الإرشادات:
472
472
473
-
1. **المشكلات:** [الإبلاغ عن الأخطاء أو طلب ميزات](https://github.com/lingodotdev/lingo.dev/issues)
473
+
1. **المشكلات:** [الإبلاغ عن الأخطاء أو طلب الميزات](https://github.com/lingodotdev/lingo.dev/issues)
- كل طلب سحب يتطلب مجموعة تغييرات: `pnpm new`(أو `pnpm new:empty` للتغييرات التي لا تتطلب إصداراً)
476
476
- تأكد من نجاح الاختبارات قبل الإرسال
477
-
3. **التطوير:** هذا مستودع أحادي من نوع pnpm + turborepo
477
+
3. **التطوير:** هذا مستودع أحادي pnpm + turborepo
478
478
- تثبيت التبعيات: `pnpm install`
479
479
- تشغيل الاختبارات: `pnpm test`
480
480
- البناء: `pnpm build`
@@ -500,7 +500,7 @@ export function LanguageSwitcher() {
500
500
**إضافة لغة جديدة:**
501
501
502
502
1. أضف رمز اللغة إلى [`i18n.json`](./i18n.json) باستخدام [تنسيق BCP-47](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale)
503
-
2. أرسل طلب سحب
503
+
2. قدم طلب سحب
504
504
505
505
**تنسيق لغة BCP-47:** `language[-Script][-REGION]`
0 commit comments