تحرير JSON للترجمات في جدول
أضف كائنات JSON لكل لغة، وقارن الترجمات للمفتاح نفسه في جدول وحرّرها يدويًا. أنشئ ملف CSV للترجمات ثم حمّل الملف المعدَّل. انسخ جميع اللغات والمفاتيح من الجدول أو كـ CSV، واحفظ تعديلاتك كـ JSON للغة واحدة أو كـ ZIP لعدة لغات. تُطبَّق المفاتيح الجديدة الموجودة في ملف CSV بعد تأكيد إضافتها. لا تغيّر مرشحات العرض نطاق المخرج، وتُحفظ الأرقام والمصفوفات والقيم الأخرى كما هي. لا يجري أي ترجمة تلقائية.
ما يمكنك فعله
قارن المفتاح نفسه بين اللغات
يصطف نصوص كل ملف JSON حسب المفتاح نفسه. يمكنك التصفية حسب القيم المفقودة أو الصفوف المعدّلة.
تبادل الترجمات عبر CSV
أنشئ ملف CSV للترجمات وحمّل ملف CSV المعدّل. تُطابَق القيم باستخدام المفاتيح وأعمدة اللغات ذات الصلة.
إنشاء JSON مع الحفاظ على بنيته
يطبّق تعديلات النصوص على ملف JSON الأصلي. نزّل ملف JSON للغة واحدة، أو ملف ZIP يحتوي على ملفات JSON للغات متعددة.
كيفية الاستخدام
أضف ملف JSON لكل لغة
اختر ملفات JSON أو أضفها من مجلد. تحقّق من أسماء اللغات واللغة المستخدمة كمرجع للمقارنة.
حرّر ترجمات المفتاح نفسه
استخدم البحث أو مرشحات الحالة، وأدخل النص في اللغة ذات الصلة. راجع أوجه تعارض العناصر النائبة والقيم المفقودة.
استخدم التبادل عبر CSV عند الحاجة
استخدم «التبادل عبر CSV» لإنشاء ملف CSV للترجمات. تحميل ملف CSV المعدّل يطبّق القيم للغات والمفاتيح التي يحتويها.
أنشئ واحفظ ملف JSON لكل لغة
ينشئ خيار «إنشاء JSON حسب اللغة» التعديلات على جميع المفاتيح. إذا أدخل ملف CSV مفاتيح جديدة، فأكّد ما إذا كنت تريد تضمين الإضافات.
متى يكون مفيدًا
ملء الفجوات عبر لغات متعددة
قارن المفتاح نفسه بين اللغات وأدخل الترجمات للغات التي تنقص فيها.
تبادل الترجمات في جدول
تبادل الترجمات عبر CSV وتطبيقها على ملف JSON الأصلي دون تحرير بنية JSON مباشرة.
كيف تُعالَج المفاتيح والقيم وملف CSV
تحدّد المفاتيح المواضع داخل JSON
المفاتيح في الجدول هي مؤشرات JSON Pointer. تفصل الرمز / المستويات، بينما يُمثَّل / داخل المفتاح نفسه بـ ~1، والرمز ~ بـ ~0. تبقى المفاتيح التي تحتوي نقاطًا والمفاتيح المتداخلة متمايزة.
التمييز بين القيم المفقودة والنصوص الفارغة
تُعد القيمة مفقودة عندما لا يوجد مفتاح نصي في ملف JSON الخاص بتلك اللغة. ولا يُحسب النص الفارغ الموجود أصلًا قيمة مفقودة. أما الأرقام والقيم المنطقية والمصفوفات فتُحتفظ ولا يمكن تحريرها في الجدول.
اللغة المرجعية والعناصر النائبة
يقارن الأسماء في {name} و{{name}} مع اللغة المرجعية. يمكنك مراجعة أوجه التعارض، لكن صيغًا مثل صيغ الجمع والاختيار في ICU تبقى معلَّمة كغير مدعومة. لا تُنشئ هذه الميزة ترجمات ولا تصحّحها تلقائيًا.
مرشحات العرض ونطاق الإخراج
البحث ومرشحات الحالة وتغيير الصفحات تؤثر على العرض فقط. ويُنشأ ملفا JSON وCSV اعتمادًا على التعديلات على جميع اللغات المحمّلة وجميع المفاتيح.
مفاتيح جديدة في CSV
إذا احتوى ملف CSV على مفاتيح غير موجودة في أي ملف JSON محمّل، فسيُطلب منك تأكيد إضافتها قبل إنشاء JSON. ويختلف هذا عن التعديلات التي تملأ قيمة مفقودة لمفتاح موجود في لغة أخرى.
الأسئلة الشائعة
هل يترجم تلقائيًا؟
لا يجري تنفيذ أي ترجمة آلية. تتيح لك هذه الأداة مقارنة القيم بين اللغات وتحريرها يدويًا.
ماذا يحدث للأرقام والمصفوفات والقيم الأخرى؟
يُستخرج إلى الجدول فقط النص داخل الكائنات. أما الأرقام والقيم المنطقية والمصفوفات والقيمة null فتُحتفظ كما هي، والنصوص داخل المصفوفات غير قابلة للتحرير أيضًا.
ما الأعمدة التي أعدّلها في ملف CSV؟
يحتوي عمود المفتاح على مؤشرات JSON Pointer، بينما تحتوي الأعمدة المسماة بأسماء اللغات على الترجمات. استخدم أسماء أعمدة تطابق اللغات التي حمّلتها. يُتجاهل عمود التعليق ويبقى فارغًا أيضًا عند التصدير من جديد.
كيف تُعالَج خلايا CSV الفارغة؟
إذا كان المفتاح موجودًا بالفعل في تلك اللغة، تتغير قيمته إلى نص فارغ. أما الخلية الفارغة لمفتاح غير موجود فلا تضيف المفتاح، وتُحتفظ بالقيم المعدّلة للغات غير الموجودة في ملف CSV.
هل يمكنني إنشاء الملفات مع بقاء تحذيرات العناصر النائبة؟
نعم. تساعدك التحذيرات على مراجعة الترجمات، لكنها لا تضمن صحتها. راجع أوجه التعارض والصيغ غير المدعومة قبل استخدام النتيجة.
هل تُحفظ الصفوف المصفّاة فقط؟
لا. تُصدَّر التعديلات على جميع المفاتيح بغض النظر عن البحث أو عوامل التصفية أو الصفحة المعروضة.
ماذا لو تعارضت التعديلات مع بنية JSON الأصلية؟
لا يمكن تطبيق التعديلات التي تستبدل الأرقام أو المصفوفات بنصوص، أو التي تنشئ مستوى جديدًا تحت نص. راجع المفاتيح التي غُيّرت أو أُضيفت في الإدخال أو ملف CSV.
الإدخال والنتائج
- الإدخال
- كائنات JSON لكل لغة. يُستخدم ملف CSV لتبادل الترجمات بعد تحميل ملفات JSON.
- التحرير
- تُطابَق النصوص داخل الكائنات مع المفاتيح. لا تُكتب ملفات الإدخال الأصلية فوق.
- مخرجات JSON
- لغة واحدة: language-name.json. للغات متعددة: تُحزَّم ملفات JSON لكل لغة في translations.zip.
- مخرجات CSV
- translations.csv. ينشئ ملف CSV بترميز UTF-8 مع علامة BOM وأعمدة المفتاح واسم اللغة والتعليق.