Локализация (i18n)
Функции для локализации вашего расширения. Вы можете использовать эти API для получения локализованных строк из файлов локализации, упакованных с вашим расширением, определения текущего языка браузера и получения значения его заголовка Accept-Language.
См. страницу Локализация для руководства по использованию этого API.
Типы
i18n.LanguageCode-
Тег языка, например
"en-US"или "fr".
Функции
i18n.getAcceptLanguages()-
Получает значения accept-languages браузера. Это отличается от языка, используемого браузером. Для получения языка используйте
i18n.getUILanguage. i18n.getMessage()-
Получает локализованную строку для указанного сообщения.
i18n.getUILanguage()-
Получает язык пользовательского интерфейса браузера. Это отличается от
i18n.getAcceptLanguages, который возвращает предпочтительные языки пользователя. i18n.detectLanguage()-
Определяет язык предоставленного текста с помощью Compact Language Detector.
Совместимость с браузерами
| Десктоп | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari на iOS | Samsung Internet | |
LanguageCode |
47 | 14 | 45 | ? | 34 | Нет | ? | ? | 48 | ? | Нет | ? |
detectLanguage |
47 | 79 | 47 | ? | 34 | Нет | ? | ? | 10648–106Метод существовал, но всегда выбрасывал ошибку. |
? | Нет | ? |
getAcceptLanguages |
47 | 14 | 47 | ? | 34 | 14 | ? | ? | 48 | ? | 15 | ? |
getMessage |
17 | 14["Выбрасывает исключение вместо возвращения пустой строки, если сообщение не существует.", "Ожидает, что подстановки будут строками, в то время как другие браузеры допускают любые значения, которые затем преобразуются в строку."] |
45Firefox 47 и более ранние версии возвращают "??" вместо "" если сообщение не найдено в _locales, ошибка 1258199 изменила это поведение, чтобы соответствовать Chrome, реализовано в Firefox 48. |
? | 15 | 14 | ? | ? | 48 | ? | 15 | ? |
getUILanguage |
35 | 14 | 47Firefox 55 и более ранние версии возвращают тег языка, разделенный символом подчеркивания вместо дефиса, см. ошибка 1374552. |
? | Да | 14 | ? | ? | 48 | ? | 15 | ? |
Примеры расширений
Примечание: Этот API основан на API chrome.i18n Chromium. Данная документация взята из i18n.json кода Chromium.
См. также
- Локализация: руководство по использованию системы локализации WebExtension.
-
Список сообщений, специфичных для локали: расширения предоставляют локализованные строки в файлах, называемых
messages.json. Эта страница описывает форматmessages.json.
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/i18n