第一次寫 Chrome 擴充功能就上手:多語言
繼上次新增空白頁籤的功能,這次要介紹如何支援多語言。
首先,在專案目錄下建立多語言資料的目錄: _locales,
在此目錄下,建立所需語言的名稱目錄,
例:正體中文:zh_TW
(名稱對應表可參考此)
專案目錄結構如下:
(以上圖片來自 Chrome Extension i18n 開發文件)
放置多語言翻譯文字的檔案名稱為:messages.json
檔案內容為 json 格式。
將擴充功能說明改為多語言為例,
新增 _locales/zh_TW/messages.json,內容如下:
新增另一檔案 _locales/en/messages.json ,內容如下:
所以內容調整如下:
__MSG_[NAME]__
[NAME] 是對應多語言項目的名稱。
下圖是顯示的效果:
瀏覽器語系是英文時效果:
瀏覽器語系是正體中文時效果:
如果是要由 js 取得多語言,則是呼叫 api:chrome.i18n.getMessage([NAME])
--> chrome.i18n.getMessage(“appDesc”)
很簡單吧!
這次分享就到此,下次見~~ (揮手下降)
首先,在專案目錄下建立多語言資料的目錄: _locales,
在此目錄下,建立所需語言的名稱目錄,
例:正體中文:zh_TW
(名稱對應表可參考此)
專案目錄結構如下:
(以上圖片來自 Chrome Extension i18n 開發文件)
放置多語言翻譯文字的檔案名稱為:messages.json檔案內容為 json 格式。
將擴充功能說明改為多語言為例,
新增 _locales/zh_TW/messages.json,內容如下:
{
"appDesc" : { // 項目名稱
"message" : "客製化的新頁籤" // 欲顯示的內容
}
}
預設語系為英文,新增另一檔案 _locales/en/messages.json ,內容如下:
{
"appDesc" : {
"message" : "customized new tab"
}
}
擴充功能的說明是放在 manifest.json 中,所以內容調整如下:
{
~略~
"description": "__MSG_appDesc__", // 對應 messages.json 中定義名稱
"default_locale": "en", // 提供多語言,一定要設定預設語言
~略~
}
為了區分項目是多語言還是單純字串,所以多語言的項目格式為:__MSG_[NAME]__
[NAME] 是對應多語言項目的名稱。
下圖是顯示的效果:
瀏覽器語系是英文時效果:
瀏覽器語系是正體中文時效果:
如果是要由 js 取得多語言,則是呼叫 api:chrome.i18n.getMessage([NAME])
--> chrome.i18n.getMessage(“appDesc”)
很簡單吧!
這次分享就到此,下次見~~ (揮手下降)


留言