12

के साथ GAE वेबएप एप्लिकेशन अंतर्राष्ट्रीयकरण BABEL का उपयोग करके आप Google App Engine वेबपैप एप्लिकेशन को अंतर्राष्ट्रीयकरण के बारे में कैसे जानेंगे? मैं यहां सभी चरणों के लिए देख रहा हूं:बेबेल

  1. तारों का अनुवाद करने के लिए चिह्नित करना।
  2. उन्हें निकालने।
  3. Traslating
  4. अपने अनुप्रयोग का विन्यास सही() या (gettext() अपने कोड और टेम्पलेट्स में ब्राउज़र

उत्तर

11

1 द्वारा अनुरोध भाषा) का उपयोग _) लोड करने के लिए। मॉड्यूल ग्लोबल्स या क्लास परिभाषाओं में सेट किए गए अनुवादित तारों को आलसी गेटटेक्स्ट() के कुछ रूपों का उपयोग करना चाहिए, क्योंकि मॉड्यूल आयात किए जाने पर i18n उपलब्ध नहीं होगा।

2) pybabel का उपयोग करके सभी अनुवाद निकालें। यहां हम स्कैन किए जाने के लिए दो निर्देशिकाएं पास करते हैं: टेम्पलेट्स डीआईआर और ऐप डीआईआर। यह इन निर्देशिकाओं में पाए गए सभी तारों के साथ/locale निर्देशिका में एक संदेश.pot फ़ाइल बना देगा।

$ pybabel extract -F ./babel.cfg -o ./locale/messages.pot ./templates/ ./app/ 

3) प्रत्येक भाषा के लिए एक निर्देशिका प्रारंभ: babel.cfg निष्कर्षण विन्यास टेम्पलेट इंजन का उपयोग पर निर्भर करता है कि है। यह केवल एक बार किया जाता है। यहाँ हम तीन अनुवाद, en_US, es_ES और pt_BR प्रारंभ, और चरण 2 पर बनाया messages.pot फ़ाइल का उपयोग करें:

$ pybabel init -l en_US -d ./locale -i ./locale/messages.pot 
$ pybabel init -l es_ES -d ./locale -i ./locale/messages.pot 
$ pybabel init -l pt_BR -d ./locale -i ./locale/messages.pot 

अनुवाद संदेशों। वे प्रत्येक अनुवाद निर्देशिका में .mo फाइलों में होंगे। ,,

$ pybabel compile -f -d ./locale 

बाद में यदि नए अनुवाद जोड़ रहे हैं दोहराने चरण 2 और नए बर्तन फ़ाइल का उपयोग कर उन्हें अद्यतन: के बाद सभी स्थानों के अनुवाद कर रहे हैं, उन्हें संकलन

$ pybabel update -l pt_BR -d ./locale/ -i ./locale/messages.pot 

फिर नए स्ट्रिंग का अनुवाद और अनुवाद फिर से संकलित करें।

4) यहां रणनीति भिन्न हो सकती है। प्रत्येक अनुरोध के लिए आपको सही अनुवादों का उपयोग करने के लिए सेट करना होगा, और शायद बाद के अनुरोधों में पुन: उपयोग करने के लिए लोड किए गए अनुवादों को कैश करना चाहते हैं।

+1

धन्यवाद मोरा, चरण 4 अभी भी मुझे बढ़ाता है। मुझे आशा है कि कुछ इसके लिए अच्छा समाधान पोस्ट करेंगे। – fccoelho

+1

किसी के पास इस उत्तर के आइटम 4 के लिए एक सरल सुझाव है? – fccoelho

+0

संख्या 4 एक टूटी हुई लिंक है ..:/ – Lipis

संबंधित मुद्दे