सूडोलोकल, एक ऐसा लोकल है जिसे उन भाषाओं की विशेषताओं को सिम्युलेट करने के लिए डिज़ाइन किया गया है जिनकी वजह से ऐप्लिकेशन का अनुवाद करते समय, यूज़र इंटरफ़ेस (यूआई), लेआउट, और अनुवाद से जुड़ी अन्य समस्याएं आती हैं. सूडोलोकल, इंस्टैंट और अपने-आप होने वाले अनुवादों से बनाए जाते हैं. ये ऐसे अनुवाद होते हैं जिन्हें स्थानीय भाषा में अनुवाद किए जा सकने वाले सभी मैसेज के लिए अंग्रेज़ी में पढ़ा जा सकता है. सोर्स कोड में मौजूद ऐसे मैसेज जिनका अनुवाद नहीं किया जा सकता, उन्हें अन-स्यूडोलोकलाइज़्ड टेक्स्ट कहा जाता है.
सूडोलोकल से समय और पैसे की बचत होती है. ऐसा इसलिए, क्योंकि बाद में अनुवाद के लिए भेजे जाने वाले मैसेज को सोर्स रिपॉज़िटरी में कमिट करने से पहले, यूज़र इंटरफ़ेस (यूआई) के टेक्स्ट और उसके लेआउट में बदलाव किए जा सकते हैं. अनुवाद से जुड़ी संभावित समस्याओं की सूची देखने के लिए, स्थानीय भाषा में अनुवाद करने से जुड़ी समस्याएं सेक्शन देखें.
Android के स्यूडोलोकल नाम, लोकल भाषा के नाम रखने के स्टैंडर्ड नियमों का पालन करते हैं. साथ ही, उनके लोकल आईडी को BCP 47 के मुताबिक बनाई गई किसी भी प्रोग्रामिंग भाषा से पार्स किया जा सकता है. इस लिहाज़ से, सूडोलोकल, फ़्रेंच, चाइनीज़ या रशियन जैसी किसी भी अन्य लोकल भाषा की तरह ही होते हैं.
Android प्लैटफ़ॉर्म, बाएं से दाएं (एलटीआर) और दाएं से बाएं (आरटीएल) भाषाओं को दिखाने के लिए, ये दो स्यूडोलोकल उपलब्ध कराता है:
अंग्रेज़ी (XA): यह अंग्रेज़ी के यूज़र इंटरफ़ेस (यूआई) के मूल टेक्स्ट में लैटिन उच्चारण जोड़ता है. साथ ही, बिना उच्चारण वाले टेक्स्ट को जोड़कर मूल टेक्स्ट को बड़ा करता है. साथ ही, बड़े किए गए टेक्स्ट से जुड़ी संभावित समस्याओं को दिखाने के लिए, हर मैसेज यूनिट को ब्रैकेट में डालता है. संभावित समस्याओं में लेआउट का टूटना और मैसेज का सिंटैक्स गलत तरीके से बनना शामिल है. जैसे, किसी वाक्य को कई हिस्सों में बांटना और ब्रैकेट में कई मैसेज के तौर पर दिखाना. अंग्रेज़ी (XA) के सुडोलोकल को पहली इमेज में दिखाया गया है.
AR (XB): इस विकल्प की मदद से, मूल मैसेज के टेक्स्ट की दिशा को बाएं से दाएं से दाएं से बाएं पर सेट किया जा सकता है. इससे मूल मैसेज में वर्णों का क्रम उलट जाता है. AR (XB) का सूडोलोकल, दूसरी इमेज में दिखाया गया है.
सूडोलोकल की मदद से, अपने ऐप्लिकेशन का आरटीएल वर्शन बनाया जा सकता है. भले ही, आपके पास किसी आरटीएल भाषा को लिखने या बोलने की जानकारी न हो.
सूडोलोकल चालू करना
आम तौर पर, सूडोलोकल को डेवलपर के लिए बने बिल्ड में जोड़ा जाता है. अपने डिवाइस पर कोई नकली भाषा चुनने पर, नकली भाषाओं के साथ काम करने वाले सभी ऐप्लिकेशन, चुनी गई नकली भाषा की विशेषताओं का इस्तेमाल करते हैं. इनमें सेटिंग ऐप्लिकेशन और क्विक सेटिंग पैनल जैसे सभी सिस्टम ऐप्लिकेशन भी शामिल हैं.
Android के सूडोलोकल का इस्तेमाल करने के लिए, आपके डिवाइस पर Android 4.3 (एपीआई लेवल 18) या उसके बाद का वर्शन होना चाहिए. साथ ही, आपके डिवाइस पर डेवलपर के विकल्प चालू होने चाहिए. डेवलपर के विकल्प चालू करने के बाद, आपको अपना डिवाइस भी रीबूट करना होगा.
यहां दिए गए तरीके से, सूडोलोकल को चालू करने का तरीका बताया गया है:
Android Studio में, किसी खास ऐप्लिकेशन के लिए सूडोलोकल को चालू करने के लिए, अपनी
build.gradle
फ़ाइल में यह कॉन्फ़िगरेशन जोड़ें:Groovy
android { ... buildTypes { debug {
pseudoLocalesEnabled
true } } }Kotlin
android { ... buildTypes.getByName("debug") { isPseudoLocalesEnabled = true } }
अपना ऐप्लिकेशन बनाएं और चलाएं.
किसी सूडोलोकल को चुनने के लिए, Settings ऐप्लिकेशन का इस्तेमाल करें. आपके Android वर्शन के हिसाब से, यह चरण अलग-अलग हो सकता है. यहां बताया गया है कि यह कैसे किया जा सकता है:
Android 5.0 (एपीआई लेवल 21) या इसके बाद का वर्शन
- डिवाइस पर, सेटिंग ऐप्लिकेशन खोलें और भाषाएं और इनपुट > भाषा की प्राथमिकताएं पर टैप करें.
- भाषा की प्राथमिकताएं सूची में, टैब को खींचकर सूची में सबसे ऊपर ले जाएं और उसे चालू भाषा बनाएं. तीसरा चित्र देखें.
Android 4.4.4 (एपीआई लेवल 19) या इससे पुराना वर्शन
- डिवाइस पर, Settings ऐप्लिकेशन खोलें और भाषाएं और इनपुट > language preferences > Add a language पर टैप करें.
- किसी सूडोलोकल पर टैप करके, उसे भाषा की प्राथमिकताएं सूची में जोड़ें.
- भाषा की प्राथमिकताएं सूची में, टैब को खींचकर किसी नकली भाषा को सूची में सबसे ऊपर ले जाएं और उसे चालू भाषा बनाएं. तीसरा चित्र देखें.
जगह की जानकारी को स्थानीय भाषा में बदलने से जुड़ी समस्याएं
यूज़र इंटरफ़ेस (यूआई) में स्थानीय भाषा के हिसाब से बदलाव करने से जुड़ी संभावित समस्याओं का पता लगाने के लिए, झूठी भाषा का इस्तेमाल किया जा सकता है. इससे समय की बचत होती है और समस्याओं का पता लगाने में मदद मिलती है. झूठी भाषा का इस्तेमाल करके, इन समस्याओं का पता लगाया जा सकता है:
- हार्डकोड की गई ऐसी स्ट्रिंग जो अनुवाद के लिए नहीं भेजी जा सकतीं, उन्हें आसानी से पहचाना जा सके, इसके लिए उन्हें सुडोलोकल में बिना उच्चारण वाले टेक्स्ट के तौर पर दिखाया जाता है.
- टेक्स्ट के बड़े होने की वजह से यूज़र इंटरफ़ेस (यूआई) लेआउट से जुड़ी समस्याएं. इससे पता चलता है कि टेक्स्ट की लंबाई की वजह से, यूज़र इंटरफ़ेस (यूआई) कहां से टूट सकता है.
स्ट्रिंग को जोड़ने की सुविधा, जो एक मैसेज को दो या उससे ज़्यादा ब्रैकेट में बांटकर दिखाती है. इससे अनुवाद करना मुश्किल हो सकता है, क्योंकि अनुवादकों को हर हिस्से का अनुवाद अलग-अलग करना पड़ता है. उन्हें यह नहीं पता होता कि ये हिस्से एक-दूसरे से जुड़े हैं. स्ट्रिंग को आपस में जोड़ने की वजह से भी अनुवाद सही नहीं हो पाता, क्योंकि अलग-अलग भाषाओं में वाक्य के हिस्सों को अलग-अलग क्रम में या पूरी तरह से अलग स्ट्रक्चर में लिखा जा सकता है. उदाहरण के लिए, जैपनीज़, कोरियन, और तमिल जैसी भाषाओं में, क्रिया को वाक्य के आखिर में रखा जाता है. जब किसी वाक्य को जोड़ा जाता है, तो अनुवादक ज़रूरत के हिसाब से शब्दों का क्रम नहीं बदल सकते.
टेक्स्ट के दोनों दिशाओं (बीआईडीआई) से जुड़ी समस्याएं. जैसे, जब एक टेक्स्ट दिशा के कॉन्टेंट में, दूसरी टेक्स्ट दिशा में इनलाइन फ़्रेज़ शामिल हो, जिससे स्ट्रिंग को पढ़ना मुश्किल हो जाए.
दाईं से बाईं (आरटीएल) दिशा में लिखने से जुड़ी समस्याएं, जैसे कि एलिमेंट सही तरीके से नहीं दिखना. कुछ उदाहरणों में, यूज़र इंटरफ़ेस (यूआई) का कोई एलिमेंट बाईं ओर नहीं जा रहा है, टेक्स्ट उलटा नहीं हो रहा है और बाईं ओर नहीं जा रहा है या विराम चिह्न गलत जगह पर है. जैसे, "pseudolocales rule!", "!elur selacoloduesp" के बजाय "elur selacoloduesp!" में बदल गया है.