Bug 1491677 Migrate localization of a subset of extensions.dtd to Fluent r=flod,Gijs,zbraniecki

Differential Revision: https://phabricator.services.mozilla.com/D6203

--HG--
extra : moz-landing-system : lando
This commit is contained in:
Collin Wing 2018-10-22 18:21:56 +00:00
parent d58b21f026
commit 6e51b257b4
4 changed files with 713 additions and 209 deletions

View File

@ -0,0 +1,439 @@
from __future__ import absolute_import
import fluent.syntax.ast as FTL
from fluent.migrate.helpers import transforms_from
from fluent.migrate.helpers import TERM_REFERENCE
from fluent.migrate.helpers import MESSAGE_REFERENCE
from fluent.migrate import REPLACE
from fluent.migrate import COPY
from fluent.migrate import CONCAT
def migrate(ctx):
"""Bug 1491677 - Migrate subsection of strings of extensions.dtd, part {index}"""
ctx.add_transforms(
"toolkit/toolkit/about/aboutAddons.ftl",
"toolkit/toolkit/about/aboutAddons.ftl",
transforms_from(
"""
addons-window =
.title = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "addons.windowTitle")}
search-header =
.placeholder = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "search.placeholder3")}
.searchbuttonlabel = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "search.buttonlabel")}
search-header-shortcut =
.key = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "search.commandkey")}
loading-label =
.value = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "loading.label")}
list-empty-installed =
.value = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "listEmpty.installed.label")}
list-empty-available-updates =
.value ={ COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "listEmpty.availableUpdates.label")}
list-empty-recent-updates =
.value = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "listEmpty.recentUpdates.label")}
list-empty-find-updates =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "listEmpty.findUpdates.label")}
list-empty-button =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "listEmpty.button.label")}
install-addon-from-file =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "installAddonFromFile.label")}
.accesskey = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "installAddonFromFile.accesskey")}
help-button = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "helpButton.label")}
tools-menu =
.tooltiptext = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "toolsMenu.tooltip")}
show-unsigned-extensions-button =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "showUnsignedExtensions.button.label")}
show-all-extensions-button =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "showAllExtensions.button.label")}
debug-addons =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "debugAddons.label")}
.accesskey = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "debugAddons.accesskey")}
cmd-show-details =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "cmd.showDetails.label")}
.accesskey = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "cmd.showDetails.accesskey")}
cmd-find-updates =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "cmd.findUpdates.label")}
.accesskey = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "cmd.findUpdates.accesskey")}
cmd-enable-theme =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "cmd.enableTheme.label")}
.accesskey = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "cmd.enableTheme.accesskey")}
cmd-disable-theme =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "cmd.disableTheme.label")}
.accesskey = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "cmd.disableTheme.accesskey")}
cmd-install-addon =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "cmd.installAddon.label")}
.accesskey = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "cmd.installAddon.accesskey")}
cmd-contribute =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "cmd.contribute.label")}
.accesskey = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "cmd.contribute.accesskey")}
.tooltiptext = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "cmd.contribute.tooltip")}
discover-title = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "discover.title")}
discover-footer = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "discover.footer", trim:"True")}
detail-version =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "detail.version.label")}
detail-last-updated =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "detail.lastupdated.label")}
detail-contributions-description = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "detail.contributions.description")}
detail-update-type =
.value = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "detail.updateType")}
detail-update-default =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "detail.updateDefault.label")}
.tooltiptext = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "detail.updateDefault.tooltip")}
detail-update-automatic =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "detail.updateAutomatic.label")}
.tooltiptext = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "detail.updateAutomatic.tooltip")}
detail-update-manual =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "detail.updateManual.label")}
.tooltiptext = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "detail.updateManual.tooltip")}
detail-home =
.label ={ COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "detail.home")}
detail-repository =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "detail.repository")}
detail-check-for-updates =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "detail.checkForUpdates.label")}
.accesskey = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "detail.checkForUpdates.accesskey")}
.tooltiptext = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "detail.checkForUpdates.tooltip")}
detail-rating =
.value = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "rating2.label")}
addon-restart-now =
.label = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "addon.restartNow.label")}
disabled-unsigned-heading =
.value = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "disabledUnsigned.heading")}
disabled-unsigned-learn-more = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "disabledUnsigned.learnMore")}
legacy-warning-show-legacy = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "legacyWarning.showLegacy")}
legacy-extensions =
.value = { COPY("toolkit/chrome/mozapps/extensions/extensions.dtd", "legacyExtensions.title")}
""")
)
ctx.add_transforms(
"toolkit/toolkit/about/aboutAddons.ftl",
"toolkit/toolkit/about/aboutAddons.ftl",
[
FTL.Message(
id=FTL.Identifier("preferences"),
value=FTL.Pattern(
elements=[
FTL.Placeable(
expression=FTL.SelectExpression(
selector=FTL.CallExpression(
callee=FTL.Function("PLATFORM"),
),
variants=[
FTL.Variant(
key=FTL.VariantName("windows"),
default=False,
value=REPLACE(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"preferencesWin.label",
{
"&brandShortName;" : TERM_REFERENCE("-brand-short-name")
}
)
),
FTL.Variant(
key=FTL.VariantName("other"),
default=True,
value=REPLACE(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"preferencesUnix.label",
{
"&brandShortName;" : TERM_REFERENCE("-brand-short-name")
}
)
)
]
)
)
]
)
),
FTL.Message(
id=FTL.Identifier("cmd-preferences"),
attributes=[
FTL.Attribute(
id=FTL.Identifier("label"),
value=FTL.Pattern(
elements=[
FTL.Placeable(
expression=FTL.SelectExpression(
selector=FTL.CallExpression(
callee=FTL.Function("PLATFORM"),
),
variants=[
FTL.Variant(
key=FTL.VariantName("windows"),
default=False,
value=COPY(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"cmd.preferencesWin.label"
)
),
FTL.Variant(
key=FTL.VariantName("other"),
default=True,
value=COPY(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"cmd.preferencesUnix.label"
)
)
]
)
)
]
)
),
FTL.Attribute(
id=FTL.Identifier("accesskey"),
value=FTL.Pattern(
elements=[
FTL.Placeable(
expression=FTL.SelectExpression(
selector=FTL.CallExpression(
callee=FTL.Function("PLATFORM"),
),
variants=[
FTL.Variant(
key=FTL.VariantName("windows"),
default=False,
value=COPY(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"cmd.preferencesWin.accesskey"
)
),
FTL.Variant(
key=FTL.VariantName("other"),
default=True,
value=COPY(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"cmd.preferencesUnix.accesskey"
)
)
]
)
)
]
)
)
]
),
FTL.Message(
id=FTL.Identifier("discover-description"),
value=REPLACE(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"discover.description2",
{
"&brandShortName;": TERM_REFERENCE("-brand-short-name")
},
trim=True
)
),
FTL.Message(
id=FTL.Identifier("detail-home-value"),
attributes=[
FTL.Attribute(
id=FTL.Identifier("value"),
value=FTL.Pattern(
elements=[
FTL.Placeable(
expression=MESSAGE_REFERENCE("detail-home.label")
)
]
)
)
]
),
FTL.Message(
id=FTL.Identifier("detail-repository-value"),
attributes=[
FTL.Attribute(
id=FTL.Identifier("value"),
value=FTL.Pattern(
elements=[
FTL.Placeable(
expression=MESSAGE_REFERENCE("detail-repository.label")
)
]
)
)
]
),
FTL.Message(
id=FTL.Identifier("detail-show-preferences"),
attributes=[
FTL.Attribute(
id=FTL.Identifier("label"),
value=FTL.Pattern(
elements=[
FTL.Placeable(
expression=FTL.SelectExpression(
selector=FTL.CallExpression(
callee=FTL.Function("PLATFORM"),
),
variants=[
FTL.Variant(
key=FTL.VariantName("windows"),
default=False,
value=COPY(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"detail.showPreferencesWin.label"
)
),
FTL.Variant(
key=FTL.VariantName("other"),
default=True,
value=COPY(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"detail.showPreferencesUnix.label"
)
)
]
)
)
]
)
),
FTL.Attribute(
id=FTL.Identifier("accesskey"),
value=FTL.Pattern(
elements=[
FTL.Placeable(
expression=FTL.SelectExpression(
selector=FTL.CallExpression(
callee=FTL.Function("PLATFORM"),
),
variants=[
FTL.Variant(
key=FTL.VariantName("windows"),
default=False,
value=COPY(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"detail.showPreferencesWin.accesskey"
)
),
FTL.Variant(
key=FTL.VariantName("other"),
default=True,
value=COPY(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"detail.showPreferencesUnix.accesskey"
)
)
]
)
)
]
)
),
FTL.Attribute(
id=FTL.Identifier("tooltiptext"),
value=FTL.Pattern(
elements=[
FTL.Placeable(
expression=FTL.SelectExpression(
selector=FTL.CallExpression(
callee=FTL.Function("PLATFORM"),
),
variants=[
FTL.Variant(
key=FTL.VariantName("windows"),
default=False,
value=COPY(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"detail.showPreferencesWin.tooltip"
)
),
FTL.Variant(
key=FTL.VariantName("other"),
default=True,
value=COPY(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"detail.showPreferencesUnix.tooltip"
)
)
]
)
)
]
)
)
]
),
FTL.Message(
id=FTL.Identifier("disabled-unsigned-description"),
value=CONCAT(
REPLACE(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"disabledUnsigned.description.start",
{
"&brandShortName;": TERM_REFERENCE("-brand-short-name")
}
),
FTL.TextElement('<label data-l10n-name="find-addons">'),
COPY(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"disabledUnsigned.description.findAddonsLink"
),
FTL.TextElement("</label>"),
COPY(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"disabledUnsigned.description.end"
)
)
),
FTL.Message(
id=FTL.Identifier("disabled-unsigned-devinfo"),
value=CONCAT(
COPY(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"disabledUnsigned.devInfo.start"
),
FTL.TextElement('<label data-l10n-name="learn-more">'),
COPY(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"disabledUnsigned.devInfo.linkToManual"
),
FTL.TextElement("</label>"),
COPY(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"disabledUnsigned.devInfo.end"
)
)
),
FTL.Message(
id=FTL.Identifier("plugin-deprecation-description"),
value=CONCAT(
REPLACE(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"pluginDeprecation.description",
{
"&brandShortName;": TERM_REFERENCE("-brand-short-name")
}
),
FTL.TextElement(' <label data-l10n-name="learn-more">'),
COPY(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"pluginDeprecation.learnMore"
),
FTL.TextElement("</label>")
)
),
FTL.Message(
id=FTL.Identifier("legacy-extensions-description"),
value=CONCAT(
REPLACE(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"legacyExtensions.description",
{
"&brandShortName;": TERM_REFERENCE("-brand-short-name")
}
),
FTL.TextElement('<label data-l10n-name="legacy-learn-more">'),
COPY(
"toolkit/chrome/mozapps/extensions/extensions.dtd",
"legacyExtensions.learnMore"
),
FTL.TextElement("</label>")
)
)
]
)

View File

@ -1,29 +1,6 @@
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<!ENTITY addons.windowTitle "Add-ons Manager">
<!ENTITY search.placeholder3 "Search addons.mozilla.org">
<!ENTITY search.buttonlabel "Search">
<!-- LOCALIZATION NOTE (search.commandkey):
The search command key should match findOnCmd.commandkey from browser.dtd -->
<!ENTITY search.commandkey "f">
<!ENTITY loading.label "Loading…">
<!ENTITY listEmpty.installed.label "You dont have any add-ons of this type installed">
<!ENTITY listEmpty.availableUpdates.label "No updates found">
<!ENTITY listEmpty.recentUpdates.label "You havent recently updated any add-ons">
<!ENTITY listEmpty.findUpdates.label "Check For Updates">
<!ENTITY listEmpty.button.label "Learn more about add-ons">
<!ENTITY installAddonFromFile.label "Install Add-on From File…">
<!ENTITY installAddonFromFile.accesskey "I">
<!ENTITY toolsMenu.tooltip "Tools for all add-ons">
<!ENTITY showUnsignedExtensions.button.label "Some extensions could not be verified">
<!ENTITY showAllExtensions.button.label "Show all extensions">
<!ENTITY debugAddons.label "Debug Add-ons">
<!ENTITY debugAddons.accesskey "B">
<!-- global warnings -->
<!ENTITY warning.safemode.label "All add-ons have been disabled by safe mode.">
@ -39,10 +16,6 @@
<!ENTITY view.recentUpdates.label "Recent Updates">
<!ENTITY view.availableUpdates.label "Available Updates">
<!ENTITY helpButton.label "Add-ons Support">
<!ENTITY preferencesWin.label "&brandShortName; Options">
<!ENTITY preferencesUnix.label "&brandShortName; Preferences">
<!-- addon updates -->
<!ENTITY updates.checkForUpdates.label "Check for Updates">
<!ENTITY updates.checkForUpdates.accesskey "C">
@ -73,23 +46,23 @@
<!ENTITY updates.updateSelected.tooltip "Install available updates in this list">
<!-- addon actions -->
<!ENTITY cmd.showDetails.label "Show More Information">
<!ENTITY cmd.showDetails.accesskey "S">
<!ENTITY cmd.findUpdates.label "Find Updates">
<!ENTITY cmd.findUpdates.accesskey "F">
<!ENTITY cmd.preferencesWin.label "Options">
<!ENTITY cmd.preferencesWin.accesskey "O">
<!ENTITY cmd.preferencesUnix.label "Preferences">
<!ENTITY cmd.preferencesUnix.accesskey "P">
<!ENTITY cmd.enableAddon.label "Enable">
<!ENTITY cmd.enableAddon.accesskey "E">
<!ENTITY cmd.disableAddon.label "Disable">
<!ENTITY cmd.disableAddon.accesskey "D">
<!ENTITY cmd.enableTheme.label "Wear Theme">
<!ENTITY cmd.enableTheme.accesskey "W">
<!ENTITY cmd.disableTheme.label "Stop Wearing Theme">
<!ENTITY cmd.disableTheme.accesskey "W">
<!ENTITY cmd.askToActivate.label "Ask to Activate">
<!ENTITY cmd.askToActivate.tooltip "Ask to use this add-on each time">
<!ENTITY cmd.alwaysActivate.label "Always Activate">
@ -97,17 +70,17 @@
<!ENTITY cmd.neverActivate.label "Never Activate">
<!ENTITY cmd.neverActivate.tooltip "Never use this add-on">
<!ENTITY cmd.stateMenu.tooltip "Change when this add-on runs">
<!ENTITY cmd.installAddon.label "Install">
<!ENTITY cmd.installAddon.accesskey "I">
<!ENTITY cmd.uninstallAddon.label "Remove">
<!ENTITY cmd.uninstallAddon.accesskey "R">
<!ENTITY cmd.showPreferencesWin.label "Options">
<!ENTITY cmd.showPreferencesWin.tooltip "Change this add-ons options">
<!ENTITY cmd.showPreferencesUnix.label "Preferences">
<!ENTITY cmd.showPreferencesUnix.tooltip "Change this add-ons preferences">
<!ENTITY cmd.contribute.label "Contribute">
<!ENTITY cmd.contribute.accesskey "C">
<!ENTITY cmd.contribute.tooltip "Contribute to the development of this add-on">
<!ENTITY cmd.showReleaseNotes.label "Show Release Notes">
<!ENTITY cmd.showReleaseNotes.tooltip "Show the release notes for this update">
@ -115,54 +88,12 @@
<!ENTITY cmd.hideReleaseNotes.tooltip "Hide the release notes for this update">
<!ENTITY cmd.findReplacement.label "Find a Replacement">
<!-- discovery view -->
<!-- LOCALIZATION NOTE (discover.title,discover.description,discover.footer):
Displayed in the center of the Get Add-ons view, see bug 601143 for mockups. -->
<!ENTITY discover.title "What are Add-ons?">
<!ENTITY discover.description2 "Add-ons are applications that let you personalize &brandShortName; with
extra functionality or style. Try a time-saving sidebar, a weather notifier, or a themed look to make &brandShortName;
your own.">
<!ENTITY discover.footer "When youre connected to the internet, this pane will feature
some of the best and most popular add-ons for you to try out.">
<!-- detail view -->
<!ENTITY detail.version.label "Version">
<!ENTITY detail.lastupdated.label "Last Updated">
<!ENTITY detail.creator.label "Developer">
<!ENTITY detail.homepage.label "Homepage">
<!ENTITY detail.contributions.description "The developer of this add-on asks that you help support its continued development by making a small contribution.">
<!ENTITY detail.updateType "Automatic Updates">
<!ENTITY detail.updateDefault.label "Default">
<!ENTITY detail.updateDefault.tooltip "Automatically install updates only if thats the default">
<!ENTITY detail.updateAutomatic.label "On">
<!ENTITY detail.updateAutomatic.tooltip "Automatically install updates">
<!ENTITY detail.updateManual.label "Off">
<!ENTITY detail.updateManual.tooltip "Dont automatically install updates">
<!ENTITY detail.home "Homepage">
<!ENTITY detail.repository "Add-on Profile">
<!ENTITY detail.size "Size">
<!ENTITY detail.checkForUpdates.label "Check for Updates">
<!ENTITY detail.checkForUpdates.accesskey "F">
<!ENTITY detail.checkForUpdates.tooltip "Check for updates for this add-on">
<!ENTITY detail.showPreferencesWin.label "Options">
<!ENTITY detail.showPreferencesWin.accesskey "O">
<!ENTITY detail.showPreferencesWin.tooltip "Change this add-ons options">
<!ENTITY detail.showPreferencesUnix.label "Preferences">
<!ENTITY detail.showPreferencesUnix.accesskey "P">
<!ENTITY detail.showPreferencesUnix.tooltip "Change this add-ons preferences">
<!-- ratings -->
<!ENTITY rating2.label "Rating">
<!-- download/install progress -->
<!ENTITY progress.pause.tooltip "Pause">
<!ENTITY progress.cancel.tooltip "Cancel">
<!ENTITY addon.homepage "Homepage">
<!ENTITY addon.details.label "More">
<!ENTITY addon.details.tooltip "Show more details about this add-on">
<!ENTITY addon.unknownDate "Unknown">
@ -183,7 +114,7 @@
<!ENTITY addon.undoAction.tooltip "Undo this action">
<!ENTITY addon.undoRemove.label "Undo">
<!ENTITY addon.undoRemove.tooltip "Keep this add-on installed">
<!ENTITY addon.restartNow.label "Restart now">
<!ENTITY addon.install.label "Install">
<!ENTITY addon.install.tooltip "Install this add-on">
<!ENTITY addon.updateNow.label "Update Now">
@ -205,26 +136,3 @@
<!ENTITY settings.path.button.label "Browse…">
<!ENTITY setting.learnmore "Learn More…">
<!ENTITY disabledUnsigned.heading "Some add-ons have been disabled">
<!-- LOCALIZATION NOTE (disabledUnsigned.description.start, disabledUnsigned.description.findAddonsLink, disabledUnsigned.description.end):
These entities form a sentence, with
disabledUnsigned.description.findAddonsLink being a link to an external site. -->
<!ENTITY disabledUnsigned.description.start "The following add-ons have not been verified for use in &brandShortName;. You can ">
<!ENTITY disabledUnsigned.description.findAddonsLink "find replacements">
<!ENTITY disabledUnsigned.description.end " or ask the developer to get them verified.">
<!ENTITY disabledUnsigned.learnMore "Learn more about our efforts to help keep you safe online.">
<!-- LOCALIZATION NOTE (disabledUnsigned.devInfo.start, disabledUnsigned.devInfo.linkToManual, disabledUnsigned.devInfo.end):
These entities form a sentence, with disabledUnsigned.devInfo.linkToManual
being a link to an external site. -->
<!ENTITY disabledUnsigned.devInfo.start "Developers interested in getting their add-ons verified can continue by reading our ">
<!ENTITY disabledUnsigned.devInfo.linkToManual "manual">
<!ENTITY disabledUnsigned.devInfo.end ".">
<!ENTITY pluginDeprecation.description "Missing something? Some plugins are no longer supported by &brandShortName;.">
<!ENTITY pluginDeprecation.learnMore "Learn More.">
<!ENTITY legacyWarning.showLegacy "Show legacy extensions">
<!ENTITY legacyExtensions.title "Legacy Extensions">
<!ENTITY legacyExtensions.description "These extensions do not meet current &brandShortName; standards so they have been deactivated.">
<!ENTITY legacyExtensions.learnMore "Learn about the changes to add-ons">

View File

@ -0,0 +1,193 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
addons-window =
.title = Add-ons Manager
search-header =
.placeholder = Search addons.mozilla.org
.searchbuttonlabel = Search
search-header-shortcut =
.key = f
loading-label =
.value = Loading…
list-empty-installed =
.value = You dont have any add-ons of this type installed
list-empty-available-updates =
.value = No updates found
list-empty-recent-updates =
.value = You havent recently updated any add-ons
list-empty-find-updates =
.label = Check For Updates
list-empty-button =
.label = Learn more about add-ons
install-addon-from-file =
.label = Install Add-on From File…
.accesskey = I
help-button = Add-ons Support
preferences =
{ PLATFORM() ->
[windows] { -brand-short-name } Options
*[other] { -brand-short-name } Preferences
}
tools-menu =
.tooltiptext = Tools for all add-ons
show-unsigned-extensions-button =
.label = Some extensions could not be verified
show-all-extensions-button =
.label = Show all extensions
debug-addons =
.label = Debug Add-ons
.accesskey = b
cmd-show-details =
.label = Show More Information
.accesskey = S
cmd-find-updates =
.label = Find Updates
.accesskey = F
cmd-preferences =
.label =
{ PLATFORM() ->
[windows] Options
*[other] Preferences
}
.accesskey =
{ PLATFORM() ->
[windows] O
*[other] P
}
cmd-enable-theme =
.label = Wear Theme
.accesskey = W
cmd-disable-theme =
.label = Stop Wearing Theme
.accesskey = W
cmd-install-addon =
.label = Install
.accesskey = I
cmd-contribute =
.label = Contribute
.accesskey = C
.tooltiptext = Contribute to the development of this add-on
discover-title = What are Add-ons?
discover-description =
Add-ons are applications that let you personalize { -brand-short-name } with
extra functionality or style. Try a time-saving sidebar, a weather notifier, or a themed look to make { -brand-short-name }
your own.
discover-footer =
When youre connected to the internet, this pane will feature
some of the best and most popular add-ons for you to try out.
detail-version =
.label = Version
detail-last-updated =
.label = Last Updated
detail-contributions-description = The developer of this add-on asks that you help support its continued development by making a small contribution.
detail-update-type =
.value = Automatic Updates
detail-update-default =
.label = Default
.tooltiptext = Automatically install updates only if thats the default
detail-update-automatic =
.label = On
.tooltiptext = Automatically install updates
detail-update-manual =
.label = Off
.tooltiptext = Dont automatically install updates
detail-home =
.label = Homepage
detail-home-value =
.value = { detail-home.label }
detail-repository =
.label = Add-on Profile
detail-repository-value =
.value = { detail-repository.label }
detail-check-for-updates =
.label = Check for Updates
.accesskey = F
.tooltiptext = Check for updates for this add-on
detail-show-preferences =
.label =
{ PLATFORM() ->
[windows] Options
*[other] Preferences
}
.accesskey =
{ PLATFORM() ->
[windows] O
*[other] P
}
.tooltiptext =
{ PLATFORM() ->
[windows] Change this add-ons options
*[other] Change this add-ons preferences
}
detail-rating =
.value = Rating
addon-restart-now =
.label = Restart now
disabled-unsigned-heading =
.value = Some add-ons have been disabled
disabled-unsigned-description =
The following add-ons have not been verified for use in { -brand-short-name }. You can
<label data-l10n-name="find-addons">find replacements</label> or ask the developer to get them verified.
disabled-unsigned-learn-more = Learn more about our efforts to help keep you safe online.
disabled-unsigned-devinfo =
Developers interested in getting their add-ons verified can continue by reading our
<label data-l10n-name="learn-more">manual</label>.
plugin-deprecation-description =
Missing something? Some plugins are no longer supported by { -brand-short-name }. <label data-l10n-name="learn-more">Learn More.</label>
legacy-warning-show-legacy = Show legacy extensions
legacy-extensions =
.value = Legacy Extensions
legacy-extensions-description =
These extensions do not meet current { -brand-short-name } standards so they have been deactivated.<label data-l10n-name="legacy-learn-more">Learn about the changes to add-ons</label>

View File

@ -16,12 +16,16 @@
<page xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
id="addons-page" title="&addons.windowTitle;"
id="addons-page" data-l10n-id="addons-window"
role="application" windowtype="Addons:Manager"
disablefastfind="true">
<xhtml:link rel="shortcut icon"
href="chrome://mozapps/skin/extensions/extensionGeneric-16.svg"/>
<linkset>
<link rel="localization" href="branding/brand.ftl"/>
<link rel="localization" href="toolkit/about/aboutAddons.ftl"/>
</linkset>
<script type="application/javascript"
src="chrome://mozapps/content/extensions/extensions.js"/>
@ -32,8 +36,7 @@
<!-- menu for an addon item -->
<menupopup id="addonitem-popup">
<menuitem id="menuitem_showDetails" command="cmd_showItemDetails"
default="true" label="&cmd.showDetails.label;"
accesskey="&cmd.showDetails.accesskey;"/>
default="true" data-l10n-id="cmd-show-details"/>
<menuitem id="menuitem_enableItem" command="cmd_enableItem"
label="&cmd.enableAddon.label;"
accesskey="&cmd.enableAddon.accesskey;"/>
@ -41,29 +44,19 @@
label="&cmd.disableAddon.label;"
accesskey="&cmd.disableAddon.accesskey;"/>
<menuitem id="menuitem_enableTheme" command="cmd_enableItem"
label="&cmd.enableTheme.label;"
accesskey="&cmd.enableTheme.accesskey;"/>
data-l10n-id="cmd-enable-theme"/>
<menuitem id="menuitem_disableTheme" command="cmd_disableItem"
label="&cmd.disableTheme.label;"
accesskey="&cmd.disableTheme.accesskey;"/>
data-l10n-id="cmd-disable-theme"/>
<menuitem id="menuitem_installItem" command="cmd_installItem"
label="&cmd.installAddon.label;"
accesskey="&cmd.installAddon.accesskey;"/>
data-l10n-id="cmd-install-addon"/>
<menuitem id="menuitem_uninstallItem" command="cmd_uninstallItem"
label="&cmd.uninstallAddon.label;"
accesskey="&cmd.uninstallAddon.accesskey;"/>
<menuseparator id="addonitem-menuseparator" />
<menuitem id="menuitem_preferences" command="cmd_showItemPreferences"
#ifdef XP_WIN
label="&cmd.preferencesWin.label;"
accesskey="&cmd.preferencesWin.accesskey;"/>
#else
label="&cmd.preferencesUnix.label;"
accesskey="&cmd.preferencesUnix.accesskey;"/>
#endif
data-l10n-id="cmd-preferences"/>
<menuitem id="menuitem_findUpdates" command="cmd_findItemUpdates"
label="&cmd.findUpdates.label;"
accesskey="&cmd.findUpdates.accesskey;"/>
data-l10n-id="cmd-find-updates"/>
</menupopup>
<menulist popuponly="true" id="ContentSelectDropdown" hidden="true">
@ -127,8 +120,8 @@
</commandset>
<keyset>
<key id="focusSearch" key="&search.commandkey;" modifiers="accel"
command="cmd_focusSearch"/>
<key id="focusSearch" data-l10n-id="search-header-shortcut"
modifiers="accel" command="cmd_focusSearch"/>
</keyset>
<hbox flex="1">
<vbox id="category-box">
@ -158,13 +151,7 @@
<label id="preferencesButton" class="text-link">
<hbox align="center">
<image class="sidebar-footer-icon preferences-icon"/>
<label class="sidebar-footer-label" flex="1">
#ifdef XP_WIN
&preferencesWin.label;
#else
&preferencesUnix.label;
#endif
</label>
<label class="sidebar-footer-label" data-l10n-id="preferences" flex="1"/>
</hbox>
</label>
</hbox>
@ -173,7 +160,7 @@
<label id="helpButton" class="text-link">
<hbox align="center">
<image class="sidebar-footer-icon help-icon"/>
<label class="sidebar-footer-label" flex="1">&helpButton.label;</label>
<label class="sidebar-footer-label" data-l10n-id="help-button" flex="1"/>
</hbox>
</label>
</hbox>
@ -188,7 +175,7 @@
<spacer class="alert-spacer-before"/>
<hbox class="alert loading" align="center">
<image/>
<label value="&loading.label;"/>
<label data-l10n-id="loading-label"/>
</hbox>
<spacer class="alert-spacer-after"/>
</vbox>
@ -199,9 +186,9 @@
<vbox class="alert" align="center">
<image class="discover-logo"/>
<vbox flex="1" align="stretch">
<label class="discover-title">&discover.title;</label>
<description class="discover-description">&discover.description2;</description>
<description class="discover-footer">&discover.footer;</description>
<label class="discover-title" data-l10n-id="discover-title"></label>
<description class="discover-description" data-l10n-id="discover-description"></description>
<description class="discover-footer" data-l10n-id="discover-footer"></description>
</vbox>
</vbox>
<spacer class="discover-spacer-after"/>
@ -219,17 +206,16 @@
<hbox id="header">
<hbox id="header-inner" align="center">
<button id="show-all-extensions" hidden="true"
label="&showAllExtensions.button.label;"
data-l10n-id="show-all-extensions-button"
command="cmd_showAllExtensions"/>
<spacer flex="1"/>
<button id="show-disabled-unsigned-extensions" hidden="true"
class="warning"
label="&showUnsignedExtensions.button.label;"
class="warning" data-l10n-id="show-unsigned-extensions-button"
command="cmd_showUnsignedExtensions"/>
<label id="search-label" control="header-search"/>
<textbox id="header-search" type="search" searchbutton="true"
searchbuttonlabel="&search.buttonlabel;"
placeholder="&search.placeholder3;" maxlength="100"/>
data-l10n-id="search-header"
data-l10n-attrs="searchbuttonlabel" maxlength="100"/>
</hbox>
</hbox>
@ -259,7 +245,7 @@
</hbox>
<toolbarbutton id="header-utils-btn" class="header-button" type="menu"
tooltiptext="&toolsMenu.tooltip;">
data-l10n-id="tools-menu">
<menupopup id="utils-menu">
<menuitem id="utils-updateNow"
label="&updates.checkForUpdates.label;"
@ -271,12 +257,10 @@
command="cmd_goToRecentUpdates"/>
<menuseparator id="utils-installFromFile-separator"/>
<menuitem id="utils-installFromFile"
label="&installAddonFromFile.label;"
accesskey="&installAddonFromFile.accesskey;"
data-l10n-id="install-addon-from-file"
command="cmd_installFromFile"/>
<menuitem id="utils-debugAddons"
label="&debugAddons.label;"
accesskey="&debugAddons.accesskey;"
data-l10n-id="debug-addons"
command="cmd_debugAddons"/>
<menuseparator/>
<menuitem id="utils-autoUpdateDefault"
@ -299,28 +283,27 @@
<!-- info UI for add-ons that have been disabled for being unsigned -->
<vbox id="disabled-unsigned-addons-info" hidden="true">
<label id="disabled-unsigned-addons-heading" value="&disabledUnsigned.heading;"/>
<description>
&disabledUnsigned.description.start;<label class="text-link plain" id="find-alternative-addons">&disabledUnsigned.description.findAddonsLink;</label>&disabledUnsigned.description.end;
<label id="disabled-unsigned-addons-heading" data-l10n-id="disabled-unsigned-heading"/>
<description data-l10n-id="disabled-unsigned-description">
<label class="text-link plain" id="find-alternative-addons" data-l10n-name="find-addons"/>
</description>
<hbox pack="start"><label class="text-link" id="signing-learn-more">&disabledUnsigned.learnMore;</label></hbox>
<description id="signing-dev-info">
&disabledUnsigned.devInfo.start;<label class="text-link plain" id="signing-dev-manual-link">&disabledUnsigned.devInfo.linkToManual;</label>&disabledUnsigned.devInfo.end;
<hbox pack="start"><label class="text-link" id="signing-learn-more" data-l10n-id="disabled-unsigned-learn-more"></label></hbox>
<description id="signing-dev-info" data-l10n-id="disabled-unsigned-devinfo">
<label class="text-link plain" id="signing-dev-manual-link" data-l10n-name="learn-more"/>
</description>
</vbox>
<vbox id="legacy-extensions-notice" class="alert-container" hidden="true">
<vbox class="alert">
<description id="legacy-extensions-description">
<label class="text-link plain" id="legacy-extensions-learnmore-link">&legacyWarning.showLegacy;</label>
<label class="text-link plain" id="legacy-extensions-learnmore-link" data-l10n-id="legacy-warning-show-legacy"/>
</description>
</vbox>
</vbox>
<vbox id="plugindeprecation-notice" class="list-view-notice" align="start">
<hbox class="message-bar">
<image class="message-bar-icon"/>
<description class="message-bar-description">
&pluginDeprecation.description;
<label class="text-link plain" id="plugindeprecation-learnmore-link">&pluginDeprecation.learnMore;</label>
<description class="message-bar-description" data-l10n-id="plugin-deprecation-description">
<label class="text-link plain" id="plugindeprecation-learnmore-link" data-l10n-name="learn-more"></label>
</description>
</hbox>
</vbox>
@ -360,10 +343,10 @@
flex="1" hidden="true">
<spacer class="alert-spacer-before"/>
<vbox class="alert">
<label value="&listEmpty.installed.label;"/>
<label data-l10n-id="list-empty-installed"/>
<button class="discover-button"
id="discover-button-install"
label="&listEmpty.button.label;"
data-l10n-id="list-empty-button"
command="cmd_goToDiscoverPane"/>
</vbox>
<spacer class="alert-spacer-after"/>
@ -374,10 +357,9 @@
<!-- legacy extensions view -->
<vbox id="legacy-view" flex="1" class="view-pane" align="stretch" tabindex="0">
<vbox id="legacy-extensions-info">
<label id="legacy-extensions-heading" value="&legacyExtensions.title;"/>
<description>
&legacyExtensions.description;
<label class="text-link plain" id="legacy-learnmore">&legacyExtensions.learnMore;</label>
<label id="legacy-extensions-heading" data-l10n-id="legacy-extensions"/>
<description data-l10n-id="legacy-extensions-description">
<label class="text-link plain" id="legacy-learnmore" data-l10n-name="legacy-learn-more"></label>
</description>
</vbox>
<richlistbox id="legacy-list" class="list" flex="1"/>
@ -421,9 +403,9 @@
flex="1" hidden="true">
<spacer class="alert-spacer-before"/>
<vbox class="alert">
<label id="empty-availableUpdates-msg" value="&listEmpty.availableUpdates.label;"/>
<label id="empty-recentUpdates-msg" value="&listEmpty.recentUpdates.label;"/>
<button label="&listEmpty.findUpdates.label;"
<label id="empty-availableUpdates-msg" data-l10n-id="list-empty-available-updates"/>
<label id="empty-recentUpdates-msg" data-l10n-id="list-empty-recent-updates"/>
<button data-l10n-id="list-empty-find-updates"
command="cmd_findAllUpdates"/>
</vbox>
<spacer class="alert-spacer-after"/>
@ -475,7 +457,7 @@
<spacer class="alert-spacer-before"/>
<hbox class="alert loading">
<image/>
<label value="&loading.label;"/>
<label data-l10n-id="loading-label"/>
</hbox>
<spacer class="alert-spacer-after"/>
</vbox>
@ -498,7 +480,7 @@
<image class="pending-icon"/>
<label id="detail-pending" flex="1"/>
<button id="detail-restart-btn" class="button-link"
label="&addon.restartNow.label;"
data-l10n-id="addon-restart-now"
command="cmd_restartApp"/>
<button id="detail-undo-btn" class="button-link"
label="&addon.undoAction.label;"
@ -531,15 +513,11 @@
<description id="detail-fulldesc"/>
</vbox>
<vbox id="detail-contributions">
<description id="detail-contrib-description">
&detail.contributions.description;
</description>
<description id="detail-contrib-description" data-l10n-id="detail-contributions-description"/>
<hbox align="center">
<spacer flex="1"/>
<button id="detail-contrib-btn"
label="&cmd.contribute.label;"
accesskey="&cmd.contribute.accesskey;"
tooltiptext="&cmd.contribute.tooltip;"
data-l10n-id="cmd-contribute"
command="cmd_contribute"/>
</hbox>
</vbox>
@ -550,40 +528,35 @@
</columns>
<rows id="detail-rows">
<row class="detail-row-complex" id="detail-updates-row">
<label class="detail-row-label" value="&detail.updateType;"/>
<label class="detail-row-label" data-l10n-id="detail-update-type"/>
<hbox align="center">
<radiogroup id="detail-autoUpdate" orient="horizontal">
<!-- The values here need to match the values of
AddonManager.AUTOUPDATE_* -->
<radio label="&detail.updateDefault.label;"
tooltiptext="&detail.updateDefault.tooltip;"
<radio data-l10n-id="detail-update-default"
value="1"/>
<radio label="&detail.updateAutomatic.label;"
tooltiptext="&detail.updateAutomatic.tooltip;"
<radio data-l10n-id="detail-update-automatic"
value="2"/>
<radio label="&detail.updateManual.label;"
tooltiptext="&detail.updateManual.tooltip;"
<radio data-l10n-id="detail-update-manual"
value="0"/>
</radiogroup>
<button id="detail-findUpdates-btn" class="button-link"
label="&detail.checkForUpdates.label;"
accesskey="&detail.checkForUpdates.accesskey;"
tooltiptext="&detail.checkForUpdates.tooltip;"
data-l10n-id="detail-check-for-updates"
command="cmd_findItemUpdates"/>
</hbox>
</row>
<row class="detail-row" id="detail-version" label="&detail.version.label;"/>
<row class="detail-row" id="detail-dateUpdated" label="&detail.lastupdated.label;"/>
<row class="detail-row-complex" id="detail-homepage-row" label="&detail.home;">
<label class="detail-row-label" value="&detail.home;"/>
<row class="detail-row" id="detail-version" data-l10n-id="detail-version"/>
<row class="detail-row" id="detail-dateUpdated" data-l10n-id="detail-last-updated"/>
<row class="detail-row-complex" id="detail-homepage-row" data-l10n-id="detail-home">
<label class="detail-row-label" data-l10n-id="detail-home-value"/>
<label id="detail-homepage" class="detail-row-value text-link" crop="end"/>
</row>
<row class="detail-row-complex" id="detail-repository-row" label="&detail.repository;">
<label class="detail-row-label" value="&detail.repository;"/>
<row class="detail-row-complex" id="detail-repository-row" data-l10n-id="detail-repository">
<label class="detail-row-label" data-l10n-id="detail-repository-value"/>
<label id="detail-repository" class="detail-row-value text-link"/>
</row>
<row class="detail-row-complex" id="detail-rating-row">
<label class="detail-row-label" value="&rating2.label;"/>
<label class="detail-row-label" data-l10n-id="detail-rating"/>
<hbox>
<label id="detail-rating" class="meta-value meta-rating"
showrating="average"/>
@ -594,15 +567,7 @@
</grid>
<hbox id="detail-controls">
<button id="detail-prefs-btn" class="addon-control preferences"
#ifdef XP_WIN
label="&detail.showPreferencesWin.label;"
accesskey="&detail.showPreferencesWin.accesskey;"
tooltiptext="&detail.showPreferencesWin.tooltip;"
#else
label="&detail.showPreferencesUnix.label;"
accesskey="&detail.showPreferencesUnix.accesskey;"
tooltiptext="&detail.showPreferencesUnix.tooltip;"
#endif
data-l10n-id="detail-show-preferences"
command="cmd_showItemPreferences"/>
<spacer flex="1"/>
<button id="detail-enable-btn" class="addon-control enable"
@ -618,8 +583,7 @@
accesskey="&cmd.uninstallAddon.accesskey;"
command="cmd_uninstallItem"/>
<button id="detail-install-btn" class="addon-control install"
label="&cmd.installAddon.label;"
accesskey="&cmd.installAddon.accesskey;"
data-l10n-id="cmd-install-addon"
command="cmd_installItem"/>
<menulist id="detail-state-menulist"
crop="none" sizetopopup="always"