مقدمة

ما هو محرر LS-Dialog؟
LSDE
: اختصار لـ "LepaSoft Dialog Editor"، هو أداة مصممة لمساعدة المطورين في كتابة وترجمة مشاريعهم.
أكثر من مجرد أداة ترجمة بسيطة، تم تحسين
LSDE
لتمكينك من إنشاء سير عمل مثالي ومخصص لكل مشروع.
ترجمة نصوص يدوية أو بمساعدة نماذج LLM.
تأليف نصوص يدوية أو بمساعدة نماذج LLM.
إدارة مركزية للحوارات والسلاسل النصية.
تتبع التعديلات وسجل الإصدارات.
الكشف التلقائي عن عدم الاتساق أو المشاكل.
دعم تنسيقات تصدير واستيراد متعددة.
إمكانية التكامل مع أدوات خارجية (محركات الألعاب، مسارات CI/CD).
تنظيم هيكل وتقديم واجهة مشروعك.
أدوات التحقق اللغوي (الطول، القيود، العلامات، المتغيرات).
التعاون في الوقت الفعلي أو عبر الملفات المشتركة.
إنشاء ومزامنة السرد الصوتي.
تخصيصات متقدمة للبرنامج لتلبية احتياجاتك.
كيف يعمل محرر LS-Dialog؟
يعتمد
LSDE
على
أفضل ممارسات i18n
لتنظيم مفاتيح الترجمة الخاصة بك.
وبدون فرض بنية فريدة، فإنه يدمج الأساليب التي أثبتت فعاليتها من خلال الأطر لإدارة التعقيدات اللغوية مثل السياقات والجموع.
سير العمل بسيط جدًا:
تقوم بإنشاء مشروع جديد.
تقوم بتحديد مجلد مشروعك.
تقوم بإنشاء مفاتيح يدوياً أو تلقائياً عن طريق مسح مشروعك.
تقوم بتطبيق مهام على المفاتيح (ترجمات، تصحيحات، إعادة تنظيم...).
المفاتيح
يستخدم
LSDE
نظام مفاتيح هرمي لتحديد كل حوار بدقة.
مثال: المفتاح
game:scenes.events.The-quest-of-sun.d1يشير
game:إلى النطاق الاسمي (namespace). يتم تحديد هذا الاسم باسم ملف الترجمة، على سبيل المثال:
locales/en/game.json،
locales/en/scenes.json...
يمثل
scenes.events.The-quest-of-sun.d1مسار الوصول للعثور على الحوار في بنية JSON للملف.
json// file game.json { 'scenes': { 'title': '', 'description': '', 'events': { 'The-quest-of-sun': { 'd1': '', }, }, }, },
يقوم LS Dialog Editor بتخزين الحوارات مؤقتًا في ملفات
.lsde. وهذا يسهل مشاركة واسترداد مشاريعك، مما يجنبك إرسال مجموعة معقدة من الملفات إلى عملائك.
اتفاقيات مفاتيح i18n
W3C Internationalization
هو المرجع الذي يعرف i18n كمعيار، بغض النظر عن أي مكتبة برمجية.
تحدد توصيات W3C القواعد الأساسية:
تجنب التجميع (concatenation)
إدارة الجموع وفقًا لقواعد CLDR اللغوية
إدارة التواريخ والأرقام والعملات
توفير السياق للمترجمين
فصل النص عن الكود
توفير لغات احتياطية (fallback locales)
عدم افتراض طول الكلمة أو ترتيبها أبدًا
دعم الكتابة من اليمين إلى اليسار (RTL) (العربية، العبرية)
فيما يتعلق بالمعايير وأفضل الممارسات المعمارية لـ JSON، تُعد
ICU (International Components for Unicode)
مرجعًا.
i18next و i18n ؟
يعتمد
LSDE
على كل من i18n وبعض الممارسات الجيدة المستمدة من
i18next
.
خاصة بالنسبة لـ:
بنية المجلدات
سياقية الجموع
دعم التداخل (nesting) والمتغيرات...
للألعاب
يدعم
LSDE
نوعين من الحوارات للألعاب.
لا يوجد نهج عالمي جيد، بل أدوات مناسبة لكل مهمة.
SAD: "Single Actor Dialog" (حوار الممثل الواحد)
ممثل واحد لكل حوار، وهو مثالي عادة لألعاب الحركة أو الألعاب التي لا تحتوي على سرد معقد.
هذا يعني أن كل مفتاح يتوافق مع حوار أو جزء من نص ويجب تجميعه وتجميعه في محرك اللعبة.
يمكن أن يؤدي هذا النهج إلى تعقيد كبير في لعبة سردية تحتوي على العديد من التفاعلات بين عدة شخصيات، مثل ألعاب JRPG، على سبيل المثال.
MAD: "Multiple Actors Dialog" (حوار الممثلين المتعددين)
عدة ممثلين في نفس الحوار، يتم تحديدهم بواسطة علامات (tags)، وهو مثالي لألعاب تقمص الأدوار (RPG) أو الألعاب ذات السرد المعقد الذي يتضمن عدة ممثلين.
هذا يعني أنك ستدمج سلسلة من الحوارات، مفصولة بعلامات (tags)، والتي سيتم تفسيرها لاحقًا بواسطة محرك لعبتك.
هذا يسهل بشكل كبير اتخاذ خطوة إلى الوراء بشأن الحوارات المعقدة التي تتضمن عدة متحدثين، ولكنه معقد للغاية بالنسبة لألعاب الحركة البسيطة، على سبيل المثال.
للويب
لم يعد هناك حقًا سبب لعدم ترجمة موقعك الإلكتروني لتتمكن من عرض أداتك في جميع أنحاء العالم.
يوفر
LSDE
راحة في العمل لتطوير واجهة الويب الخاصة بك مع معاينة في الوقت الفعلي بفضل HMR ومكتبات i18n مثل i18next في إصداراتها React أو Next.js، على سبيل المثال.
س: ألا يجب أن نترك الإضافات تدير تعدد لغات مواقع الويب؟
ج: نعم ولا. يمكن لهذه الأدوات أن تساعد في حالات الطوارئ، لكنها ستؤدي إلى تدهور تجربة المستخدم (UX) وواجهة المستخدم (UI) لموقعك. كما أنها لا تسمح بتحسين محركات البحث (SEO) جيدًا، على عكس الموقع الإلكتروني المترجم الذي يمكن فهرسته وعرضه للأشخاص الذين يبحثون عن محتوى بلغتهم الأم.
للبرمجيات
تعد ترجمة برامجك وتطبيقاتك أمرًا بالغ الأهمية.
عادة ما تكون معماريات لغات وتقنيات تطوير البرمجيات أكثر حرية بكثير من تلك المستخدمة في الويب.
لهذا السبب، يقدم
LSDE
أدوات قابلة للتكوين بنسبة 100% لتكييفها مع احتياجاتك ومعماريتك.
تسمح التعبيرات العادية (regex) بإنشاء اقتران بين معماريتك و
LSDE
.