本地化 (l10n):为我的 mozilla 插件设置默认语言

Localization (l10n) : Set Default Language for my mozilla addon

我正在开发一个 mozilla 插件并实现 l10n。我的问题是,

经典Bootstrap

在经典 bootstrap 插件中,您不设置默认值。 Firefox 会自动找出用户浏览器与您的插件所具有的任何语言环境之间最接近的语言环境。

JPM

你在做 JPM/SDK 插件吗?如果您正在本地化首选项,则必须首先在 package.json:

中设置一个字符串
"preferences": [
    {
        "name": "imagePath",
        "type": "file",
        "value": "",
        "title": "Image File Path",
        "description": "A path to an image on your computer that the dock icon should be set to"
    },
    {
        "name": "restoreDefault",
        "type": "control",
        "title": "default locale:Restore Default",
        "description": "this is from package.json:: If you have changed your icon, and want to restore the default Firefox icon, click this button",
        "label": "this is from package.json:: Restore"
    }
]

所以默认值是您在那里设置的任何值。如果 firefox 找不到匹配的语言环境,它将使用来自 package.json.

的字符串

因此,例如要本地化 restoreDefault 字符串,您将创建一个 en-US.properties 文件并将其放入名为 locale 的文件夹中,如下所示:

restoreDefault_title=blah Restore Default blah
restoreDefault_description=blahIf you have changed your icon, and want to restore the default Firefox icon, click this buttonblah
restoreDefault_label=blahRestoreblah

现在通过转到 about:config 将您的浏览器区域设置为英语,然后将首选项 general.useragent.locale 更改为 en-US 以外的内容(将其更改为 es)对于此示例,然后加载您的首选项页面(更改 general.useragent.locale 后可能需要重新启动浏览器)。现在因为你的插件没有 es.properties 你会看到来自 package.json 的字符串。将您的 general.useragent.locale 设置回 en-us 然后重新启动浏览器,然后返回您的插件首选项页面,您将看到属性文件中的字符串。