Chrome 拡張機能で多言語に対応する
chrome.i18n | API | Chrome for Developers
やり方
文字列リソースを作成する。
| .
├── README.md
├── _locales
│ ├── en
│ │ └── messages.json
│ └── ja
│ └── messages.json
└── src
├── (以下略)
|
| _locales/en/messages.json |
|---|
1
2
3
4
5
6
7
8
9
10
11
12
13
14 | {
"applicationName": {
"message": "Extension name"
},
"description": {
"message": "Extension description"
},
"english": {
"message": "English"
},
"japanese": {
"message": "Japanese"
}
}
|
| _locales/ja/messages.json |
|---|
1
2
3
4
5
6
7
8
9
10
11
12
13
14 | {
"applicationName": {
"message": "拡張機能の名前"
},
"description": {
"message": "拡張機能の説明"
},
"english": {
"message": "英語"
},
"japanese": {
"message": "日本語"
}
}
|
manifest.jsonに以下をマージする。
| manifest.json |
|---|
| {
"default_locale": "ja"
}
|
JavaScript からchrome.i18n.getMessage("english")などで文字列リソースを取得することができる。
manifest.jsonを多言語化する
manifest.jsonでxxxxxxxxの文字列を参照したい場合、__MSG_xxxxxxxx__のように記載する。
| manifest.json |
|---|
| {
"name": "__MSG_applicationName__",
"description": "__MSG_description__"
}
|