I18n
The article introduces how to use i18n in your extension project.
Usage
Defining messages
Create _locales directory in the public directory. The directory structure is as follows:
public/
├── _locales/
│ ├── en/
│ │ └── messages.json
│ └── zh/
│ └── messages.jsonThe messages.json file stores the messages of the language. For example:
json
{
"extensionName": {
"message": "Name",
"description": "Name of the extension."
},
"extensionDescription": {
"message": "Description",
"description": "Description of the extension."
}
}Defining default_locale
Define the default_locale in the manifest.
ts
import { defineConfig } from 'web-extend';
export default defineConfig({
manifest: {
default_locale: 'en',
},
});Using messages
In Manifest and CSS files, you can use the messages by referring to a string named messageName like this:
__MSG_messageName__For example:
ts
import { defineConfig } from 'web-extend';
export default defineConfig({
manifest: {
default_locale: 'en',
name: '__MSG_extensionName__',
description: '__MSG_extensionDescription__',
},
});In JavaScript files, you can use the messages by referring to a string named messageName like this:
js
chrome.i18n.getMessage('messageName');