هل هناك أي طريقة لتوليد ملف CSV توطين الإعصار مثل Django Makemessage؟

StackOverflow https://stackoverflow.com/questions/4103088

سؤال

يمكن لـ Django Makemessage إنشاء ملفات I18N ، ويجعل الترجمة أسهل.

كما أرى ، يدعم Tornado تنسيق CSV وتنسيق GetText ، لكن لا يمكنني استخدام إصدار CSV إلا ، لأنني سأستخدمه في AppEngine.

لذلك ، أبحث عن طريقة لإنشاء ملفات CSV لقاعدة Tornado على مسح الرموز والقوالب الخاصة بي.

هل كانت مفيدة؟

المحلول

حسنًا ، أعتقد أنك مرتبك بعض الشيء. أنت يستطيع استخدم ملفات GetText و PO/MO من داخل Appengine ، حيث يتم تصدير GetText من تطبيق google django.util (يمكن العثور على مناقشة حول هذا في google-appengine google Group) :

from django.utils.translation import gettext as _ 

لست على دراية بتنسيق i18n من AppEngine CSV ، ولكن هناك طريقة سهلة للغاية لاستخراج السلاسل الدولية من رمز Tornado باستخدام قوالب باستخدام Tornado باستخدام XgetText, ، فقط بشكل أساسي يجبر بيثون من سطر الأوامر. كمثال:

 xgettext -L Python -o myproject.pot  *.html

سيحصل هذا الأمر على جميع الأوتار I18N'ed من *.html في دليلك الحالي وسيضعها على myProject.pot. يمكنك تهيئة هذا الملف والترجمة إلى Let's say ./it_it/myproject.po باستخدام أي أداة تجارية أو OpenSource (أوصي Poedit أو pootle) وبمجرد ترجمة جميع الأوتار ، يمكنك تحويل الملف إلى CVS باستخدام ترجمة مجموعة الأدوات PO2CSV, ، وهو مكتوب أيضًا في بيثون:

po2csv -i it_IT/myproject.po -o it_IT/myproject.csv 

التنسيق هو location:codeLine,source,target وهو أمر سهل للغاية سهل التحويل إلى أي تنسيق آخر تحتاجه (لست على دراية بتنسيق CSV من Appengine I18N) ، يمكنك استدعاء PO2CSV مع NO -O وسيطة من الإخراج من stdout.

لا أعرف ما إذا كان ذلك يحل سؤالك ، لكن في الأساس أعتقد أنه يجب عليك تبني رمز- اعمل مع ذكريات الترجمة/مبيدات الإملائية ، إلخ .... حاول إخباري إذا كنت بحاجة إلى المزيد من المساعدة في ذلك.

نصائح أخرى

لقد كتبت وحدة جديدة للهدف المسمى تورنادو-بابيل والذي يتضمن مستخرجًا لبابل لاستخراج السلاسل القابلة للترجمة من قوالب Tornado. لن ينشئ ملف CSV لك ، ولكن ملفات الوعاء القياسية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top