chrome.i18n

ब्यौरा

अपने पूरे ऐप्लिकेशन या एक्सटेंशन में अंतरराष्ट्रीयकरण लागू करने के लिए, chrome.i18n इन्फ़्रास्ट्रक्चर का इस्तेमाल करें.

आपको उपयोगकर्ता को दिखने वाली सभी स्ट्रिंग को messages.json नाम की फ़ाइल में डालना होगा. हर बार जब कोई नई स्थान-भाषा जोड़ी जाती है, तब _locales/_localeCode_ नाम की डायरेक्ट्री में एक मैसेज फ़ाइल जोड़ी जाती है. यहां localeCode एक कोड होता है. जैसे, अंग्रेज़ी के लिए en.

यहां अंतरराष्ट्रीय स्तर पर उपलब्ध एक्सटेंशन के लिए फ़ाइल हैरारकी दी गई है. यह एक्सटेंशन, अंग्रेज़ी (en), स्पैनिश (es), और कोरियन (ko) भाषाओं में काम करता है:

एक्सटेंशन डायरेक्ट्री में: manifest.json, *.html, *.js, _locales डायरेक्ट्री. _locales डायरेक्ट्री में: en, es, और ko डायरेक्ट्री. हर डायरेक्ट्री में messages.json फ़ाइल मौजूद है.

एक से ज़्यादा भाषाओं में सहायता देने का तरीका

मान लें कि आपके पास एक ऐसा एक्सटेंशन है जिसमें यहां दी गई फ़ाइलें हैं:

manifest.json फ़ाइल और JavaScript वाली फ़ाइल. .json फ़ाइल में

इस एक्सटेंशन को अंतरराष्ट्रीय स्तर पर उपलब्ध कराने के लिए, उपयोगकर्ता को दिखने वाली हर स्ट्रिंग का नाम दें और उसे messages फ़ाइल में डालें. एक्सटेंशन का मेनिफ़ेस्ट, सीएसएस फ़ाइलें, और JavaScript कोड, हर स्ट्रिंग के नाम का इस्तेमाल करके उसके स्थानीय भाषा वाले वर्शन को पाते हैं.

यहां बताया गया है कि अंतरराष्ट्रीय स्तर पर उपलब्ध होने पर एक्सटेंशन कैसा दिखता है. ध्यान दें कि इसमें अब भी सिर्फ़ अंग्रेज़ी स्ट्रिंग हैं:

<img "__msg_extname__",="" "default_locale"="" "en".="" "extname"."="" "hello="" _locales="" a="" alt="In the manifest.json file, " and="" been="" changed="" chrome.i18n.getmessage("extname").="" defines="" en="" file="" file,="" has="" hello="" in="" item="" javascript="" messages.json="" named="" new="" src="/static/images/i18n-after-1.gif" the="" to="" value="" world"="" />

अंतरराष्ट्रीय स्तर पर उपलब्ध कराने के बारे में कुछ ज़रूरी बातें:

  • इन भाषाओं में से किसी का भी इस्तेमाल किया जा सकता है. अगर इस्तेमाल की जा रही जगह के लिए, Chrome में भाषा उपलब्ध नहीं है, तो Google Chrome उसे अनदेखा कर देता है.
  • manifest.json और सीएसएस फ़ाइलों में, messagename नाम की स्ट्रिंग को इस तरह से रेफ़र करें:

    __MSG_messagename__
    
  • अपने एक्सटेंशन या ऐप्लिकेशन के JavaScript कोड में, messagename नाम की स्ट्रिंग को इस तरह से रेफ़र करें:

    chrome.i18n.getMessage("messagename")
    
  • getMessage() को कॉल करते समय, मैसेज में शामिल करने के लिए ज़्यादा से ज़्यादा नौ स्ट्रिंग दी जा सकती हैं. ज़्यादा जानकारी के लिए, उदाहरण: getMessage देखें.

  • कुछ मैसेज, जैसे कि @@bidi_dir और @@ui_locale, इंटरनैशनलाइज़ेशन सिस्टम से मिलते हैं. पहले से तय किए गए मैसेज के नामों की पूरी सूची देखने के लिए, पहले से तय किए गए मैसेज सेक्शन देखें.

  • messages.json में, उपयोगकर्ता को दिखने वाली हर स्ट्रिंग का एक नाम, एक "message" आइटम, और एक "description" आइटम होता है. हालांकि, "description" आइटम ज़रूरी नहीं है. नाम एक कुंजी होता है, जैसे कि "extName" या "search_string". यह स्ट्रिंग की पहचान करता है. "message" इस स्थान-भाषा में स्ट्रिंग की वैल्यू तय करता है. "ब्यौरा" फ़ील्ड में दी गई जानकारी, अनुवादकों के लिए मददगार होती है. ऐसा इसलिए, क्योंकि वे यह नहीं देख पाते कि आपके एक्सटेंशन में स्ट्रिंग का इस्तेमाल कैसे किया गया है. उदाहरण के लिए:

    {
      "search_string": {
        "message": "hello%20world",
        "description": "The string we search for. Put %20 between words that go together."
      },
      ...
    }
    

    ज़्यादा जानकारी के लिए, फ़ॉर्मैट: स्थान-भाषा के हिसाब से मैसेज देखें.

किसी एक्सटेंशन या ऐप्लिकेशन को अंतरराष्ट्रीय स्तर पर उपलब्ध कराने के बाद, उसका अनुवाद करना आसान होता है. messages.json को कॉपी करें, उसका अनुवाद करें, और कॉपी को _locales में मौजूद नई डायरेक्ट्री में डालें. उदाहरण के लिए, स्पैनिश भाषा में सहायता देने के लिए, _locales/es में messages.json की अनुवाद की गई कॉपी डालें. नीचे दिए गए चित्र में, स्पैनिश में अनुवाद किए गए नए वर्शन के साथ पिछला एक्सटेंशन दिखाया गया है.

यह इमेज, पिछली इमेज जैसी ही दिखती है. हालांकि, इसमें _locales/es/messages.json नाम की एक नई फ़ाइल है. इसमें मैसेज का स्पैनिश अनुवाद शामिल है.

पहले से तय किए गए मैसेज

इंटरनैशनलाइज़ेशन सिस्टम, स्थानीय भाषा में उपलब्ध कराने के लिए पहले से तय किए गए कुछ मैसेज उपलब्ध कराता है. इनमें @@ui_locale शामिल हैं, ताकि मौजूदा यूज़र इंटरफ़ेस (यूआई) की भाषा का पता लगाया जा सके. साथ ही, कुछ @@bidi_... मैसेज भी शामिल हैं, जिनसे टेक्स्ट की दिशा का पता लगाया जा सकता है. बाद के मैसेज के नाम, गैजेट के लिए BIDI (दोनों दिशाओं में काम करने वाला) API में मौजूद कॉन्स्टेंट के नाम से मिलते-जुलते हैं.

खास मैसेज @@extension_id का इस्तेमाल सीएसएस और JavaScript फ़ाइलों में किया जा सकता है. भले ही, एक्सटेंशन या ऐप्लिकेशन स्थानीय भाषा में उपलब्ध हो या न हो. यह मैसेज, मेनिफ़ेस्ट फ़ाइलों में काम नहीं करता.

यहां दी गई टेबल में, पहले से तय किए गए हर मैसेज के बारे में बताया गया है.

मैसेज का नामब्यौरा
@@extension_idएक्सटेंशन या ऐप्लिकेशन आईडी. इस स्ट्रिंग का इस्तेमाल, एक्सटेंशन में मौजूद संसाधनों के लिए यूआरएल बनाने के लिए किया जा सकता है. जिन एक्सटेंशन के लिए स्थानीय भाषा का इस्तेमाल नहीं किया गया है वे भी इस मैसेज का इस्तेमाल कर सकते हैं.
ध्यान दें: इस मैसेज का इस्तेमाल मेनिफ़ेस्ट फ़ाइल में नहीं किया जा सकता.
@@ui_localeमौजूदा स्थान-भाषा; इस स्ट्रिंग का इस्तेमाल, स्थान-भाषा के हिसाब से यूआरएल बनाने के लिए किया जा सकता है.
@@bidi_dirमौजूदा स्थान-भाषा के लिए टेक्स्ट की दिशा. जैसे, अंग्रेज़ी जैसी बाएं-से-दाएं लिखी जाने वाली भाषाओं के लिए "ltr" या जैपनीज़ जैसी दाएं-से-बाएं लिखी जाने वाली भाषाओं के लिए "rtl".
@@bidi_reversed_dirअगर @@bidi_dir "ltr" है, तो यह "rtl" होता है. अगर ऐसा नहीं है, तो यह "ltr" होता है.
@@bidi_start_edgeअगर @@bidi_dir "ltr" है, तो यह "left" होता है. अगर ऐसा नहीं है, तो यह "right" होता है.
@@bidi_end_edgeअगर @@bidi_dir "ltr" है, तो यह "right" है. अगर ऐसा नहीं है, तो यह "left" है.

यहां सीएसएस फ़ाइल में @@extension_id का इस्तेमाल करके, यूआरएल बनाने का उदाहरण दिया गया है:

body {
  background-image:url('chrome-extension://__MSG_@@extension_id__/background.png');
}

अगर एक्सटेंशन आईडी abcdefghijklmnopqrstuvwxyzabcdef है, तो पिछले कोड स्निपेट में बोल्ड की गई लाइन यह बन जाती है:

  background-image:url('chrome-extension://abcdefghijklmnopqrstuvwxyzabcdef/background.png');

सीएसएस फ़ाइल में @@bidi_* मैसेज इस्तेमाल करने का एक उदाहरण यहां दिया गया है:

body {
  direction: __MSG_@@bidi_dir__;
}

div#header {
  margin-bottom: 1.05em;
  overflow: hidden;
  padding-bottom: 1.5em;
  padding-__MSG_@@bidi_start_edge__: 0;
  padding-__MSG_@@bidi_end_edge__: 1.5em;
  position: relative;
}

अंग्रेज़ी जैसी बाईं से दाईं ओर लिखी जाने वाली भाषाओं के लिए, बोल्ड लाइनें इस तरह दिखेंगी:

  dir: ltr;
  padding-left: 0;
  padding-right: 1.5em;

स्थान-भाषा

आपके पास कई स्थानीय भाषाएं चुनने का विकल्प होता है. इनमें से कुछ (जैसे, en) ऐसी होती हैं जिनमें एक ही अनुवाद, किसी भाषा के कई वर्शन (जैसे, en_GB और en_US) के साथ काम करता है.

समर्थित स्थान

Chrome Web Store में उपलब्ध किसी भी भाषा का इस्तेमाल किया जा सकता है.

संदेश खोजना

आपको हर स्ट्रिंग को हर उस स्थान-भाषा के लिए तय करने की ज़रूरत नहीं है जिसके लिए सहायता उपलब्ध है. जब तक डिफ़ॉल्ट स्थान-भाषा की messages.json फ़ाइल में हर स्ट्रिंग के लिए कोई वैल्यू मौजूद है, तब तक आपका एक्सटेंशन या ऐप्लिकेशन काम करेगा. भले ही, अनुवाद कितना भी कम हो. एक्सटेंशन सिस्टम, मैसेज को इस तरह खोजता है:

  1. उपयोगकर्ता की पसंदीदा स्थान-भाषा के लिए, मैसेज फ़ाइल (अगर कोई हो) खोजें. उदाहरण के लिए, जब Google Chrome का स्थान-भाषा ब्रिटिश अंग्रेज़ी (en_GB) पर सेट होती है, तो सिस्टम सबसे पहले _locales/en_GB/messages.json में मैसेज ढूंढता है. अगर वह फ़ाइल मौजूद है और मैसेज भी मौजूद है, तो सिस्टम आगे की जांच नहीं करता.
  2. अगर उपयोगकर्ता की पसंदीदा भाषा में कोई क्षेत्र शामिल है (यानी कि भाषा में अंडरस्कोर है: _), तो उस क्षेत्र के बिना भाषा खोजें. उदाहरण के लिए, अगर en_GB मैसेज फ़ाइल मौजूद नहीं है या उसमें मैसेज शामिल नहीं है, तो सिस्टम en मैसेज फ़ाइल में देखता है. अगर वह फ़ाइल मौजूद है और मैसेज भी मौजूद है, तो सिस्टम आगे की जांच नहीं करता.
  3. डिफ़ॉल्ट स्थान-भाषा के लिए, मैसेज फ़ाइल खोजें. उदाहरण के लिए, अगर एक्सटेंशन की "default_locale" को "es" पर सेट किया गया है और न तो _locales/en_GB/messages.json और न ही _locales/en/messages.json में मैसेज मौजूद है, तो एक्सटेंशन _locales/es/messages.json से मैसेज का इस्तेमाल करेगा.

नीचे दिए गए डायग्राम में, "colores" नाम का मैसेज उन सभी तीन भाषाओं में है जिनमें एक्सटेंशन काम करता है. हालांकि, "extName" सिर्फ़ दो भाषाओं में है. अमेरिका में अंग्रेज़ी भाषा में Google Chrome का इस्तेमाल करने वाले व्यक्ति को जहां "Colors" लेबल दिखता है वहीं ब्रिटिश अंग्रेज़ी का इस्तेमाल करने वाले व्यक्ति को "Colours" लेबल दिखता है. अमेरिका में अंग्रेज़ी और ब्रिटेन में अंग्रेज़ी भाषा का इस्तेमाल करने वाले लोगों को एक्सटेंशन का नाम "Hello World" दिखता है. डिफ़ॉल्ट भाषा स्पैनिश होने की वजह से, Google Chrome को अंग्रेज़ी के अलावा किसी अन्य भाषा में इस्तेमाल करने वाले लोगों को "Colores" लेबल और "Hola mundo" एक्सटेंशन का नाम दिखता है.

चार फ़ाइलें: manifest.json और तीन messages.json फ़ाइलें (es, en, और en_GB के लिए).  es और en फ़ाइलों में, इन नामों वाले मैसेज की एंट्री दिखती हैं

अपने ब्राउज़र का स्थान-भाषा सेट करने का तरीका

अनुवादों को टेस्ट करने के लिए, अपने ब्राउज़र का स्थान-भाषा सेट करें. इस सेक्शन में, Windows, Mac OS X, Linux, और ChromeOS में स्थानीय भाषा सेट करने का तरीका बताया गया है.

Windows

भाषा बदलने के लिए, भाषा के हिसाब से शॉर्टकट या Google Chrome के यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल किया जा सकता है. शॉर्टकट का इस्तेमाल करने से, आपको तुरंत जवाब मिल जाता है. हालांकि, इसके लिए आपको पहले इसे सेट अप करना होगा. साथ ही, इसकी मदद से एक साथ कई भाषाओं का इस्तेमाल किया जा सकता है.

अलग-अलग इलाकों के लिए वहां की भाषा के हिसाब से शॉर्टकट इस्तेमाल करना

किसी खास स्थान-भाषा के साथ Google Chrome लॉन्च करने वाला शॉर्टकट बनाने और उसका इस्तेमाल करने के लिए:

  1. अपने डेस्कटॉप पर मौजूद Google Chrome के शॉर्टकट की कॉपी बनाएं.
  2. नए शॉर्टकट का नाम बदलकर, नई स्थान-भाषा के हिसाब से रखें.
  3. शॉर्टकट की प्रॉपर्टी बदलें, ताकि टारगेट फ़ील्ड में --lang और --user-data-dir फ़्लैग दिखें. टारगेट कुछ ऐसा दिखना चाहिए:

    path_to_chrome.exe --lang=locale --user-data-dir=c:\locale_profile_dir
    
  4. शॉर्टकट पर दो बार क्लिक करके, Google Chrome लॉन्च करें.

उदाहरण के लिए, अगर आपको स्पैनिश (es) में Google Chrome लॉन्च करने वाला शॉर्टकट बनाना है, तो आपको chrome-es नाम का शॉर्टकट बनाना होगा. इसका टारगेट यह होगा:

path_to_chrome.exe --lang=es --user-data-dir=c:\chrome-profile-es

अपनी ज़रूरत के हिसाब से जितने चाहें उतने शॉर्टकट बनाए जा सकते हैं. इससे, अलग-अलग भाषाओं में आसानी से टेस्ट किया जा सकता है. उदाहरण के लिए:

path_to_chrome.exe --lang=en --user-data-dir=c:\chrome-profile-en
path_to_chrome.exe --lang=en_GB --user-data-dir=c:\chrome-profile-en_GB
path_to_chrome.exe --lang=ko --user-data-dir=c:\chrome-profile-ko
यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करना

Windows के लिए Google Chrome पर यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करके, स्थान-भाषा बदलने का तरीका यहां बताया गया है:

  1. ऐप्लिकेशन आइकॉन > विकल्प
  2. Under the Hood टैब चुनें
  3. नीचे की ओर स्क्रोल करके, वेब कॉन्टेंट पर जाएं
  4. फ़ॉन्ट और भाषा की सेटिंग बदलें पर क्लिक करें
  5. भाषाएं टैब चुनें
  6. ड्रॉप-डाउन का इस्तेमाल करके, Google Chrome की भाषा सेट करें
  7. Chrome को रीस्टार्ट करना

Mac OS X

Mac पर स्थान-भाषा बदलने के लिए, सिस्टम की सेटिंग का इस्तेमाल करें.

  1. Apple मेन्यू में जाकर, System Preferences को चुनें
  2. निजी सेक्शन में जाकर, अंतरराष्ट्रीय चुनें
  3. अपनी भाषा और जगह की जानकारी चुनना
  4. Chrome को रीस्टार्ट करना

Linux

Linux पर स्थान-भाषा बदलने के लिए, पहले Google Chrome बंद करें. इसके बाद, एक ही लाइन में LANGUAGE एनवायरमेंट वैरिएबल सेट करें और Google Chrome लॉन्च करें. उदाहरण के लिए:

LANGUAGE=es ./chrome

ChromeOS

ChromeOS पर स्थान-भाषा बदलने के लिए:

  1. सिस्टम ट्रे में जाकर, सेटिंग को चुनें.
  2. भाषाएं और इनपुट सेक्शन में जाकर, भाषा ड्रॉपडाउन चुनें.
  3. अगर आपकी भाषा सूची में मौजूद नहीं है, तो भाषाएं जोड़ें पर क्लिक करके उसे जोड़ें.
  4. भाषा जोड़ने के बाद, अपनी भाषा के बगल में मौजूद तीन बिंदु वाले ज़्यादा कार्रवाइयां मेन्यू आइटम पर क्लिक करें. इसके बाद, ChromeOS इस भाषा में दिखाएं को चुनें.
  5. ChromeOS को फिर से चालू करने के लिए, सेट की गई भाषा के बगल में मौजूद फिर से चालू करें बटन पर क्लिक करें.

उदाहरण

आपको examples/api/i18n डायरेक्ट्री में, अंतरराष्ट्रीय भाषा के हिसाब से बनाने के आसान उदाहरण मिल सकते हैं. पूरे उदाहरण के लिए, examples/extensions/news देखें. अन्य उदाहरणों और सोर्स कोड देखने में मदद पाने के लिए, सैंपल देखें.

उदाहरण: getMessage

यहां दिया गया कोड, ब्राउज़र से स्थानीय भाषा में मैसेज पाता है और उसे स्ट्रिंग के तौर पर दिखाता है. यह मैसेज में मौजूद दो प्लेसहोल्डर को "string1" और "string2" स्ट्रिंग से बदलता है.

function getMessage() {
  var message = chrome.i18n.getMessage("click_here", ["string1", "string2"]);
  document.getElementById("languageSpan").innerHTML = message;
}

यहां एक स्ट्रिंग देने और उसका इस्तेमाल करने का तरीका बताया गया है:

  // In JavaScript code
  status.innerText = chrome.i18n.getMessage("error", errorDetails);
"error": {
  "message": "Error: $details$",
  "description": "Generic error template. Expects error parameter to be passed in.",
  "placeholders": {
    "details": {
      "content": "$1",
      "example": "Failed to fetch RSS feed."
    }
  }
}

प्लेसहोल्डर के बारे में ज़्यादा जानकारी के लिए, स्थानीय भाषा के हिसाब से मैसेज पेज देखें. getMessage() को कॉल करने के बारे में ज़्यादा जानने के लिए, एपीआई का रेफ़रंस देखें.

उदाहरण: getAcceptLanguages

यहां दिया गया कोड, ब्राउज़र से accept-languages को स्वीकार करता है और उन्हें स्ट्रिंग के तौर पर दिखाता है. इसके लिए, हर accept-language को ',' से अलग किया जाता है.

function getAcceptLanguages() {
  chrome.i18n.getAcceptLanguages(function(languageList) {
    var languages = languageList.join(",");
    document.getElementById("languageSpan").innerHTML = languages;
  })
}

getAcceptLanguages() को कॉल करने के बारे में ज़्यादा जानकारी के लिए, एपीआई का रेफ़रंस देखें.

उदाहरण: detectLanguage

यहां दिया गया कोड, दी गई स्ट्रिंग में से ज़्यादा से ज़्यादा तीन भाषाओं का पता लगाता है. साथ ही, नतीजे को नई लाइनों से अलग की गई स्ट्रिंग के तौर पर दिखाता है.

function detectLanguage(inputText) {
  chrome.i18n.detectLanguage(inputText, function(result) {
    var outputLang = "Detected Language: ";
    var outputPercent = "Language Percentage: ";
    for(i = 0; i < result.languages.length; i++) {
      outputLang += result.languages[i].language + " ";
      outputPercent +=result.languages[i].percentage + " ";
    }
    document.getElementById("languageSpan").innerHTML = outputLang + "\n" + outputPercent + "\nReliable: " + result.isReliable;
  });
}

detectLanguage(inputText) को कॉल करने के बारे में ज़्यादा जानकारी के लिए, एपीआई का रेफ़रंस देखें.

टाइप

LanguageCode

Chrome 47+

आईएसओ भाषा कोड, जैसे कि en या fr. इस तरीके के साथ काम करने वाली भाषाओं की पूरी सूची के लिए, kLanguageInfoTable देखें. अगर किसी भाषा की पहचान नहीं हो पाती है, तो und वैल्यू दिखेगी. इसका मतलब है कि CLD को टेक्स्ट के [percentage] हिस्से की जानकारी नहीं है

टाइप

स्ट्रिंग

तरीके

detectLanguage()

Promise Chrome 47 या इसके बाद के वर्शन
chrome.i18n.detectLanguage(
  text: string,
  callback?: function,
)
: Promise<object>

यह कुकी, CLD का इस्तेमाल करके दिए गए टेक्स्ट की भाषा का पता लगाती है.

पैरामीटर

  • टेक्स्ट

    स्ट्रिंग

    अनुवाद के लिए उपयोगकर्ता के इनपुट की स्ट्रिंग.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (result: object) => void

    • नतीजा

      ऑब्जेक्ट

      LanguageDetectionResult ऑब्जेक्ट, जिसमें पहचानी गई भाषा की विश्वसनीयता और DetectedLanguage का कलेक्शन होता है

      • isReliable

        बूलियन

        CLD की भाषा पहचानने की सुविधा की विश्वसनीयता

      • भाषाएं

        object[]

        detectedLanguage का कलेक्शन

        • भाषा

          स्ट्रिंग

        • प्रतिशत

          संख्या

          पहचानी गई भाषा का प्रतिशत

रिटर्न

  • Promise<object>

    Chrome 99 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

getAcceptLanguages()

प्रॉमिस
chrome.i18n.getAcceptLanguages(
  callback?: function,
)
: Promise<LanguageCode[]>

यह कुकी, ब्राउज़र की accept-languages सेटिंग को ऐक्सेस करती है. यह ब्राउज़र के इस्तेमाल किए गए स्थान-भाषा से अलग है. स्थान-भाषा पाने के लिए, i18n.getUILanguage का इस्तेमाल करें.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (languages: string[]) => void

    • भाषाएं

      string[]

      LanguageCode की कैटगरी

रिटर्न

  • Promise<LanguageCode[]>

    Chrome 99 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.

getMessage()

chrome.i18n.getMessage(
  messageName: string,
  substitutions?: any,
  options?: object,
)
: string

इस फ़ंक्शन का इस्तेमाल करके, किसी मैसेज के लिए स्थानीय भाषा में स्ट्रिंग मिलती है. अगर मैसेज मौजूद नहीं है, तो यह तरीका एक खाली स्ट्रिंग ('') दिखाता है. अगर getMessage() कॉल का फ़ॉर्मैट गलत है — उदाहरण के लिए, messageName स्ट्रिंग नहीं है या substitutions ऐरे में नौ से ज़्यादा एलिमेंट हैं — तो यह तरीका undefined दिखाता है.

पैरामीटर

  • messageName

    स्ट्रिंग

    मैसेज का नाम, जैसा कि messages.json फ़ाइल में बताया गया है.

  • खिलाड़ियों के सब्स्टिट्यूशन

    कोई भी ज़रूरी नहीं है

    अगर मैसेज में ज़रूरत हो, तो ज़्यादा से ज़्यादा नौ सब्स्टिट्यूशन स्ट्रिंग.

  • विकल्प

    object ज़रूरी नहीं है

    Chrome 79 या इसके बाद का वर्शन
    • escapeLt

      बूलियन ज़रूरी नहीं है

      &lt; में अनुवाद करते समय, < को एस्केप करें. यह सिर्फ़ मैसेज पर लागू होता है, प्लेसहोल्डर पर नहीं. अगर अनुवाद का इस्तेमाल एचटीएमएल कॉन्टेक्स्ट में किया जाता है, तो डेवलपर इस विकल्प का इस्तेमाल कर सकते हैं. Closure Compiler के साथ इस्तेमाल किए गए Closure टेंप्लेट, इसे अपने-आप जनरेट करते हैं.

रिटर्न

  • स्ट्रिंग

    मौजूदा स्थान-भाषा के हिसाब से मैसेज.

getUILanguage()

chrome.i18n.getUILanguage(): string

यह कुकी, ब्राउज़र के यूज़र इंटरफ़ेस (यूआई) की भाषा की जानकारी देती है. यह i18n.getAcceptLanguages से अलग है. यह फ़ंक्शन, उपयोगकर्ता की पसंदीदा भाषाओं को दिखाता है.

रिटर्न

  • स्ट्रिंग

    ब्राउज़र यूज़र इंटरफ़ेस (यूआई) की भाषा का कोड, जैसे कि en-US या fr-FR.