summaryrefslogtreecommitdiffstats
path: root/browser/locales
diff options
context:
space:
mode:
Diffstat (limited to 'browser/locales')
-rw-r--r--browser/locales/Makefile.in107
-rw-r--r--browser/locales/all-locales112
-rw-r--r--browser/locales/en-US/browser/aboutDialog.ftl83
-rw-r--r--browser/locales/en-US/browser/aboutLogins.ftl389
-rw-r--r--browser/locales/en-US/browser/aboutPocket.ftl73
-rw-r--r--browser/locales/en-US/browser/aboutPolicies.ftl17
-rw-r--r--browser/locales/en-US/browser/aboutPrivateBrowsing.ftl78
-rw-r--r--browser/locales/en-US/browser/aboutRestartRequired.ftl10
-rw-r--r--browser/locales/en-US/browser/aboutRobots.ftl29
-rw-r--r--browser/locales/en-US/browser/aboutSessionRestore.ftl50
-rw-r--r--browser/locales/en-US/browser/aboutTabCrashed.ftl22
-rw-r--r--browser/locales/en-US/browser/aboutUnloads.ftl51
-rw-r--r--browser/locales/en-US/browser/accounts.ftl106
-rw-r--r--browser/locales/en-US/browser/addonNotifications.ftl135
-rw-r--r--browser/locales/en-US/browser/allTabsMenu.ftl13
-rw-r--r--browser/locales/en-US/browser/appExtensionFields.ftl30
-rw-r--r--browser/locales/en-US/browser/appMenuNotifications.ftl66
-rw-r--r--browser/locales/en-US/browser/appmenu.ftl316
-rw-r--r--browser/locales/en-US/browser/backgroundtasks/defaultagent.ftl9
-rw-r--r--browser/locales/en-US/browser/browser.ftl1071
-rw-r--r--browser/locales/en-US/browser/browserContext.ftl456
-rw-r--r--browser/locales/en-US/browser/browserSets.ftl216
-rw-r--r--browser/locales/en-US/browser/colorways.ftl23
-rw-r--r--browser/locales/en-US/browser/confirmationHints.ftl21
-rw-r--r--browser/locales/en-US/browser/contentCrash.ftl33
-rw-r--r--browser/locales/en-US/browser/customizeMode.ftl38
-rw-r--r--browser/locales/en-US/browser/defaultBrowserNotification.ftl23
-rw-r--r--browser/locales/en-US/browser/downloads.ftl248
-rw-r--r--browser/locales/en-US/browser/editBookmarkOverlay.ftl55
-rw-r--r--browser/locales/en-US/browser/extensionsUI.ftl39
-rw-r--r--browser/locales/en-US/browser/featureCallout.ftl56
-rw-r--r--browser/locales/en-US/browser/firefoxRelay.ftl33
-rw-r--r--browser/locales/en-US/browser/firefoxView.ftl294
-rw-r--r--browser/locales/en-US/browser/fxviewTabList.ftl70
-rw-r--r--browser/locales/en-US/browser/identityCredentialNotification.ftl28
-rw-r--r--browser/locales/en-US/browser/linuxDesktopEntry.ftl26
-rw-r--r--browser/locales/en-US/browser/menubar.ftl344
-rw-r--r--browser/locales/en-US/browser/migrationWizard.ftl319
-rw-r--r--browser/locales/en-US/browser/newtab/asrouter.ftl273
-rw-r--r--browser/locales/en-US/browser/newtab/newtab.ftl273
-rw-r--r--browser/locales/en-US/browser/newtab/onboarding.ftl327
-rw-r--r--browser/locales/en-US/browser/originControls.ftl76
-rw-r--r--browser/locales/en-US/browser/pageInfo.ftl258
-rw-r--r--browser/locales/en-US/browser/panelUI.ftl24
-rw-r--r--browser/locales/en-US/browser/panicButton.ftl31
-rw-r--r--browser/locales/en-US/browser/places.ftl315
-rw-r--r--browser/locales/en-US/browser/placesPrompts.ftl20
-rw-r--r--browser/locales/en-US/browser/policies/policies-descriptions.ftl225
-rw-r--r--browser/locales/en-US/browser/preferences/addEngine.ftl22
-rw-r--r--browser/locales/en-US/browser/preferences/applicationManager.ftl25
-rw-r--r--browser/locales/en-US/browser/preferences/blocklists.ftl33
-rw-r--r--browser/locales/en-US/browser/preferences/clearSiteData.ftl56
-rw-r--r--browser/locales/en-US/browser/preferences/colors.ftl40
-rw-r--r--browser/locales/en-US/browser/preferences/connection.ftl94
-rw-r--r--browser/locales/en-US/browser/preferences/containers.ftl93
-rw-r--r--browser/locales/en-US/browser/preferences/fonts.ftl116
-rw-r--r--browser/locales/en-US/browser/preferences/formAutofill.ftl146
-rw-r--r--browser/locales/en-US/browser/preferences/fxaPairDevice.ftl17
-rw-r--r--browser/locales/en-US/browser/preferences/languages.ftl73
-rw-r--r--browser/locales/en-US/browser/preferences/moreFromMozilla.ftl39
-rw-r--r--browser/locales/en-US/browser/preferences/permissions.ftl222
-rw-r--r--browser/locales/en-US/browser/preferences/preferences.ftl1598
-rw-r--r--browser/locales/en-US/browser/preferences/selectBookmark.ftl9
-rw-r--r--browser/locales/en-US/browser/preferences/siteDataSettings.ftl65
-rw-r--r--browser/locales/en-US/browser/preferences/translation.ftl40
-rw-r--r--browser/locales/en-US/browser/profile/default-bookmarks.ftl52
-rw-r--r--browser/locales/en-US/browser/protections.ftl233
-rw-r--r--browser/locales/en-US/browser/protectionsPanel.ftl161
-rw-r--r--browser/locales/en-US/browser/recentlyClosed.ftl29
-rw-r--r--browser/locales/en-US/browser/reportBrokenSite.ftl53
-rw-r--r--browser/locales/en-US/browser/safeMode.ftl15
-rw-r--r--browser/locales/en-US/browser/safebrowsing/blockedSite.ftl60
-rw-r--r--browser/locales/en-US/browser/sanitize.ftl164
-rw-r--r--browser/locales/en-US/browser/screenshots.ftl60
-rw-r--r--browser/locales/en-US/browser/screenshotsOverlay.ftl15
-rw-r--r--browser/locales/en-US/browser/search.ftl38
-rw-r--r--browser/locales/en-US/browser/setDesktopBackground.ftl40
-rw-r--r--browser/locales/en-US/browser/shopping.ftl272
-rw-r--r--browser/locales/en-US/browser/sidebarMenu.ftl18
-rw-r--r--browser/locales/en-US/browser/sitePermissions.ftl12
-rw-r--r--browser/locales/en-US/browser/siteProtections.ftl106
-rw-r--r--browser/locales/en-US/browser/speechDispatcher.ftl15
-rw-r--r--browser/locales/en-US/browser/spotlight.ftl22
-rw-r--r--browser/locales/en-US/browser/sync.ftl45
-rw-r--r--browser/locales/en-US/browser/syncedTabs.ftl61
-rw-r--r--browser/locales/en-US/browser/tabContextMenu.ftl110
-rw-r--r--browser/locales/en-US/browser/tabbrowser.ftl169
-rw-r--r--browser/locales/en-US/browser/textRecognition.ftl14
-rw-r--r--browser/locales/en-US/browser/toolbarContextMenu.ftl90
-rw-r--r--browser/locales/en-US/browser/touchbar/touchbar.ftl37
-rw-r--r--browser/locales/en-US/browser/translations.ftl168
-rw-r--r--browser/locales/en-US/browser/unifiedExtensions.ftl52
-rw-r--r--browser/locales/en-US/browser/webProtocolHandler.ftl19
-rw-r--r--browser/locales/en-US/browser/webauthnDialog.ftl31
-rw-r--r--browser/locales/en-US/browser/webrtcIndicator.ftl215
-rw-r--r--browser/locales/en-US/chrome/browser/browser.properties379
-rw-r--r--browser/locales/en-US/chrome/browser/customizableui/customizableWidgets.properties54
-rw-r--r--browser/locales/en-US/chrome/browser/downloads/downloads.properties82
-rw-r--r--browser/locales/en-US/chrome/browser/feeds/subscribe.properties10
-rw-r--r--browser/locales/en-US/chrome/browser/places/bookmarkProperties.properties23
-rw-r--r--browser/locales/en-US/chrome/browser/safebrowsing/safebrowsing.properties6
-rw-r--r--browser/locales/en-US/chrome/browser/search.properties32
-rw-r--r--browser/locales/en-US/chrome/browser/shellservice.properties16
-rw-r--r--browser/locales/en-US/chrome/browser/siteData.properties8
-rw-r--r--browser/locales/en-US/chrome/browser/sitePermissions.properties55
-rw-r--r--browser/locales/en-US/chrome/browser/syncSetup.properties14
-rw-r--r--browser/locales/en-US/chrome/browser/taskbar.properties12
-rw-r--r--browser/locales/en-US/chrome/browser/uiDensity.properties5
-rw-r--r--browser/locales/en-US/chrome/overrides/appstrings.properties44
-rw-r--r--browser/locales/en-US/crashreporter/crashreporter-override.ini9
-rw-r--r--browser/locales/en-US/firefox-l10n.js5
-rw-r--r--browser/locales/en-US/installer/custom.properties93
-rw-r--r--browser/locales/en-US/installer/mui.properties61
-rw-r--r--browser/locales/en-US/installer/nsisstrings.properties46
-rw-r--r--browser/locales/en-US/installer/override.properties86
-rw-r--r--browser/locales/en-US/langpack-metadata.ftl12
-rw-r--r--browser/locales/en-US/updater/updater.ini9
-rw-r--r--browser/locales/filter.py36
-rw-r--r--browser/locales/generate_ini.py28
-rw-r--r--browser/locales/jar.mn45
-rw-r--r--browser/locales/l10n-changesets.json1826
-rw-r--r--browser/locales/l10n-onchange-changesets.json92
-rw-r--r--browser/locales/l10n.ini24
-rw-r--r--browser/locales/l10n.toml166
-rw-r--r--browser/locales/moz.build38
-rw-r--r--browser/locales/onchange-locales5
-rw-r--r--browser/locales/shipped-locales103
127 files changed, 15399 insertions, 0 deletions
diff --git a/browser/locales/Makefile.in b/browser/locales/Makefile.in
new file mode 100644
index 0000000000..1b8f21be1c
--- /dev/null
+++ b/browser/locales/Makefile.in
@@ -0,0 +1,107 @@
+# vim:set ts=8 sw=8 sts=8 noet:
+# 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/.
+
+include $(topsrcdir)/config/config.mk
+
+
+SUBMAKEFILES += \
+ $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/Makefile \
+ $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales/Makefile \
+ $(NULL)
+
+# This makefile uses variable overrides from the l10n-% target to
+# build non-default locales to non-default dist/ locations. Be aware!
+
+PWD := $(CURDIR)
+
+# These are defaulted to be compatible with the files the wget-en-US target
+# pulls. You may override them if you provide your own files.
+ZIP_IN ?= $(ABS_DIST)/$(PACKAGE)
+
+ifdef MOZ_DEV_EDITION
+MOZ_LANGPACK_EID=langpack-$(AB_CD)@devedition.mozilla.org
+else
+MOZ_LANGPACK_EID=langpack-$(AB_CD)@firefox.mozilla.org
+endif
+# For Nightly, we know where to get the builds from to do local repacks
+ifdef NIGHTLY_BUILD
+export EN_US_BINARY_URL ?= https://archive.mozilla.org/pub/firefox/nightly/latest-mozilla-central
+endif
+
+ifneq (,$(filter cocoa,$(MOZ_WIDGET_TOOLKIT)))
+MOZ_PKG_MAC_DSSTORE=$(ABS_DIST)/branding/dsstore
+MOZ_PKG_MAC_BACKGROUND=$(ABS_DIST)/branding/background.png
+MOZ_PKG_MAC_ICON=$(ABS_DIST)/branding/disk.icns
+MOZ_PKG_MAC_EXTRA=--symlink '/Applications:/ '
+endif
+
+# Required for l10n.mk - defines a list of app sub dirs that should
+# be included in langpack xpis.
+DIST_SUBDIRS = $(DIST_SUBDIR)
+
+include $(topsrcdir)/config/rules.mk
+
+include $(topsrcdir)/toolkit/locales/l10n.mk
+
+l10n-%: AB_CD=$*
+l10n-%:
+ $(if $(filter en-US,$(AB_CD)),, @$(MAKE) merge-$*)
+ $(NSINSTALL) -D $(DIST)/install
+ @$(MAKE) -C ../themes/shared/app-marketplace-icons AB_CD=$* XPI_NAME=locale-$*
+ @$(MAKE) -C ../../toolkit/locales l10n-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
+ @$(MAKE) -C ../../extensions/spellcheck/locales AB_CD=$* XPI_NAME=locale-$*
+ifneq (,$(wildcard ../extensions/formautofill/locales))
+ @$(MAKE) -C ../extensions/formautofill/locales AB_CD=$* XPI_NAME=locale-$*
+endif
+ @$(MAKE) -C ../extensions/report-site-issue/locales AB_CD=$* XPI_NAME=locale-$*
+ @$(MAKE) -C ../../devtools/client/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
+ @$(MAKE) -C ../../devtools/startup/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
+ @$(MAKE) l10n AB_CD=$* XPI_NAME=locale-$* PREF_DIR=$(PREF_DIR)
+ @$(MAKE) multilocale.txt-$* AB_CD=$* XPI_NAME=locale-$*
+ @$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales AB_CD=$* XPI_NAME=locale-$*
+
+chrome-%: AB_CD=$*
+chrome-%: IS_LANGUAGE_REPACK=1
+chrome-%:
+ $(if $(filter en-US,$(AB_CD)),, @$(MAKE) merge-$*)
+ @$(MAKE) -C ../themes/shared/app-marketplace-icons chrome AB_CD=$*
+ @$(MAKE) -C ../../toolkit/locales chrome-$*
+ @$(MAKE) -C ../../extensions/spellcheck/locales chrome AB_CD=$*
+ifneq (,$(wildcard ../extensions/formautofill/locales))
+ @$(MAKE) -C ../extensions/formautofill/locales chrome AB_CD=$*
+endif
+ @$(MAKE) -C ../../devtools/client/locales chrome AB_CD=$*
+ @$(MAKE) -C ../../devtools/startup/locales chrome AB_CD=$*
+ @$(MAKE) chrome AB_CD=$*
+ @$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales chrome AB_CD=$*
+ @$(MAKE) -C ../extensions/report-site-issue/locales chrome AB_CD=$*
+
+package-win32-installer: $(SUBMAKEFILES)
+ $(MAKE) -C ../installer/windows CONFIG_DIR=l10ngen ZIP_IN='$(ZIP_OUT)' installer
+
+langpack: langpack-$(AB_CD)
+
+# This is a generic target that will make a langpack, repack ZIP (+tarball)
+# builds, and repack an installer if applicable. It is called from the
+# tinderbox scripts. Alter it with caution.
+
+installers-%: IS_LANGUAGE_REPACK=1
+installers-%:
+ @$(MAKE) clobber-$*
+ @$(MAKE) l10n-$*
+ @$(MAKE) package-langpack-$*
+ @$(MAKE) repackage-zip-$*
+ifeq (WINNT,$(OS_ARCH))
+ @$(MAKE) package-win32-installer AB_CD=$*
+endif
+ @echo 'repackaging done'
+
+ident:
+ @printf 'fx_revision '
+ @$(PYTHON3) $(topsrcdir)/config/printconfigsetting.py \
+ '$(STAGEDIST)'/application.ini App SourceStamp
+ @printf 'buildid '
+ @$(PYTHON3) $(topsrcdir)/config/printconfigsetting.py \
+ '$(STAGEDIST)'/application.ini App BuildID
diff --git a/browser/locales/all-locales b/browser/locales/all-locales
new file mode 100644
index 0000000000..dc3f7be5fd
--- /dev/null
+++ b/browser/locales/all-locales
@@ -0,0 +1,112 @@
+ach
+af
+an
+ar
+ast
+az
+be
+bg
+bn
+bo
+br
+brx
+bs
+ca
+ca-valencia
+cak
+ckb
+cs
+cy
+da
+de
+dsb
+el
+en-CA
+en-GB
+eo
+es-AR
+es-CL
+es-ES
+es-MX
+et
+eu
+fa
+ff
+fi
+fr
+fur
+fy-NL
+ga-IE
+gd
+gl
+gn
+gu-IN
+he
+hi-IN
+hr
+hsb
+hu
+hy-AM
+hye
+ia
+id
+is
+it
+ja
+ja-JP-mac
+ka
+kab
+kk
+km
+kn
+ko
+lij
+lo
+lt
+ltg
+lv
+meh
+mk
+mr
+ms
+my
+nb-NO
+ne-NP
+nl
+nn-NO
+oc
+pa-IN
+pl
+pt-BR
+pt-PT
+rm
+ro
+ru
+sat
+sc
+scn
+sco
+si
+sk
+skr
+sl
+son
+sq
+sr
+sv-SE
+szl
+ta
+te
+tg
+th
+tl
+tr
+trs
+uk
+ur
+uz
+vi
+wo
+xh
+zh-CN
+zh-TW
diff --git a/browser/locales/en-US/browser/aboutDialog.ftl b/browser/locales/en-US/browser/aboutDialog.ftl
new file mode 100644
index 0000000000..5d6f0a4741
--- /dev/null
+++ b/browser/locales/en-US/browser/aboutDialog.ftl
@@ -0,0 +1,83 @@
+# 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/.
+
+aboutDialog-title =
+ .title = About { -brand-full-name }
+
+releaseNotes-link = What’s new
+
+update-checkForUpdatesButton =
+ .label = Check for updates
+ .accesskey = C
+
+update-updateButton =
+ .label = Restart to Update { -brand-shorter-name }
+ .accesskey = R
+
+update-checkingForUpdates = Checking for updates…
+
+## Variables:
+## $transfer (string) - Transfer progress.
+
+settings-update-downloading = <img data-l10n-name="icon"/>Downloading update — <label data-l10n-name="download-status">{ $transfer }</label>
+aboutdialog-update-downloading = Downloading update — <label data-l10n-name="download-status">{ $transfer }</label>
+
+##
+
+update-applying = Applying update…
+
+update-failed = Update failed. <label data-l10n-name="failed-link">Download the latest version</label>
+update-failed-main =
+ Update failed. <a data-l10n-name="failed-link-main">Download the latest version</a>
+
+update-policy-disabled = Updates disabled by your organization
+update-noUpdatesFound = { -brand-short-name } is up to date
+aboutdialog-update-checking-failed = Failed to check for updates.
+update-otherInstanceHandlingUpdates = { -brand-short-name } is being updated by another instance
+
+## Variables:
+## $displayUrl (String): URL to page with download instructions. Example: www.mozilla.org/firefox/nightly/
+
+aboutdialog-update-manual-with-link = Updates available at <label data-l10n-name="manual-link">{ $displayUrl }</label>
+settings-update-manual-with-link = Updates available at <a data-l10n-name="manual-link">{ $displayUrl }</a>
+
+update-unsupported = You can not perform further updates on this system. <label data-l10n-name="unsupported-link">Learn more</label>
+
+update-restarting = Restarting…
+
+update-internal-error2 = Unable to check for updates due to internal error. Updates available at <label data-l10n-name="manual-link">{ $displayUrl }</label>
+
+##
+
+# Variables:
+# $channel (String): description of the update channel (e.g. "release", "beta", "nightly" etc.)
+aboutdialog-channel-description = You are currently on the <label data-l10n-name="current-channel">{ $channel }</label> update channel.
+
+warningDesc-version = { -brand-short-name } is experimental and may be unstable.
+
+aboutdialog-help-user = { -brand-product-name } Help
+aboutdialog-submit-feedback = Submit Feedback
+
+community-exp = <label data-l10n-name="community-exp-mozillaLink">{ -vendor-short-name }</label> is a <label data-l10n-name="community-exp-creditsLink">global community</label> working together to keep the Web open, public and accessible to all.
+
+community-2 = { -brand-short-name } is designed by <label data-l10n-name="community-mozillaLink">{ -vendor-short-name }</label>, a <label data-l10n-name="community-creditsLink">global community</label> working together to keep the Web open, public and accessible to all.
+
+helpus = Want to help? <label data-l10n-name="helpus-donateLink">Make a donation</label> or <label data-l10n-name="helpus-getInvolvedLink">get involved!</label>
+
+bottomLinks-license = Licensing Information
+bottomLinks-rights = End-User Rights
+bottomLinks-privacy = Privacy Policy
+
+# Example of resulting string: 66.0.1 (64-bit)
+# Variables:
+# $version (String): version of Firefox, e.g. 66.0.1
+# $bits (Number): bits of the architecture (32 or 64)
+aboutDialog-version = { $version } ({ $bits }-bit)
+
+# Example of resulting string: 66.0a1 (2019-01-16) (64-bit)
+# Variables:
+# $version (String): version of Firefox for Nightly builds, e.g. 66.0a1
+# $isodate (String): date in ISO format, e.g. 2019-01-16
+# $bits (Number): bits of the architecture (32 or 64)
+aboutDialog-version-nightly = { $version } ({ $isodate }) ({ $bits }-bit)
diff --git a/browser/locales/en-US/browser/aboutLogins.ftl b/browser/locales/en-US/browser/aboutLogins.ftl
new file mode 100644
index 0000000000..f18478c7a7
--- /dev/null
+++ b/browser/locales/en-US/browser/aboutLogins.ftl
@@ -0,0 +1,389 @@
+# 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/.
+# NOTE: New strings should use the about-logins- prefix.
+
+about-logins-page-title-name = Passwords
+
+about-logins-login-filter2 =
+ .placeholder = Search Passwords
+ .key = F
+
+create-login-button =
+ .title = Add password
+
+fxaccounts-sign-in-text = Get your passwords on your other devices
+fxaccounts-sign-in-sync-button = Sign in to sync
+fxaccounts-avatar-button =
+ .title = Manage account
+
+## The ⋯ menu that is in the top corner of the page
+
+menu =
+ .title = Open menu
+# This menuitem is only visible on Windows and macOS
+about-logins-menu-menuitem-import-from-another-browser = Import from Another Browser…
+about-logins-menu-menuitem-import-from-a-file = Import from a File…
+
+about-logins-menu-menuitem-export-logins2 = Export Passwords…
+about-logins-menu-menuitem-remove-all-logins2 = Remove All Passwords…
+
+menu-menuitem-preferences =
+ { PLATFORM() ->
+ [windows] Options
+ *[other] Preferences
+ }
+about-logins-menu-menuitem-help = Help
+
+## Login List
+
+login-list =
+ .aria-label = Logins matching search query
+# Variables
+# $count (number) - Number of logins
+login-list-count2 =
+ { $count ->
+ [one] { $count } password
+ *[other] { $count } passwords
+ }
+# Variables
+# $count (number) - Number of filtered logins
+# $total (number) - Total number of logins
+login-list-filtered-count2 =
+ { $total ->
+ [one] { $count } of { $total } password
+ *[other] { $count } of { $total } passwords
+ }
+login-list-sort-label-text = Sort by:
+login-list-name-option = Name (A-Z)
+login-list-name-reverse-option = Name (Z-A)
+login-list-username-option = Username (A-Z)
+login-list-username-reverse-option = Username (Z-A)
+about-logins-login-list-alerts-option = Alerts
+login-list-last-changed-option = Last Modified
+login-list-last-used-option = Last Used
+
+login-list-intro-title2 = No passwords saved
+login-list-intro-description = When you save a password in { -brand-product-name }, it will show up here.
+
+about-logins-login-list-empty-search-title2 = No passwords found
+about-logins-login-list-empty-search-description = There are no results matching your search.
+
+login-list-item-title-new-login2 = Add password
+
+login-list-item-subtitle-missing-username = (no username)
+about-logins-list-item-breach-icon =
+ .title = Breached website
+about-logins-list-item-vulnerable-password-icon =
+ .title = Vulnerable password
+about-logins-list-section-breach = Breached websites
+about-logins-list-section-vulnerable = Vulnerable passwords
+about-logins-list-section-nothing = No alert
+about-logins-list-section-today = Today
+about-logins-list-section-yesterday = Yesterday
+about-logins-list-section-week = Last 7 days
+
+## Introduction screen
+
+about-logins-login-intro-heading-message = Save your passwords to a safe spot
+login-intro-description2 = All passwords you save to { -brand-product-name } are encrypted. Plus, we watch out for breaches and alert you if you’re affected. <a data-l10n-name="breach-alert-link">Learn more</a>
+login-intro-instructions-fxa2 = Create or sign in to your account on the device where your logins are saved.
+login-intro-instructions-fxa-settings = Go to Settings > Sync > Turn on syncing… Select the Logins and passwords checkbox.
+login-intro-instructions-fxa-passwords-help = Visit <a data-l10n-name="passwords-help-link">passwords support</a> for more help.
+about-logins-intro-browser-only-import = If your logins are saved in another browser, you can <a data-l10n-name="import-link">import them into { -brand-product-name }</a>
+about-logins-intro-import3 = Select the plus sign button above to add a password now. You can also <a data-l10n-name="import-browser-link">import passwords from another browser</a> or <a data-l10n-name="import-file-link">from a file</a>.
+
+## Login
+
+# Header for adding a password
+about-logins-login-item-new-login-title = Add password
+login-item-edit-button = Edit
+about-logins-login-item-remove-button = Remove
+login-item-origin-label = Website address
+about-logins-origin-tooltip2 = Enter the full address and make sure it’s an exact match for where you sign in.
+# Variables
+# $webTitle (String) - Website title of the password being changed.
+about-logins-edit-password-tooltip = Make sure you’re saving your current password for this site. Changing the password here does not change it with { $webTitle }.
+about-logins-add-password-tooltip = Make sure you’re saving your current password for this site.
+login-item-origin =
+ .placeholder = https://www.example.com
+login-item-username-label = Username
+about-logins-login-item-username =
+ .placeholder = (no username)
+login-item-copy-username-button-text = Copy
+login-item-copied-username-button-text = Copied!
+login-item-password-label = Password
+login-item-password-reveal-checkbox =
+ .aria-label = Show password
+login-item-copy-password-button-text = Copy
+login-item-copied-password-button-text = Copied!
+about-logins-login-item-save-changes-button = Save
+login-item-save-new-button = Save
+login-item-cancel-button = Cancel
+
+## The date is displayed in a timeline showing the password evolution.
+## A label is displayed under the date to describe the type of change.
+## (e.g. updated, created, etc.)
+
+# Variables
+# $datetime (date) - Event date
+login-item-timeline-point-date = { DATETIME($datetime, day: "numeric", month: "short", year: "numeric") }
+login-item-timeline-action-created = Created
+login-item-timeline-action-updated = Updated
+login-item-timeline-action-used = Used
+
+## OS Authentication dialog
+
+about-logins-os-auth-dialog-caption = { -brand-full-name }
+
+## The macOS strings are preceded by the operating system with "Firefox is trying to "
+## and includes subtitle of "Enter password for the user "xxx" to allow this." These
+## notes are only valid for English. Please test in your respected locale.
+
+# This message can be seen when attempting to edit a login in about:logins on Windows.
+about-logins-edit-login-os-auth-dialog-message2-win = To edit your password, enter your Windows login credentials. This helps protect the security of your accounts.
+# This message can be seen when attempting to edit a login in about:logins
+# On MacOS, only provide the reason that account verification is needed. Do not put a complete sentence here.
+about-logins-edit-login-os-auth-dialog-message2-macosx = edit the saved password
+
+# This message can be seen when attempting to reveal a password in about:logins on Windows.
+about-logins-reveal-password-os-auth-dialog-message-win = To view your password, enter your Windows login credentials. This helps protect the security of your accounts.
+# This message can be seen when attempting to reveal a password in about:logins
+# On MacOS, only provide the reason that account verification is needed. Do not put a complete sentence here.
+about-logins-reveal-password-os-auth-dialog-message-macosx = reveal the saved password
+
+# This message can be seen when attempting to copy a password in about:logins on Windows.
+about-logins-copy-password-os-auth-dialog-message-win = To copy your password, enter your Windows login credentials. This helps protect the security of your accounts.
+# This message can be seen when attempting to copy a password in about:logins
+# On MacOS, only provide the reason that account verification is needed. Do not put a complete sentence here.
+about-logins-copy-password-os-auth-dialog-message-macosx = copy the saved password
+
+# This message can be seen when attempting to export a password in about:logins on Windows.
+about-logins-export-password-os-auth-dialog-message2-win = To export your passwords, enter your Windows login credentials. This helps protect the security of your accounts.
+# This message can be seen when attempting to export a password in about:logins
+# On MacOS, only provide the reason that account verification is needed. Do not put a complete sentence here.
+about-logins-export-password-os-auth-dialog-message2-macosx = export saved passwords
+
+## Primary Password notification
+
+about-logins-primary-password-notification-message = Please enter your Primary Password to view saved logins & passwords
+master-password-reload-button =
+ .label = Log in
+ .accesskey = L
+
+## Dialogs
+
+confirmation-dialog-cancel-button = Cancel
+confirmation-dialog-dismiss-button =
+ .title = Cancel
+
+# Title for modal to confirm the removal of one saved password
+about-logins-confirm-delete-dialog-title = Remove password?
+# Message for modal to confirm the removal of one saved password
+about-logins-confirm-delete-dialog-message = You cannot undo this action.
+about-logins-confirm-remove-dialog-confirm-button = Remove
+
+## Variables
+## $count (number) - Number of items
+
+about-logins-confirm-remove-all-dialog-confirm-button-label =
+ { $count ->
+ [1] Remove
+ *[other] Remove All
+ }
+
+# Checkbox for modal to confirm the removal of saved passwords
+about-logins-confirm-remove-all-dialog-checkbox-label2 =
+ { $count ->
+ [1] Yes, remove password
+ *[other] Yes, remove passwords
+ }
+
+# Title for modal to confirm the removal of all saved passwords when user is NOT synced
+about-logins-confirm-remove-all-dialog-title2 =
+ { $count ->
+ [one] Remove { $count } password?
+ *[other] Remove all { $count } passwords?
+ }
+# Message for modal to confirm the removal of saved passwords when user is NOT synced
+about-logins-confirm-remove-all-dialog-message2 =
+ { $count ->
+ [1] This will remove the password saved to { -brand-short-name } and any breach alerts. You cannot undo this action.
+ *[other] This will remove the passwords saved to { -brand-short-name } and any breach alerts. You cannot undo this action.
+ }
+
+# Title for modal to confirm the removal of all saved passwords when user IS SYNCED
+about-logins-confirm-remove-all-sync-dialog-title2 =
+ { $count ->
+ [one] Remove { $count } password from all devices?
+ *[other] Remove all { $count } passwords from all devices?
+ }
+
+# Message for modal to confirm the removal of saved passwords when user IS synced.
+about-logins-confirm-remove-all-sync-dialog-message3 =
+ { $count ->
+ [1] This will remove the password saved to { -brand-short-name } on all your synced devices. This will also remove any breach alerts that appear here. You cannot undo this action.
+ *[other] This will remove all passwords saved to { -brand-short-name } on all your synced devices. This will also remove any breach alerts that appear here. You cannot undo this action.
+ }
+
+##
+
+about-logins-confirm-export-dialog-title2 = A note about exporting passwords
+about-logins-confirm-export-dialog-message2 = When you export, your passwords are saved to a file with readable text.
+ When you’re done using the file, we recommend deleting it so others who use this device can’t see your passwords.
+about-logins-confirm-export-dialog-confirm-button2 = Continue with export
+
+about-logins-alert-import-title = Import Complete
+about-logins-alert-import-message = View detailed Import Summary
+
+confirm-discard-changes-dialog-title = Discard unsaved changes?
+confirm-discard-changes-dialog-message = All unsaved changes will be lost.
+confirm-discard-changes-dialog-confirm-button = Discard
+
+## Breach Alert notification
+
+about-logins-breach-alert-title = Website Breach
+breach-alert-text = Passwords were leaked or stolen from this website since you last updated your login details. Change your password to protect your account.
+about-logins-breach-alert-date = This breach occurred on { DATETIME($date, day: "numeric", month: "long", year: "numeric") }
+# Variables:
+# $hostname (String) - The hostname of the website associated with the login, e.g. "example.com"
+about-logins-breach-alert-link = Go to { $hostname }
+
+## Vulnerable Password notification
+
+about-logins-vulnerable-alert-title = Vulnerable Password
+about-logins-vulnerable-alert-text2 = This password has been used on another account that was likely in a data breach. Reusing credentials puts all your accounts at risk. Change this password.
+# Variables:
+# $hostname (String) - The hostname of the website associated with the login, e.g. "example.com"
+about-logins-vulnerable-alert-link = Go to { $hostname }
+about-logins-vulnerable-alert-learn-more-link = Learn more
+
+## Error Messages
+
+# This is an error message that appears when a user attempts to save
+# a new login that is identical to an existing saved login.
+# Variables:
+# $loginTitle (String) - The title of the website associated with the login.
+about-logins-error-message-duplicate-login-with-link = An entry for { $loginTitle } with that username already exists. <a data-l10n-name="duplicate-link">Go to existing entry?</a>
+
+# This is a generic error message.
+about-logins-error-message-default = An error occurred while trying to save this password.
+
+## Login Export Dialog
+
+# Title of the file picker dialog
+about-logins-export-file-picker-title2 = Export Passwords from { -brand-short-name }
+# The default file name shown in the file picker when exporting saved logins.
+# This must end in .csv
+about-logins-export-file-picker-default-filename2 = passwords.csv
+about-logins-export-file-picker-export-button = Export
+# A description for the .csv file format that may be shown as the file type
+# filter by the operating system.
+about-logins-export-file-picker-csv-filter-title =
+ { PLATFORM() ->
+ [macos] CSV Document
+ *[other] CSV File
+ }
+
+## Login Import Dialog
+
+# Title of the file picker dialog
+about-logins-import-file-picker-title2 = Import Passwords to { -brand-short-name }
+about-logins-import-file-picker-import-button = Import
+# A description for the .csv file format that may be shown as the file type
+# filter by the operating system.
+about-logins-import-file-picker-csv-filter-title =
+ { PLATFORM() ->
+ [macos] CSV Document
+ *[other] CSV File
+ }
+# A description for the .tsv file format that may be shown as the file type
+# filter by the operating system. TSV is short for 'tab separated values'.
+about-logins-import-file-picker-tsv-filter-title =
+ { PLATFORM() ->
+ [macos] TSV Document
+ *[other] TSV File
+ }
+
+##
+## Variables:
+## $count (number) - The number of affected elements
+
+about-logins-import-dialog-title = Import Complete
+about-logins-import-dialog-items-added2 =
+ { $count ->
+ *[other] <span>New passwords added:</span> <span data-l10n-name="count">{ $count }</span>
+ }
+
+about-logins-import-dialog-items-modified2 =
+ { $count ->
+ *[other] <span>Existing entries updated:</span> <span data-l10n-name="count">{ $count }</span>
+ }
+
+about-logins-import-dialog-items-no-change2 =
+ { $count ->
+ *[other] <span>Duplicate entries found:</span> <span data-l10n-name="count">{ $count }</span> <span data-l10n-name="meta">(not imported)</span>
+ }
+about-logins-import-dialog-items-error =
+ { $count ->
+ *[other] <span>Errors:</span> <span data-l10n-name="count">{ $count }</span> <span data-l10n-name="meta">(not imported)</span>
+ }
+about-logins-import-dialog-done = Done
+
+about-logins-import-dialog-error-title = Import Error
+about-logins-import-dialog-error-conflicting-values-title = Multiple Conflicting Values for One Login
+about-logins-import-dialog-error-conflicting-values-description = For example: multiple usernames, passwords, URLs, etc. for one login.
+about-logins-import-dialog-error-file-format-title = File Format Issue
+about-logins-import-dialog-error-file-format-description = Incorrect or missing column headers. Make sure the file includes columns for username, password and URL.
+about-logins-import-dialog-error-file-permission-title = Unable to Read File
+about-logins-import-dialog-error-file-permission-description = { -brand-short-name } does not have permission to read the file. Try changing the file permissions.
+about-logins-import-dialog-error-unable-to-read-title = Unable to Parse File
+about-logins-import-dialog-error-unable-to-read-description = Make sure you selected a CSV or TSV file.
+about-logins-import-dialog-error-no-logins-imported = No logins have been imported
+about-logins-import-dialog-error-learn-more = Learn more
+about-logins-import-dialog-error-try-import-again = Try Import Again…
+about-logins-import-dialog-error-cancel = Cancel
+
+about-logins-import-report-title = Import Summary
+about-logins-import-report-description2 = Passwords imported to { -brand-short-name }.
+
+#
+# Variables:
+# $number (number) - The number of the row
+about-logins-import-report-row-index = Row { $number }
+about-logins-import-report-row-description-no-change2 = Duplicate: Exact match of existing entry
+about-logins-import-report-row-description-modified2 = Existing entry updated
+about-logins-import-report-row-description-added2 = New password added
+about-logins-import-report-row-description-error = Error: Missing field
+
+##
+## Variables:
+## $field (String) - The name of the field from the CSV file for example url, username or password
+
+about-logins-import-report-row-description-error-multiple-values = Error: Multiple values for { $field }
+about-logins-import-report-row-description-error-missing-field = Error: Missing { $field }
+
+##
+## Variables:
+## $count (number) - The number of affected elements
+
+about-logins-import-report-added2 =
+ { $count ->
+ *[other] <div data-l10n-name="count">{ $count }</div> <div data-l10n-name="details">New passwords added</div>
+ }
+about-logins-import-report-modified2 =
+ { $count ->
+ *[other] <div data-l10n-name="count">{ $count }</div> <div data-l10n-name="details">Existing entries updated</div>
+ }
+about-logins-import-report-no-change2 =
+ { $count ->
+ *[other] <div data-l10n-name="count">{ $count }</div> <div data-l10n-name="details">Duplicate entries</div> <div data-l10n-name="not-imported">(not imported)</div>
+ }
+about-logins-import-report-error =
+ { $count ->
+ *[other] <div data-l10n-name="count">{ $count }</div> <div data-l10n-name="details">Errors</div> <div data-l10n-name="not-imported">(not imported)</div>
+ }
+
+## Logins import report page
+
+about-logins-import-report-page-title = Import Summary Report
diff --git a/browser/locales/en-US/browser/aboutPocket.ftl b/browser/locales/en-US/browser/aboutPocket.ftl
new file mode 100644
index 0000000000..f04989278e
--- /dev/null
+++ b/browser/locales/en-US/browser/aboutPocket.ftl
@@ -0,0 +1,73 @@
+# 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/.
+
+### Pocket button panel strings for about:pocket-saved, about:pocket-signup, and about:pocket-home
+
+## about:pocket-saved panel
+
+# Placeholder text for tag input
+pocket-panel-saved-add-tags =
+ .placeholder = Add Tags
+
+pocket-panel-saved-error-generic = There was an error when trying to save to { -pocket-brand-name }.
+pocket-panel-saved-error-tag-length = Tags are limited to 25 characters
+pocket-panel-saved-error-only-links = Only links can be saved
+pocket-panel-saved-error-not-saved = Page Not Saved
+pocket-panel-saved-error-no-internet = You must be connected to the Internet in order to save to { -pocket-brand-name }. Please connect to the Internet and try again.
+pocket-panel-saved-error-remove = There was an error while trying to remove this page.
+pocket-panel-saved-page-removed = Page Removed
+pocket-panel-saved-page-saved = Saved to { -pocket-brand-name }
+pocket-panel-saved-page-saved-b = Saved to { -pocket-brand-name }!
+pocket-panel-saved-processing-remove = Removing Page…
+pocket-panel-saved-removed-updated = Page Removed from Saves
+pocket-panel-saved-processing-tags = Adding tags…
+pocket-panel-saved-remove-page = Remove Page
+pocket-panel-saved-save-tags = Save
+pocket-panel-saved-saving-tags = Saving…
+pocket-panel-saved-suggested-tags = Suggested Tags
+pocket-panel-saved-tags-saved = Tags Added
+
+# This is displayed above a field where the user can add tags
+pocket-panel-signup-add-tags = Add Tags:
+
+## about:pocket-signup panel
+
+pocket-panel-signup-already-have = Already a { -pocket-brand-name } user?
+pocket-panel-signup-learn-more = Learn more
+pocket-panel-signup-login = Log in
+pocket-panel-signup-signup-email = Sign up with email
+pocket-panel-signup-signup-cta = Sign up for { -pocket-brand-name }. It’s free.
+pocket-panel-signup-signup-firefox = Sign up with { -brand-product-name }
+pocket-panel-signup-tagline = Save articles and videos from { -brand-product-name } to view in { -pocket-brand-name } on any device, any time.
+pocket-panel-signup-tagline-story-one = Click the { -pocket-brand-name } Button to save any article, video or page from { -brand-product-name }.
+pocket-panel-signup-tagline-story-two = View in { -pocket-brand-name } on any device, any time.
+
+pocket-panel-signup-cta-a-fix = Your save button for the internet
+pocket-panel-signup-cta-b-updated = Click the { -pocket-brand-name } button to save articles, videos, and links. View your saves on any device, any time.
+pocket-panel-signup-cta-b-short = Click the { -pocket-brand-name } button to save articles, videos, and links.
+pocket-panel-signup-cta-c-updated = View your saves on any device, any time.
+
+## about:pocket-home panel
+
+pocket-panel-home-welcome-back = Welcome Back
+pocket-panel-home-paragraph = You can use { -pocket-brand-name } to explore and save webpages, articles, videos, podcasts, or get back to what you’ve been reading.
+pocket-panel-home-explore-popular-topics = Explore Popular Topics
+pocket-panel-home-discover-more = Discover More
+pocket-panel-home-explore-more = Explore
+
+pocket-panel-home-most-recent-saves = Here are your most recent saves:
+pocket-panel-home-most-recent-saves-loading = Recent saves loading…
+pocket-panel-home-new-user-cta = Click the { -pocket-brand-name } button to save articles, videos, and links.
+pocket-panel-home-new-user-message = See your recent saves here.
+
+## Pocket panel header component
+
+pocket-panel-header-my-saves = View My Saves
+pocket-panel-header-sign-in = Sign In
+
+## Pocket panel buttons
+
+pocket-panel-button-show-all = Show All
+pocket-panel-button-activate = Activate { -pocket-brand-name } in { -brand-product-name }
+pocket-panel-button-remove = Remove
diff --git a/browser/locales/en-US/browser/aboutPolicies.ftl b/browser/locales/en-US/browser/aboutPolicies.ftl
new file mode 100644
index 0000000000..d5ef87a573
--- /dev/null
+++ b/browser/locales/en-US/browser/aboutPolicies.ftl
@@ -0,0 +1,17 @@
+# 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/.
+
+about-policies-title = Enterprise Policies
+
+# 'Active' is used to describe the policies that are currently active
+active-policies-tab = Active
+errors-tab = Errors
+documentation-tab = Documentation
+
+no-specified-policies-message = The Enterprise Policies service is active but there are no policies enabled.
+inactive-message = The Enterprise Policies service is inactive.
+
+policy-name = Policy Name
+policy-value = Policy Value
+policy-errors = Policy Errors
diff --git a/browser/locales/en-US/browser/aboutPrivateBrowsing.ftl b/browser/locales/en-US/browser/aboutPrivateBrowsing.ftl
new file mode 100644
index 0000000000..08851bce0e
--- /dev/null
+++ b/browser/locales/en-US/browser/aboutPrivateBrowsing.ftl
@@ -0,0 +1,78 @@
+# 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/.
+
+privatebrowsingpage-open-private-window-label = Open a Private Window
+ .accesskey = P
+about-private-browsing-search-placeholder = Search the web
+about-private-browsing-info-title = You’re in a Private Window
+about-private-browsing-search-btn =
+ .title = Search the web
+# Variables
+# $engine (String): the name of the user's default search engine
+about-private-browsing-handoff =
+ .title = Search with { $engine } or enter address
+about-private-browsing-handoff-no-engine =
+ .title = Search or enter address
+# Variables
+# $engine (String): the name of the user's default search engine
+about-private-browsing-handoff-text = Search with { $engine } or enter address
+about-private-browsing-handoff-text-no-engine = Search or enter address
+about-private-browsing-not-private = You are currently not in a private window.
+about-private-browsing-info-description-private-window = Private window: { -brand-short-name } clears your search and browsing history when you close all private windows. This doesn’t make you anonymous.
+about-private-browsing-info-description-simplified = { -brand-short-name } clears your search and browsing history when you close all private windows, but this doesn’t make you anonymous.
+about-private-browsing-learn-more-link = Learn more
+
+about-private-browsing-hide-activity = Hide your activity and location, everywhere you browse
+about-private-browsing-get-privacy = Get privacy protections everywhere you browse
+about-private-browsing-hide-activity-1 = Hide browsing activity and location with { -mozilla-vpn-brand-name }. One click creates a secure connection, even on public Wi-Fi.
+about-private-browsing-prominent-cta = Stay private with { -mozilla-vpn-brand-name }
+
+about-private-browsing-focus-promo-cta = Download { -focus-brand-name }
+about-private-browsing-focus-promo-header = { -focus-brand-name }: Private browsing on-the-go
+about-private-browsing-focus-promo-text = Our dedicated private browsing mobile app clears your history and cookies every time.
+
+## The following strings will be used for experiments in Fx99 and Fx100
+
+about-private-browsing-focus-promo-header-b = Take private browsing to your phone
+about-private-browsing-focus-promo-text-b = Use { -focus-brand-name } for those private searches you don’t want your main mobile browser to see.
+about-private-browsing-focus-promo-header-c = Next-level privacy on mobile
+about-private-browsing-focus-promo-text-c = { -focus-brand-name } clears your history every time while blocking ads and trackers.
+
+# This string is the title for the banner for search engine selection
+# in a private window.
+# Variables:
+# $engineName (String) - The engine name that will currently be used for the private window.
+about-private-browsing-search-banner-title = { $engineName } is your default search engine in Private Windows
+about-private-browsing-search-banner-description = {
+ PLATFORM() ->
+ [windows] To select a different search engine go to <a data-l10n-name="link-options">Options</a>
+ *[other] To select a different search engine go to <a data-l10n-name="link-options">Preferences</a>
+ }
+about-private-browsing-search-banner-close-button =
+ .aria-label = Close
+
+about-private-browsing-promo-close-button =
+ .title = Close
+
+## Strings used in a “pin promotion” message, which prompts users to pin a private window
+
+about-private-browsing-pin-promo-header = Private browsing freedom in one click
+about-private-browsing-pin-promo-link-text = { PLATFORM() ->
+ [macos] Keep in Dock
+ *[other] Pin to taskbar
+}
+about-private-browsing-pin-promo-title = No saved cookies or history, right from your desktop. Browse like no one’s watching.
+
+## Strings used in a promotion message for cookie banner reduction
+
+# Simplified version of the headline if the original text doesn't work
+# in your language: `{ -brand-short-name } will show fewer cookie requests`
+about-private-browsing-cookie-banners-promo-heading = { -brand-short-name } takes care of cookie banners for you
+about-private-browsing-cookie-banners-promo-body = We now automatically refuse many cookie banners so you can get tracked less and go back to distraction-free browsing.
+
+## Strings for Felt Privacy v1 experiments in 119
+
+about-private-browsing-felt-privacy-v1-info-header = Leave no traces on this device
+about-private-browsing-felt-privacy-v1-info-body = { -brand-short-name} deletes your cookies, history, and site data when you close all your private windows.
+about-private-browsing-felt-privacy-v1-info-link = Who might be able to see my activity?
diff --git a/browser/locales/en-US/browser/aboutRestartRequired.ftl b/browser/locales/en-US/browser/aboutRestartRequired.ftl
new file mode 100644
index 0000000000..ed7dc04fa2
--- /dev/null
+++ b/browser/locales/en-US/browser/aboutRestartRequired.ftl
@@ -0,0 +1,10 @@
+# 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/.
+
+restart-required-title = Restart Required
+restart-required-heading = Restart to Keep Using { -brand-short-name }
+restart-required-intro = An update to { -brand-short-name } started in the background. You’ll need to restart to finish the update.
+window-restoration-info = Your windows and tabs will be quickly restored, but private ones will not.
+
+restart-button-label = Restart { -brand-short-name }
diff --git a/browser/locales/en-US/browser/aboutRobots.ftl b/browser/locales/en-US/browser/aboutRobots.ftl
new file mode 100644
index 0000000000..04ec2e878e
--- /dev/null
+++ b/browser/locales/en-US/browser/aboutRobots.ftl
@@ -0,0 +1,29 @@
+# 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/.
+
+### These strings are used in the about:robots page, which ties in with the
+### robots theme used in the Firefox 3 Beta 2/3 first run pages.
+### They're just meant to be fun and whimsical, with references to some geeky
+### but well-known robots in movies and books. Be creative with translations!
+
+# Nonsense line from the movie "The Day The Earth Stood Still". No translation needed.
+page-title = Gort! Klaatu barada nikto!
+# Movie: Logan's Run... Box (cyborg): "Welcome Humans! I am ready for you."
+error-title-text = Welcome Humans!
+# Movie: The Day The Earth Stood Still. Spoken by Klaatu.
+error-short-desc-text = We have come to visit you in peace and with goodwill!
+# Various books by Isaac Asimov. http://en.wikipedia.org/wiki/Three_Laws_of_Robotics
+error-long-desc1 = Robots may not injure a human being or, through inaction, allow a human being to come to harm.
+# Movie: Blade Runner. Batty: "I've seen things you people wouldn’t believe..."
+error-long-desc2 = Robots have seen things you people wouldn’t believe.
+# Book: Hitchhiker’s Guide To The Galaxy. What the Sirius Cybernetics Corporation calls robots.
+error-long-desc3 = Robots are Your Plastic Pal Who’s Fun To Be With.
+# TV: Futurama. Bender's first line is "Bite my shiny metal ass."
+error-long-desc4 = Robots have shiny metal posteriors which should not be bitten.
+# TV: Battlestar Galactica (2004 series). From the opening text.
+error-trailer-desc-text = And they have a plan.
+# Book: Hitchhiker's Guide To The Galaxy. Arthur presses a button and it warns him.
+# Note: .label2 replaces this label after pressing the button the first time.
+error-try-again = Try Again
+ .label2 = Please do not press this button again.
diff --git a/browser/locales/en-US/browser/aboutSessionRestore.ftl b/browser/locales/en-US/browser/aboutSessionRestore.ftl
new file mode 100644
index 0000000000..ddb7f96238
--- /dev/null
+++ b/browser/locales/en-US/browser/aboutSessionRestore.ftl
@@ -0,0 +1,50 @@
+# 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/.
+
+restore-page-tab-title = Restore Session
+
+# The title is intended to be apologetic and disarming, expressing dismay
+# and regret that we are unable to restore the session for the user
+restore-page-error-title = Sorry. We’re having trouble getting your pages back.
+restore-page-problem-desc = We are having trouble restoring your last browsing session. Select Restore Session to try again.
+restore-page-try-this = Still not able to restore your session? Sometimes a tab is causing the issue. View previous tabs, remove the checkmark from the tabs you don’t need to recover, and then restore.
+
+restore-page-hide-tabs = Hide Previous Tabs
+restore-page-show-tabs = View Previous Tabs
+
+# When tabs are distributed across multiple windows, this message is used as a
+# header above the group of tabs for each window.
+#
+# Variables:
+# $windowNumber: Progressive number associated to each window
+restore-page-window-label = Window { $windowNumber }
+
+restore-page-restore-header =
+ .label = Restore
+
+restore-page-list-header =
+ .label = Windows and Tabs
+
+restore-page-try-again-button =
+ .label = Restore Session
+ .accesskey = R
+
+restore-page-close-button =
+ .label = Start New Session
+ .accesskey = N
+
+## The following strings are used in about:welcomeback
+
+welcome-back-tab-title = Success!
+welcome-back-page-title = Success!
+welcome-back-page-info = { -brand-short-name } is ready to go.
+
+welcome-back-restore-button =
+ .label = Let’s go!
+ .accesskey = L
+
+welcome-back-restore-all-label = Restore all windows & tabs
+welcome-back-restore-some-label = Restore only the ones you want
+
+welcome-back-page-info-link = Your add-ons and customizations have been removed and your browser settings have been restored to their defaults. If this didn’t fix your issue, <a data-l10n-name="link-more">learn more about what you can do.</a>
diff --git a/browser/locales/en-US/browser/aboutTabCrashed.ftl b/browser/locales/en-US/browser/aboutTabCrashed.ftl
new file mode 100644
index 0000000000..33f5098de4
--- /dev/null
+++ b/browser/locales/en-US/browser/aboutTabCrashed.ftl
@@ -0,0 +1,22 @@
+# 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/.
+
+crashed-title = Tab crash reporter
+crashed-close-tab-button = Close Tab
+crashed-restore-tab-button = Restore This Tab
+crashed-restore-all-button = Restore All Crashed Tabs
+crashed-header = Gah. Your tab just crashed.
+crashed-offer-help = We can help!
+crashed-single-offer-help-message = Choose { crashed-restore-tab-button } to reload the page.
+crashed-multiple-offer-help-message = Choose { crashed-restore-tab-button } or { crashed-restore-all-button } to reload the page/pages.
+crashed-request-help = Will you help us?
+crashed-request-help-message = Crash reports help us diagnose problems and make { -brand-short-name } better.
+crashed-request-report-title = Report this tab
+crashed-send-report-2 = Send an automated crash report so we can fix issues like this
+crashed-comment =
+ .placeholder = Optional comments (comments are publicly visible)
+crashed-include-URL-2 = Include the URLs of the sites you were on when { -brand-short-name } crashed
+crashed-report-sent = Crash report already submitted; thank you for helping make { -brand-short-name } better!
+crashed-request-auto-submit-title = Report background tabs
+crashed-auto-submit-checkbox-2 = Update preferences to automatically submit reports when { -brand-short-name } crashes
diff --git a/browser/locales/en-US/browser/aboutUnloads.ftl b/browser/locales/en-US/browser/aboutUnloads.ftl
new file mode 100644
index 0000000000..7b93e3f468
--- /dev/null
+++ b/browser/locales/en-US/browser/aboutUnloads.ftl
@@ -0,0 +1,51 @@
+# 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/.
+
+### Strings used in about:unloads, allowing users to manage the "tab unloading"
+### feature.
+
+about-unloads-page-title = Tab Unloading
+about-unloads-intro =
+ { -brand-short-name } has a feature that automatically unloads tabs
+ to prevent the application from crashing due to insufficient memory
+ when the system’s available memory is low. The next tab to be unloaded is
+ chosen based on multiple attributes. This page shows how
+ { -brand-short-name } prioritizes tabs and which tab will be unloaded
+ when tab unloading is triggered. You can trigger tab unloading manually
+ by clicking the <em>Unload</em> button below.
+
+# The link points to a Firefox documentation page, only available in English,
+# with title "Tab Unloading"
+about-unloads-learn-more =
+ See <a data-l10n-name="doc-link">Tab Unloading</a> to learn more about
+ the feature and this page.
+
+about-unloads-last-updated =
+ Last updated: { DATETIME($date,
+ year: "numeric", month: "numeric", day: "numeric",
+ hour: "numeric", minute: "numeric", second: "numeric",
+ hour12: "false") }
+about-unloads-button-unload = Unload
+ .title = Unload tab with the highest priority
+about-unloads-no-unloadable-tab = There are no unloadable tabs.
+
+about-unloads-column-priority = Priority
+about-unloads-column-host = Host
+about-unloads-column-last-accessed = Last Accessed
+about-unloads-column-weight = Base Weight
+ .title = Tabs are first sorted by this value, which derives from some special attributes such as playing a sound, WebRTC, etc.
+about-unloads-column-sortweight = Secondary Weight
+ .title = If available, tabs are sorted by this value after being sorted by the base weight. The value derives from tab’s memory usage and the count of processes.
+about-unloads-column-memory = Memory
+ .title = Tab’s estimated memory usage
+about-unloads-column-processes = Process IDs
+ .title = IDs of the processes hosting tab’s content
+
+about-unloads-last-accessed = { DATETIME($date,
+ year: "numeric", month: "numeric", day: "numeric",
+ hour: "numeric", minute: "numeric", second: "numeric",
+ hour12: "false") }
+about-unloads-memory-in-mb = { NUMBER($mem, maxFractionalUnits: 2) } MB
+about-unloads-memory-in-mb-tooltip =
+ .title = { NUMBER($mem, maxFractionalUnits: 2) } MB
diff --git a/browser/locales/en-US/browser/accounts.ftl b/browser/locales/en-US/browser/accounts.ftl
new file mode 100644
index 0000000000..21f95d0b14
--- /dev/null
+++ b/browser/locales/en-US/browser/accounts.ftl
@@ -0,0 +1,106 @@
+# 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/.
+
+# Used as the FxA toolbar menu item value when user has not
+# finished setting up an account.
+account-finish-account-setup = Finish Account Setup
+
+# Used as the FxA toolbar menu item title when the user
+# needs to reconnect their account.
+account-disconnected2 = Account disconnected
+
+# Menu item that sends a tab to all synced devices.
+account-send-to-all-devices = Send to all devices
+
+# Menu item that links to the Firefox Accounts settings for connected devices.
+account-manage-devices = Manage devices…
+
+## Variables:
+## $email (String): = Email address of user's Firefox Account.
+
+account-reconnect = Reconnect { $email }
+account-verify = Verify { $email }
+
+## Displayed in the Send Tab/Page/Link to Device context menu when right clicking a tab, a page or a link.
+
+account-send-to-all-devices-titlecase = Send to All Devices
+account-manage-devices-titlecase = Manage Devices…
+
+## Displayed in the Send Tabs context menu when right clicking a tab, a page or a link
+## and the account has only 1 device connected.
+
+# Redirects to a marketing page.
+account-send-tab-to-device-singledevice-status = No Devices Connected
+
+# Redirects to a marketing page.
+account-send-tab-to-device-singledevice-learnmore = Learn About Sending Tabs…
+
+# Redirects to an FxAccounts page that tells to you to connect another device.
+account-send-tab-to-device-connectdevice = Connect Another Device…
+
+## Displayed in the Send Tabs context menu when right clicking a tab, a page or a link
+## and the Sync account is unverified. Redirects to the Sync preferences page.
+
+account-send-tab-to-device-verify-status = Account Not Verified
+account-send-tab-to-device-verify = Verify Your Account…
+
+## These strings are used in a notification shown when a new device joins the Firefox account.
+
+# The title shown in a notification when either this device or another device
+# has connected to, or disconnected from, a Firefox account.
+account-connection-title = { -fxaccount-brand-name(capitalization: "title") }
+
+# Variables:
+# $deviceName (String): the name of the new device
+account-connection-connected-with = This computer is now connected with { $deviceName }.
+
+# Used when the name of the new device is not known.
+account-connection-connected-with-noname = This computer is now connected with a new device.
+
+# Used in a notification shown after a Firefox account is connected to the current device.
+account-connection-connected = You have signed in successfully
+
+# Used in a notification shown after the Firefox account was disconnected remotely.
+account-connection-disconnected = This computer has been disconnected.
+
+## These strings are used in a notification shown when we're opening
+## a single tab another device sent us to display.
+## The body for this notification is the URL of the received tab.
+
+account-single-tab-arriving-title = Tab Received
+# Variables:
+# $deviceName (String): the device name.
+account-single-tab-arriving-from-device-title = Tab from { $deviceName }
+
+# Used when a tab from a remote device arrives but the URL must be truncated.
+# Should display the URL with an indication that it's been truncated.
+# Variables:
+# $url (String): the portion of the URL that remains after truncation.
+account-single-tab-arriving-truncated-url = { $url }…
+
+## These strings are used in a notification shown when we're opening
+## multiple tabs another device or devices sent us to display.
+## Variables:
+## $tabCount (Number): the number of tabs received
+
+account-multiple-tabs-arriving-title = Tabs Received
+
+# Variables:
+# $deviceName (String): the device name.
+account-multiple-tabs-arriving-from-single-device =
+ { $tabCount ->
+ [one] { $tabCount } tab has arrived from { $deviceName }
+ *[other] { $tabCount } tabs have arrived from { $deviceName }
+ }
+account-multiple-tabs-arriving-from-multiple-devices =
+ { $tabCount ->
+ [one] { $tabCount } tab has arrived from your connected devices
+ *[other] { $tabCount } tabs have arrived from your connected devices
+ }
+# This version is used when we don't know any device names.
+account-multiple-tabs-arriving-from-unknown-device =
+ { $tabCount ->
+ [one] { $tabCount } tab has arrived
+ *[other] { $tabCount } tabs have arrived
+ }
diff --git a/browser/locales/en-US/browser/addonNotifications.ftl b/browser/locales/en-US/browser/addonNotifications.ftl
new file mode 100644
index 0000000000..9728c5e666
--- /dev/null
+++ b/browser/locales/en-US/browser/addonNotifications.ftl
@@ -0,0 +1,135 @@
+# 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/.
+
+xpinstall-prompt = { -brand-short-name } prevented this site from asking you to install software on your computer.
+
+## Variables:
+## $host (String): The hostname of the site the add-on is being installed from.
+
+xpinstall-prompt-header = Allow { $host } to install an add-on?
+xpinstall-prompt-message = You are attempting to install an add-on from { $host }. Make sure you trust this site before continuing.
+
+##
+
+xpinstall-prompt-header-unknown = Allow an unknown site to install an add-on?
+xpinstall-prompt-message-unknown = You are attempting to install an add-on from an unknown site. Make sure you trust this site before continuing.
+
+xpinstall-prompt-dont-allow =
+ .label = Don’t Allow
+ .accesskey = D
+xpinstall-prompt-never-allow =
+ .label = Never Allow
+ .accesskey = N
+# Long text in this context make the dropdown menu extend awkwardly to the left,
+# avoid a localization that's significantly longer than the English version.
+xpinstall-prompt-never-allow-and-report =
+ .label = Report Suspicious Site
+ .accesskey = R
+# Accessibility Note:
+# Be sure you do not choose an accesskey that is used elsewhere in the active context (e.g. main menu bar, submenu of the warning popup button)
+# See https://website-archive.mozilla.org/www.mozilla.org/access/access/keyboard/ for details
+xpinstall-prompt-install =
+ .label = Continue to Installation
+ .accesskey = C
+
+# These messages are shown when a website invokes navigator.requestMIDIAccess.
+
+site-permission-install-first-prompt-midi-header = This site is requesting access to your MIDI (Musical Instrument Digital Interface) devices. Device access can be enabled by installing an add-on.
+site-permission-install-first-prompt-midi-message = This access is not guaranteed to be safe. Only continue if you trust this site.
+
+##
+
+xpinstall-disabled-by-policy = Software installation has been disabled by your organization.
+xpinstall-disabled = Software installation is currently disabled. Click Enable and try again.
+xpinstall-disabled-button =
+ .label = Enable
+ .accesskey = n
+
+# This message is shown when the installation of an add-on is blocked by enterprise policy.
+# Variables:
+# $addonName (String): the name of the add-on.
+# $addonId (String): the ID of add-on.
+addon-installation-blocked-by-policy = { $addonName } ({ $addonId }) is blocked by your organization.
+# This message is shown when the installation of add-ons from a domain is blocked by enterprise policy.
+addon-install-domain-blocked-by-policy = Your organization prevented this site from asking you to install software on your computer.
+addon-install-full-screen-blocked = Add-on installation is not allowed while in or before entering fullscreen mode.
+
+# Variables:
+# $addonName (String): the localized name of the sideloaded add-on.
+webext-perms-sideload-menu-item = { $addonName } added to { -brand-short-name }
+# Variables:
+# $addonName (String): the localized name of the extension which has been updated.
+webext-perms-update-menu-item = { $addonName } requires new permissions
+
+# This message is shown when one or more extensions have been imported from a
+# different browser into Firefox, and the user needs to complete the import to
+# start these extensions. This message is shown in the appmenu.
+webext-imported-addons = Finalize installing extensions imported to { -brand-short-name }
+
+## Add-on removal warning
+
+# Variables:
+# $name (String): The name of the add-on that will be removed.
+addon-removal-title = Remove { $name }?
+# Variables:
+# $name (String): the name of the extension which is about to be removed.
+addon-removal-message = Remove { $name } from { -brand-shorter-name }?
+addon-removal-button = Remove
+addon-removal-abuse-report-checkbox = Report this extension to { -vendor-short-name }
+
+# Variables:
+# $addonCount (Number): the number of add-ons being downloaded
+addon-downloading-and-verifying =
+ { $addonCount ->
+ [1] Downloading and verifying add-on…
+ *[other] Downloading and verifying { $addonCount } add-ons…
+ }
+addon-download-verifying = Verifying
+
+addon-install-cancel-button =
+ .label = Cancel
+ .accesskey = C
+addon-install-accept-button =
+ .label = Add
+ .accesskey = A
+
+## Variables:
+## $addonCount (Number): the number of add-ons being installed
+
+addon-confirm-install-message =
+ { $addonCount ->
+ [1] This site would like to install an add-on in { -brand-short-name }:
+ *[other] This site would like to install { $addonCount } add-ons in { -brand-short-name }:
+ }
+addon-confirm-install-unsigned-message =
+ { $addonCount ->
+ [1] Caution: This site would like to install an unverified add-on in { -brand-short-name }. Proceed at your own risk.
+ *[other] Caution: This site would like to install { $addonCount } unverified add-ons in { -brand-short-name }. Proceed at your own risk.
+ }
+# Variables:
+# $addonCount (Number): the number of add-ons being installed (at least 2)
+addon-confirm-install-some-unsigned-message =
+ { $addonCount ->
+ *[other] Caution: This site would like to install { $addonCount } add-ons in { -brand-short-name }, some of which are unverified. Proceed at your own risk.
+ }
+
+## Add-on install errors
+## Variables:
+## $addonName (String): the add-on name.
+
+addon-install-error-network-failure = The add-on could not be downloaded because of a connection failure.
+addon-install-error-incorrect-hash = The add-on could not be installed because it does not match the add-on { -brand-short-name } expected.
+addon-install-error-corrupt-file = The add-on downloaded from this site could not be installed because it appears to be corrupt.
+addon-install-error-file-access = { $addonName } could not be installed because { -brand-short-name } cannot modify the needed file.
+addon-install-error-not-signed = { -brand-short-name } has prevented this site from installing an unverified add-on.
+addon-install-error-invalid-domain = The add-on { $addonName } can not be installed from this location.
+addon-local-install-error-network-failure = This add-on could not be installed because of a filesystem error.
+addon-local-install-error-incorrect-hash = This add-on could not be installed because it does not match the add-on { -brand-short-name } expected.
+addon-local-install-error-corrupt-file = This add-on could not be installed because it appears to be corrupt.
+addon-local-install-error-file-access = { $addonName } could not be installed because { -brand-short-name } cannot modify the needed file.
+addon-local-install-error-not-signed = This add-on could not be installed because it has not been verified.
+# Variables:
+# $appVersion (String): the application version.
+addon-install-error-incompatible = { $addonName } could not be installed because it is not compatible with { -brand-short-name } { $appVersion }.
+addon-install-error-blocklisted = { $addonName } could not be installed because it has a high risk of causing stability or security problems.
diff --git a/browser/locales/en-US/browser/allTabsMenu.ftl b/browser/locales/en-US/browser/allTabsMenu.ftl
new file mode 100644
index 0000000000..019c22361b
--- /dev/null
+++ b/browser/locales/en-US/browser/allTabsMenu.ftl
@@ -0,0 +1,13 @@
+# 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/.
+
+# "Search" is a verb, as in "Search through tabs".
+all-tabs-menu-search-tabs =
+ .label = Search tabs
+
+all-tabs-menu-new-user-context =
+ .label = New container tab
+
+all-tabs-menu-hidden-tabs =
+ .label = Hidden tabs
diff --git a/browser/locales/en-US/browser/appExtensionFields.ftl b/browser/locales/en-US/browser/appExtensionFields.ftl
new file mode 100644
index 0000000000..09d7a076ec
--- /dev/null
+++ b/browser/locales/en-US/browser/appExtensionFields.ftl
@@ -0,0 +1,30 @@
+# 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/.
+
+## Theme names and descriptions used in the Themes panel in about:addons
+
+# "Auto" is short for automatic. It can be localized without limitations.
+extension-default-theme-name-auto=System theme — auto
+extension-default-theme-description=Follow the operating system setting for buttons, menus, and windows.
+
+extension-firefox-compact-light-name=Light
+extension-firefox-compact-light-description=A theme with a light color scheme.
+
+extension-firefox-compact-dark-name=Dark
+extension-firefox-compact-dark-description=A theme with a dark color scheme.
+
+extension-firefox-alpenglow-name=Firefox Alpenglow
+extension-firefox-alpenglow-description=Use a colorful appearance for buttons, menus, and windows.
+
+## Colorway Themes
+## These themes are variants of a colorway. The colorway is specified in the
+## $colorway-name variable.
+## Variables
+## $colorway-name (String) The name of a colorway (e.g. Graffiti, Elemental).
+
+extension-colorways-soft-name={ $colorway-name } — Soft
+extension-colorways-balanced-name={ $colorway-name } — Balanced
+# "Bold" is used in the sense of bravery or courage, not in the sense of
+# emphasized text.
+extension-colorways-bold-name={ $colorway-name } — Bold
diff --git a/browser/locales/en-US/browser/appMenuNotifications.ftl b/browser/locales/en-US/browser/appMenuNotifications.ftl
new file mode 100644
index 0000000000..6c6033f62a
--- /dev/null
+++ b/browser/locales/en-US/browser/appMenuNotifications.ftl
@@ -0,0 +1,66 @@
+# 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/.
+
+appmenu-update-available2 =
+ .label = Update available
+ .buttonlabel = Download
+ .buttonaccesskey = D
+ .secondarybuttonlabel = Dismiss
+ .secondarybuttonaccesskey = m
+appmenu-update-available-message2 = Download the latest version of { -brand-shorter-name }.
+appmenu-update-manual2 =
+ .label = Update available
+ .buttonlabel = Download
+ .buttonaccesskey = D
+ .secondarybuttonlabel = Dismiss
+ .secondarybuttonaccesskey = m
+appmenu-update-manual-message2 = { -brand-shorter-name } couldn’t update automatically. Download the new version — you won’t lose saved information or customizations.
+appmenu-update-unsupported2 =
+ .label = Unable to update
+ .buttonlabel = Learn more
+ .buttonaccesskey = L
+ .secondarybuttonlabel = Dismiss
+ .secondarybuttonaccesskey = m
+appmenu-update-unsupported-message2 = Your operating system isn’t compatible with the latest version of { -brand-shorter-name }.
+appmenu-update-restart2 =
+ .label = Update available
+ .buttonlabel = Update and restart
+ .buttonaccesskey = U
+ .secondarybuttonlabel = Dismiss
+ .secondarybuttonaccesskey = m
+appmenu-update-restart-message2 = Get the latest version of { -brand-shorter-name }. Open tabs and windows will be restored.
+appmenu-update-other-instance =
+ .label = { -brand-shorter-name } is unable to automatically update to the latest version.
+ .buttonlabel = Update { -brand-shorter-name } anyway
+ .buttonaccesskey = U
+ .secondarybuttonlabel = Not Now
+ .secondarybuttonaccesskey = N
+appmenu-update-other-instance-message = A new { -brand-shorter-name } update is available, but it can’t be installed because another copy of { -brand-shorter-name } is running. Close it to continue the update, or choose to update anyway (the other copy may not work correctly until you restart it).
+
+appmenu-addon-private-browsing-installed2 =
+ .buttonlabel = Okay
+ .buttonaccesskey = O
+appmenu-addon-post-install-message3 = Manage your add-ons and themes through the application menu.
+appmenu-addon-post-install-incognito-checkbox =
+ .label = Allow this extension to run in Private Windows
+ .accesskey = A
+
+appmenu-new-tab-controlled-changes =
+ .label = Your new tab has changed.
+ .buttonlabel = Keep Changes
+ .buttonaccesskey = K
+ .secondarybuttonlabel = Manage New Tabs
+ .secondarybuttonaccesskey = M
+appmenu-homepage-controlled-changes =
+ .label = Your homepage has changed.
+ .buttonlabel = Keep Changes
+ .buttonaccesskey = K
+ .secondarybuttonlabel = Manage Homepage
+ .secondarybuttonaccesskey = M
+appmenu-tab-hide-controlled =
+ .label = Access Your Hidden Tabs
+ .buttonlabel = Keep Tabs Hidden
+ .buttonaccesskey = K
+ .secondarybuttonlabel = Disable Extension
+ .secondarybuttonaccesskey = D
diff --git a/browser/locales/en-US/browser/appmenu.ftl b/browser/locales/en-US/browser/appmenu.ftl
new file mode 100644
index 0000000000..5ad2d75f62
--- /dev/null
+++ b/browser/locales/en-US/browser/appmenu.ftl
@@ -0,0 +1,316 @@
+# 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/.
+
+## App Menu
+
+appmenuitem-banner-update-downloading =
+ .label = Downloading { -brand-shorter-name } update
+
+appmenuitem-banner-update-available =
+ .label = Update available — download now
+
+appmenuitem-banner-update-manual =
+ .label = Update available — download now
+
+appmenuitem-banner-update-unsupported =
+ .label = Unable to update — system incompatible
+
+appmenuitem-banner-update-restart =
+ .label = Update available — restart now
+
+appmenuitem-new-tab =
+ .label = New tab
+appmenuitem-new-window =
+ .label = New window
+appmenuitem-new-private-window =
+ .label = New private window
+appmenuitem-history =
+ .label = History
+appmenuitem-downloads =
+ .label = Downloads
+appmenuitem-passwords =
+ .label = Passwords
+appmenuitem-addons-and-themes =
+ .label = Add-ons and themes
+appmenuitem-print =
+ .label = Print…
+appmenuitem-find-in-page =
+ .label = Find in page…
+appmenuitem-translate =
+ .label = Translate page…
+appmenuitem-zoom =
+ .value = Zoom
+appmenuitem-more-tools =
+ .label = More tools
+appmenuitem-help =
+ .label = Help
+appmenuitem-exit2 =
+ .label =
+ { PLATFORM() ->
+ [linux] Quit
+ *[other] Exit
+ }
+appmenu-menu-button-closed2 =
+ .tooltiptext = Open application menu
+ .label = { -brand-short-name }
+appmenu-menu-button-opened2 =
+ .tooltiptext = Close application menu
+ .label = { -brand-short-name }
+
+# Settings is now used to access the browser settings across all platforms,
+# instead of Options or Preferences.
+appmenuitem-settings =
+ .label = Settings
+
+## Zoom and Fullscreen Controls
+
+appmenuitem-zoom-enlarge =
+ .label = Zoom in
+appmenuitem-zoom-reduce =
+ .label = Zoom out
+appmenuitem-fullscreen =
+ .label = Full screen
+
+## Firefox Account toolbar button and Sync panel in App menu.
+
+appmenu-remote-tabs-sign-into-sync =
+ .label = Sign in to sync…
+appmenu-remote-tabs-turn-on-sync =
+ .label = Turn on sync…
+
+# This is shown after the tabs list if we can display more tabs by clicking on the button
+appmenu-remote-tabs-showmore =
+ .label = Show More Tabs
+ .tooltiptext = Show more tabs from this device
+
+# This is shown when there are inactive tabs which are not being shown.
+# Variables
+# $count (Number) - The number of inactive tabs which are not being shown (at least 1)
+appmenu-remote-tabs-showinactive =
+ .label =
+ { $count ->
+ [one] Show one inactive tab
+ *[other] Show { $count } inactive tabs
+ }
+ .tooltiptext = Show the inactive tabs on this device
+
+# This is shown beneath the name of a device when that device has no open tabs
+appmenu-remote-tabs-notabs = No open tabs
+
+# This is shown when Sync is configured but syncing tabs is disabled.
+appmenu-remote-tabs-tabsnotsyncing = Turn on tab syncing to view a list of tabs from your other devices.
+
+appmenu-remote-tabs-opensettings =
+ .label = Settings
+
+# This is shown when Sync is configured but this appears to be the only device attached to
+# the account. We also show links to download Firefox for android/ios.
+appmenu-remote-tabs-noclients = Want to see your tabs from other devices here?
+
+appmenu-remote-tabs-connectdevice =
+ .label = Connect Another Device
+appmenu-remote-tabs-welcome = View a list of tabs from your other devices.
+appmenu-remote-tabs-unverified = Your account needs to be verified.
+
+appmenuitem-fxa-toolbar-sync-now2 = Sync now
+appmenuitem-fxa-sign-in = Sign in to { -brand-product-name }
+appmenuitem-fxa-manage-account = Manage account
+appmenu-account-header = Account
+# Variables
+# $time (string) - Localized relative time since last sync (e.g. 1 second ago,
+# 3 hours ago, etc.)
+appmenu-fxa-last-sync = Last synced { $time }
+ .label = Last synced { $time }
+appmenu-fxa-sync-and-save-data2 = Sync and save data
+appmenu-fxa-signed-in-label = Sign In
+appmenu-fxa-setup-sync =
+ .label = Turn On Syncing…
+
+appmenuitem-save-page =
+ .label = Save page as…
+
+## What's New panel in App menu.
+
+whatsnew-panel-header = What’s New
+
+# Checkbox displayed at the bottom of the What's New panel, allowing users to
+# enable/disable What's New notifications.
+whatsnew-panel-footer-checkbox =
+ .label = Notify about new features
+ .accesskey = f
+
+## The Firefox Profiler – The popup is the UI to turn on the profiler, and record
+## performance profiles. To enable it go to profiler.firefox.com and click
+## "Enable Profiler Menu Button".
+
+profiler-popup-button-idle =
+ .label = Profiler
+ .tooltiptext = Record a performance profile
+
+profiler-popup-button-recording =
+ .label = Profiler
+ .tooltiptext = The profiler is recording a profile
+
+profiler-popup-button-capturing =
+ .label = Profiler
+ .tooltiptext = The profiler is capturing a profile
+
+profiler-popup-header-text = { -profiler-brand-name }
+
+profiler-popup-reveal-description-button =
+ .aria-label = Reveal more information
+
+profiler-popup-description-title =
+ .value = Record, analyze, share
+
+profiler-popup-description =
+ Collaborate on performance issues by publishing profiles to share with your team.
+
+profiler-popup-learn-more-button =
+ .label = Learn more
+
+profiler-popup-settings =
+ .value = Settings
+
+# This link takes the user to about:profiling, and is only visible with the Custom preset.
+profiler-popup-edit-settings-button =
+ .label = Edit Settings…
+
+profiler-popup-recording-screen = Recording…
+
+profiler-popup-start-recording-button =
+ .label = Start Recording
+
+profiler-popup-discard-button =
+ .label = Discard
+
+profiler-popup-capture-button =
+ .label = Capture
+
+profiler-popup-start-shortcut =
+ { PLATFORM() ->
+ [macos] ⌃⇧1
+ *[other] Ctrl+Shift+1
+ }
+
+profiler-popup-capture-shortcut =
+ { PLATFORM() ->
+ [macos] ⌃⇧2
+ *[other] Ctrl+Shift+2
+ }
+
+## Profiler presets
+## They are shown in the popup's select box.
+
+# Presets and their l10n IDs are defined in the file
+# devtools/client/performance-new/shared/background.sys.mjs
+# Please take care that the same values are also defined in devtools' perftools.ftl.
+
+profiler-popup-presets-web-developer-description = Recommended preset for most web app debugging, with low overhead.
+profiler-popup-presets-web-developer-label =
+ .label = Web Developer
+
+profiler-popup-presets-firefox-description = Recommended preset for profiling { -brand-shorter-name }.
+profiler-popup-presets-firefox-label =
+ .label = { -brand-shorter-name }
+
+profiler-popup-presets-graphics-description = Preset for investigating graphics bugs in { -brand-shorter-name }.
+profiler-popup-presets-graphics-label =
+ .label = Graphics
+
+profiler-popup-presets-media-description2 = Preset for investigating audio and video bugs in { -brand-shorter-name }.
+profiler-popup-presets-media-label =
+ .label = Media
+
+profiler-popup-presets-networking-description = Preset for investigating networking bugs in { -brand-shorter-name }.
+profiler-popup-presets-networking-label =
+ .label = Networking
+
+profiler-popup-presets-power-description = Preset for investigating power use bugs in { -brand-shorter-name }, with low overhead.
+# "Power" is used in the sense of energy (electricity used by the computer).
+profiler-popup-presets-power-label =
+ .label = Power
+
+profiler-popup-presets-custom-label =
+ .label = Custom
+
+## History panel
+
+appmenu-manage-history =
+ .label = Manage history
+appmenu-restore-session =
+ .label = Restore previous session
+appmenu-clear-history =
+ .label = Clear recent history…
+appmenu-recent-history-subheader = Recent history
+appmenu-recently-closed-tabs =
+ .label = Recently closed tabs
+appmenu-recently-closed-windows =
+ .label = Recently closed windows
+# This allows to search through the browser's history.
+appmenu-search-history =
+ .label = Search history
+
+## Help panel
+
+appmenu-help-header =
+ .title = { -brand-shorter-name } help
+appmenu-about =
+ .label = About { -brand-shorter-name }
+ .accesskey = A
+appmenu-get-help =
+ .label = Get help
+ .accesskey = h
+appmenu-help-more-troubleshooting-info =
+ .label = More troubleshooting information
+ .accesskey = t
+appmenu-help-report-site-issue =
+ .label = Report site issue…
+appmenu-help-share-ideas =
+ .label = Share ideas and feedback…
+ .accesskey = S
+appmenu-help-switch-device =
+ .label = Switching to a new device
+
+## appmenu-help-enter-troubleshoot-mode and appmenu-help-exit-troubleshoot-mode
+## are mutually exclusive, so it's possible to use the same accesskey for both.
+
+appmenu-help-enter-troubleshoot-mode2 =
+ .label = Troubleshoot Mode…
+ .accesskey = M
+appmenu-help-exit-troubleshoot-mode =
+ .label = Turn Troubleshoot Mode off
+ .accesskey = M
+
+## appmenu-help-report-deceptive-site and appmenu-help-not-deceptive
+## are mutually exclusive, so it's possible to use the same accesskey for both.
+
+appmenu-help-report-deceptive-site =
+ .label = Report deceptive site…
+ .accesskey = d
+appmenu-help-not-deceptive =
+ .label = This isn’t a deceptive site…
+ .accesskey = d
+
+## More Tools
+
+appmenu-customizetoolbar =
+ .label = Customize toolbar…
+
+appmenu-developer-tools-subheader = Browser tools
+appmenu-developer-tools-extensions =
+ .label = Extensions for developers
+appmenuitem-report-broken-site =
+ .label = Report broken site
+
+## Panel for privacy and security products
+
+appmenuitem-sign-in-account = Sign in to your account
+
+appmenuitem-monitor-title = { -monitor-brand-short-name }
+appmenuitem-monitor-description = Get data breach alerts
+appmenuitem-relay-title = { -relay-brand-short-name }
+appmenuitem-relay-description = Mask your real email and phone
+appmenuitem-vpn-title = { -mozilla-vpn-brand-name }
+appmenuitem-vpn-description = Protect your online activity
diff --git a/browser/locales/en-US/browser/backgroundtasks/defaultagent.ftl b/browser/locales/en-US/browser/backgroundtasks/defaultagent.ftl
new file mode 100644
index 0000000000..8622188c4b
--- /dev/null
+++ b/browser/locales/en-US/browser/backgroundtasks/defaultagent.ftl
@@ -0,0 +1,9 @@
+# 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/.
+
+default-browser-agent-task-description = The Default Browser Agent task checks when the default changes from { -brand-short-name } to another browser. If the change happens under suspicious circumstances, it will prompt users to change back to { -brand-short-name } no more than two times. This task is installed automatically by { -brand-short-name }, and is reinstalled when { -brand-short-name } updates. To disable this task, update the “default-browser-agent.enabled” preference on the about:config page or the { -brand-short-name } enterprise policy setting “DisableDefaultBrowserAgent”.
+default-browser-notification-header-text = Keep using { -brand-short-name }?
+default-browser-notification-body-text = Your default browser was recently changed. Tap to restore { -brand-short-name } to default.
+default-browser-notification-yes-button-text = Yes
+default-browser-notification-no-button-text = No
diff --git a/browser/locales/en-US/browser/browser.ftl b/browser/locales/en-US/browser/browser.ftl
new file mode 100644
index 0000000000..02ba7bb1fa
--- /dev/null
+++ b/browser/locales/en-US/browser/browser.ftl
@@ -0,0 +1,1071 @@
+# 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/.
+
+## The main browser window's title
+
+# These are the default window titles everywhere except macOS.
+# .data-title-default and .data-title-private are used when the web content
+# opened has no title:
+#
+# default - "Mozilla Firefox"
+# private - "Mozilla Firefox (Private Browsing)"
+#
+# .data-content-title-default and .data-content-title-private are for use when
+# there *is* a content title.
+# Variables:
+# $content-title (String): the title of the web content.
+browser-main-window-window-titles =
+ .data-title-default = { -brand-full-name }
+ .data-title-private = { -brand-full-name } Private Browsing
+ .data-content-title-default = { $content-title } — { -brand-full-name }
+ .data-content-title-private = { $content-title } — { -brand-full-name } Private Browsing
+
+# These are the default window titles on macOS.
+# .data-title-default and .data-title-private are used when the web content
+# opened has no title:
+#
+#
+# "default" - "Mozilla Firefox"
+# "private" - "Mozilla Firefox — (Private Browsing)"
+#
+# .data-content-title-default and .data-content-title-private are for use when
+# there *is* a content title.
+# Do not use the brand name in these, as we do on non-macOS.
+#
+# Also note the other subtle difference here: we use a `-` to separate the
+# brand name from `(Private Browsing)`, which does not happen on other OSes.
+#
+# Variables:
+# $content-title (String): the title of the web content.
+browser-main-window-mac-window-titles =
+ .data-title-default = { -brand-full-name }
+ .data-title-private = { -brand-full-name } — Private Browsing
+ .data-content-title-default = { $content-title }
+ .data-content-title-private = { $content-title } — Private Browsing
+
+# This gets set as the initial title, and is overridden as soon as we start
+# updating the titlebar based on loaded tabs or private browsing state.
+# This should match the `data-title-default` attribute in both
+# `browser-main-window` and `browser-main-window-mac`.
+browser-main-window-title = { -brand-full-name }
+
+# The non-variable portion of this MUST match the translation of
+# "PRIVATE_BROWSING_SHORTCUT_TITLE" in custom.properties
+private-browsing-shortcut-text-2 = { -brand-shortcut-name } Private Browsing
+
+##
+
+urlbar-identity-button =
+ .aria-label = View site information
+
+## Tooltips for images appearing in the address bar
+
+urlbar-services-notification-anchor =
+ .tooltiptext = Open install message panel
+urlbar-web-notification-anchor =
+ .tooltiptext = Change whether you can receive notifications from the site
+urlbar-midi-notification-anchor =
+ .tooltiptext = Open MIDI panel
+urlbar-eme-notification-anchor =
+ .tooltiptext = Manage use of DRM software
+urlbar-web-authn-anchor =
+ .tooltiptext = Open Web Authentication panel
+urlbar-canvas-notification-anchor =
+ .tooltiptext = Manage canvas extraction permission
+urlbar-web-rtc-share-microphone-notification-anchor =
+ .tooltiptext = Manage sharing your microphone with the site
+urlbar-default-notification-anchor =
+ .tooltiptext = Open message panel
+urlbar-geolocation-notification-anchor =
+ .tooltiptext = Open location request panel
+urlbar-xr-notification-anchor =
+ .tooltiptext = Open virtual reality permission panel
+urlbar-storage-access-anchor =
+ .tooltiptext = Open browsing activity permission panel
+urlbar-web-rtc-share-screen-notification-anchor =
+ .tooltiptext = Manage sharing your windows or screen with the site
+urlbar-indexed-db-notification-anchor =
+ .tooltiptext = Open offline storage message panel
+urlbar-password-notification-anchor =
+ .tooltiptext = Open save password message panel
+urlbar-web-rtc-share-devices-notification-anchor =
+ .tooltiptext = Manage sharing your camera and/or microphone with the site
+# "Speakers" is used in a general sense that might include headphones or
+# another audio output connection.
+urlbar-web-rtc-share-speaker-notification-anchor =
+ .tooltiptext = Manage sharing other speakers with the site
+urlbar-autoplay-notification-anchor =
+ .tooltiptext = Open autoplay panel
+urlbar-persistent-storage-notification-anchor =
+ .tooltiptext = Store data in Persistent Storage
+urlbar-addons-notification-anchor =
+ .tooltiptext = Open add-on installation message panel
+urlbar-search-tips-confirm = Okay, Got It
+urlbar-search-tips-confirm-short = Got it
+# Read out before Urlbar Tip text content so screenreader users know the
+# subsequent text is a tip offered by the browser. It should end in a colon or
+# localized equivalent.
+urlbar-tip-icon-description =
+ .alt = Tip:
+
+urlbar-result-menu-button =
+ .title = Open menu
+urlbar-result-menu-button-feedback = Feedback
+ .title = Open menu
+urlbar-result-menu-learn-more =
+ .label = Learn more
+ .accesskey = L
+urlbar-result-menu-remove-from-history =
+ .label = Remove from history
+ .accesskey = R
+urlbar-result-menu-tip-get-help =
+ .label = Get help
+ .accesskey = h
+
+## Prompts users to use the Urlbar when they open a new tab or visit the
+## homepage of their default search engine.
+## Variables:
+## $engineName (String): The name of the user's default search engine. e.g. "Google" or "DuckDuckGo".
+
+urlbar-search-tips-onboard = Type less, find more: Search { $engineName } right from your address bar.
+urlbar-search-tips-redirect-2 = Start your search in the address bar to see suggestions from { $engineName } and your browsing history.
+
+# Make sure to match the name of the Search panel in settings.
+urlbar-search-tips-persist = Searching just got simpler. Try making your search more specific here in the address bar. To show the URL instead, visit Search, in settings.
+
+# Prompts users to use the Urlbar when they are typing in the domain of a
+# search engine, e.g. google.com or amazon.com.
+urlbar-tabtosearch-onboard = Select this shortcut to find what you need faster.
+
+## Local search mode indicator labels in the urlbar
+
+urlbar-search-mode-bookmarks = Bookmarks
+urlbar-search-mode-tabs = Tabs
+urlbar-search-mode-history = History
+urlbar-search-mode-actions = Actions
+
+##
+
+urlbar-geolocation-blocked =
+ .tooltiptext = You have blocked location information for this website.
+urlbar-xr-blocked =
+ .tooltiptext = You have blocked virtual reality device access for this website.
+urlbar-web-notifications-blocked =
+ .tooltiptext = You have blocked notifications for this website.
+urlbar-camera-blocked =
+ .tooltiptext = You have blocked your camera for this website.
+urlbar-microphone-blocked =
+ .tooltiptext = You have blocked your microphone for this website.
+urlbar-screen-blocked =
+ .tooltiptext = You have blocked this website from sharing your screen.
+urlbar-persistent-storage-blocked =
+ .tooltiptext = You have blocked persistent storage for this website.
+urlbar-popup-blocked =
+ .tooltiptext = You have blocked pop-ups for this website.
+urlbar-autoplay-media-blocked =
+ .tooltiptext = You have blocked autoplay media with sound for this website.
+urlbar-canvas-blocked =
+ .tooltiptext = You have blocked canvas data extraction for this website.
+urlbar-midi-blocked =
+ .tooltiptext = You have blocked MIDI access for this website.
+urlbar-install-blocked =
+ .tooltiptext = You have blocked add-on installation for this website.
+
+# Variables
+# $shortcut (String) - A keyboard shortcut for the edit bookmark command.
+urlbar-star-edit-bookmark =
+ .tooltiptext = Edit this bookmark ({ $shortcut })
+
+# Variables
+# $shortcut (String) - A keyboard shortcut for the add bookmark command.
+urlbar-star-add-bookmark =
+ .tooltiptext = Bookmark this page ({ $shortcut })
+
+## Page Action Context Menu
+
+page-action-manage-extension2 =
+ .label = Manage Extension…
+ .accesskey = E
+page-action-remove-extension2 =
+ .label = Remove Extension
+ .accesskey = v
+
+## Auto-hide Context Menu
+
+full-screen-autohide =
+ .label = Hide Toolbars
+ .accesskey = H
+full-screen-exit =
+ .label = Exit Full Screen Mode
+ .accesskey = F
+
+## Search Engine selection buttons (one-offs)
+
+# This string prompts the user to use the list of search shortcuts in
+# the Urlbar and searchbar.
+search-one-offs-with-title = This time, search with:
+
+search-one-offs-change-settings-compact-button =
+ .tooltiptext = Change search settings
+
+search-one-offs-context-open-new-tab =
+ .label = Search in New Tab
+ .accesskey = T
+search-one-offs-context-set-as-default =
+ .label = Set as Default Search Engine
+ .accesskey = D
+search-one-offs-context-set-as-default-private =
+ .label = Set as Default Search Engine for Private Windows
+ .accesskey = P
+
+# Search engine one-off buttons with an @alias shortcut/keyword.
+# Variables:
+# $engineName (String): The name of the engine.
+# $alias (String): The @alias shortcut/keyword.
+search-one-offs-engine-with-alias =
+ .tooltiptext = { $engineName } ({ $alias })
+
+# Shown when adding new engines from the address bar shortcut buttons or context
+# menu, or from the search bar shortcut buttons.
+# Variables:
+# $engineName (String): The name of the engine.
+search-one-offs-add-engine =
+ .label = Add “{ $engineName }”
+ .tooltiptext = Add search engine “{ $engineName }”
+ .aria-label = Add search engine “{ $engineName }”
+# When more than 5 engines are offered by a web page, they are grouped in a
+# submenu using this as its label.
+search-one-offs-add-engine-menu =
+ .label = Add search engine
+
+## Local search mode one-off buttons
+## Variables:
+## $restrict (String): The restriction token corresponding to the search mode.
+## Restriction tokens are special characters users can type in the urlbar to
+## restrict their searches to certain sources (e.g., "*" to search only
+## bookmarks).
+
+search-one-offs-bookmarks =
+ .tooltiptext = Bookmarks ({ $restrict })
+search-one-offs-tabs =
+ .tooltiptext = Tabs ({ $restrict })
+search-one-offs-history =
+ .tooltiptext = History ({ $restrict })
+search-one-offs-actions =
+ .tooltiptext = Actions ({ $restrict })
+
+## QuickActions are shown in the urlbar as the user types a matching string
+## The -cmd- strings are comma separated list of keywords that will match
+## the action.
+
+# Opens the about:addons page in the home / recommendations section
+quickactions-addons = View Add-ons
+quickactions-cmd-addons2 = add-ons
+
+# Opens the bookmarks library window
+quickactions-bookmarks2 = Manage bookmarks
+quickactions-cmd-bookmarks = bookmarks
+
+# Opens a SUMO article explaining how to clear history
+quickactions-clearhistory = Clear History
+quickactions-cmd-clearhistory = clear history
+
+# Opens about:downloads page
+quickactions-downloads2 = View downloads
+quickactions-cmd-downloads = downloads
+
+# Opens about:addons page in the extensions section
+quickactions-extensions = Manage extensions
+quickactions-cmd-extensions = extensions
+
+# Opens the devtools web inspector
+quickactions-inspector2 = Open Developer Tools
+quickactions-cmd-inspector = inspector, devtools
+
+# Opens about:logins
+quickactions-logins2 = Manage passwords
+quickactions-cmd-logins = logins, passwords
+
+# Opens about:addons page in the plugins section
+quickactions-plugins = Manage plugins
+quickactions-cmd-plugins = plugins
+
+# Opens the print dialog
+quickactions-print2 = Print page
+quickactions-cmd-print = print
+
+# Opens the print dialog at the save to PDF option
+quickactions-savepdf = Save page as PDF
+quickactions-cmd-savepdf = pdf
+
+# Opens a new private browsing window
+quickactions-private2 = Open private window
+quickactions-cmd-private = private browsing
+
+# Opens a SUMO article explaining how to refresh
+quickactions-refresh = Refresh { -brand-short-name }
+quickactions-cmd-refresh = refresh
+
+# Restarts the browser
+quickactions-restart = Restart { -brand-short-name }
+quickactions-cmd-restart = restart
+
+# Opens the screenshot tool
+quickactions-screenshot3 = Take a screenshot
+quickactions-cmd-screenshot = screenshot
+
+# Opens about:preferences
+quickactions-settings2 = Manage settings
+quickactions-cmd-settings = settings, preferences, options
+
+# Opens about:addons page in the themes section
+quickactions-themes = Manage themes
+quickactions-cmd-themes = themes
+
+# Opens a SUMO article explaining how to update the browser
+quickactions-update = Update { -brand-short-name }
+quickactions-cmd-update = update
+
+# Opens the view-source UI with current pages source
+quickactions-viewsource2 = View Page Source
+quickactions-cmd-viewsource = view source, source
+
+# Tooltip text for the help button shown in the result.
+quickactions-learn-more =
+ .title = Learn more about Quick actions
+
+## Bookmark Panel
+
+bookmarks-add-bookmark = Add bookmark
+bookmarks-edit-bookmark = Edit bookmark
+bookmark-panel-cancel =
+ .label = Cancel
+ .accesskey = C
+# Variables:
+# $count (number): number of bookmarks that will be removed
+bookmark-panel-remove =
+ .label =
+ { $count ->
+ [1] Remove bookmark
+ *[other] Remove { $count } bookmarks
+ }
+ .accesskey = R
+bookmark-panel-show-editor-checkbox =
+ .label = Show editor when saving
+ .accesskey = S
+bookmark-panel-save-button =
+ .label = Save
+
+# Width of the bookmark panel.
+# Should be large enough to fully display the Done and
+# Cancel/Remove Bookmark buttons.
+bookmark-panel =
+ .style = min-width: 23em
+
+## Identity Panel
+
+# Variables
+# $host (String): the hostname of the site that is being displayed.
+identity-site-information = Site information for { $host }
+# Variables
+# $host (String): the hostname of the site that is being displayed.
+identity-header-security-with-host =
+ .title = Connection security for { $host }
+identity-connection-not-secure = Connection not secure
+identity-connection-secure = Connection secure
+identity-connection-failure = Connection failure
+identity-connection-internal = This is a secure { -brand-short-name } page.
+identity-connection-file = This page is stored on your computer.
+identity-connection-associated = This page is loaded from another page.
+identity-extension-page = This page is loaded from an extension.
+identity-active-blocked = { -brand-short-name } has blocked parts of this page that are not secure.
+identity-custom-root = Connection verified by a certificate issuer that is not recognized by Mozilla.
+identity-passive-loaded = Parts of this page are not secure (such as images).
+identity-active-loaded = You have disabled protection on this page.
+identity-weak-encryption = This page uses weak encryption.
+identity-insecure-login-forms = Logins entered on this page could be compromised.
+
+identity-https-only-connection-upgraded = (upgraded to HTTPS)
+identity-https-only-label2 = Automatically upgrade this site to a secure connection
+identity-https-only-dropdown-on =
+ .label = On
+identity-https-only-dropdown-off =
+ .label = Off
+identity-https-only-dropdown-off-temporarily =
+ .label = Off temporarily
+identity-https-only-info-turn-on3 = Turn on HTTPS upgrades for this site if you want { -brand-short-name } to upgrade the connection when possible.
+identity-https-only-info-turn-off3 = If the page seems broken, you may want to turn off HTTPS upgrades for this site to reload using insecure HTTP.
+identity-https-only-info-no-upgrade = Unable to upgrade connection from HTTP.
+
+identity-permissions-storage-access-header = Cross-site cookies
+identity-permissions-storage-access-hint = These parties can use cross-site cookies and site data while you are on this site.
+identity-permissions-storage-access-learn-more = Learn more
+
+identity-permissions-reload-hint = You may need to reload the page for changes to apply.
+identity-clear-site-data =
+ .label = Clear cookies and site data…
+identity-connection-not-secure-security-view = You are not securely connected to this site.
+identity-connection-verified = You are securely connected to this site.
+identity-ev-owner-label = Certificate issued to:
+identity-description-custom-root2 = Mozilla does not recognize this certificate issuer. It may have been added from your operating system or by an administrator.
+identity-remove-cert-exception =
+ .label = Remove Exception
+ .accesskey = R
+identity-description-insecure = Your connection to this site is not private. Information you submit could be viewed by others (like passwords, messages, credit cards, etc.).
+identity-description-insecure-login-forms = The login information you enter on this page is not secure and could be compromised.
+identity-description-weak-cipher-intro = Your connection to this website uses weak encryption and is not private.
+identity-description-weak-cipher-risk = Other people can view your information or modify the website’s behavior.
+identity-description-active-blocked2 = { -brand-short-name } has blocked parts of this page that are not secure.
+identity-description-passive-loaded = Your connection is not private and information you share with the site could be viewed by others.
+identity-description-passive-loaded-insecure2 = This website contains content that is not secure (such as images).
+identity-description-passive-loaded-mixed2 = Although { -brand-short-name } has blocked some content, there is still content on the page that is not secure (such as images).
+identity-description-active-loaded = This website contains content that is not secure (such as scripts) and your connection to it is not private.
+identity-description-active-loaded-insecure = Information you share with this site could be viewed by others (like passwords, messages, credit cards, etc.).
+identity-disable-mixed-content-blocking =
+ .label = Disable protection for now
+ .accesskey = D
+identity-enable-mixed-content-blocking =
+ .label = Enable protection
+ .accesskey = E
+identity-more-info-link-text =
+ .label = More information
+
+## Window controls
+
+browser-window-minimize-button =
+ .tooltiptext = Minimize
+browser-window-maximize-button =
+ .tooltiptext = Maximize
+browser-window-restore-down-button =
+ .tooltiptext = Restore Down
+browser-window-close-button =
+ .tooltiptext = Close
+
+## Tab actions
+
+# This label should be written in all capital letters if your locale supports them.
+browser-tab-audio-playing2 = PLAYING
+# This label should be written in all capital letters if your locale supports them.
+browser-tab-audio-muted2 = MUTED
+# This label should be written in all capital letters if your locale supports them.
+browser-tab-audio-blocked = AUTOPLAY BLOCKED
+# This label should be written in all capital letters if your locale supports them.
+browser-tab-audio-pip = PICTURE-IN-PICTURE
+
+## These labels should be written in all capital letters if your locale supports them.
+## Variables:
+## $count (number): number of affected tabs
+
+browser-tab-mute =
+ { $count ->
+ [1] MUTE TAB
+ *[other] MUTE { $count } TABS
+ }
+
+browser-tab-unmute =
+ { $count ->
+ [1] UNMUTE TAB
+ *[other] UNMUTE { $count } TABS
+ }
+
+browser-tab-unblock =
+ { $count ->
+ [1] PLAY TAB
+ *[other] PLAY { $count } TABS
+ }
+
+## Bookmarks toolbar items
+
+browser-import-button2 =
+ .label = Import bookmarks…
+ .tooltiptext = Import bookmarks from another browser to { -brand-short-name }.
+
+bookmarks-toolbar-empty-message = For quick access, place your bookmarks here on the bookmarks toolbar. <a data-l10n-name="manage-bookmarks">Manage bookmarks…</a>
+
+## WebRTC Pop-up notifications
+
+popup-select-camera-device =
+ .value = Camera:
+ .accesskey = C
+popup-select-camera-icon =
+ .tooltiptext = Camera
+popup-select-microphone-device =
+ .value = Microphone:
+ .accesskey = M
+popup-select-microphone-icon =
+ .tooltiptext = Microphone
+popup-select-speaker-icon =
+ .tooltiptext = Speakers
+popup-select-window-or-screen =
+ .label = Window or screen:
+ .accesskey = W
+popup-all-windows-shared = All visible windows on your screen will be shared.
+
+## WebRTC window or screen share tab switch warning
+
+sharing-warning-window = You are sharing { -brand-short-name }. Other people can see when you switch to a new tab.
+sharing-warning-screen = You are sharing your entire screen. Other people can see when you switch to a new tab.
+sharing-warning-proceed-to-tab =
+ .label = Proceed to Tab
+sharing-warning-disable-for-session =
+ .label = Disable sharing protection for this session
+
+## URL Bar
+
+# This string is used as an accessible name to the "X" button that cancels a custom search mode (i.e. exits the Amazon.com search mode).
+urlbar-search-mode-indicator-close =
+ .aria-label = Close
+
+# This placeholder is used when not in search mode and the user's default search
+# engine is unknown.
+urlbar-placeholder =
+ .placeholder = Search or enter address
+
+# This placeholder is used in search mode with search engines that search the
+# entire web.
+# Variables
+# $name (String): the name of a search engine that searches the entire Web
+# (e.g. Google).
+urlbar-placeholder-search-mode-web-2 =
+ .placeholder = Search the Web
+ .aria-label = Search with { $name }
+
+# This placeholder is used in search mode with search engines that search a
+# specific site (e.g., Amazon).
+# Variables
+# $name (String): the name of a search engine that searches a specific site
+# (e.g. Amazon).
+urlbar-placeholder-search-mode-other-engine =
+ .placeholder = Enter search terms
+ .aria-label = Search { $name }
+
+# This placeholder is used when searching bookmarks.
+urlbar-placeholder-search-mode-other-bookmarks =
+ .placeholder = Enter search terms
+ .aria-label = Search bookmarks
+
+# This placeholder is used when searching history.
+urlbar-placeholder-search-mode-other-history =
+ .placeholder = Enter search terms
+ .aria-label = Search history
+
+# This placeholder is used when searching open tabs.
+urlbar-placeholder-search-mode-other-tabs =
+ .placeholder = Enter search terms
+ .aria-label = Search tabs
+
+# This placeholder is used when searching quick actions.
+urlbar-placeholder-search-mode-other-actions =
+ .placeholder = Enter search terms
+ .aria-label = Search actions
+
+# Variables
+# $name (String): the name of the user's default search engine
+urlbar-placeholder-with-name =
+ .placeholder = Search with { $name } or enter address
+
+# Variables
+# $component (String): the name of the component which forces remote control.
+# Example: "DevTools", "Marionette", "RemoteAgent".
+urlbar-remote-control-notification-anchor2 =
+ .tooltiptext = Browser is under remote control (reason: { $component })
+urlbar-permissions-granted =
+ .tooltiptext = You have granted this website additional permissions.
+urlbar-switch-to-tab =
+ .value = Switch to tab:
+
+# Used to indicate that a selected autocomplete entry is provided by an extension.
+urlbar-extension =
+ .value = Extension:
+
+urlbar-go-button =
+ .tooltiptext = Go to the address in the Location Bar
+urlbar-page-action-button =
+ .tooltiptext = Page actions
+
+## Action text shown in urlbar results, usually appended after the search
+## string or the url, like "result value - action text".
+
+# Used when the private browsing engine differs from the default engine.
+# The "with" format was chosen because the search engine name can end with
+# "Search", and we would like to avoid strings like "Search MSN Search".
+# Variables
+# $engine (String): the name of a search engine
+urlbar-result-action-search-in-private-w-engine = Search with { $engine } in a Private Window
+# Used when the private browsing engine is the same as the default engine.
+urlbar-result-action-search-in-private = Search in a Private Window
+# The "with" format was chosen because the search engine name can end with
+# "Search", and we would like to avoid strings like "Search MSN Search".
+# Variables
+# $engine (String): the name of a search engine
+urlbar-result-action-search-w-engine = Search with { $engine }
+urlbar-result-action-sponsored = Sponsored
+urlbar-result-action-switch-tab = Switch to Tab
+urlbar-result-action-visit = Visit
+# "Switch to tab with container" is used when the target tab is located in a
+# different container.
+# Variables
+# $container (String): the name of the target container
+urlbar-result-action-switch-tab-with-container = Switch to Tab · <span>{ $container }</span>
+# Allows the user to visit a URL that was previously copied to the clipboard.
+urlbar-result-action-visit-from-clipboard = Visit from clipboard
+# Directs a user to press the Tab key to perform a search with the specified
+# engine.
+# Variables
+# $engine (String): the name of a search engine that searches the entire Web
+# (e.g. Google).
+urlbar-result-action-before-tabtosearch-web = Press Tab to search with { $engine }
+# Directs a user to press the Tab key to perform a search with the specified
+# engine.
+# Variables
+# $engine (String): the name of a search engine that searches a specific site
+# (e.g. Amazon).
+urlbar-result-action-before-tabtosearch-other = Press Tab to search { $engine }
+# Variables
+# $engine (String): the name of a search engine that searches the entire Web
+# (e.g. Google).
+urlbar-result-action-tabtosearch-web = Search with { $engine } directly from the address bar
+# Variables
+# $engine (String): the name of a search engine that searches a specific site
+# (e.g. Amazon).
+urlbar-result-action-tabtosearch-other-engine = Search { $engine } directly from the address bar
+# Action text for copying to clipboard.
+urlbar-result-action-copy-to-clipboard = Copy
+# Shows the result of a formula expression being calculated, the last = sign will be shown
+# as part of the result (e.g. "= 2").
+# Variables
+# $result (String): the string representation for a formula result
+urlbar-result-action-calculator-result = = { $result }
+
+## Action text shown in urlbar results, usually appended after the search
+## string or the url, like "result value - action text".
+## In these actions "Search" is a verb, followed by where the search is performed.
+
+urlbar-result-action-search-bookmarks = Search Bookmarks
+urlbar-result-action-search-history = Search History
+urlbar-result-action-search-tabs = Search Tabs
+urlbar-result-action-search-actions = Search Actions
+
+## Labels shown above groups of urlbar results
+
+# A label shown above the "Firefox Suggest" (bookmarks/history) group in the
+# urlbar results.
+urlbar-group-firefox-suggest =
+ .label = { -firefox-suggest-brand-name }
+
+# A label shown above the search suggestions group in the urlbar results. It
+# should use sentence case.
+# Variables
+# $engine (String): the name of the search engine providing the suggestions
+urlbar-group-search-suggestions =
+ .label = { $engine } suggestions
+
+# A label shown above Quick Actions in the urlbar results.
+urlbar-group-quickactions =
+ .label = Quick Actions
+
+# A label shown above the recent searches group in the urlbar results.
+# Variables
+# $engine (String): the name of the search engine used to search.
+urlbar-group-recent-searches =
+ .label = Recent Searches
+
+## Reader View toolbar buttons
+
+# This should match menu-view-enter-readerview in menubar.ftl
+reader-view-enter-button =
+ .aria-label = Enter Reader View
+# This should match menu-view-close-readerview in menubar.ftl
+reader-view-close-button =
+ .aria-label = Close Reader View
+
+## Picture-in-Picture urlbar button
+## Variables:
+## $shortcut (String) - Keyboard shortcut to execute the command.
+
+picture-in-picture-urlbar-button-open =
+ .tooltiptext = Open Picture-in-Picture ({ $shortcut })
+
+picture-in-picture-urlbar-button-close =
+ .tooltiptext = Close Picture-in-Picture ({ $shortcut })
+
+picture-in-picture-panel-header = Picture-in-Picture
+picture-in-picture-panel-headline = This website does not recommend Picture-in-Picture
+picture-in-picture-panel-body = Videos might not display as the developer intended while Picture-in-Picture is enabled.
+picture-in-picture-enable-toggle =
+ .label = Enable anyway
+
+## Full Screen and Pointer Lock UI
+
+# Please ensure that the domain stays in the `<span data-l10n-name="domain">` markup.
+# Variables
+# $domain (String): the domain that is full screen, e.g. "mozilla.org"
+fullscreen-warning-domain = <span data-l10n-name="domain">{ $domain }</span> is now full screen
+fullscreen-warning-no-domain = This document is now full screen
+
+
+fullscreen-exit-button = Exit Full Screen (Esc)
+# "esc" is lowercase on mac keyboards, but uppercase elsewhere.
+fullscreen-exit-mac-button = Exit Full Screen (esc)
+
+# Please ensure that the domain stays in the `<span data-l10n-name="domain">` markup.
+# Variables
+# $domain (String): the domain that is using pointer-lock, e.g. "mozilla.org"
+pointerlock-warning-domain = <span data-l10n-name="domain">{ $domain }</span> has control of your pointer. Press Esc to take back control.
+pointerlock-warning-no-domain = This document has control of your pointer. Press Esc to take back control.
+
+## Bookmarks panels, menus and toolbar
+
+bookmarks-manage-bookmarks =
+ .label = Manage bookmarks
+bookmarks-recent-bookmarks-panel-subheader = Recent bookmarks
+bookmarks-toolbar-chevron =
+ .tooltiptext = Show more bookmarks
+bookmarks-sidebar-content =
+ .aria-label = Bookmarks
+bookmarks-menu-button =
+ .label = Bookmarks menu
+bookmarks-other-bookmarks-menu =
+ .label = Other bookmarks
+bookmarks-mobile-bookmarks-menu =
+ .label = Mobile bookmarks
+
+## Variables:
+## $isVisible (boolean): if the specific element (e.g. bookmarks sidebar,
+## bookmarks toolbar, etc.) is visible or not.
+
+bookmarks-tools-sidebar-visibility =
+ .label = { $isVisible ->
+ [true] Hide bookmarks sidebar
+ *[other] View bookmarks sidebar
+ }
+bookmarks-tools-toolbar-visibility-menuitem =
+ .label = { $isVisible ->
+ [true] Hide Bookmarks Toolbar
+ *[other] View Bookmarks Toolbar
+ }
+bookmarks-tools-toolbar-visibility-panel =
+ .label = { $isVisible ->
+ [true] Hide bookmarks toolbar
+ *[other] Show bookmarks toolbar
+ }
+bookmarks-tools-menu-button-visibility =
+ .label = { $isVisible ->
+ [true] Remove bookmarks menu from toolbar
+ *[other] Add bookmarks menu to toolbar
+ }
+
+##
+
+bookmarks-search =
+ .label = Search bookmarks
+bookmarks-tools =
+ .label = Bookmarking Tools
+bookmarks-subview-edit-bookmark =
+ .label = Edit this bookmark…
+
+# The aria-label is a spoken label that should not include the word "toolbar" or
+# such, because screen readers already know that this container is a toolbar.
+# This avoids double-speaking.
+bookmarks-toolbar =
+ .toolbarname = Bookmarks Toolbar
+ .accesskey = B
+ .aria-label = Bookmarks
+bookmarks-toolbar-menu =
+ .label = Bookmarks toolbar
+bookmarks-toolbar-placeholder =
+ .title = Bookmarks toolbar items
+bookmarks-toolbar-placeholder-button =
+ .label = Bookmarks toolbar items
+
+# "Bookmark" is a verb, as in "Add current tab to bookmarks".
+bookmarks-subview-bookmark-tab =
+ .label = Bookmark current tab…
+
+## Library Panel items
+
+library-bookmarks-menu =
+ .label = Bookmarks
+library-recent-activity-title =
+ .value = Recent Activity
+
+## Pocket toolbar button
+
+save-to-pocket-button =
+ .label = Save to { -pocket-brand-name }
+ .tooltiptext = Save to { -pocket-brand-name }
+
+## Repair text encoding toolbar button
+
+repair-text-encoding-button =
+ .label = Repair text encoding
+ .tooltiptext = Guess correct text encoding from page content
+
+## Customize Toolbar Buttons
+
+# Variables:
+# $shortcut (String): keyboard shortcut to open settings (only on macOS)
+toolbar-settings-button =
+ .label = Settings
+ .tooltiptext = { PLATFORM() ->
+ [macos] Open settings ({ $shortcut })
+ *[other] Open settings
+ }
+
+toolbar-overflow-customize-button =
+ .label = Customize toolbar…
+ .accesskey = C
+
+toolbar-button-email-link =
+ .label = Email link
+ .tooltiptext = Email a link to this page
+
+toolbar-button-logins =
+ .label = Passwords
+ .tooltiptext = View and manage your saved passwords
+
+# Variables:
+# $shortcut (String): keyboard shortcut to save a copy of the page
+toolbar-button-save-page =
+ .label = Save page
+ .tooltiptext = Save this page ({ $shortcut })
+
+# Variables:
+# $shortcut (String): keyboard shortcut to open a local file
+toolbar-button-open-file =
+ .label = Open file
+ .tooltiptext = Open a file ({ $shortcut })
+
+toolbar-button-synced-tabs =
+ .label = Synced tabs
+ .tooltiptext = Show tabs from other devices
+
+# Variables
+# $shortcut (string) - Keyboard shortcut to open a new private browsing window
+toolbar-button-new-private-window =
+ .label = New private window
+ .tooltiptext = Open a new private browsing window ({ $shortcut })
+
+## EME notification panel
+
+eme-notifications-drm-content-playing = Some audio or video on this site uses DRM software, which may limit what { -brand-short-name } can let you do with it.
+eme-notifications-drm-content-playing-manage = Manage settings
+eme-notifications-drm-content-playing-manage-accesskey = M
+eme-notifications-drm-content-playing-dismiss = Dismiss
+eme-notifications-drm-content-playing-dismiss-accesskey = D
+
+## Password save/update panel
+
+panel-save-update-username = Username
+panel-save-update-password = Password
+
+##
+
+# "More" item in macOS share menu
+menu-share-more =
+ .label = More…
+ui-tour-info-panel-close =
+ .tooltiptext = Close
+
+## Variables:
+## $uriHost (String): URI host for which the popup was allowed or blocked.
+
+popups-infobar-allow =
+ .label = Allow pop-ups for { $uriHost }
+ .accesskey = p
+
+popups-infobar-block =
+ .label = Block pop-ups for { $uriHost }
+ .accesskey = p
+
+##
+
+popups-infobar-dont-show-message =
+ .label = Don’t show this message when pop-ups are blocked
+ .accesskey = D
+
+edit-popup-settings =
+ .label = Manage pop-up settings…
+ .accesskey = M
+
+picture-in-picture-hide-toggle =
+ .label = Hide Picture-in-Picture Toggle
+ .accesskey = H
+
+## Since the default position for PiP controls does not change for RTL layout,
+## right-to-left languages should use "Left" and "Right" as in the English strings,
+
+picture-in-picture-move-toggle-right =
+ .label = Move Picture-in-Picture Toggle to Right Side
+ .accesskey = R
+
+picture-in-picture-move-toggle-left =
+ .label = Move Picture-in-Picture Toggle to Left Side
+ .accesskey = L
+
+##
+
+# Navigator Toolbox
+
+# This string is a spoken label that should not include
+# the word "toolbar" or such, because screen readers already know that
+# this container is a toolbar. This avoids double-speaking.
+navbar-accessible =
+ .aria-label = Navigation
+
+navbar-downloads =
+ .label = Downloads
+
+navbar-overflow =
+ .tooltiptext = More tools…
+
+# Variables:
+# $shortcut (String): keyboard shortcut to print the page
+navbar-print =
+ .label = Print
+ .tooltiptext = Print this page… ({ $shortcut })
+
+navbar-home =
+ .label = Home
+ .tooltiptext = { -brand-short-name } Home Page
+
+navbar-library =
+ .label = Library
+ .tooltiptext = View history, saved bookmarks, and more
+
+navbar-search =
+ .title = Search
+
+# Name for the tabs toolbar as spoken by screen readers. The word
+# "toolbar" is appended automatically and should not be included in
+# in the string
+tabs-toolbar =
+ .aria-label = Browser tabs
+
+tabs-toolbar-new-tab =
+ .label = New Tab
+
+tabs-toolbar-list-all-tabs =
+ .label = List all tabs
+ .tooltiptext = List all tabs
+
+## Infobar shown at startup to suggest session-restore
+
+# <img data-l10n-name="icon"/> will be replaced by the application menu icon
+restore-session-startup-suggestion-message = <strong>Open previous tabs?</strong> You can restore your previous session from the { -brand-short-name } application menu <img data-l10n-name="icon"/>, under History.
+restore-session-startup-suggestion-button = Show me how
+
+## Infobar shown when the user tries to open a file picker and file pickers are blocked by enterprise policy
+
+filepicker-blocked-infobar = Your organization has blocked access to local files on this computer
+
+## Mozilla data reporting notification (Telemetry, Firefox Health Report, etc)
+
+data-reporting-notification-message = { -brand-short-name } automatically sends some data to { -vendor-short-name } so that we can improve your experience.
+data-reporting-notification-button =
+ .label = Choose What I Share
+ .accesskey = C
+
+# Label for the indicator shown in the private browsing window titlebar.
+private-browsing-indicator-label = Private browsing
+
+## Unified extensions (toolbar) button
+
+unified-extensions-button =
+ .label = Extensions
+ .tooltiptext = Extensions
+
+## Unified extensions button when permission(s) are needed.
+## Note that the new line is intentionally part of the tooltip.
+
+unified-extensions-button-permissions-needed =
+ .label = Extensions
+ .tooltiptext =
+ Extensions
+ Permissions needed
+
+## Unified extensions button when some extensions are quarantined.
+## Note that the new line is intentionally part of the tooltip.
+
+unified-extensions-button-quarantined =
+ .label = Extensions
+ .tooltiptext =
+ Extensions
+ Some extensions are not allowed
+
+## Private browsing reset button
+
+reset-pbm-toolbar-button =
+ .label = End Private Session
+ .tooltiptext = End Private Session
+reset-pbm-panel-heading = End your private session?
+reset-pbm-panel-description = Close all private tabs and delete history, cookies, and all other site data.
+reset-pbm-panel-always-ask-checkbox =
+ .label = Always ask me
+ .accesskey = A
+reset-pbm-panel-cancel-button =
+ .label = Cancel
+ .accesskey = C
+reset-pbm-panel-confirm-button =
+ .label = Delete session data
+ .accesskey = D
+reset-pbm-panel-complete = Private session data deleted
+
+## Autorefresh blocker
+
+refresh-blocked-refresh-label = { -brand-short-name } prevented this page from automatically reloading.
+refresh-blocked-redirect-label = { -brand-short-name } prevented this page from automatically redirecting to another page.
+
+refresh-blocked-allow =
+ .label = Allow
+ .accesskey = A
+
+## Firefox Relay integration
+
+firefox-relay-offer-why-to-use-relay = Our secure, easy-to-use masks protect your identity and prevent spam by hiding your email address.
+
+# Variables:
+# $useremail (String): user email that will receive messages
+firefox-relay-offer-what-relay-provides = All emails sent to your email masks will be forwarded to <strong>{ $useremail }</strong> (unless you decide to block them).
+
+firefox-relay-offer-legal-notice = By clicking “Use email mask”, you agree to the <label data-l10n-name="tos-url">Terms of Service</label> and <label data-l10n-name="privacy-url">Privacy Notice</label>.
+
+## Add-on Pop-up Notifications
+
+popup-notification-addon-install-unsigned =
+ .value = (Unverified)
+popup-notification-xpinstall-prompt-learn-more = Learn more about installing add-ons safely
+
+## Pop-up warning
+
+# Variables:
+# $popupCount (Number): the number of pop-ups blocked.
+popup-warning-message =
+ { $popupCount ->
+ [1] { -brand-short-name } prevented this site from opening a pop-up window.
+ *[other] { -brand-short-name } prevented this site from opening { $popupCount } pop-up windows.
+ }
+# The singular form is left out for English, since the number of blocked pop-ups is always greater than 1.
+# Variables:
+# $popupCount (Number): the number of pop-ups blocked.
+popup-warning-exceeded-message =
+ { $popupCount ->
+ *[other] { -brand-short-name } prevented this site from opening more than { $popupCount } pop-up windows.
+ }
+popup-warning-button =
+ .label =
+ { PLATFORM() ->
+ [windows] Options
+ *[other] Preferences
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [windows] O
+ *[other] P
+ }
+
+# Variables:
+# $popupURI (String): the URI for the pop-up window
+popup-show-popup-menuitem =
+ .label = Show “{ $popupURI }”
diff --git a/browser/locales/en-US/browser/browserContext.ftl b/browser/locales/en-US/browser/browserContext.ftl
new file mode 100644
index 0000000000..45bf880582
--- /dev/null
+++ b/browser/locales/en-US/browser/browserContext.ftl
@@ -0,0 +1,456 @@
+# 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/.
+
+navbar-tooltip-instruction =
+ .value = { PLATFORM() ->
+ [macos] Pull down to show history
+ *[other] Right-click or pull down to show history
+ }
+
+## Back
+
+# Variables
+# $shortcut (String) - A keyboard shortcut for the Go Back command.
+main-context-menu-back-2 =
+ .tooltiptext = Go back one page ({ $shortcut })
+ .aria-label = Back
+ .accesskey = B
+
+# This menuitem is only visible on macOS
+main-context-menu-back-mac =
+ .label = Back
+ .accesskey = B
+
+navbar-tooltip-back-2 =
+ .value = { main-context-menu-back-2.tooltiptext }
+
+toolbar-button-back-2 =
+ .label = { main-context-menu-back-2.aria-label }
+
+## Forward
+
+# Variables
+# $shortcut (String) - A keyboard shortcut for the Go Forward command.
+main-context-menu-forward-2 =
+ .tooltiptext = Go forward one page ({ $shortcut })
+ .aria-label = Forward
+ .accesskey = F
+
+# This menuitem is only visible on macOS
+main-context-menu-forward-mac =
+ .label = Forward
+ .accesskey = F
+
+navbar-tooltip-forward-2 =
+ .value = { main-context-menu-forward-2.tooltiptext }
+
+toolbar-button-forward-2 =
+ .label = { main-context-menu-forward-2.aria-label }
+
+## Reload
+
+main-context-menu-reload =
+ .aria-label = Reload
+ .accesskey = R
+
+# This menuitem is only visible on macOS
+main-context-menu-reload-mac =
+ .label = Reload
+ .accesskey = R
+
+toolbar-button-reload =
+ .label = { main-context-menu-reload.aria-label }
+
+## Stop
+
+main-context-menu-stop =
+ .aria-label = Stop
+ .accesskey = S
+
+# This menuitem is only visible on macOS
+main-context-menu-stop-mac =
+ .label = Stop
+ .accesskey = S
+
+toolbar-button-stop =
+ .label = { main-context-menu-stop.aria-label }
+
+## Stop-Reload Button
+
+toolbar-button-stop-reload =
+ .title = { main-context-menu-reload.aria-label }
+
+## Account toolbar Button
+
+toolbar-button-account =
+ .label = Account
+ .tooltiptext = Account
+
+## Save Page
+
+main-context-menu-page-save =
+ .label = Save Page As…
+ .accesskey = P
+
+## Simple menu items
+
+main-context-menu-bookmark-page =
+ .aria-label = Bookmark Page…
+ .accesskey = m
+ .tooltiptext = Bookmark page
+
+# This menuitem is only visible on macOS
+# Cannot be shown at the same time as main-context-menu-edit-bookmark-mac,
+# so should probably have the same access key if possible.
+main-context-menu-bookmark-page-mac =
+ .label = Bookmark Page…
+ .accesskey = m
+
+# This menuitem is only visible on macOS
+# Cannot be shown at the same time as main-context-menu-bookmark-page-mac,
+# so should probably have the same access key if possible.
+main-context-menu-edit-bookmark-mac =
+ .label = Edit Bookmark…
+ .accesskey = m
+
+# Variables
+# $shortcut (String) - A keyboard shortcut for the add bookmark command.
+main-context-menu-bookmark-page-with-shortcut =
+ .aria-label = Bookmark Page…
+ .accesskey = m
+ .tooltiptext = Bookmark page ({ $shortcut })
+
+main-context-menu-edit-bookmark =
+ .aria-label = Edit Bookmark…
+ .accesskey = m
+ .tooltiptext = Edit bookmark
+
+# Variables
+# $shortcut (String) - A keyboard shortcut for the edit bookmark command.
+main-context-menu-edit-bookmark-with-shortcut =
+ .aria-label = Edit Bookmark…
+ .accesskey = m
+ .tooltiptext = Edit bookmark ({ $shortcut })
+
+main-context-menu-open-link =
+ .label = Open Link
+ .accesskey = O
+
+main-context-menu-open-link-new-tab =
+ .label = Open Link in New Tab
+ .accesskey = T
+
+main-context-menu-open-link-container-tab =
+ .label = Open Link in New Container Tab
+ .accesskey = w
+
+main-context-menu-open-link-new-window =
+ .label = Open Link in New Window
+ .accesskey = d
+
+main-context-menu-open-link-new-private-window =
+ .label = Open Link in New Private Window
+ .accesskey = P
+
+main-context-menu-bookmark-link-2 =
+ .label = Bookmark Link…
+ .accesskey = B
+
+main-context-menu-save-link =
+ .label = Save Link As…
+ .accesskey = k
+
+main-context-menu-save-link-to-pocket =
+ .label = Save Link to { -pocket-brand-name }
+ .accesskey = o
+
+## The access keys for "Copy Link" and "Copy Email Address"
+## should be the same if possible; the two context menu items
+## are mutually exclusive.
+
+main-context-menu-copy-email =
+ .label = Copy Email Address
+ .accesskey = l
+
+main-context-menu-copy-phone =
+ .label = Copy Phone Number
+ .accesskey = o
+
+main-context-menu-copy-link-simple =
+ .label = Copy Link
+ .accesskey = L
+
+# This command copies the link, removing additional
+# query parameters used to track users across sites.
+main-context-menu-strip-on-share-link =
+ .label = Copy Link Without Site Tracking
+ .accesskey = u
+
+## Media (video/audio) controls
+##
+## The accesskey for "Play" and "Pause" are the
+## same because the two context-menu items are
+## mutually exclusive.
+
+main-context-menu-media-play =
+ .label = Play
+ .accesskey = P
+
+main-context-menu-media-pause =
+ .label = Pause
+ .accesskey = P
+
+##
+
+main-context-menu-media-mute =
+ .label = Mute
+ .accesskey = M
+
+main-context-menu-media-unmute =
+ .label = Unmute
+ .accesskey = m
+
+main-context-menu-media-play-speed-2 =
+ .label = Speed
+ .accesskey = d
+
+main-context-menu-media-play-speed-slow-2 =
+ .label = 0.5×
+
+main-context-menu-media-play-speed-normal-2 =
+ .label = 1.0×
+
+main-context-menu-media-play-speed-fast-2 =
+ .label = 1.25×
+
+main-context-menu-media-play-speed-faster-2 =
+ .label = 1.5×
+
+main-context-menu-media-play-speed-fastest-2 =
+ .label = 2×
+
+main-context-menu-media-loop =
+ .label = Loop
+ .accesskey = L
+
+## The access keys for "Show Controls" and "Hide Controls" are the same
+## because the two context-menu items are mutually exclusive.
+
+main-context-menu-media-show-controls =
+ .label = Show Controls
+ .accesskey = C
+
+main-context-menu-media-hide-controls =
+ .label = Hide Controls
+ .accesskey = C
+
+##
+
+main-context-menu-media-video-fullscreen =
+ .label = Full Screen
+ .accesskey = F
+
+main-context-menu-media-video-leave-fullscreen =
+ .label = Exit Full Screen
+ .accesskey = u
+
+# This is used when right-clicking on a video in the
+# content area when the Picture-in-Picture feature is enabled.
+main-context-menu-media-watch-pip =
+ .label = Watch in Picture-in-Picture
+ .accesskey = u
+
+main-context-menu-image-reload =
+ .label = Reload Image
+ .accesskey = R
+
+main-context-menu-image-view-new-tab =
+ .label = Open Image in New Tab
+ .accesskey = I
+
+main-context-menu-video-view-new-tab =
+ .label = Open Video in New Tab
+ .accesskey = i
+
+main-context-menu-image-copy =
+ .label = Copy Image
+ .accesskey = y
+
+main-context-menu-image-copy-link =
+ .label = Copy Image Link
+ .accesskey = o
+
+main-context-menu-video-copy-link =
+ .label = Copy Video Link
+ .accesskey = o
+
+main-context-menu-audio-copy-link =
+ .label = Copy Audio Link
+ .accesskey = o
+
+main-context-menu-image-save-as =
+ .label = Save Image As…
+ .accesskey = v
+
+main-context-menu-image-email =
+ .label = Email Image…
+ .accesskey = g
+
+main-context-menu-image-set-image-as-background =
+ .label = Set Image as Desktop Background…
+ .accesskey = S
+
+main-context-menu-image-copy-text =
+ .label = Copy Text From Image
+ .accesskey = x
+
+main-context-menu-image-info =
+ .label = View Image Info
+ .accesskey = f
+
+main-context-menu-image-desc =
+ .label = View Description
+ .accesskey = D
+
+main-context-menu-video-save-as =
+ .label = Save Video As…
+ .accesskey = v
+
+main-context-menu-audio-save-as =
+ .label = Save Audio As…
+ .accesskey = v
+
+main-context-menu-video-take-snapshot =
+ .label = Take Snapshot…
+ .accesskey = S
+
+main-context-menu-video-email =
+ .label = Email Video…
+ .accesskey = a
+
+main-context-menu-audio-email =
+ .label = Email Audio…
+ .accesskey = a
+
+main-context-menu-save-to-pocket =
+ .label = Save Page to { -pocket-brand-name }
+ .accesskey = k
+
+main-context-menu-send-to-device =
+ .label = Send Page to Device
+ .accesskey = n
+
+# Displayed when there are saved passwords and the user clicks inside a username or password field
+main-context-menu-use-saved-password =
+ .label = Use Saved Password
+ .accesskey = o
+
+main-context-menu-use-relay-mask =
+ .label = Use { -relay-brand-short-name } Email Mask
+ .accesskey = E
+
+main-context-menu-suggest-strong-password =
+ .label = Suggest Strong Password…
+ .accesskey = S
+
+main-context-menu-manage-passwords =
+ .label = Manage Passwords
+ .accesskey = M
+
+main-context-menu-keyword =
+ .label = Add a Keyword for this Search…
+ .accesskey = K
+
+main-context-menu-link-send-to-device =
+ .label = Send Link to Device
+ .accesskey = n
+
+main-context-menu-frame =
+ .label = This Frame
+ .accesskey = h
+
+main-context-menu-frame-show-this =
+ .label = Show Only This Frame
+ .accesskey = S
+
+main-context-menu-frame-open-tab =
+ .label = Open Frame in New Tab
+ .accesskey = T
+
+main-context-menu-frame-open-window =
+ .label = Open Frame in New Window
+ .accesskey = W
+
+main-context-menu-frame-reload =
+ .label = Reload Frame
+ .accesskey = R
+
+main-context-menu-frame-add-bookmark =
+ .label = Bookmark Frame…
+ .accesskey = m
+
+main-context-menu-frame-save-as =
+ .label = Save Frame As…
+ .accesskey = F
+
+main-context-menu-frame-print =
+ .label = Print Frame…
+ .accesskey = P
+
+main-context-menu-frame-view-source =
+ .label = View Frame Source
+ .accesskey = V
+
+main-context-menu-frame-view-info =
+ .label = View Frame Info
+ .accesskey = I
+
+main-context-menu-print-selection-2 =
+ .label = Print Selection…
+ .accesskey = r
+
+main-context-menu-view-selection-source =
+ .label = View Selection Source
+ .accesskey = e
+
+main-context-menu-take-screenshot =
+ .label = Take Screenshot
+ .accesskey = T
+
+main-context-menu-take-frame-screenshot =
+ .label = Take Screenshot
+ .accesskey = o
+
+main-context-menu-view-page-source =
+ .label = View Page Source
+ .accesskey = V
+
+main-context-menu-bidi-switch-text =
+ .label = Switch Text Direction
+ .accesskey = w
+
+main-context-menu-bidi-switch-page =
+ .label = Switch Page Direction
+ .accesskey = D
+
+main-context-menu-inspect =
+ .label = Inspect
+ .accesskey = Q
+
+main-context-menu-inspect-a11y-properties =
+ .label = Inspect Accessibility Properties
+
+main-context-menu-eme-learn-more =
+ .label = Learn more about DRM…
+ .accesskey = D
+
+# Variables
+# $containerName (String): The name of the current container
+main-context-menu-open-link-in-container-tab =
+ .label = Open Link in New { $containerName } Tab
+ .accesskey = T
+
+main-context-menu-reveal-password =
+ .label = Reveal Password
+ .accesskey = v
diff --git a/browser/locales/en-US/browser/browserSets.ftl b/browser/locales/en-US/browser/browserSets.ftl
new file mode 100644
index 0000000000..cd8da616ee
--- /dev/null
+++ b/browser/locales/en-US/browser/browserSets.ftl
@@ -0,0 +1,216 @@
+# 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/.
+
+window-minimize-command =
+ .label = Minimize
+
+window-zoom-command =
+ .label = Zoom
+
+window-new-shortcut =
+ .key = N
+
+window-minimize-shortcut =
+ .key = M
+
+close-shortcut =
+ .key = W
+
+tab-new-shortcut =
+ .key = T
+
+location-open-shortcut =
+ .key = L
+
+location-open-shortcut-alt =
+ .key = D
+
+search-focus-shortcut =
+ .key = K
+
+# This shortcut is used in two contexts:
+# - web search
+# - find in page
+find-shortcut =
+ .key = F
+
+search-find-again-shortcut =
+ .key = G
+
+search-find-again-shortcut-alt =
+ .keycode = VK_F3
+
+search-find-selection-shortcut =
+ .key = E
+
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+search-focus-shortcut-alt =
+ .key = { PLATFORM() ->
+ [linux] J
+ *[other] E
+ }
+
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+downloads-shortcut =
+ .key = { PLATFORM() ->
+ [linux] Y
+ *[other] J
+ }
+
+addons-shortcut =
+ .key = A
+
+file-open-shortcut =
+ .key = O
+
+save-page-shortcut =
+ .key = S
+
+page-source-shortcut =
+ .key = U
+
+# This should match the Option+Command keyboard shortcut letter that Safari
+# and Chrome use for "View Source" on macOS. `page-source-shortcut` above
+# is Firefox's official keyboard shortcut shown in the GUI.
+# Safari variant is an alias provided for the convenience of Safari and Chrome
+# users on macOS. See bug 1398988.
+page-source-shortcut-safari =
+ .key = U
+
+page-info-shortcut =
+ .key = I
+
+print-shortcut =
+ .key = P
+
+mute-toggle-shortcut =
+ .key = M
+
+nav-back-shortcut-alt =
+ .key = [
+
+nav-fwd-shortcut-alt =
+ .key = ]
+
+nav-reload-shortcut =
+ .key = R
+
+# Shortcut available only on macOS.
+nav-stop-shortcut =
+ .key = .
+
+history-show-all-shortcut =
+ .key = H
+
+history-show-all-shortcut-mac =
+ .key = Y
+
+history-sidebar-shortcut =
+ .key = H
+
+full-screen-shortcut =
+ .key = F
+
+reader-mode-toggle-shortcut-windows =
+ .keycode = VK_F9
+
+reader-mode-toggle-shortcut-other =
+ .key = R
+
+picture-in-picture-toggle-shortcut-mac =
+ .key = ]
+
+# Pick the key that is commonly present
+# in your locale keyboards above the
+# `picture-in-picture-toggle-shortcut-mac` key.
+picture-in-picture-toggle-shortcut-mac-alt =
+ .key = {"}"}
+
+picture-in-picture-toggle-shortcut =
+ .key = ]
+
+# Pick the key that is commonly present
+# in your locale keyboards above the
+# `picture-in-picture-toggle-shortcut` key.
+picture-in-picture-toggle-shortcut-alt =
+ .key = {"}"}
+
+bookmark-this-page-shortcut =
+ .key = D
+
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+bookmark-show-library-shortcut =
+ .key = O
+
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+bookmark-show-sidebar-shortcut =
+ .key = B
+
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+bookmark-show-toolbar-shortcut =
+ .key = B
+
+## All `-alt*` messages are alternative acceleration keys for zoom.
+## If shift key is needed with your locale popular keyboard for them,
+## you can use these alternative items. Otherwise, their values should be empty.
+
+full-zoom-reduce-shortcut =
+ .key = -
+
+full-zoom-reduce-shortcut-alt-a =
+ .key = _
+
+full-zoom-reduce-shortcut-alt-b =
+ .key = {""}
+
+full-zoom-enlarge-shortcut =
+ .key = +
+
+full-zoom-enlarge-shortcut-alt =
+ .key = =
+
+full-zoom-enlarge-shortcut-alt2 =
+ .key = {""}
+
+full-zoom-reset-shortcut =
+ .key = 0
+
+full-zoom-reset-shortcut-alt =
+ .key = {""}
+
+##
+
+bidi-switch-direction-shortcut =
+ .key = X
+
+private-browsing-shortcut =
+ .key = P
+
+## The shortcuts below are for Mac specific
+## global menu.
+
+quit-app-shortcut =
+ .key = Q
+
+help-shortcut =
+ .key = ?
+
+preferences-shortcut =
+ .key = ,
+
+hide-app-shortcut =
+ .key = H
+
+hide-other-apps-shortcut =
+ .key = H
diff --git a/browser/locales/en-US/browser/colorways.ftl b/browser/locales/en-US/browser/colorways.ftl
new file mode 100644
index 0000000000..7ff8949ada
--- /dev/null
+++ b/browser/locales/en-US/browser/colorways.ftl
@@ -0,0 +1,23 @@
+# 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/.
+
+## Colorway names and descriptions
+
+playmaker-colorway-name = Playmaker
+playmaker-colorway-description = You create opportunities to win and help everyone around you elevate their game.
+
+expressionist-colorway-name = Expressionist
+expressionist-colorway-description = You see the world differently and your creations stir the emotions of others.
+
+visionary-colorway-name = Visionary
+visionary-colorway-description = You question the status quo and move others to imagine a better future.
+
+activist-colorway-name = Activist
+activist-colorway-description = You leave the world a better place than you found it and lead others to believe.
+
+dreamer-colorway-name = Dreamer
+dreamer-colorway-description = You believe that fortune favors the bold and inspire others to be brave.
+
+innovator-colorway-name = Innovator
+innovator-colorway-description = You see opportunities everywhere and make an impact on the lives of everyone around you.
diff --git a/browser/locales/en-US/browser/confirmationHints.ftl b/browser/locales/en-US/browser/confirmationHints.ftl
new file mode 100644
index 0000000000..f9b9f0264e
--- /dev/null
+++ b/browser/locales/en-US/browser/confirmationHints.ftl
@@ -0,0 +1,21 @@
+# 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/.
+
+## Confirmation hints
+
+confirmation-hint-breakage-report-sent = Report sent. Thank you!
+confirmation-hint-password-removed = Password removed!
+confirmation-hint-page-bookmarked = Saved to bookmarks
+confirmation-hint-password-created = Password saved
+confirmation-hint-password-updated = Password updated
+confirmation-hint-address-created = Address saved
+confirmation-hint-address-updated = Address updated
+confirmation-hint-credit-card-created = Card saved
+confirmation-hint-credit-card-updated = Card updated
+confirmation-hint-pin-tab = Pinned!
+confirmation-hint-pin-tab-description = Right-click the tab to unpin it.
+confirmation-hint-send-to-device = Sent!
+confirmation-hint-firefox-relay-mask-created = New mask created!
+confirmation-hint-firefox-relay-mask-reused = Existing mask reused!
+confirmation-hint-screenshot-copied = Screenshot copied!
diff --git a/browser/locales/en-US/browser/contentCrash.ftl b/browser/locales/en-US/browser/contentCrash.ftl
new file mode 100644
index 0000000000..23fe9234ab
--- /dev/null
+++ b/browser/locales/en-US/browser/contentCrash.ftl
@@ -0,0 +1,33 @@
+# 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/.
+
+## Subframe crash notification
+
+crashed-subframe-message = <strong>Part of this page crashed.</strong> To let { -brand-product-name } know about this issue and get it fixed faster, please submit a report.
+
+# The string for crashed-subframe-title.title should match crashed-subframe-message,
+# but without any markup.
+crashed-subframe-title =
+ .title = Part of this page crashed. To let { -brand-product-name } know about this issue and get it fixed faster, please submit a report.
+crashed-subframe-learnmore-link =
+ .value = Learn more
+crashed-subframe-submit =
+ .label = Submit report
+ .accesskey = S
+
+## Pending crash reports
+
+# Variables:
+# $reportCount (Number): the number of pending crash reports
+pending-crash-reports-message =
+ { $reportCount ->
+ [one] You have an unsent crash report
+ *[other] You have { $reportCount } unsent crash reports
+ }
+pending-crash-reports-view-all =
+ .label = View
+pending-crash-reports-send =
+ .label = Send
+pending-crash-reports-always-send =
+ .label = Always send
diff --git a/browser/locales/en-US/browser/customizeMode.ftl b/browser/locales/en-US/browser/customizeMode.ftl
new file mode 100644
index 0000000000..e5f54b2317
--- /dev/null
+++ b/browser/locales/en-US/browser/customizeMode.ftl
@@ -0,0 +1,38 @@
+# 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/.
+
+customize-mode-restore-defaults =
+ .label = Restore Defaults
+customize-mode-menu-and-toolbars-header = Drag your favorite items into the toolbar or overflow menu.
+customize-mode-overflow-list-title = Overflow Menu
+customize-mode-uidensity =
+ .label = Density
+customize-mode-done =
+ .label = Done
+customize-mode-toolbars =
+ .label = Toolbars
+customize-mode-titlebar =
+ .label = Title Bar
+customize-mode-uidensity-menu-touch =
+ .label = Touch
+ .accesskey = T
+ .tooltiptext = Touch
+customize-mode-uidensity-auto-touch-mode-checkbox =
+ .label = Use Touch for Tablet Mode
+customize-mode-overflow-list-description = Drag and drop items here to keep them within reach but out of your toolbar…
+customize-mode-uidensity-menu-normal =
+ .label = Normal
+ .accesskey = N
+ .tooltiptext = Normal
+customize-mode-uidensity-menu-compact-unsupported =
+ .label = Compact (not supported)
+ .accesskey = C
+ .tooltiptext = Compact (not supported)
+customize-mode-undo-cmd =
+ .label = Undo
+customize-mode-lwthemes-link = Manage Themes
+customize-mode-touchbar-cmd =
+ .label = Customize Touch Bar…
+customize-mode-downloads-button-autohide =
+ .label = Hide button when empty
diff --git a/browser/locales/en-US/browser/defaultBrowserNotification.ftl b/browser/locales/en-US/browser/defaultBrowserNotification.ftl
new file mode 100644
index 0000000000..67be2c55a9
--- /dev/null
+++ b/browser/locales/en-US/browser/defaultBrowserNotification.ftl
@@ -0,0 +1,23 @@
+# 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/.
+
+# The question portion of the following message should have the <strong> and </strong> tags surrounding it.
+default-browser-notification-message = <strong>Set { -brand-short-name } as your default browser?</strong> Get fast, safe, and private browsing whenever you use the web.
+default-browser-notification-button =
+ .label = Set as default
+ .accesskey = S
+
+## These strings are used for the default browser prompt. There are 2 variations
+## depending on the operating system (Windows vs other). The checkbox label and
+## secondary button are shared between the variants.
+
+default-browser-prompt-title-pin = Make { -brand-short-name } your primary browser?
+default-browser-prompt-message-pin = Keep { -brand-short-name } at your fingertips — make it your default browser and pin it to your taskbar.
+default-browser-prompt-message-pin-mac = Keep { -brand-short-name } at your fingertips — make it your default browser and keep it in your Dock.
+default-browser-prompt-button-primary-pin = Make primary browser
+default-browser-prompt-title-alt = Make { -brand-short-name } your default browser?
+default-browser-prompt-message-alt = Get speed, safety, and privacy every time you browse.
+default-browser-prompt-button-primary-alt = Set as default browser
+default-browser-prompt-checkbox-not-again-label = Don’t show this message again
+default-browser-prompt-button-secondary = Not now
diff --git a/browser/locales/en-US/browser/downloads.ftl b/browser/locales/en-US/browser/downloads.ftl
new file mode 100644
index 0000000000..4a41b3fbd8
--- /dev/null
+++ b/browser/locales/en-US/browser/downloads.ftl
@@ -0,0 +1,248 @@
+# 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/.
+
+## The title and aria-label attributes are used by screen readers to describe
+## the Downloads Panel.
+
+downloads-window =
+ .title = Downloads
+downloads-panel =
+ .aria-label = Downloads
+
+##
+
+# The style attribute has the width of the Downloads Panel expressed using
+# a CSS unit. The longest labels that should fit are usually those of
+# in-progress and blocked downloads.
+downloads-panel-items =
+ .style = width: 35em
+
+downloads-cmd-pause =
+ .label = Pause
+ .accesskey = P
+downloads-cmd-resume =
+ .label = Resume
+ .accesskey = R
+downloads-cmd-cancel =
+ .tooltiptext = Cancel
+downloads-cmd-cancel-panel =
+ .aria-label = Cancel
+
+downloads-cmd-show-menuitem-2 =
+ .label = { PLATFORM() ->
+ [macos] Show in Finder
+ *[other] Show in Folder
+ }
+ .accesskey = F
+
+## Displayed in the downloads context menu for files that can be opened.
+## Variables:
+## $handler (String) - The name of the mime type's default file handler.
+## Example: "Notepad", "Acrobat Reader DC", "7-Zip File Manager"
+
+downloads-cmd-use-system-default =
+ .label = Open In System Viewer
+ .accesskey = I
+# This version is shown when the download's mime type has a valid file handler.
+downloads-cmd-use-system-default-named =
+ .label = Open In { $handler }
+ .accesskey = I
+
+# We can use the same accesskey as downloads-cmd-always-open-similar-files.
+# Both should not be visible in the downloads context menu at the same time.
+downloads-cmd-always-use-system-default =
+ .label = Always Open In System Viewer
+ .accesskey = w
+# We can use the same accesskey as downloads-cmd-always-open-similar-files.
+# Both should not be visible in the downloads context menu at the same time.
+# This version is shown when the download's mime type has a valid file handler.
+downloads-cmd-always-use-system-default-named =
+ .label = Always Open In { $handler }
+ .accesskey = w
+
+##
+
+# We can use the same accesskey as downloads-cmd-always-use-system-default.
+# Both should not be visible in the downloads context menu at the same time.
+downloads-cmd-always-open-similar-files =
+ .label = Always Open Similar Files
+ .accesskey = w
+
+downloads-cmd-show-button-2 =
+ .tooltiptext = { PLATFORM() ->
+ [macos] Show in Finder
+ *[other] Show in Folder
+ }
+
+downloads-cmd-show-panel-2 =
+ .aria-label = { PLATFORM() ->
+ [macos] Show in Finder
+ *[other] Show in Folder
+ }
+downloads-cmd-show-description-2 =
+ .value = { PLATFORM() ->
+ [macos] Show in Finder
+ *[other] Show in Folder
+ }
+
+downloads-cmd-show-downloads =
+ .label = Show downloads folder
+downloads-cmd-retry =
+ .tooltiptext = Retry
+downloads-cmd-retry-panel =
+ .aria-label = Retry
+downloads-cmd-go-to-download-page =
+ .label = Go To Download Page
+ .accesskey = G
+downloads-cmd-copy-download-link =
+ .label = Copy Download Link
+ .accesskey = L
+downloads-cmd-remove-from-history =
+ .label = Remove From History
+ .accesskey = e
+downloads-cmd-clear-list =
+ .label = Clear Preview Panel
+ .accesskey = a
+downloads-cmd-clear-downloads =
+ .label = Clear Downloads
+ .accesskey = C
+downloads-cmd-delete-file =
+ .label = Delete
+ .accesskey = D
+
+# This command is shown in the context menu when downloads are blocked.
+downloads-cmd-unblock =
+ .label = Allow Download
+ .accesskey = o
+
+# This is the tooltip of the action button shown when malware is blocked.
+downloads-cmd-remove-file =
+ .tooltiptext = Remove File
+
+downloads-cmd-remove-file-panel =
+ .aria-label = Remove File
+
+# This is the tooltip of the action button shown when potentially unwanted
+# downloads are blocked. This opens a dialog where the user can choose
+# whether to unblock or remove the download. Removing is the default option.
+downloads-cmd-choose-unblock =
+ .tooltiptext = Remove File or Allow Download
+
+downloads-cmd-choose-unblock-panel =
+ .aria-label = Remove File or Allow Download
+
+# This is the tooltip of the action button shown when uncommon downloads are
+# blocked.This opens a dialog where the user can choose whether to open the
+# file or remove the download. Opening is the default option.
+downloads-cmd-choose-open =
+ .tooltiptext = Open or Remove File
+
+downloads-cmd-choose-open-panel =
+ .aria-label = Open or Remove File
+
+# Displayed when hovering a blocked download, indicates that it's possible to
+# show more information for user to take the next action.
+downloads-show-more-information =
+ .value = Show more information
+
+# Displayed when hovering a complete download, indicates that it's possible to
+# open the file using an app available in the system.
+downloads-open-file =
+ .value = Open File
+
+## Displayed when the user clicked on a download in process. Indicates that the
+## downloading file will be opened after certain amount of time using an app
+## available in the system.
+## Variables:
+## $hours (number) - Amount of hours left till the file opens.
+## $seconds (number) - Amount of seconds left till the file opens.
+## $minutes (number) - Amount of minutes till the file opens.
+
+downloading-file-opens-in-hours-and-minutes-2 =
+ .value = Opening in { $hours }h { $minutes }m…
+downloading-file-opens-in-minutes-2 =
+ .value = Opening in { $minutes }m…
+downloading-file-opens-in-minutes-and-seconds-2 =
+ .value = Opening in { $minutes }m { $seconds }s…
+downloading-file-opens-in-seconds-2 =
+ .value = Opening in { $seconds }s…
+downloading-file-opens-in-some-time-2 =
+ .value = Opening when completed…
+downloading-file-click-to-open =
+ .value = Open when completed
+
+##
+
+# Displayed when hovering a download which is able to be retried by users,
+# indicates that it's possible to download this file again.
+downloads-retry-download =
+ .value = Retry Download
+
+# Displayed when hovering a download which is able to be cancelled by users,
+# indicates that it's possible to cancel and stop the download.
+downloads-cancel-download =
+ .value = Cancel Download
+
+# This string is shown at the bottom of the Downloads Panel when all the
+# downloads fit in the available space, or when there are no downloads in
+# the panel at all.
+downloads-history =
+ .label = Show all downloads
+ .accesskey = S
+
+# This string is shown at the top of the download details sub-panel to indicate
+# that we are showing the details of a single download.
+downloads-details =
+ .title = Download details
+
+## Displayed when a site attempts to automatically download many files.
+## Variables:
+## $num (number) - Number of blocked downloads.
+## $url (string) - The url of the suspicious site, stripped of http, https and www prefix.
+
+downloads-files-not-downloaded = { $num ->
+ [one] File not downloaded.
+ *[other] {$num} files not downloaded.
+}
+downloads-blocked-from-url = Downloads blocked from { $url }.
+downloads-blocked-download-detailed-info = { $url } attempted to automatically download multiple files. The site could be broken or trying to store spam files on your device.
+
+##
+
+downloads-clear-downloads-button =
+ .label = Clear Downloads
+ .tooltiptext = Clears completed, canceled and failed downloads
+
+# This string is shown when there are no items in the Downloads view, when it
+# is displayed inside a browser tab.
+downloads-list-empty =
+ .value = There are no downloads.
+
+# This string is shown when there are no items in the Downloads Panel.
+downloads-panel-empty =
+ .value = No downloads for this session.
+
+# This is displayed in an item at the bottom of the Downloads Panel when there
+# are more downloads than can fit in the list in the panel.
+# $count (number) - number of files being downloaded that are not shown in the
+# panel list.
+downloads-more-downloading =
+ { $count ->
+ [one] { $count } more file downloading
+ *[other] { $count } more files downloading
+ }
+
+## Download errors
+
+downloads-error-alert-title = Download Error
+# Variables:
+# $extension (String): the name of the blocking extension.
+downloads-error-blocked-by = The download cannot be saved because it is blocked by { $extension }.
+# Used when the name of the blocking extension is unavailable.
+downloads-error-extension = The download cannot be saved because it is blocked by an extension.
+# Line breaks in this message are meaningful, and should be maintained.
+downloads-error-generic =
+ The download cannot be saved because an unknown error occurred.
+
+ Please try again.
diff --git a/browser/locales/en-US/browser/editBookmarkOverlay.ftl b/browser/locales/en-US/browser/editBookmarkOverlay.ftl
new file mode 100644
index 0000000000..da74660e48
--- /dev/null
+++ b/browser/locales/en-US/browser/editBookmarkOverlay.ftl
@@ -0,0 +1,55 @@
+# 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/.
+
+bookmark-overlay-name-2 =
+ .value = Name
+ .accesskey = N
+
+bookmark-overlay-url =
+ .value = URL
+ .accesskey = U
+
+# Location refers to the position of the bookmark within the browser's
+# bookmarks, not to its URL or address.
+bookmark-overlay-location-2 =
+ .value = Location
+ .accesskey = L
+
+bookmark-overlay-choose =
+ .label = Choose…
+
+bookmark-overlay-folders-expander2 =
+ .tooltiptext = Show all the bookmarks folders
+
+bookmark-overlay-folders-expander-hide =
+ .tooltiptext = Hide
+
+# bookmark-overlay-folders-tree is used to provide an accessible name to the tree view of the Bookmarks directory, when it is expanded
+bookmark-overlay-folders-tree =
+ .aria-label = Folders
+
+bookmark-overlay-new-folder-button =
+ .label = New Folder
+ .accesskey = o
+
+bookmark-overlay-tags-2 =
+ .value = Tags
+ .accesskey = T
+
+bookmark-overlay-tags-empty-description =
+ .placeholder = Separate tags with commas
+
+bookmark-overlay-tags-expander2 =
+ .tooltiptext = Show all tags
+
+bookmark-overlay-tags-expander-hide =
+ .tooltiptext = Hide
+
+bookmark-overlay-keyword-2 =
+ .value = Keyword
+ .accesskey = K
+
+bookmark-overlay-tags-caption-label = Use tags to organize and search for bookmarks from the address bar
+
+bookmark-overlay-keyword-caption-label-2 = Use a single keyword to open bookmarks directly from the address bar
diff --git a/browser/locales/en-US/browser/extensionsUI.ftl b/browser/locales/en-US/browser/extensionsUI.ftl
new file mode 100644
index 0000000000..a37a1ba6ad
--- /dev/null
+++ b/browser/locales/en-US/browser/extensionsUI.ftl
@@ -0,0 +1,39 @@
+# 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/.
+
+# Variables:
+# $addonName (String): localized named of the extension that is asking to change the default search engine.
+# $currentEngine (String): name of the current search engine.
+# $newEngine (String): name of the new search engine.
+webext-default-search-description = { $addonName } would like to change your default search engine from { $currentEngine } to { $newEngine }. Is that OK?
+webext-default-search-yes =
+ .label = Yes
+ .accesskey = Y
+webext-default-search-no =
+ .label = No
+ .accesskey = N
+
+# Variables:
+# $addonName (String): localized named of the extension that was just installed.
+addon-post-install-message = { $addonName } was added.
+
+## A modal confirmation dialog to allow an extension on quarantined domains.
+
+# Variables:
+# $addonName (String): localized name of the extension.
+webext-quarantine-confirmation-title =
+ Run { $addonName } on restricted sites?
+
+webext-quarantine-confirmation-line-1 =
+ To protect your data, this extension is not allowed on this site.
+webext-quarantine-confirmation-line-2 =
+ Allow this extension if you trust it to read and change your data on sites restricted by { -vendor-short-name }.
+
+webext-quarantine-confirmation-allow =
+ .label = Allow
+ .accesskey = A
+
+webext-quarantine-confirmation-deny =
+ .label = Don’t Allow
+ .accesskey = D
diff --git a/browser/locales/en-US/browser/featureCallout.ftl b/browser/locales/en-US/browser/featureCallout.ftl
new file mode 100644
index 0000000000..d1ee397e9d
--- /dev/null
+++ b/browser/locales/en-US/browser/featureCallout.ftl
@@ -0,0 +1,56 @@
+# 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/.
+
+# Callout dialog primary button to advance to next screen
+callout-primary-advance-button-label = Next
+
+# Callout dialog primary button to complete the feature tour
+callout-primary-complete-button-label = Got it!
+
+## Firefox View feature tour strings
+
+# "Tab pickup" refers to the section in Firefox View that displays open
+# tabs from other devices
+callout-firefox-view-tab-pickup-title = Hop between devices with tab pickup
+
+callout-firefox-view-tab-pickup-subtitle = Quickly grab open tabs from your phone and open them here for maximum flow.
+
+callout-firefox-view-recently-closed-title = Get back your closed tabs in a snap
+
+callout-firefox-view-recently-closed-subtitle = All your closed tabs will magically show up here. Never worry about accidentally closing a site again.
+
+callout-firefox-view-colorways-title = Add a splash of color
+
+# "Shade" refer to different color options in each colorway.
+callout-firefox-view-colorways-subtitle = Choose the shade that speaks to you with colorways. Only in { -brand-product-name }.
+
+callout-firefox-view-colorways-reminder-title = Explore our latest colorways
+
+# “Shades” refers to the different color options in each colorways
+callout-firefox-view-colorways-reminder-subtitle = Color your browser with these iconic shades, inspired by independent voices. Only in { -brand-product-name }.
+
+## Continuous Onboarding - Firefox View: Tab pick up
+
+# “Boost your browsing” refers to the added benefit the user receives from having
+# access to the same browsing experience when moving from one browser to another.
+# Alternative: ”Improve your browsing experience with tab pickup”
+continuous-onboarding-firefox-view-tab-pickup-title = Boost your browsing with tab pickup
+
+continuous-onboarding-firefox-view-tab-pickup-subtitle = Access your open tabs from any device. Plus sync your bookmarks, passwords, and more.
+
+continuous-onboarding-firefox-view-tab-pickup-primary-button-label = Get started
+
+## PDF.js Feature Tour Strings
+
+callout-pdfjs-edit-title = Edit PDFs with our new text tool
+callout-pdfjs-edit-body-a = Fill out forms, add comments, or take notes directly in { -brand-short-name }.
+callout-pdfjs-edit-body-b = Skip the search for free online editors. Fill out forms, add comments, or take notes directly in { -brand-short-name }.
+callout-pdfjs-edit-button = Next
+
+callout-pdfjs-draw-title = Sign documents with our new draw tool
+# “Mark up” refers to the process of “annotating” or adding free hand text or diagramming to the document.
+callout-pdfjs-draw-body-a = Mark up PDFs, then save your changes.
+# “Mark up” refers to the process of “annotating” or adding free hand text or diagramming to the document.
+callout-pdfjs-draw-body-b = No more printing and scanning. Mark up PDFs, then save your changes.
+callout-pdfjs-draw-button = Got it!
diff --git a/browser/locales/en-US/browser/firefoxRelay.ftl b/browser/locales/en-US/browser/firefoxRelay.ftl
new file mode 100644
index 0000000000..3c0d976225
--- /dev/null
+++ b/browser/locales/en-US/browser/firefoxRelay.ftl
@@ -0,0 +1,33 @@
+# 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/.
+
+## Error messages for failed HTTP web requests.
+## https://developer.mozilla.org/en-US/docs/Web/HTTP/Status#client_error_responses
+## Variables:
+## $status (Number) - HTTP status code, for example 403
+
+firefox-relay-mask-generation-failed = { -relay-brand-name } could not generate a new mask. HTTP error code: { $status }.
+firefox-relay-get-reusable-masks-failed = { -relay-brand-name } could not find reusable masks. HTTP error code: { $status }.
+
+##
+
+firefox-relay-must-login-to-account = Sign in to your account to use your { -relay-brand-name } email masks.
+firefox-relay-get-unlimited-masks =
+ .label = Manage masks
+ .accesskey = M
+# This is followed, on a new line, by firefox-relay-opt-in-subtitle-1
+firefox-relay-opt-in-title-1 = Protect your email address:
+# This is preceded by firefox-relay-opt-in-title-1 (on a different line), which
+# ends with a colon. You might need to adapt the capitalization of this string.
+firefox-relay-opt-in-subtitle-1 = Use { -relay-brand-name } email mask
+firefox-relay-use-mask-title = Use { -relay-brand-name } email mask
+firefox-relay-opt-in-confirmation-enable-button =
+ .label = Use email mask
+ .accesskey = U
+firefox-relay-opt-in-confirmation-disable =
+ .label = Don’t show me this again
+ .accesskey = D
+firefox-relay-opt-in-confirmation-postpone =
+ .label = Not now
+ .accesskey = N
diff --git a/browser/locales/en-US/browser/firefoxView.ftl b/browser/locales/en-US/browser/firefoxView.ftl
new file mode 100644
index 0000000000..2057066d49
--- /dev/null
+++ b/browser/locales/en-US/browser/firefoxView.ftl
@@ -0,0 +1,294 @@
+# 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/.
+
+toolbar-button-firefox-view-2 =
+ .label = { -firefoxview-brand-name }
+ .tooltiptext = View recent browsing across windows and devices
+
+menu-tools-firefox-view =
+ .label = { -firefoxview-brand-name }
+ .accesskey = F
+
+firefoxview-page-title = { -firefoxview-brand-name }
+
+firefoxview-page-label =
+ .label = { -firefoxview-brand-name }
+
+firefoxview-close-button =
+ .title = Close
+ .aria-label = Close
+
+firefoxview-empty-state-icon =
+ .alt = Attention:
+
+# Used instead of the localized relative time when a timestamp is within a minute or so of now
+firefoxview-just-now-timestamp = Just now
+
+# This is a headline for an area in the product where users can resume and re-open tabs they have previously viewed on other devices.
+firefoxview-tabpickup-header = Tab pickup
+firefoxview-tabpickup-description = Open pages from other devices.
+
+# Variables:
+# $percentValue (Number): the percentage value for setup completion
+firefoxview-tabpickup-progress-label = { $percentValue }% complete
+
+firefoxview-tabpickup-step-signin-header = Switch seamlessly between devices
+firefoxview-tabpickup-step-signin-description = To grab your phone tabs here, first sign in or create an account.
+firefoxview-tabpickup-step-signin-primarybutton = Continue
+
+firefoxview-syncedtabs-signin-header = Grab tabs from anywhere
+firefoxview-syncedtabs-signin-description = To see your tabs from wherever you use { -brand-product-name }, sign in to your account. If you don’t have an account, we’ll take you through the steps to sign up.
+firefoxview-syncedtabs-signin-primarybutton = Sign in or sign up
+
+firefoxview-tabpickup-adddevice-header = Sync { -brand-product-name } on your phone or tablet
+firefoxview-tabpickup-adddevice-description = Download { -brand-product-name } for mobile and sign in there.
+firefoxview-tabpickup-adddevice-learn-how = Learn how
+firefoxview-tabpickup-adddevice-primarybutton = Get { -brand-product-name } for mobile
+
+firefoxview-syncedtabs-adddevice-header = Sign in to { -brand-product-name } on your other devices
+firefoxview-syncedtabs-adddevice-description = To see your tabs from wherever you use { -brand-product-name }, sign in on all your devices. Learn how to <a data-l10n-name="url">connect additional devices</a>.
+firefoxview-syncedtabs-adddevice-primarybutton = Try { -brand-product-name } for mobile
+
+firefoxview-tabpickup-synctabs-header = Turn on tab syncing
+firefoxview-tabpickup-synctabs-description = Allow { -brand-short-name } to share tabs between devices.
+firefoxview-tabpickup-synctabs-learn-how = Learn how
+firefoxview-tabpickup-synctabs-primarybutton = Sync open tabs
+
+firefoxview-syncedtabs-synctabs-header = Update your sync settings
+firefoxview-syncedtabs-synctabs-description = To see tabs from other devices, you need to sync your open tabs.
+firefoxview-syncedtabs-synctabs-checkbox = Allow open tabs to sync
+
+firefoxview-syncedtabs-loading-header = Sync in progress
+firefoxview-syncedtabs-loading-description = When it’s done, you’ll see any tabs you have open on other devices. Check back soon.
+
+firefoxview-tabpickup-fxa-admin-disabled-header = Your organization has disabled sync
+firefoxview-tabpickup-fxa-disabled-by-policy-description = { -brand-short-name } is not able to sync tabs between devices because your organization has disabled syncing.
+
+firefoxview-tabpickup-network-offline-header = Check your internet connection
+firefoxview-tabpickup-network-offline-description = If you’re using a firewall or proxy, check that { -brand-short-name } has permission to access the web.
+firefoxview-tabpickup-network-offline-primarybutton = Try again
+
+firefoxview-tabpickup-sync-error-header = We’re having trouble syncing
+firefoxview-tabpickup-generic-sync-error-description = { -brand-short-name } can’t reach the syncing service right now. Try again in a few moments.
+firefoxview-tabpickup-sync-error-primarybutton = Try again
+
+firefoxview-tabpickup-sync-disconnected-header = Turn on syncing to continue
+firefoxview-tabpickup-sync-disconnected-description = To grab your tabs, you’ll need to allow syncing in { -brand-short-name }.
+firefoxview-tabpickup-sync-disconnected-primarybutton = Turn on sync in settings
+
+firefoxview-tabpickup-password-locked-header = Enter your Primary Password to view tabs
+firefoxview-tabpickup-password-locked-description = To grab your tabs, you’ll need to enter the Primary Password for { -brand-short-name }.
+firefoxview-tabpickup-password-locked-link = Learn more
+firefoxview-tabpickup-password-locked-primarybutton = Enter Primary Password
+firefoxview-syncedtab-password-locked-link = <a data-l10n-name="syncedtab-password-locked-link">Learn more</a>
+
+firefoxview-tabpickup-signed-out-header = Sign in to reconnect
+firefoxview-tabpickup-signed-out-description2 = To reconnect and grab your tabs, sign in to your account.
+firefoxview-tabpickup-signed-out-primarybutton = Sign in
+
+firefoxview-tabpickup-syncing = Sit tight while your tabs sync. It’ll be just a moment.
+
+firefoxview-mobile-promo-header = Grab tabs from your phone or tablet
+firefoxview-mobile-promo-description = To view your latest mobile tabs, sign in to { -brand-product-name } on iOS or Android.
+firefoxview-mobile-promo-primarybutton = Get { -brand-product-name } for mobile
+
+firefoxview-mobile-confirmation-header = 🎉 Good to go!
+firefoxview-mobile-confirmation-description = Now you can grab your { -brand-product-name } tabs from your tablet or phone.
+
+firefoxview-closed-tabs-placeholder-header = No recently closed tabs
+firefoxview-closed-tabs-placeholder-body2 = When you close a tab, you can fetch it from here.
+
+# Variables:
+# $tabTitle (string) - Title of tab being dismissed
+firefoxview-closed-tabs-dismiss-tab =
+ .title = Dismiss { $tabTitle }
+
+# refers to the last tab that was used
+firefoxview-pickup-tabs-badge = Last active
+
+# Variables:
+# $targetURI (string) - URL that will be opened in the new tab
+firefoxview-tabs-list-tab-button =
+ .title = Open { $targetURI } in a new tab
+
+firefoxview-try-colorways-button = Try colorways
+firefoxview-change-colorway-button = Change colorway
+
+# Variables:
+# $intensity (String): Colorway intensity
+# $collection (String): Colorway Collection name
+firefoxview-colorway-description = { $intensity } · { $collection }
+
+firefoxview-synced-tabs-placeholder-header = Nothing to see yet
+firefoxview-synced-tabs-placeholder-body = The next time you open a page in { -brand-product-name } on another device, grab it here like magic.
+
+firefoxview-collapse-button-show =
+ .title = Show list
+
+firefoxview-collapse-button-hide =
+ .title = Hide list
+
+firefoxview-overview-nav = Recent browsing
+ .title = Recent browsing
+firefoxview-overview-header = Recent browsing
+ .title = Recent browsing
+
+## History in this context refers to browser history
+
+firefoxview-history-nav = History
+ .title = History
+firefoxview-history-header = History
+firefoxview-history-context-delete = Delete from History
+ .accesskey = D
+
+## Open Tabs in this context refers to all open tabs in the browser
+
+firefoxview-opentabs-nav = Open tabs
+ .title = Open tabs
+firefoxview-opentabs-header = Open tabs
+
+## Recently closed tabs in this context refers to recently closed tabs from all windows
+
+firefoxview-recently-closed-nav = Recently closed tabs
+ .title = Recently closed tabs
+firefoxview-recently-closed-header = Recently closed tabs
+
+## Tabs from other devices refers in this context refers to synced tabs from other devices
+
+firefoxview-synced-tabs-nav = Tabs from other devices
+ .title = Tabs from other devices
+firefoxview-synced-tabs-header = Tabs from other devices
+
+##
+
+# Used for a link in collapsible cards, in the ’Recent browsing’ page of Firefox View
+firefoxview-view-all-link = View all
+
+# Variables:
+# $winID (Number) - The index of the owner window for this set of tabs
+firefoxview-opentabs-window-header =
+ .title = Window { $winID }
+
+# Variables:
+# $winID (Number) - The index of the owner window (which is currently focused) for this set of tabs
+firefoxview-opentabs-current-window-header =
+ .title = Window { $winID } (Current)
+
+firefoxview-opentabs-focus-tab =
+ .title = Switch to this tab
+
+firefoxview-show-more = Show more
+firefoxview-show-less = Show less
+firefoxview-show-all = Show all
+
+firefoxview-search-text-box-clear-button =
+ .title = Clear
+
+# Placeholder for the input field to search in recent browsing ("search" is a verb).
+firefoxview-search-text-box-recentbrowsing =
+ .placeholder = Search
+
+# Placeholder for the input field to search in history ("search" is a verb).
+firefoxview-search-text-box-history =
+ .placeholder = Search history
+
+# Placeholder for the input field to search in recently closed tabs ("search" is a verb).
+firefoxview-search-text-box-recentlyclosed =
+ .placeholder = Search recently closed tabs
+
+# Placeholder for the input field to search in tabs from other devices ("search" is a verb).
+firefoxview-search-text-box-syncedtabs =
+ .placeholder = Search synced tabs
+
+# Placeholder for the input field to search in open tabs ("search" is a verb).
+firefoxview-search-text-box-opentabs =
+ .placeholder = Search open tabs
+
+# "Search" is a noun (as in "Results of the search for")
+# Variables:
+# $query (String) - The search query used for searching through browser history.
+firefoxview-search-results-header = Search results for “{ $query }”
+
+# Variables:
+# $count (Number) - The number of visits matching the search query.
+firefoxview-search-results-count = { $count ->
+ [one] { $count } site
+ *[other] { $count } sites
+}
+
+# Message displayed when a search is performed and no matching results were found.
+# Variables:
+# $query (String) - The search query.
+firefoxview-search-results-empty = No results for “{ $query }”
+
+firefoxview-sort-history-by-date-label = Sort by date
+firefoxview-sort-history-by-site-label = Sort by site
+firefoxview-sort-open-tabs-by-recency-label = Sort by recent activity
+firefoxview-sort-open-tabs-by-order-label = Sort by tab order
+
+# Variables:
+# $url (string) - URL that will be opened in the new tab
+firefoxview-opentabs-tab-row =
+ .title = Switch to { $url }
+
+## Variables:
+## $date (string) - Date to be formatted based on locale
+
+firefoxview-history-date-today = Today - { DATETIME($date, dateStyle: "full") }
+firefoxview-history-date-yesterday = Yesterday - { DATETIME($date, dateStyle: "full") }
+firefoxview-history-date-this-month = { DATETIME($date, dateStyle: "full") }
+firefoxview-history-date-prev-month = { DATETIME($date, month: "long", year: "numeric") }
+
+# When history is sorted by site, this heading is used in place of a domain, in
+# order to group sites that do not come from an outside host.
+# For example, this would be the heading for all file:/// URLs in history.
+firefoxview-history-site-localhost = (local files)
+
+##
+
+firefoxview-show-all-history = Show all history
+
+firefoxview-view-more-browsing-history = View more browsing history
+
+## Message displayed in Firefox View when the user has no history data
+
+firefoxview-history-empty-header = Get back to where you’ve been
+firefoxview-history-empty-description = As you browse, the pages you visit will be listed here.
+firefoxview-history-empty-description-two = Protecting your privacy is at the heart of what we do. It’s why you can control the activity { -brand-short-name } remembers, in your <a data-l10n-name="history-settings-url">history settings</a>.
+
+##
+
+# Button text for choosing a browser within the ’Import history from another browser’ banner
+firefoxview-choose-browser-button = Choose browser
+ .title = Choose browser
+
+## Message displayed in Firefox View when the user has chosen to never remember History
+
+firefoxview-dont-remember-history-empty-header = Nothing to show
+firefoxview-dont-remember-history-empty-description = Protecting your privacy is at the heart of what we do. It’s why you can control the activity { -brand-short-name } remembers.
+firefoxview-dont-remember-history-empty-description-two = Based on your current settings, { -brand-short-name } doesn’t remember your activity as you browse. To change that, <a data-l10n-name="history-settings-url-two">change your history settings to remember your history</a>.
+
+##
+
+# This label is read by screen readers when focusing the close button for the "Import history from another browser" banner in Firefox View
+firefoxview-import-history-close-button =
+ .aria-label = Close
+ .title = Close
+
+## Text displayed in a dismissable banner to import bookmarks/history from another browser
+
+firefoxview-import-history-header = Import history from another browser
+firefoxview-import-history-description = Make { -brand-short-name } your go-to browser. Import browsing history, bookmarks, and more.
+
+## Message displayed in Firefox View when the user has no recently closed tabs data
+
+firefoxview-recentlyclosed-empty-header = Closed a tab too soon?
+firefoxview-recentlyclosed-empty-description = Here you’ll find the tabs you recently closed, so you can reopen any of them quickly.
+firefoxview-recentlyclosed-empty-description-two = To find tabs from longer ago, view your <a data-l10n-name="history-url">browsing history</a>.
+
+## This message is displayed below the name of another connected device when it doesn't have any open tabs.
+
+firefoxview-syncedtabs-device-notabs = No tabs open on this device
+
+firefoxview-syncedtabs-connect-another-device = Connect another device
diff --git a/browser/locales/en-US/browser/fxviewTabList.ftl b/browser/locales/en-US/browser/fxviewTabList.ftl
new file mode 100644
index 0000000000..381234db50
--- /dev/null
+++ b/browser/locales/en-US/browser/fxviewTabList.ftl
@@ -0,0 +1,70 @@
+# 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/.
+
+# Variables:
+# $date (string) - Date to be formatted based on locale
+fxviewtabrow-date = { DATETIME($date, dateStyle: "short") }
+
+# Variables:
+# $time (string) - Time to be formatted based on locale
+fxviewtabrow-time = { DATETIME($time, timeStyle: "short") }
+
+# Variables:
+# $targetURI (string) - URL of tab that will be opened in the new tab
+fxviewtabrow-tabs-list-tab =
+ .title = Open { $targetURI } in a new tab
+
+# Variables:
+# $tabTitle (string) - Title of tab being dismissed
+fxviewtabrow-dismiss-tab-button =
+ .title = Dismiss { $tabTitle }
+
+# Used instead of the localized relative time when a timestamp is within a minute or so of now
+fxviewtabrow-just-now-timestamp = Just now
+
+# Strings below are used for context menu options within panel-list.
+# For developers, this duplicates command because the label attribute is required.
+
+fxviewtabrow-delete = Delete
+ .accesskey = D
+fxviewtabrow-forget-about-this-site = Forget About This Site…
+ .accesskey = F
+fxviewtabrow-open-in-window = Open in New Window
+ .accesskey = N
+fxviewtabrow-open-in-private-window = Open in New Private Window
+ .accesskey = P
+# “Bookmark” is a verb, as in "Bookmark this page" (add to bookmarks).
+fxviewtabrow-add-bookmark = Bookmark…
+ .accesskey = B
+fxviewtabrow-save-to-pocket = Save to { -pocket-brand-name }
+ .accesskey = o
+fxviewtabrow-copy-link = Copy Link
+ .accesskey = L
+fxviewtabrow-close-tab = Close Tab
+ .accesskey = C
+fxviewtabrow-move-tab = Move Tab
+ .accesskey = v
+fxviewtabrow-move-tab-start = Move to Start
+ .accesskey = S
+fxviewtabrow-move-tab-end = Move to End
+ .accesskey = E
+fxviewtabrow-move-tab-window = Move to New Window
+ .accesskey = W
+fxviewtabrow-send-tab = Send Tab to Device
+ .accesskey = n
+
+# Variables:
+# $tabTitle (string) - Title of the tab to which the context menu is associated
+fxviewtabrow-options-menu-button =
+ .title = Options for { $tabTitle }
+
+# Variables:
+# $tabTitle (string) - Title of tab being muted
+fxviewtabrow-mute-tab-button =
+ .title = Mute { $tabTitle }
+
+# Variables:
+# $tabTitle (string) - Title of tab being unmuted
+fxviewtabrow-unmute-tab-button =
+ .title = Unmute { $tabTitle }
diff --git a/browser/locales/en-US/browser/identityCredentialNotification.ftl b/browser/locales/en-US/browser/identityCredentialNotification.ftl
new file mode 100644
index 0000000000..a5ce9a0645
--- /dev/null
+++ b/browser/locales/en-US/browser/identityCredentialNotification.ftl
@@ -0,0 +1,28 @@
+# 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/.
+
+## Credential panel
+##
+## Identity providers are websites you use to log in to another website, for
+## example: Google when you Log in with Google.
+##
+## Variables:
+## $host (String): the hostname of the site that is being displayed.
+## $provider (String): the hostname of another website you are using to log in to the site being displayed
+
+identity-credential-header-providers = Sign in with a login provider
+identity-credential-header-accounts = Sign in with { $provider }
+identity-credential-urlbar-anchor =
+ .tooltiptext = Open login panel
+identity-credential-cancel-button =
+ .label = Cancel
+ .accesskey = n
+identity-credential-accept-button =
+ .label = Continue
+ .accesskey = C
+identity-credential-sign-in-button =
+ .label = Sign In
+ .accesskey = S
+identity-credential-policy-title = Use { $provider } as a login provider
+identity-credential-policy-description = Logging in to { $host } with a { $provider } account is subject to their <label data-l10n-name="privacy-url">Privacy Policy</label> and <label data-l10n-name="tos-url">Terms of Service</label>.
diff --git a/browser/locales/en-US/browser/linuxDesktopEntry.ftl b/browser/locales/en-US/browser/linuxDesktopEntry.ftl
new file mode 100644
index 0000000000..f05267b3bb
--- /dev/null
+++ b/browser/locales/en-US/browser/linuxDesktopEntry.ftl
@@ -0,0 +1,26 @@
+# 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/.
+
+# These messages are used by the Firefox ".desktop" file on Linux.
+# https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html
+
+# The entry name is the label on the desktop icon, among other things.
+desktop-entry-name = { -brand-shortcut-name }
+# The comment usually appears as a tooltip when hovering over application menu entry.
+desktop-entry-comment = Browse the World Wide Web
+desktop-entry-generic-name = Web Browser
+# Combine Name and GenericName. This string is specific to GNOME.
+desktop-entry-x-gnome-full-name = { -brand-shortcut-name } Web Browser
+# Keywords are search terms used to find this application.
+# The string is a list of keywords separated by semicolons:
+# - Do NOT replace semicolons with other punctuation signs.
+# - The list MUST end with a semicolon.
+desktop-entry-keywords = Internet;WWW;Browser;Web;Explorer;
+
+## Actions are visible in a context menu after right clicking the
+## taskbar icon, possibly other places depending on the environment.
+
+desktop-action-new-window-name = New Window
+desktop-action-new-private-window-name = New Private Window
+desktop-action-open-profile-manager = Open Profile Manager
diff --git a/browser/locales/en-US/browser/menubar.ftl b/browser/locales/en-US/browser/menubar.ftl
new file mode 100644
index 0000000000..802996627b
--- /dev/null
+++ b/browser/locales/en-US/browser/menubar.ftl
@@ -0,0 +1,344 @@
+# 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/.
+
+# NOTE: For English locales, strings in this file should be in APA-style Title Case.
+# See https://apastyle.apa.org/style-grammar-guidelines/capitalization/title-case
+#
+# NOTE: For Engineers, please don't reuse these strings outside of the menubar.
+
+## Application Menu (macOS only)
+
+menu-application-preferences =
+ .label = Preferences
+menu-application-services =
+ .label = Services
+menu-application-hide-this =
+ .label = Hide { -brand-shorter-name }
+menu-application-hide-other =
+ .label = Hide Others
+menu-application-show-all =
+ .label = Show All
+menu-application-touch-bar =
+ .label = Customize Touch Bar…
+
+##
+
+# These menu-quit strings are only used on Windows and Linux.
+menu-quit =
+ .label =
+ { PLATFORM() ->
+ [windows] Exit
+ *[other] Quit
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [windows] x
+ *[other] Q
+ }
+
+# This menu-quit-mac string is only used on macOS.
+menu-quit-mac =
+ .label = Quit { -brand-shorter-name }
+
+menu-about =
+ .label = About { -brand-shorter-name }
+ .accesskey = A
+
+## File Menu
+
+menu-file =
+ .label = File
+ .accesskey = F
+menu-file-new-tab =
+ .label = New Tab
+ .accesskey = T
+menu-file-new-container-tab =
+ .label = New Container Tab
+ .accesskey = b
+menu-file-new-window =
+ .label = New Window
+ .accesskey = N
+menu-file-new-private-window =
+ .label = New Private Window
+ .accesskey = W
+# "Open Location" is only displayed on macOS, and only on windows
+# that aren't main browser windows, or when there are no windows
+# but Firefox is still running.
+menu-file-open-location =
+ .label = Open Location…
+menu-file-open-file =
+ .label = Open File…
+ .accesskey = O
+# Variables:
+# $tabCount (Number): the number of tabs that are affected by the action.
+menu-file-close-tab =
+ .label =
+ { $tabCount ->
+ [1] Close Tab
+ *[other] Close { $tabCount } Tabs
+ }
+ .accesskey = C
+menu-file-close-window =
+ .label = Close Window
+ .accesskey = d
+menu-file-save-page =
+ .label = Save Page As…
+ .accesskey = A
+menu-file-email-link =
+ .label = Email Link…
+ .accesskey = E
+menu-file-share-url =
+ .label = Share
+ .accesskey = h
+menu-file-print-setup =
+ .label = Page Setup…
+ .accesskey = u
+menu-file-print =
+ .label = Print…
+ .accesskey = P
+menu-file-import-from-another-browser =
+ .label = Import From Another Browser…
+ .accesskey = I
+menu-file-go-offline =
+ .label = Work Offline
+ .accesskey = k
+
+## Edit Menu
+
+menu-edit =
+ .label = Edit
+ .accesskey = E
+menu-edit-find-in-page =
+ .label = Find in Page…
+ .accesskey = F
+menu-edit-find-again =
+ .label = Find Again
+ .accesskey = g
+menu-edit-bidi-switch-text-direction =
+ .label = Switch Text Direction
+ .accesskey = w
+
+## View Menu
+
+menu-view =
+ .label = View
+ .accesskey = V
+menu-view-toolbars-menu =
+ .label = Toolbars
+ .accesskey = T
+menu-view-customize-toolbar2 =
+ .label = Customize Toolbar…
+ .accesskey = C
+menu-view-sidebar =
+ .label = Sidebar
+ .accesskey = e
+menu-view-bookmarks =
+ .label = Bookmarks
+menu-view-history-button =
+ .label = History
+menu-view-synced-tabs-sidebar =
+ .label = Synced Tabs
+menu-view-full-zoom =
+ .label = Zoom
+ .accesskey = Z
+menu-view-full-zoom-enlarge =
+ .label = Zoom In
+ .accesskey = I
+menu-view-full-zoom-reduce =
+ .label = Zoom Out
+ .accesskey = O
+menu-view-full-zoom-actual-size =
+ .label = Actual Size
+ .accesskey = A
+menu-view-full-zoom-toggle =
+ .label = Zoom Text Only
+ .accesskey = T
+menu-view-page-style-menu =
+ .label = Page Style
+ .accesskey = y
+menu-view-page-style-no-style =
+ .label = No Style
+ .accesskey = n
+menu-view-page-basic-style =
+ .label = Basic Page Style
+ .accesskey = B
+menu-view-repair-text-encoding =
+ .label = Repair Text Encoding
+ .accesskey = c
+
+## These should match what Safari and other Apple applications
+## use on macOS.
+
+menu-view-enter-full-screen =
+ .label = Enter Full Screen
+ .accesskey = F
+menu-view-exit-full-screen =
+ .label = Exit Full Screen
+ .accesskey = F
+menu-view-full-screen =
+ .label = Full Screen
+ .accesskey = F
+
+## These menu items may use the same accesskey.
+
+# This should match reader-view-enter-button in browser.ftl
+menu-view-enter-readerview =
+ .label = Enter Reader View
+ .accesskey = R
+# This should match reader-view-close-button in browser.ftl
+menu-view-close-readerview =
+ .label = Close Reader View
+ .accesskey = R
+
+##
+
+menu-view-show-all-tabs =
+ .label = Show All Tabs
+ .accesskey = A
+menu-view-bidi-switch-page-direction =
+ .label = Switch Page Direction
+ .accesskey = D
+
+## History Menu
+
+menu-history =
+ .label = History
+ .accesskey = s
+menu-history-show-all-history =
+ .label = Show All History
+menu-history-clear-recent-history =
+ .label = Clear Recent History…
+menu-history-synced-tabs =
+ .label = Synced Tabs
+menu-history-restore-last-session =
+ .label = Restore Previous Session
+menu-history-hidden-tabs =
+ .label = Hidden Tabs
+menu-history-undo-menu =
+ .label = Recently Closed Tabs
+menu-history-undo-window-menu =
+ .label = Recently Closed Windows
+# "Search" is a verb, as in "Search in History"
+menu-history-search =
+ .label = Search History
+
+## Bookmarks Menu
+
+menu-bookmarks-menu =
+ .label = Bookmarks
+ .accesskey = B
+menu-bookmarks-manage =
+ .label = Manage Bookmarks
+menu-bookmark-tab =
+ .label = Bookmark Current Tab…
+menu-edit-bookmark =
+ .label = Edit This Bookmark…
+# "Search" is a verb, as in "Search in bookmarks"
+menu-bookmarks-search =
+ .label = Search Bookmarks
+menu-bookmarks-all-tabs =
+ .label = Bookmark All Tabs…
+menu-bookmarks-toolbar =
+ .label = Bookmarks Toolbar
+menu-bookmarks-other =
+ .label = Other Bookmarks
+menu-bookmarks-mobile =
+ .label = Mobile Bookmarks
+
+## Tools Menu
+
+menu-tools =
+ .label = Tools
+ .accesskey = T
+menu-tools-downloads =
+ .label = Downloads
+ .accesskey = D
+menu-tools-addons-and-themes =
+ .label = Add-ons and Themes
+ .accesskey = A
+menu-tools-fxa-sign-in2 =
+ .label = Sign In
+ .accesskey = g
+menu-tools-turn-on-sync2 =
+ .label = Turn on Sync…
+ .accesskey = n
+menu-tools-sync-now =
+ .label = Sync Now
+ .accesskey = o
+menu-tools-fxa-re-auth =
+ .label = Reconnect to { -brand-product-name }…
+ .accesskey = R
+menu-tools-browser-tools =
+ .label = Browser Tools
+ .accesskey = B
+menu-tools-task-manager =
+ .label = Task Manager
+ .accesskey = M
+menu-tools-page-source =
+ .label = Page Source
+ .accesskey = o
+menu-tools-page-info =
+ .label = Page Info
+ .accesskey = I
+menu-settings =
+ .label = Settings
+ .accesskey =
+ { PLATFORM() ->
+ [windows] S
+ *[other] n
+ }
+menu-tools-layout-debugger =
+ .label = Layout Debugger
+ .accesskey = L
+
+## Window Menu
+
+menu-window-menu =
+ .label = Window
+menu-window-bring-all-to-front =
+ .label = Bring All to Front
+
+## Help Menu
+
+# NOTE: For Engineers, any additions or changes to Help menu strings should
+# also be reflected in the related strings in appmenu.ftl. Those strings, by
+# convention, will have the same ID as these, but prefixed with "app".
+# Example: appmenu-get-help
+#
+# These strings are duplicated to allow for different casing depending on
+# where the strings appear.
+
+menu-help =
+ .label = Help
+ .accesskey = H
+menu-get-help =
+ .label = Get Help
+ .accesskey = H
+menu-help-more-troubleshooting-info =
+ .label = More Troubleshooting Information
+ .accesskey = T
+menu-help-report-site-issue =
+ .label = Report Site Issue…
+menu-help-share-ideas =
+ .label = Share Ideas and Feedback…
+ .accesskey = S
+menu-help-enter-troubleshoot-mode2 =
+ .label = Troubleshoot Mode…
+ .accesskey = M
+menu-help-exit-troubleshoot-mode =
+ .label = Turn Troubleshoot Mode Off
+ .accesskey = M
+menu-help-switch-device =
+ .label = Switching to a New Device
+ .accesskey = N
+# Label of the Help menu item. Either this or
+# menu-help-notdeceptive is shown.
+menu-help-report-deceptive-site =
+ .label = Report Deceptive Site…
+ .accesskey = D
+menu-help-not-deceptive =
+ .label = This Isn’t a Deceptive Site…
+ .accesskey = D
+menu-report-broken-site =
+ .label = Report Broken Site
diff --git a/browser/locales/en-US/browser/migrationWizard.ftl b/browser/locales/en-US/browser/migrationWizard.ftl
new file mode 100644
index 0000000000..c3af16bd14
--- /dev/null
+++ b/browser/locales/en-US/browser/migrationWizard.ftl
@@ -0,0 +1,319 @@
+# 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/.
+
+migration-wizard-selection-header = Import Browser Data
+migration-wizard-selection-list = Select the data you’d like to import.
+
+# Shown in the new migration wizard's dropdown selector for choosing the browser
+# to import from. This variant is shown when the selected browser doesn't support
+# user profiles, and so we only show the browser name.
+#
+# Variables:
+# $sourceBrowser (String): the name of the browser to import from.
+migration-wizard-selection-option-without-profile = { $sourceBrowser }
+
+# Shown in the new migration wizard's dropdown selector for choosing the browser
+# and user profile to import from. This variant is shown when the selected browser
+# supports user profiles.
+#
+# Variables:
+# $sourceBrowser (String): the name of the browser to import from.
+# $profileName (String): the name of the user profile to import from.
+migration-wizard-selection-option-with-profile = { $sourceBrowser } — { $profileName }
+
+# Each migrator is expected to include a display name string, and that display
+# name string should have a key with "migration-wizard-migrator-display-name-"
+# as a prefix followed by the unique identification key for the migrator.
+
+migration-wizard-migrator-display-name-brave = Brave
+migration-wizard-migrator-display-name-canary = Chrome Canary
+migration-wizard-migrator-display-name-chrome = Chrome
+migration-wizard-migrator-display-name-chrome-beta = Chrome Beta
+migration-wizard-migrator-display-name-chrome-dev = Chrome Dev
+migration-wizard-migrator-display-name-chromium = Chromium
+migration-wizard-migrator-display-name-chromium-360se = 360 Secure Browser
+migration-wizard-migrator-display-name-chromium-edge = Microsoft Edge
+migration-wizard-migrator-display-name-chromium-edge-beta = Microsoft Edge Beta
+migration-wizard-migrator-display-name-edge-legacy = Microsoft Edge Legacy
+migration-wizard-migrator-display-name-firefox = Firefox
+migration-wizard-migrator-display-name-file-password-csv = Passwords from CSV file
+migration-wizard-migrator-display-name-file-bookmarks = Bookmarks from HTML file
+migration-wizard-migrator-display-name-ie = Microsoft Internet Explorer
+migration-wizard-migrator-display-name-opera = Opera
+migration-wizard-migrator-display-name-opera-gx = Opera GX
+migration-wizard-migrator-display-name-safari = Safari
+migration-wizard-migrator-display-name-vivaldi = Vivaldi
+
+migration-source-name-ie = Internet Explorer
+migration-source-name-edge = Microsoft Edge
+migration-source-name-chrome = Google Chrome
+
+migration-imported-safari-reading-list = Reading List (From Safari)
+migration-imported-edge-reading-list = Reading List (From Edge)
+
+## These strings are shown if the selected browser data directory is unreadable.
+## In practice, this tends to only occur on Linux when Firefox
+## is installed as a Snap.
+
+migration-no-permissions-message = { -brand-short-name } does not have access to other browsers’ profiles installed on this device.
+
+migration-no-permissions-instructions = To continue importing data from another browser, grant { -brand-short-name } access to its profile folder.
+
+migration-no-permissions-instructions-step1 = Select “Continue”
+
+# The second step in getting permissions to read data for the selected
+# browser type.
+#
+# Variables:
+# $permissionsPath (String): the file system path that the user will need to grant read permission to.
+migration-no-permissions-instructions-step2 = In the file picker, navigate to <code>{ $permissionsPath }</code> and choose “Select”
+
+## These strings will be displayed based on how many resources are selected to import
+
+migration-all-available-data-label = Import all available data
+migration-no-selected-data-label = No data selected for import
+migration-selected-data-label = Import selected data
+
+##
+
+migration-select-all-option-label = Select all
+migration-bookmarks-option-label = Bookmarks
+
+# Favorites is used for Bookmarks when importing from Internet Explorer or
+# Edge, as this is the terminology for bookmarks on those browsers.
+migration-favorites-option-label = Favorites
+
+migration-passwords-option-label = Saved passwords
+migration-history-option-label = Browsing history
+migration-extensions-option-label = Extensions
+migration-form-autofill-option-label = Form autofill data
+migration-payment-methods-option-label = Payment methods
+migration-cookies-option-label = Cookies
+migration-session-option-label = Windows and tabs
+migration-otherdata-option-label = Other data
+
+migration-passwords-from-file-progress-header = Import Passwords File
+migration-passwords-from-file-success-header = Passwords Imported Successfully
+migration-passwords-from-file = Checking file for passwords
+migration-passwords-new = New passwords
+migration-passwords-updated = Existing passwords
+migration-passwords-from-file-no-valid-data = The file doesn’t include any valid password data. Pick another file.
+
+migration-passwords-from-file-picker-title = Import Passwords File
+# A description for the .csv file format that may be shown as the file type
+# filter by the operating system.
+migration-passwords-from-file-csv-filter-title =
+ { PLATFORM() ->
+ [macos] CSV Document
+ *[other] CSV File
+ }
+# A description for the .tsv file format that may be shown as the file type
+# filter by the operating system. TSV is short for 'tab separated values'.
+migration-passwords-from-file-tsv-filter-title =
+ { PLATFORM() ->
+ [macos] TSV Document
+ *[other] TSV File
+ }
+
+# Shown in the migration wizard after importing passwords from a file
+# has completed, if new passwords were added.
+#
+# Variables:
+# $newEntries (Number): the number of new successfully imported passwords
+migration-wizard-progress-success-new-passwords =
+ { $newEntries ->
+ [one] { $newEntries } added
+ *[other] { $newEntries } added
+ }
+
+# Shown in the migration wizard after importing passwords from a file
+# has completed, if existing passwords were updated.
+#
+# Variables:
+# $updatedEntries (Number): the number of updated passwords
+migration-wizard-progress-success-updated-passwords =
+ { $updatedEntries ->
+ [one] { $updatedEntries } updated
+ *[other] { $updatedEntries } updated
+ }
+
+migration-bookmarks-from-file-picker-title = Import Bookmarks File
+migration-bookmarks-from-file-progress-header = Importing Bookmarks
+migration-bookmarks-from-file = Bookmarks
+migration-bookmarks-from-file-success-header = Bookmarks Imported Successfully
+migration-bookmarks-from-file-no-valid-data = The file doesn’t include any bookmark data. Pick another file.
+
+# A description for the .html file format that may be shown as the file type
+# filter by the operating system.
+migration-bookmarks-from-file-html-filter-title =
+ { PLATFORM() ->
+ [macos] HTML Document
+ *[other] HTML File
+ }
+
+# A description for the .json file format that may be shown as the file type
+# filter by the operating system.
+migration-bookmarks-from-file-json-filter-title = JSON File
+
+# Shown in the migration wizard after importing bookmarks from a file
+# has completed.
+#
+# Variables:
+# $newEntries (Number): the number of imported bookmarks.
+migration-wizard-progress-success-new-bookmarks =
+ { $newEntries ->
+ [one] { $newEntries } bookmark
+ *[other] { $newEntries } bookmarks
+ }
+
+migration-import-button-label = Import
+migration-choose-to-import-from-file-button-label = Import From File
+migration-import-from-file-button-label = Select File
+migration-cancel-button-label = Cancel
+migration-done-button-label = Done
+migration-continue-button-label = Continue
+
+migration-wizard-import-browser-no-browsers = { -brand-short-name } couldn’t find any programs that contain bookmark, history or password data.
+migration-wizard-import-browser-no-resources = There was an error. { -brand-short-name } can’t find any data to import from that browser profile.
+
+## These strings will be used to create a dynamic list of items that can be
+## imported. The list will be created using Intl.ListFormat(), so it will
+## follow each locale's rules, and the first item will be capitalized by code.
+## When applicable, the resources should be in their plural form.
+## For example, a possible list could be "Bookmarks, passwords and autofill data".
+
+migration-list-bookmark-label = bookmarks
+
+# “favorites” refers to bookmarks in Edge and Internet Explorer. Use the same terminology
+# if the browser is available in your language.
+migration-list-favorites-label = favorites
+migration-list-password-label = passwords
+migration-list-history-label = history
+migration-list-extensions-label = extensions
+migration-list-autofill-label = autofill data
+migration-list-payment-methods-label = payment methods
+
+##
+
+migration-wizard-progress-header = Importing Data
+
+# This header appears in the final page of the migration wizard only if
+# all resources were imported successfully.
+migration-wizard-progress-done-header = Data Imported Successfully
+
+# This header appears in the final page of the migration wizard if only
+# some of the resources were imported successfully. This is meant to be
+# distinct from migration-wizard-progress-done-header, which is only shown
+# if all resources were imported successfully.
+migration-wizard-progress-done-with-warnings-header = Data Import Complete
+
+migration-wizard-progress-icon-in-progress =
+ .aria-label = Importing…
+migration-wizard-progress-icon-completed =
+ .aria-label = Completed
+
+migration-safari-password-import-header = Import Passwords from Safari
+migration-safari-password-import-steps-header = To import Safari passwords:
+migration-safari-password-import-step1 = In Safari, open “Safari” menu and go to Preferences > Passwords
+migration-safari-password-import-step2 = Select the <img data-l10n-name="safari-icon-3dots"/> button and choose “Export All Passwords”
+migration-safari-password-import-step3 = Save the passwords file
+migration-safari-password-import-step4 = Use “Select File” below to choose the passwords file you saved
+migration-safari-password-import-skip-button = Skip
+migration-safari-password-import-select-button = Select File
+
+
+# Shown in the migration wizard after importing bookmarks from another
+# browser has completed.
+#
+# Variables:
+# $quantity (Number): the number of successfully imported bookmarks
+migration-wizard-progress-success-bookmarks =
+ { $quantity ->
+ [one] { $quantity } bookmark
+ *[other] { $quantity } bookmarks
+ }
+
+# Shown in the migration wizard after importing bookmarks from either
+# Internet Explorer or Edge.
+#
+# Use the same terminology if the browser is available in your language.
+#
+# Variables:
+# $quantity (Number): the number of successfully imported bookmarks
+migration-wizard-progress-success-favorites =
+ { $quantity ->
+ [one] { $quantity } favorite
+ *[other] { $quantity } favorites
+ }
+
+## The import process identifies extensions installed in other supported
+## browsers and installs the corresponding (matching) extensions compatible
+## with Firefox, if available.
+
+# Shown in the migration wizard after importing all matched extensions
+# from supported browsers.
+#
+# Variables:
+# $quantity (Number): the number of successfully imported extensions
+migration-wizard-progress-success-extensions =
+ { $quantity ->
+ [one] { $quantity } extension
+ *[other] { $quantity } extensions
+ }
+
+# Shown in the migration wizard after importing a partial amount of
+# matched extensions from supported browsers.
+#
+# Variables:
+# $matched (Number): the number of matched imported extensions
+# $quantity (Number): the number of total extensions found during import
+migration-wizard-progress-partial-success-extensions = { $matched } of { $quantity } extensions
+
+migration-wizard-progress-extensions-support-link = Learn how { -brand-product-name } matches extensions
+# Shown in the migration wizard if there are no matched extensions
+# on import from supported browsers.
+migration-wizard-progress-no-matched-extensions = No matching extensions
+
+migration-wizard-progress-extensions-addons-link = Browse extensions for { -brand-short-name }
+
+##
+
+# Shown in the migration wizard after importing passwords from another
+# browser has completed.
+#
+# Variables:
+# $quantity (Number): the number of successfully imported passwords
+migration-wizard-progress-success-passwords =
+ { $quantity ->
+ [one] { $quantity } password
+ *[other] { $quantity } passwords
+ }
+
+# Shown in the migration wizard after importing history from another
+# browser has completed.
+#
+# Variables:
+# $maxAgeInDays (Number): the maximum number of days of history that might be imported.
+migration-wizard-progress-success-history =
+ { $maxAgeInDays ->
+ [one] From the last day
+ *[other] From the last { $maxAgeInDays } days
+ }
+
+migration-wizard-progress-success-formdata = Form history
+
+# Shown in the migration wizard after importing payment methods from another
+# browser has completed.
+#
+# Variables:
+# $quantity (Number): the number of successfully imported payment methods
+migration-wizard-progress-success-payment-methods =
+ { $quantity ->
+ [one] { $quantity } payment method
+ *[other] { $quantity } payment methods
+ }
+
+migration-wizard-safari-permissions-sub-header = To import Safari bookmarks and browsing history:
+migration-wizard-safari-instructions-continue = Select “Continue”
+migration-wizard-safari-instructions-folder = Select Safari folder in the list and choose “Open”
diff --git a/browser/locales/en-US/browser/newtab/asrouter.ftl b/browser/locales/en-US/browser/newtab/asrouter.ftl
new file mode 100644
index 0000000000..c4c94c9c7d
--- /dev/null
+++ b/browser/locales/en-US/browser/newtab/asrouter.ftl
@@ -0,0 +1,273 @@
+# 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/.
+
+## These messages are used as headings in the recommendation doorhanger
+
+cfr-doorhanger-extension-heading = Recommended Extension
+cfr-doorhanger-feature-heading = Recommended Feature
+
+##
+
+cfr-doorhanger-extension-sumo-link =
+ .tooltiptext = Why am I seeing this
+
+cfr-doorhanger-extension-cancel-button = Not Now
+ .accesskey = N
+
+cfr-doorhanger-extension-ok-button = Add Now
+ .accesskey = A
+
+cfr-doorhanger-extension-manage-settings-button = Manage Recommendation Settings
+ .accesskey = M
+
+cfr-doorhanger-extension-never-show-recommendation = Don’t Show Me This Recommendation
+ .accesskey = S
+
+cfr-doorhanger-extension-learn-more-link = Learn more
+
+# This string is used on a new line below the add-on name
+# Variables:
+# $name (String) - Add-on author name
+cfr-doorhanger-extension-author = by { $name }
+
+# This is a notification displayed in the address bar.
+# When clicked it opens a panel with a message for the user.
+cfr-doorhanger-extension-notification = Recommendation
+# .a11y-announcement is extracted in JS and announced via A11y.announce.
+cfr-doorhanger-extension-notification2 = Recommendation
+ .tooltiptext = Extension recommendation
+ .a11y-announcement = Extension recommendation available
+
+# This is a notification displayed in the address bar.
+# When clicked it opens a panel with a message for the user.
+# .a11y-announcement is extracted in JS and announced via A11y.announce.
+cfr-doorhanger-feature-notification = Recommendation
+ .tooltiptext = Feature recommendation
+ .a11y-announcement = Feature recommendation available
+
+## Add-on statistics
+## These strings are used to display the total number of
+## users and rating for an add-on. They are shown next to each other.
+
+# Variables:
+# $total (Number) - The rating of the add-on from 1 to 5
+cfr-doorhanger-extension-rating =
+ .tooltiptext =
+ { $total ->
+ [one] { $total } star
+ *[other] { $total } stars
+ }
+# Variables:
+# $total (Number) - The total number of users using the add-on
+cfr-doorhanger-extension-total-users =
+ { $total ->
+ [one] { $total } user
+ *[other] { $total } users
+ }
+
+## Firefox Accounts Message
+
+cfr-doorhanger-bookmark-fxa-header = Sync your bookmarks everywhere.
+cfr-doorhanger-bookmark-fxa-body = Great find! Now don’t be left without this bookmark on your mobile devices. Get Started with a { -fxaccount-brand-name }.
+cfr-doorhanger-bookmark-fxa-link-text = Sync bookmarks now…
+cfr-doorhanger-bookmark-fxa-close-btn-tooltip =
+ .aria-label = Close button
+ .title = Close
+
+## What's New toolbar button and panel
+
+# This string is used by screen readers to offer a text based alternative for
+# the notification icon
+cfr-badge-reader-label-newfeature = New feature:
+
+cfr-whatsnew-button =
+ .label = What’s New
+ .tooltiptext = What’s New
+
+cfr-whatsnew-release-notes-link-text = Read the release notes
+
+## Enhanced Tracking Protection Milestones
+
+# Variables:
+# $blockedCount (Number) - The total count of blocked trackers. This number will always be greater than 1.
+# $date (Datetime) - The date we began recording the count of blocked trackers
+cfr-doorhanger-milestone-heading2 =
+ { $blockedCount ->
+ *[other] { -brand-short-name } blocked over <b>{ $blockedCount }</b> trackers since { DATETIME($date, month: "long", year: "numeric") }!
+ }
+cfr-doorhanger-milestone-ok-button = See All
+ .accesskey = S
+cfr-doorhanger-milestone-close-button = Close
+ .accesskey = C
+
+## DOH Message
+
+cfr-doorhanger-doh-body = Your privacy matters. { -brand-short-name } now securely routes your DNS requests whenever possible to a partner service to protect you while you browse.
+cfr-doorhanger-doh-header = More secure, encrypted DNS lookups
+cfr-doorhanger-doh-primary-button-2 = Okay
+ .accesskey = O
+cfr-doorhanger-doh-secondary-button = Disable
+ .accesskey = D
+
+## Full Video Support CFR message
+
+cfr-doorhanger-video-support-body = Videos on this site may not play correctly on this version of { -brand-short-name }. For full video support, update { -brand-short-name } now.
+cfr-doorhanger-video-support-header = Update { -brand-short-name } to play video
+cfr-doorhanger-video-support-primary-button = Update Now
+ .accesskey = U
+
+## VPN promotion dialog for public Wi-Fi users
+##
+## If a user is detected to be on a public Wi-Fi network, they are given a
+## bit of info about how to improve their privacy and then offered a button
+## to the Mozilla VPN page and a link to dismiss the dialog.
+
+# This header text can be explicitly wrapped.
+spotlight-public-wifi-vpn-header = Looks like you’re using public Wi-Fi
+spotlight-public-wifi-vpn-body = To hide your location and browsing activity, consider a Virtual Private Network. It will help keep you protected when browsing in public places like airports and coffee shops.
+spotlight-public-wifi-vpn-primary-button = Stay private with { -mozilla-vpn-brand-name }
+ .accesskey = S
+spotlight-public-wifi-vpn-link = Not Now
+ .accesskey = N
+
+## Emotive Continuous Onboarding
+
+spotlight-better-internet-header = A better internet starts with you
+spotlight-better-internet-body = When you use { -brand-short-name}, you’re voting for an open and accessible internet that’s better for everyone.
+spotlight-peace-mind-header = We’ve got you covered
+spotlight-peace-mind-body = Every month, { -brand-short-name } blocks an average of over 3,000 trackers per user. Because nothing, especially privacy nuisances like trackers, should stand between you and the good internet.
+spotlight-pin-primary-button = { PLATFORM() ->
+ [macos] Keep in Dock
+ *[other] Pin to taskbar
+}
+spotlight-pin-secondary-button = Not now
+
+## MR2022 Background Update Windows native toast notification strings.
+##
+## These strings will be displayed by the Windows operating system in
+## a native toast, like:
+##
+## <b>multi-line title</b>
+## multi-line text
+## <img>
+## [ primary button ] [ secondary button ]
+##
+## The button labels are fitted into narrow fixed-width buttons by
+## Windows and therefore must be as narrow as possible.
+
+mr2022-background-update-toast-title = New { -brand-short-name }. More private. Fewer trackers. No compromises.
+mr2022-background-update-toast-text = Try the newest { -brand-short-name } now, upgraded with our strongest anti-tracking protection yet.
+
+# This button label will be fitted into a narrow fixed-width button by
+# Windows. Try to not exceed the width of the English text (compare it
+# using a variable font like Arial): the button can only fit 1-2
+# additional characters, exceeding characters will be truncated.
+mr2022-background-update-toast-primary-button-label = Open { -brand-shorter-name } Now
+
+# This button label will be fitted into a narrow fixed-width button by
+# Windows. Try to not exceed the width of the English text (compare it using a
+# variable font like Arial): the button can only fit 1-2 additional characters,
+# exceeding characters will be truncated.
+mr2022-background-update-toast-secondary-button-label = Remind Me Later
+
+## Firefox View CFR
+
+firefoxview-cfr-primarybutton = Try it
+ .accesskey = T
+firefoxview-cfr-secondarybutton = Not now
+ .accesskey = N
+firefoxview-cfr-header-v2 = Quickly pick up where you left off
+firefoxview-cfr-body-v2 = Get recently closed tabs back, plus seamlessly hop between devices with { -firefoxview-brand-name }.
+
+## Firefox View Spotlight
+
+firefoxview-spotlight-promo-title = Say hello to { -firefoxview-brand-name }
+
+# “Poof” refers to the expression to convey when something or someone suddenly disappears, or in this case, reappears. For example, “Poof, it’s gone.”
+firefoxview-spotlight-promo-subtitle = Want that open tab on your phone? Grab it. Need that site you just visited? Poof, it’s back with { -firefoxview-brand-name }.
+firefoxview-spotlight-promo-primarybutton = See how it works
+firefoxview-spotlight-promo-secondarybutton = Skip
+
+## Cookie Banner Handling CFR
+
+cookie-banner-blocker-onboarding-header = { -brand-short-name } just refused a cookie banner for you
+cookie-banner-blocker-onboarding-body = Less distractions, less cookies tracking you on this site.
+cookie-banner-blocker-onboarding-learn-more = Learn more
+
+## These strings are used in the Fox doodle Pin/set default spotlights
+
+july-jam-headline = We’ve got you covered
+july-jam-body = Every month, { -brand-short-name } blocks an average of 3,000+ trackers per user, giving you safe, speedy access to the good internet.
+july-jam-set-default-primary = Open my links with { -brand-short-name }
+fox-doodle-pin-headline = Welcome back
+
+# “indie” is short for the term “independent”.
+# In this instance, free from outside influence or control.
+fox-doodle-pin-body = Here’s a quick reminder that you can keep your favorite indie browser just one click away.
+fox-doodle-pin-primary = Open my links with { -brand-short-name }
+fox-doodle-pin-secondary = Not now
+
+## These strings are used in the Set Firefox as Default PDF Handler for Existing Users experiment
+
+set-default-pdf-handler-headline = <strong>Your PDFs now open in { -brand-short-name }.</strong> Edit or sign forms directly in your browser. To change, search “PDF” in settings.
+set-default-pdf-handler-primary = Got it
+
+## FxA sync CFR
+
+fxa-sync-cfr-header = New device in your future?
+fxa-sync-cfr-body = Make sure your latest bookmarks, passwords, and tabs come with you any time you open a new { -brand-product-name } browser.
+fxa-sync-cfr-primary = Learn more
+ .accesskey = L
+fxa-sync-cfr-secondary = Remind me later
+ .accesskey = R
+
+## Device Migration FxA Spotlight
+
+device-migration-fxa-spotlight-heavy-user-header = Don’t forget to back up your data
+device-migration-fxa-spotlight-heavy-user-body = Make sure important info — like bookmarks and passwords — is updated and protected across all your devices.
+device-migration-fxa-spotlight-heavy-user-primary-button = Get started
+
+device-migration-fxa-spotlight-older-device-header = Peace of mind, from { -brand-product-name }
+device-migration-fxa-spotlight-older-device-body = An account keeps your important info updated and protected on any device you connect.
+device-migration-fxa-spotlight-older-device-primary-button = Create an account
+
+device-migration-fxa-spotlight-getting-new-device-header-2 = New device in your future?
+device-migration-fxa-spotlight-getting-new-device-body-2 = Follow a few simple steps to bring your bookmarks, history, and passwords with you when you get started on a new device.
+device-migration-fxa-spotlight-getting-new-device-primary-button = How to back up my data
+
+## Set as Default PDF Reader Infobar
+
+# The question portion of the following message should have the <strong> and </strong> tags surrounding it.
+pdf-default-notification-message = <strong>Make { -brand-short-name } your default PDF reader?</strong> Use { -brand-short-name } to read and edit PDFs saved to your computer.
+pdf-default-notification-set-default-button =
+ .label = Set as default
+pdf-default-notification-decline-button =
+ .label = Not now
+
+## Launch on login infobar notification
+
+launch-on-login-infobar-message = <strong>Open { -brand-short-name } every time you restart your computer?</strong> Now you can set { -brand-short-name } to open automatically when you restart your device.
+launch-on-login-learnmore = Learn more
+launch-on-login-infobar-confirm-button = Yes, open { -brand-short-name }
+ .accesskey = Y
+launch-on-login-infobar-reject-button = Not now
+ .accesskey = N
+
+## These string variants are used when the “launch on login” infobar
+## notification is displayed for a second time.
+
+launch-on-login-infobar-final-message = <strong>Open { -brand-short-name } every time you restart your computer?</strong> To manage your Startup preferences, search “startup” in settings.
+launch-on-login-infobar-final-reject-button = No thanks
+ .accesskey = N
+
+## Tail Fox Set Default Spotlight
+
+# This title is displayed together with the picture of a running fox with a long tail.
+# In English, this is a figure of speech meaning 'stop something from following you'.
+# If the localization of this message is challenging, consider using a simplified
+# alternative as a reference for translation: 'Keep unwanted trackers away'.
+tail-fox-spotlight-title = Keep pesky trackers off your tail
+tail-fox-spotlight-subtitle = Say goodbye to annoying ad trackers and settle into a safer, speedy internet experience.
+tail-fox-spotlight-primary-button = Open my links with { -brand-short-name }
+tail-fox-spotlight-secondary-button = Not now
diff --git a/browser/locales/en-US/browser/newtab/newtab.ftl b/browser/locales/en-US/browser/newtab/newtab.ftl
new file mode 100644
index 0000000000..d4d72febda
--- /dev/null
+++ b/browser/locales/en-US/browser/newtab/newtab.ftl
@@ -0,0 +1,273 @@
+# 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/.
+
+### Firefox Home / New Tab strings for about:home / about:newtab.
+
+newtab-page-title = New Tab
+newtab-settings-button =
+ .title = Customize your New Tab page
+newtab-personalize-icon-label =
+ .title = Personalize new tab
+ .aria-label = Personalize new tab
+newtab-personalize-dialog-label =
+ .aria-label = Personalize
+
+## Search box component.
+
+# "Search" is a verb/action
+newtab-search-box-search-button =
+ .title = Search
+ .aria-label = Search
+
+# Variables:
+# $engine (string) - The name of the user's default search engine
+newtab-search-box-handoff-text = Search with { $engine } or enter address
+newtab-search-box-handoff-text-no-engine = Search or enter address
+# Variables:
+# $engine (string) - The name of the user's default search engine
+newtab-search-box-handoff-input =
+ .placeholder = Search with { $engine } or enter address
+ .title = Search with { $engine } or enter address
+ .aria-label = Search with { $engine } or enter address
+newtab-search-box-handoff-input-no-engine =
+ .placeholder = Search or enter address
+ .title = Search or enter address
+ .aria-label = Search or enter address
+
+newtab-search-box-text = Search the web
+newtab-search-box-input =
+ .placeholder = Search the web
+ .aria-label = Search the web
+
+## Top Sites - General form dialog.
+
+newtab-topsites-add-search-engine-header = Add Search Engine
+newtab-topsites-add-shortcut-header = New Shortcut
+newtab-topsites-edit-topsites-header = Edit Top Site
+newtab-topsites-edit-shortcut-header = Edit Shortcut
+newtab-topsites-title-label = Title
+newtab-topsites-title-input =
+ .placeholder = Enter a title
+
+newtab-topsites-url-label = URL
+newtab-topsites-url-input =
+ .placeholder = Type or paste a URL
+newtab-topsites-url-validation = Valid URL required
+
+newtab-topsites-image-url-label = Custom Image URL
+newtab-topsites-use-image-link = Use a custom image…
+newtab-topsites-image-validation = Image failed to load. Try a different URL.
+
+## Top Sites - General form dialog buttons. These are verbs/actions.
+
+newtab-topsites-cancel-button = Cancel
+newtab-topsites-delete-history-button = Delete from History
+newtab-topsites-save-button = Save
+newtab-topsites-preview-button = Preview
+newtab-topsites-add-button = Add
+
+## Top Sites - Delete history confirmation dialog.
+
+newtab-confirm-delete-history-p1 = Are you sure you want to delete every instance of this page from your history?
+# "This action" refers to deleting a page from history.
+newtab-confirm-delete-history-p2 = This action cannot be undone.
+
+## Top Sites - Sponsored label
+
+newtab-topsite-sponsored = Sponsored
+
+## Context Menu - Action Tooltips.
+
+# General tooltip for context menus.
+newtab-menu-section-tooltip =
+ .title = Open menu
+ .aria-label = Open menu
+
+# Tooltip for dismiss button
+newtab-dismiss-button-tooltip =
+ .title = Remove
+ .aria-label = Remove
+
+# This tooltip is for the context menu of Pocket cards or Topsites
+# Variables:
+# $title (string) - The label or hostname of the site. This is for screen readers when the context menu button is focused/active.
+newtab-menu-content-tooltip =
+ .title = Open menu
+ .aria-label = Open context menu for { $title }
+# Tooltip on an empty topsite box to open the New Top Site dialog.
+newtab-menu-topsites-placeholder-tooltip =
+ .title = Edit this site
+ .aria-label = Edit this site
+
+## Context Menu: These strings are displayed in a context menu and are meant as a call to action for a given page.
+
+newtab-menu-edit-topsites = Edit
+newtab-menu-open-new-window = Open in a New Window
+newtab-menu-open-new-private-window = Open in a New Private Window
+newtab-menu-dismiss = Dismiss
+newtab-menu-pin = Pin
+newtab-menu-unpin = Unpin
+newtab-menu-delete-history = Delete from History
+newtab-menu-save-to-pocket = Save to { -pocket-brand-name }
+newtab-menu-delete-pocket = Delete from { -pocket-brand-name }
+newtab-menu-archive-pocket = Archive in { -pocket-brand-name }
+newtab-menu-show-privacy-info = Our sponsors & your privacy
+
+## Message displayed in a modal window to explain privacy and provide context for sponsored content.
+
+newtab-privacy-modal-button-done = Done
+newtab-privacy-modal-button-manage = Manage sponsored content settings
+newtab-privacy-modal-header = Your privacy matters.
+newtab-privacy-modal-paragraph-2 =
+ In addition to dishing up captivating stories, we also show you relevant,
+ highly-vetted content from select sponsors. Rest assured, <strong>your browsing
+ data never leaves your personal copy of { -brand-product-name }</strong> — we don’t see it, and our
+ sponsors don’t either.
+newtab-privacy-modal-link = Learn how privacy works on the new tab
+
+##
+
+# Bookmark is a noun in this case, "Remove bookmark".
+newtab-menu-remove-bookmark = Remove Bookmark
+# Bookmark is a verb here.
+newtab-menu-bookmark = Bookmark
+
+## Context Menu - Downloaded Menu. "Download" in these cases is not a verb,
+## it is a noun. As in, "Copy the link that belongs to this downloaded item".
+
+newtab-menu-copy-download-link = Copy Download Link
+newtab-menu-go-to-download-page = Go to Download Page
+newtab-menu-remove-download = Remove from History
+
+## Context Menu - Download Menu: These are platform specific strings found in the context menu of an item that has
+## been downloaded. The intention behind "this action" is that it will show where the downloaded file exists on the file
+## system for each operating system.
+
+newtab-menu-show-file =
+ { PLATFORM() ->
+ [macos] Show in Finder
+ *[other] Open Containing Folder
+ }
+newtab-menu-open-file = Open File
+
+## Card Labels: These labels are associated to pages to give
+## context on how the element is related to the user, e.g. type indicates that
+## the page is bookmarked, or is currently open on another device.
+
+newtab-label-visited = Visited
+newtab-label-bookmarked = Bookmarked
+newtab-label-removed-bookmark = Bookmark removed
+newtab-label-recommended = Trending
+newtab-label-saved = Saved to { -pocket-brand-name }
+newtab-label-download = Downloaded
+
+# This string is used in the story cards to indicate sponsored content
+# Variables:
+# $sponsorOrSource (string) - The name of a company or their domain
+newtab-label-sponsored = { $sponsorOrSource } · Sponsored
+
+# This string is used at the bottom of story cards to indicate sponsored content
+# Variables:
+# $sponsor (string) - The name of a sponsor
+newtab-label-sponsored-by = Sponsored by { $sponsor }
+
+# This string is used under the image of story cards to indicate source and time to read
+# Variables:
+# $source (string) - The name of a company or their domain
+# $timeToRead (number) - The estimated number of minutes to read this story
+newtab-label-source-read-time = { $source } · { $timeToRead } min
+
+## Section Menu: These strings are displayed in the section context menu and are
+## meant as a call to action for the given section.
+
+newtab-section-menu-remove-section = Remove Section
+newtab-section-menu-collapse-section = Collapse Section
+newtab-section-menu-expand-section = Expand Section
+newtab-section-menu-manage-section = Manage Section
+newtab-section-menu-manage-webext = Manage Extension
+newtab-section-menu-add-topsite = Add Top Site
+newtab-section-menu-add-search-engine = Add Search Engine
+newtab-section-menu-move-up = Move Up
+newtab-section-menu-move-down = Move Down
+newtab-section-menu-privacy-notice = Privacy Notice
+
+## Section aria-labels
+
+newtab-section-collapse-section-label =
+ .aria-label = Collapse Section
+newtab-section-expand-section-label =
+ .aria-label = Expand Section
+
+## Section Headers.
+
+newtab-section-header-topsites = Top Sites
+newtab-section-header-recent-activity = Recent activity
+newtab-section-header-stories = Thought-provoking stories
+
+## Empty Section States: These show when there are no more items in a section. Ex. When there are no more Pocket story recommendations, in the space where there would have been stories, this is shown instead.
+
+newtab-empty-section-highlights = Start browsing, and we’ll show some of the great articles, videos, and other pages you’ve recently visited or bookmarked here.
+
+# Ex. When there are no more story recommendations, in the space where there would have been stories, this is shown instead.
+newtab-empty-section-topstories-generic = You’ve caught up. Check back later for more stories. Can’t wait? Select a popular topic to find more great stories from around the web.
+
+## Empty Section (Content Discovery Experience). These show when there are no more stories or when some stories fail to load.
+
+newtab-discovery-empty-section-topstories-header = You are caught up!
+newtab-discovery-empty-section-topstories-content = Check back later for more stories.
+newtab-discovery-empty-section-topstories-try-again-button = Try Again
+newtab-discovery-empty-section-topstories-loading = Loading…
+# Displays when a layout in a section took too long to fetch articles.
+newtab-discovery-empty-section-topstories-timed-out = Oops! We almost loaded this section, but not quite.
+
+## Pocket Content Section.
+
+# This is shown at the bottom of the trending stories section and precedes a list of links to popular topics.
+newtab-pocket-read-more = Popular Topics:
+newtab-pocket-new-topics-title = Want even more stories? See these popular topics from { -pocket-brand-name }
+newtab-pocket-more-recommendations = More Recommendations
+newtab-pocket-learn-more = Learn more
+newtab-pocket-cta-button = Get { -pocket-brand-name }
+newtab-pocket-cta-text = Save the stories you love in { -pocket-brand-name }, and fuel your mind with fascinating reads.
+newtab-pocket-pocket-firefox-family = { -pocket-brand-name } is part of the { -brand-product-name } family
+
+# A save to Pocket button that shows over the card thumbnail on hover.
+newtab-pocket-save = Save
+newtab-pocket-saved = Saved
+
+## Pocket content onboarding experience dialog and modal for new users seeing the Pocket section for the first time, shown as the first item in the Pocket section.
+
+newtab-pocket-onboarding-discover = Discover the best of the web
+newtab-pocket-onboarding-cta = { -pocket-brand-name } explores a diverse range of publications to bring the most informative, inspirational, and trustworthy content right to your { -brand-product-name } browser.
+
+## Error Fallback Content.
+## This message and suggested action link are shown in each section of UI that fails to render.
+
+newtab-error-fallback-info = Oops, something went wrong loading this content.
+newtab-error-fallback-refresh-link = Refresh page to try again.
+
+## Customization Menu
+
+newtab-custom-shortcuts-toggle =
+ .label = Shortcuts
+ .description = Sites you save or visit
+
+# Variables
+# $num (number) - Number of rows to display
+newtab-custom-row-selector =
+ { $num ->
+ [one] { $num } row
+ *[other] { $num } rows
+ }
+newtab-custom-sponsored-sites = Sponsored shortcuts
+newtab-custom-stories-toggle =
+ .label = Recommended stories
+ .description = Exceptional content curated by the { -brand-product-name } family
+newtab-custom-pocket-sponsored = Sponsored stories
+newtab-custom-pocket-show-recent-saves = Show recent saves
+newtab-custom-recent-toggle =
+ .label = Recent activity
+ .description = A selection of recent sites and content
+newtab-custom-close-button = Close
+newtab-custom-settings = Manage more settings
diff --git a/browser/locales/en-US/browser/newtab/onboarding.ftl b/browser/locales/en-US/browser/newtab/onboarding.ftl
new file mode 100644
index 0000000000..00c5da9305
--- /dev/null
+++ b/browser/locales/en-US/browser/newtab/onboarding.ftl
@@ -0,0 +1,327 @@
+# 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/.
+
+### UI strings for the MR1 onboarding / multistage about:welcome
+### Various strings use a non-breaking space to avoid a single dangling /
+### widowed word, so test on various window sizes if you also want this.
+
+## Welcome page strings
+
+onboarding-welcome-header = Welcome to { -brand-short-name }
+onboarding-start-browsing-button-label = Start Browsing
+onboarding-not-now-button-label = Not now
+mr1-onboarding-get-started-primary-button-label = Get started
+
+## Custom Return To AMO onboarding strings
+
+return-to-amo-subtitle = Great, you’ve got { -brand-short-name }
+# <img data-l10n-name="icon"/> will be replaced with the icon belonging to the extension
+#
+# Variables:
+# $addon-name (String) - Name of the add-on
+return-to-amo-addon-title = Now let’s get you <img data-l10n-name="icon"/> <b>{ $addon-name }</b>.
+return-to-amo-add-extension-label = Add the Extension
+return-to-amo-add-theme-label = Add the Theme
+
+## Variables: $addon-name (String) - Name of the add-on to be installed
+
+mr1-return-to-amo-subtitle = Say hello to { -brand-short-name }
+mr1-return-to-amo-addon-title = You’ve got a fast, private browser at your fingertips. Now you can add <b>{ $addon-name }</b> and do even more with { -brand-short-name }.
+mr1-return-to-amo-add-extension-label = Add { $addon-name }
+
+## Multistage onboarding strings (about:welcome pages)
+
+# Aria-label to make the "steps" of multistage onboarding visible to screen readers.
+# Variables:
+# $current (Int) - Number of the current page
+# $total (Int) - Total number of pages
+
+onboarding-welcome-steps-indicator-label =
+ .aria-label = Progress: step { $current } of { $total }
+
+# This button will open system settings to turn on prefers-reduced-motion
+mr1-onboarding-reduce-motion-button-label = Turn off animations
+
+# String for the Firefox Accounts button
+mr1-onboarding-sign-in-button-label = Sign in
+
+# The primary import button label will depend on whether we can detect which browser was used to download Firefox.
+# Variables:
+# $previous (Str) - Previous browser name, such as Edge, Chrome
+mr1-onboarding-import-primary-button-label-attribution = Import from { $previous }
+
+mr1-onboarding-theme-header = Make it your own
+mr1-onboarding-theme-subtitle = Personalize { -brand-short-name } with a theme.
+mr1-onboarding-theme-secondary-button-label = Not now
+
+# System theme uses operating system color settings
+mr1-onboarding-theme-label-system = System theme
+
+mr1-onboarding-theme-label-light = Light
+mr1-onboarding-theme-label-dark = Dark
+# "Alpenglow" here is the name of the theme, and should be kept in English.
+mr1-onboarding-theme-label-alpenglow = Alpenglow
+
+onboarding-theme-primary-button-label = Done
+
+## Please make sure to split the content of the title attribute into lines whose
+## width corresponds to about 40 Latin characters, to ensure that the tooltip
+## doesn't become too long. Line breaks will be preserved when displaying the
+## tooltip.
+
+# Tooltip displayed on hover of system theme
+mr1-onboarding-theme-tooltip-system =
+ .title =
+ Follow the operating system theme
+ for buttons, menus, and windows.
+
+# Input description for system theme
+mr1-onboarding-theme-description-system =
+ .aria-description =
+ Follow the operating system theme
+ for buttons, menus, and windows.
+
+# Tooltip displayed on hover of light theme
+mr1-onboarding-theme-tooltip-light =
+ .title =
+ Use a light theme for buttons,
+ menus, and windows.
+
+# Input description for light theme
+mr1-onboarding-theme-description-light =
+ .aria-description =
+ Use a light theme for buttons,
+ menus, and windows.
+
+# Tooltip displayed on hover of dark theme
+mr1-onboarding-theme-tooltip-dark =
+ .title =
+ Use a dark theme for buttons,
+ menus, and windows.
+
+# Input description for dark theme
+mr1-onboarding-theme-description-dark =
+ .aria-description =
+ Use a dark theme for buttons,
+ menus, and windows.
+
+# Tooltip displayed on hover of Alpenglow theme
+mr1-onboarding-theme-tooltip-alpenglow =
+ .title =
+ Use a dynamic, colorful theme for buttons,
+ menus, and windows.
+
+# Input description for Alpenglow theme
+mr1-onboarding-theme-description-alpenglow =
+ .aria-description =
+ Use a dynamic, colorful theme for buttons,
+ menus, and windows.
+
+# Selector description for default themes
+mr2-onboarding-default-theme-label = Explore default themes.
+
+## Strings for Thank You page
+
+mr2-onboarding-thank-you-header = Thank you for choosing us
+mr2-onboarding-thank-you-text = { -brand-short-name } is an independent browser backed by a non-profit. Together, we’re making the web safer, healthier, and more private.
+mr2-onboarding-start-browsing-button-label = Start browsing
+
+## Multistage live language reloading onboarding strings (about:welcome pages)
+##
+## The following language names are generated by the browser's Intl.DisplayNames API.
+##
+## Variables:
+## $negotiatedLanguage (String) - The name of the langpack's language, e.g. "Español (ES)"
+## $systemLanguage (String) - The name of the system language, e.g "Español (ES)"
+## $appLanguage (String) - The name of the language shipping in the browser build, e.g. "English (EN)"
+
+onboarding-live-language-header = Choose your language
+
+mr2022-onboarding-live-language-text = { -brand-short-name } speaks your language
+
+mr2022-language-mismatch-subtitle = Thanks to our community, { -brand-short-name } is translated in over 90 languages. It looks like your system is using { $systemLanguage }, and { -brand-short-name } is using { $appLanguage }.
+
+onboarding-live-language-button-label-downloading = Downloading the language pack for { $negotiatedLanguage }…
+onboarding-live-language-waiting-button = Getting available languages…
+onboarding-live-language-installing = Installing the language pack for { $negotiatedLanguage }…
+
+mr2022-onboarding-live-language-switch-to = Switch to { $negotiatedLanguage }
+mr2022-onboarding-live-language-continue-in = Continue in { $appLanguage }
+
+onboarding-live-language-secondary-cancel-download = Cancel
+onboarding-live-language-skip-button-label = Skip
+
+## Firefox 100 Thank You screens
+
+# "Hero Text" displayed on left side of welcome screen. This text can be
+# formatted to span multiple lines as needed. The <span data-l10n-name="zap">
+# </span> in this string allows a "zap" underline style to be automatically
+# added to the text inside it. "Yous" should stay inside the zap span, but
+# "Thank" can be put inside instead if there's no "you" in the translation.
+# The English text would normally be "100 Thank-Yous" i.e., plural noun, but for
+# aesthetics of splitting it across multiple lines, the hyphen is omitted.
+fx100-thank-you-hero-text =
+ 100
+ Thank
+ <span data-l10n-name="zap">Yous</span>
+fx100-thank-you-subtitle = It’s our 100th release! Thanks for helping us build a better, healthier internet.
+fx100-thank-you-pin-primary-button-label = { PLATFORM() ->
+ [macos] Keep { -brand-short-name } in Dock
+ *[other] Pin { -brand-short-name } to taskbar
+}
+
+fx100-upgrade-thanks-header = 100 Thank-Yous
+# Message shown with a start-browsing button. Emphasis <em> should be for "you"
+# but "Thank" can be used instead if there's no "you" in the translation.
+fx100-upgrade-thank-you-body = It’s our 100th release of { -brand-short-name }. Thank <em>you</em> for helping us build a better, healthier internet.
+# Message shown with either a pin-to-taskbar or set-default button.
+fx100-upgrade-thanks-keep-body = It’s our 100th release! Thanks for being a part of our community. Keep { -brand-short-name } one click away for the next 100.
+
+mr2022-onboarding-secondary-skip-button-label = Skip this step
+
+## MR2022 New User Easy Setup screen strings
+
+# Primary button string used on new user onboarding first screen showing multiple actions such as Set Default, Import from previous browser.
+mr2022-onboarding-easy-setup-primary-button-label = Save and continue
+# Set Default action checkbox label used on new user onboarding first screen
+mr2022-onboarding-easy-setup-set-default-checkbox-label = Set { -brand-short-name } as default browser
+# Import action checkbox label used on new user onboarding first screen
+mr2022-onboarding-easy-setup-import-checkbox-label = Import from previous browser
+
+## MR2022 New User Pin Firefox screen strings
+
+# Primary button string used on welcome page for when Firefox is not pinned.
+mr2022-onboarding-pin-primary-button-label = { PLATFORM() ->
+ [macos] Keep { -brand-short-name } in Dock
+ *[other] Pin { -brand-short-name } to taskbar
+}
+
+## MR2022 Existing User Pin Firefox Screen Strings
+
+# Title used on multistage onboarding page for existing users when Firefox is not pinned
+mr2022-onboarding-existing-pin-header = Thank you for loving { -brand-product-name }
+# Subtitle is used on onboarding page for existing users when Firefox is not pinned
+mr2022-onboarding-existing-pin-subtitle = Launch a healthier internet from anywhere with a single click. Our latest update is packed with new things we think you’ll adore.
+# Subtitle will be used on the welcome screen for existing users
+# when they already have Firefox pinned but not set as default
+mr2022-onboarding-existing-set-default-only-subtitle = Use a browser that defends your privacy while you zip around the web. Our latest update is packed with things that you adore.
+mr2022-onboarding-existing-pin-checkbox-label = Also add { -brand-short-name } private browsing
+
+## MR2022 New User Set Default screen strings
+
+# This string is the title used when the user already has pinned the browser, but has not set default.
+mr2022-onboarding-set-default-title = Make { -brand-short-name } your go-to browser
+mr2022-onboarding-set-default-primary-button-label = Set { -brand-short-name } as default browser
+# When translating "zip", please feel free to pick a verb that signifies movement and/or exploration
+# and makes sense in the context of navigating the web.
+mr2022-onboarding-set-default-subtitle = Use a browser backed by a non-profit. We defend your privacy while you zip around the web.
+
+## MR2022 Get Started screen strings.
+## These strings will be used on the welcome page
+## when Firefox is already set to default and pinned.
+
+# When translating "zip", please feel free to pick a verb that signifies movement and/or exploration
+# and makes sense in the context of navigating the web.
+mr2022-onboarding-get-started-primary-subtitle = Our latest version is built around you, making it easier than ever to zip around the web. It’s packed with features we think you’ll adore.
+mr2022-onboarding-get-started-primary-button-label = Set up in seconds
+
+mr2022-onboarding-import-primary-button-label-no-attribution = Import from previous browser
+
+## MR2022 Multistage Mobile Download screen strings
+
+mr2022-onboarding-mobile-download-cta-text = Scan the QR code to get { -brand-product-name } for mobile or <a data-l10n-name="download-label">send yourself a download link.</a>
+mr2022-onboarding-no-mobile-download-cta-text = Scan the QR code to get { -brand-product-name } for mobile.
+
+## MR2022 Upgrade Dialog screens
+## Pin private window screen shown only for users who don't have Firefox private pinned
+
+mr2022-upgrade-onboarding-pin-private-window-header = Get private browsing freedom in one click
+mr2022-upgrade-onboarding-pin-private-window-subtitle = No saved cookies or history, right from your desktop. Browse like no one’s watching.
+mr2022-upgrade-onboarding-pin-private-window-primary-button-label = { PLATFORM() ->
+ [macos] Keep { -brand-short-name } private browsing in Dock
+ *[other] Pin { -brand-short-name } private browsing to taskbar
+}
+
+## MR2022 Privacy Segmentation screen strings
+
+mr2022-onboarding-privacy-segmentation-title = We always respect your privacy
+mr2022-onboarding-privacy-segmentation-subtitle = From intelligent suggestions to smarter search, we’re constantly working to create a better, more personal { -brand-product-name }.
+mr2022-onboarding-privacy-segmentation-text-cta = What do you want to see when we offer new features that use your data to enhance your browsing?
+mr2022-onboarding-privacy-segmentation-button-primary-label = Use { -brand-product-name } recommendations
+mr2022-onboarding-privacy-segmentation-button-secondary-label = Show detailed information
+
+## MR2022 Multistage Gratitude screen strings
+
+mr2022-onboarding-gratitude-title = You’re helping us build a better web
+mr2022-onboarding-gratitude-subtitle = Thank you for using { -brand-short-name }, backed by the Mozilla Foundation. With your support, we’re working to make the internet more open, accessible, and better for everyone.
+mr2022-onboarding-gratitude-primary-button-label = See what’s new
+mr2022-onboarding-gratitude-secondary-button-label = Start browsing
+
+## Onboarding spotlight for infrequent users
+
+onboarding-infrequent-import-title = Make yourself at home
+onboarding-infrequent-import-subtitle = Whether you’re settling in or just stopping by, remember you can import your bookmarks, passwords, and more.
+onboarding-infrequent-import-primary-button = Import to { -brand-short-name }
+
+## MR2022 Illustration alt tags
+## Descriptive tags for illustrations used by screen readers and other assistive tech
+
+mr2022-onboarding-pin-image-alt =
+ .aria-label = Person working on a laptop surrounded by stars and flowers
+mr2022-onboarding-default-image-alt =
+ .aria-label = Person hugging the { -brand-product-name } logo
+mr2022-onboarding-import-image-alt =
+ .aria-label = Person riding a skateboard with a box of software icons
+mr2022-onboarding-mobile-download-image-alt =
+ .aria-label = Frogs hopping across lily pads with a QR code to download { -brand-product-name } for mobile in the center
+mr2022-onboarding-pin-private-image-alt =
+ .aria-label = Magic wand makes { -brand-product-name } private browsing logo appear out of a hat
+mr2022-onboarding-privacy-segmentation-image-alt =
+ .aria-label = Light-skinned and dark-skinned hands high five
+mr2022-onboarding-gratitude-image-alt =
+ .aria-label = View of a sunset through a window with a fox and a house plant on a windowsill
+
+## Device migration onboarding
+
+onboarding-device-migration-image-alt =
+ .aria-label = A fox on the screen of a laptop computer waving. The laptop has a mouse plugged into it.
+onboarding-device-migration-title = Welcome back!
+onboarding-device-migration-subtitle2 = Sign in to your account to bring your bookmarks, passwords, and history with you on your new device.
+onboarding-device-migration-primary-button-label = Sign in
+
+## The following screens have been updated to use security and privacy focused strings:
+
+# Easy setup screen
+onboarding-easy-setup-security-and-privacy-title = We love keeping you safe
+onboarding-easy-setup-security-and-privacy-subtitle = Our non-profit backed browser helps stop companies from secretly following you around the web.
+
+# Mobile download screen
+onboarding-mobile-download-security-and-privacy-title = Stay encrypted when you hop between devices
+onboarding-mobile-download-security-and-privacy-subtitle = When you’re synced up, { -brand-short-name } encrypts your passwords, bookmarks, and more. Plus you can grab tabs from your other devices.
+
+# Gratitude screen
+onboarding-gratitude-security-and-privacy-title = { -brand-short-name } has your back
+onboarding-gratitude-security-and-privacy-subtitle = Thank you for using { -brand-short-name }, backed by the Mozilla Foundation. With your support, we’re working to make the internet safer and more accessible for everyone.
+
+## New user time and familiarity survey strings
+
+onboarding-new-user-time-based-survey-title = How long have you been using { -brand-short-name }?
+onboarding-new-user-familiarity-based-survey-title = How familiar are you with { -brand-short-name }?
+
+onboarding-new-user-survey-subtitle = Your feedback helps make { -brand-short-name } even better.
+
+# When translating "next" it means the next screen in onboarding.
+onboarding-new-user-survey-next-button-label = Next
+onboarding-new-user-survey-legal-link-label = By selecting “{ onboarding-new-user-survey-next-button-label },” you agree to { -brand-product-name }’s <a data-l10n-name="privacy_notice">Privacy Notice</a>
+
+# When translating "brand new" it means completely new.
+onboarding-new-user-survey-time-based-option-1 = I’m brand new
+onboarding-new-user-survey-time-based-option-2 = Less than 1 month
+onboarding-new-user-survey-time-based-option-3 = More than 1 month, regularly
+onboarding-new-user-survey-time-based-option-4 = More than 1 month, occasionally
+# When translating "brand new" it means completely new.
+onboarding-new-user-survey-familiarity-based-option-1 = I’m brand new
+onboarding-new-user-survey-familiarity-based-option-2 = I’ve used it some
+onboarding-new-user-survey-familiarity-based-option-3 = I’m very familiar with it
+onboarding-new-user-survey-familiarity-based-option-4 = I used it in the past, but it’s been a while
diff --git a/browser/locales/en-US/browser/originControls.ftl b/browser/locales/en-US/browser/originControls.ftl
new file mode 100644
index 0000000000..14b55c3ec6
--- /dev/null
+++ b/browser/locales/en-US/browser/originControls.ftl
@@ -0,0 +1,76 @@
+# 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/.
+
+## These strings appear in Origin Controls for Extensions. Currently,
+## they are visible in the context menu for extension toolbar buttons,
+## and are used to inform the user how the extension can access their
+## data for the current website, and allow them to control it.
+
+origin-controls-no-access =
+ .label = Extension Can’t Read and Change Data
+
+origin-controls-quarantined-status =
+ .label = Extension Not Allowed on Restricted Sites
+
+origin-controls-quarantined-allow =
+ .label = Allow on Restricted Sites
+
+origin-controls-options =
+ .label = Extension Can Read and Change Data:
+
+origin-controls-option-all-domains =
+ .label = On All Sites
+
+origin-controls-option-when-clicked =
+ .label = Only When Clicked
+
+# This string denotes an option that grants the extension access to
+# the current site whenever they visit it.
+# Variables:
+# $domain (String) - The domain for which the access is granted.
+origin-controls-option-always-on =
+ .label = Always Allow on { $domain }
+
+## These strings are used to map Origin Controls states to user-friendly
+## messages. They currently appear in the unified extensions panel.
+
+origin-controls-state-no-access = Can’t read and change data on this site
+
+origin-controls-state-quarantined = Not allowed by { -vendor-short-name } on this site
+
+origin-controls-state-always-on = Can always read and change data on this site
+
+origin-controls-state-when-clicked = Permission needed to read and change data
+
+origin-controls-state-hover-run-visit-only = Run for this visit only
+
+origin-controls-state-runnable-hover-open = Open extension
+
+origin-controls-state-runnable-hover-run = Run extension
+
+origin-controls-state-temporary-access = Can read and change data for this visit
+
+## Extension's toolbar button.
+## Variables:
+## $extensionTitle (String) - Extension name or title message.
+
+origin-controls-toolbar-button =
+ .label = { $extensionTitle }
+ .tooltiptext = { $extensionTitle }
+
+# Extension's toolbar button when permission is needed.
+# Note that the new line is intentionally part of the tooltip.
+origin-controls-toolbar-button-permission-needed =
+ .label = { $extensionTitle }
+ .tooltiptext =
+ { $extensionTitle }
+ Permission needed
+
+# Extension's toolbar button when quarantined.
+# Note that the new line is intentionally part of the tooltip.
+origin-controls-toolbar-button-quarantined =
+ .label = { $extensionTitle }
+ .tooltiptext =
+ { $extensionTitle }
+ Not allowed by { -vendor-short-name } on this site
diff --git a/browser/locales/en-US/browser/pageInfo.ftl b/browser/locales/en-US/browser/pageInfo.ftl
new file mode 100644
index 0000000000..ac8e9d2f97
--- /dev/null
+++ b/browser/locales/en-US/browser/pageInfo.ftl
@@ -0,0 +1,258 @@
+# 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/. --
+
+page-info-window =
+ .style = width: 600px; min-height: 550px;
+
+copy =
+ .key = C
+menu-copy =
+ .label = Copy
+ .accesskey = C
+
+select-all =
+ .key = A
+menu-select-all =
+ .label = Select All
+ .accesskey = A
+
+close-dialog =
+ .key = w
+
+general-tab =
+ .label = General
+ .accesskey = G
+general-title =
+ .value = Title:
+general-url =
+ .value = Address:
+general-type =
+ .value = Type:
+general-mode =
+ .value = Render Mode:
+general-size =
+ .value = Size:
+general-referrer =
+ .value = Referring URL:
+general-modified =
+ .value = Modified:
+general-encoding =
+ .value = Text Encoding:
+general-meta-name =
+ .label = Name
+general-meta-content =
+ .label = Content
+
+media-tab =
+ .label = Media
+ .accesskey = M
+media-location =
+ .value = Location:
+media-text =
+ .value = Associated Text:
+media-alt-header =
+ .label = Alternate Text
+media-address =
+ .label = Address
+media-type =
+ .label = Type
+media-size =
+ .label = Size
+media-count =
+ .label = Count
+media-dimension =
+ .value = Dimensions:
+media-long-desc =
+ .value = Long Description:
+media-select-all =
+ .label = Select All
+ .accesskey = e
+media-save-as =
+ .label = Save As…
+ .accesskey = A
+media-save-image-as =
+ .label = Save As…
+ .accesskey = v
+
+perm-tab =
+ .label = Permissions
+ .accesskey = P
+permissions-for =
+ .value = Permissions for:
+
+security-tab =
+ .label = Security
+ .accesskey = S
+security-view =
+ .label = View Certificate
+ .accesskey = V
+security-view-unknown = Unknown
+ .value = Unknown
+security-view-identity =
+ .value = Website Identity
+security-view-identity-owner =
+ .value = Owner:
+security-view-identity-domain =
+ .value = Website:
+security-view-identity-verifier =
+ .value = Verified by:
+security-view-identity-validity =
+ .value = Expires on:
+security-view-privacy =
+ .value = Privacy & History
+
+security-view-privacy-history-value = Have I visited this website prior to today?
+security-view-privacy-sitedata-value = Is this website storing information on my computer?
+
+security-view-privacy-clearsitedata =
+ .label = Clear Cookies and Site Data
+ .accesskey = C
+
+security-view-privacy-passwords-value = Have I saved any passwords for this website?
+
+security-view-privacy-viewpasswords =
+ .label = View Saved Passwords
+ .accesskey = w
+security-view-technical =
+ .value = Technical Details
+
+help-button =
+ .label = Help
+
+## These strings are used to tell the user if the website is storing cookies
+## and data on the users computer in the security tab of pageInfo
+## Variables:
+## $value (number) - Amount of data being stored
+## $unit (string) - The unit of data being stored (Usually KB)
+
+security-site-data-cookies = Yes, cookies and { $value } { $unit } of site data
+security-site-data-only = Yes, { $value } { $unit } of site data
+
+security-site-data-cookies-only = Yes, cookies
+security-site-data-no = No
+
+##
+
+image-size-unknown = Unknown
+page-info-not-specified =
+ .value = Not specified
+not-set-alternative-text = Not specified
+not-set-date = Not specified
+media-img = Image
+media-bg-img = Background
+media-border-img = Border
+media-list-img = Bullet
+media-cursor = Cursor
+media-object = Object
+media-embed = Embed
+media-link = Icon
+media-input = Input
+media-video = Video
+media-audio = Audio
+saved-passwords-yes = Yes
+saved-passwords-no = No
+
+no-page-title =
+ .value = Untitled Page:
+general-quirks-mode =
+ .value = Quirks mode
+general-strict-mode =
+ .value = Standards compliance mode
+page-info-security-no-owner =
+ .value = This website does not supply ownership information.
+media-select-folder = Select a Folder to Save the Images
+media-unknown-not-cached =
+ .value = Unknown (not cached)
+permissions-use-default =
+ .label = Use Default
+security-no-visits = No
+
+# This string is used to display the number of meta tags
+# in the General Tab
+# Variables:
+# $tags (number) - The number of meta tags
+general-meta-tags =
+ .value =
+ { $tags ->
+ [one] Meta (1 tag)
+ *[other] Meta ({ $tags } tags)
+ }
+
+# This string is used to display the number of times
+# the user has visited the website prior
+# Variables:
+# $visits (number) - The number of previous visits
+security-visits-number =
+ { $visits ->
+ [0] No
+ [one] Yes, once
+ *[other] Yes, { $visits } times
+ }
+
+# This string is used to display the size of a media file
+# Variables:
+# $kb (number) - The size of an image in Kilobytes
+# $bytes (number) - The size of an image in Bytes
+properties-general-size =
+ .value = { $bytes ->
+ [one] { $kb } KB ({ $bytes } byte)
+ *[other] { $kb } KB ({ $bytes } bytes)
+ }
+
+# This string is used to display the type and number
+# of frames of a animated image
+# Variables:
+# $type (string) - The type of a animated image
+# $frames (number) - The number of frames in an animated image
+media-animated-image-type =
+ .value = { $frames ->
+ [one] { $type } Image (animated, { $frames } frame)
+ *[other] { $type } Image (animated, { $frames } frames)
+ }
+
+# This string is used to display the type of
+# an image
+# Variables:
+# $type (string) - The type of an image
+media-image-type =
+ .value = { $type } Image
+
+# This string is used to display the size of a scaled image
+# in both scaled and unscaled pixels
+# Variables:
+# $dimx (number) - The horizontal size of an image
+# $dimy (number) - The vertical size of an image
+# $scaledx (number) - The scaled horizontal size of an image
+# $scaledy (number) - The scaled vertical size of an image
+media-dimensions-scaled =
+ .value = { $dimx }px × { $dimy }px (scaled to { $scaledx }px × { $scaledy }px)
+
+# This string is used to display the size of an image in pixels
+# Variables:
+# $dimx (number) - The horizontal size of an image
+# $dimy (number) - The vertical size of an image
+media-dimensions =
+ .value = { $dimx }px × { $dimy }px
+
+# This string is used to display the size of a media
+# file in kilobytes
+# Variables:
+# $size (number) - The size of the media file in kilobytes
+media-file-size = { $size } KB
+
+## Variables:
+## $website (string) — The url of the website pageInfo is getting info for
+
+# This string is used to display the website name next to the
+# "Block Images" checkbox in the media tab
+media-block-image =
+ .label = Block Images from { $website }
+ .accesskey = B
+
+# This string is used to display the URL of the website on top of the
+# pageInfo dialog box
+page-info-page =
+ .title = Page Info — { $website }
+page-info-frame =
+ .title = Frame Info — { $website }
diff --git a/browser/locales/en-US/browser/panelUI.ftl b/browser/locales/en-US/browser/panelUI.ftl
new file mode 100644
index 0000000000..617df7013e
--- /dev/null
+++ b/browser/locales/en-US/browser/panelUI.ftl
@@ -0,0 +1,24 @@
+# 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/.
+
+## Customization Menu
+
+# The overflow menu is the menu that appears if you click the chevron (>> button) in the location bar.
+customize-menu-unpin-from-overflowmenu =
+ .label = Unpin from Overflow Menu
+ .accesskey = U
+customize-menu-add-to-toolbar =
+ .label = Add to Toolbar
+ .accesskey = A
+customize-menu-add-to-overflowmenu =
+ .label = Add to Overflow Menu
+ .accesskey = M
+
+## Forget Button
+
+# The forget button can be added to the toolbar or overflow menu via the customization menu.
+panic-button-thankyou-msg1 = Your recent history is cleared.
+panic-button-thankyou-msg2 = Safe browsing!
+panic-button-thankyou-button =
+ .label = Thanks!
diff --git a/browser/locales/en-US/browser/panicButton.ftl b/browser/locales/en-US/browser/panicButton.ftl
new file mode 100644
index 0000000000..e4b0f2ef20
--- /dev/null
+++ b/browser/locales/en-US/browser/panicButton.ftl
@@ -0,0 +1,31 @@
+# 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/.
+
+panic-button-open-new-window = Open a new clean Window
+panic-button-undo-warning = This action cannot be undone.
+panic-button-forget-button =
+ .label = Forget!
+
+## These strings are combined to form a complete sentence starting with
+## panic-main-timeframe-desc. For example: "Forget the last: Five minutes".
+## Please ensure that this remains the case in the translation.
+
+panic-main-timeframe-desc = Forget the last:
+panic-button-5min =
+ .label = Five minutes
+panic-button-2hr =
+ .label = Two hours
+panic-button-day =
+ .label = 24 hours
+
+## These strings are combined to form a complete sentence starting with
+## panic-button-action-desc. For example: "Proceeding will: Delete Recent Cookies".
+## Please ensure that this remains the case in the translation.
+## Note also that some strings include <strong> tags for emphasis on the
+## words "Cookies", "History", "Tabs" and "Windows". The translation should do the same.
+
+panic-button-action-desc = Proceeding will:
+panic-button-delete-cookies = Delete Recent <strong>Cookies</strong>
+panic-button-delete-history = Delete Recent <strong>History</strong>
+panic-button-delete-tabs-and-windows = Close all <strong>Tabs</strong> and <strong>Windows</strong>
diff --git a/browser/locales/en-US/browser/places.ftl b/browser/locales/en-US/browser/places.ftl
new file mode 100644
index 0000000000..c342c2610b
--- /dev/null
+++ b/browser/locales/en-US/browser/places.ftl
@@ -0,0 +1,315 @@
+# 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/.
+
+places-open =
+ .label = Open
+ .accesskey = O
+places-open-in-tab =
+ .label = Open in New Tab
+ .accesskey = w
+places-open-in-container-tab =
+ .label = Open in New Container Tab
+ .accesskey = i
+places-open-all-bookmarks =
+ .label = Open All Bookmarks
+ .accesskey = O
+places-open-all-in-tabs =
+ .label = Open All in Tabs
+ .accesskey = O
+places-open-in-window =
+ .label = Open in New Window
+ .accesskey = N
+places-open-in-private-window =
+ .label = Open in New Private Window
+ .accesskey = P
+
+places-empty-bookmarks-folder =
+ .label = (Empty)
+
+places-add-bookmark =
+ .label = Add Bookmark…
+ .accesskey = B
+places-add-folder-contextmenu =
+ .label = Add Folder…
+ .accesskey = F
+places-add-folder =
+ .label = Add Folder…
+ .accesskey = o
+places-add-separator =
+ .label = Add Separator
+ .accesskey = S
+
+places-view =
+ .label = View
+ .accesskey = w
+places-by-date =
+ .label = By Date
+ .accesskey = D
+places-by-site =
+ .label = By Site
+ .accesskey = S
+places-by-most-visited =
+ .label = By Most Visited
+ .accesskey = V
+places-by-last-visited =
+ .label = By Last Visited
+ .accesskey = L
+places-by-day-and-site =
+ .label = By Date and Site
+ .accesskey = t
+
+places-history-search =
+ .placeholder = Search history
+places-history =
+ .aria-label = History
+places-bookmarks-search =
+ .placeholder = Search bookmarks
+
+places-forget-domain-data =
+ .label = Forget About This Site…
+ .accesskey = F
+places-sortby-name =
+ .label = Sort By Name
+ .accesskey = r
+# places-edit-bookmark and places-edit-generic will show one or the other and can have the same access key.
+places-edit-bookmark =
+ .label = Edit Bookmark…
+ .accesskey = E
+places-edit-generic =
+ .label = Edit…
+ .accesskey = E
+places-edit-folder2 =
+ .label = Edit Folder…
+ .accesskey = E
+# Variables
+# $count (number) - Number of folders to delete
+places-delete-folder =
+ .label =
+ { $count ->
+ [1] Delete Folder
+ *[other] Delete Folders
+ }
+ .accesskey = D
+# Variables:
+# $count (number) - The number of pages selected for removal.
+places-delete-page =
+ .label =
+ { $count ->
+ [1] Delete Page
+ *[other] Delete Pages
+ }
+ .accesskey = D
+
+# Managed bookmarks are created by enterprise policy and cannot be changed by the user.
+managed-bookmarks =
+ .label = Managed bookmarks
+# This label is used when a managed bookmarks folder doesn't have a name.
+managed-bookmarks-subfolder =
+ .label = Subfolder
+
+# This label is used for the "Other Bookmarks" folder that appears in the bookmarks toolbar.
+other-bookmarks-folder =
+ .label = Other Bookmarks
+
+places-show-in-folder =
+ .label = Show in Folder
+ .accesskey = F
+
+# Variables:
+# $count (number) - The number of elements being selected for removal.
+places-delete-bookmark =
+ .label =
+ { $count ->
+ [1] Delete Bookmark
+ *[other] Delete Bookmarks
+ }
+ .accesskey = D
+
+# Variables:
+# $count (number) - The number of bookmarks being added.
+places-create-bookmark =
+ .label =
+ { $count ->
+ [1] Bookmark Page…
+ *[other] Bookmark Pages…
+ }
+ .accesskey = B
+
+places-untag-bookmark =
+ .label = Remove Tag
+ .accesskey = R
+
+places-manage-bookmarks =
+ .label = Manage Bookmarks
+ .accesskey = M
+
+places-forget-about-this-site-confirmation-title =
+ Forgetting about this site
+
+# Variables:
+# $hostOrBaseDomain (string) - The base domain (or host in case there is no base domain) for which data is being removed
+places-forget-about-this-site-confirmation-msg =
+ This action will remove data related to { $hostOrBaseDomain } including history, cookies, cache and content preferences. Related bookmarks and passwords will not be removed. Are you sure you want to proceed?
+
+places-forget-about-this-site-forget = Forget
+
+places-library3 =
+ .title = Library
+
+places-organize-button =
+ .label = Organize
+ .tooltiptext = Organize your bookmarks
+ .accesskey = O
+
+places-organize-button-mac =
+ .label = Organize
+ .tooltiptext = Organize your bookmarks
+
+places-file-close =
+ .label = Close
+ .accesskey = C
+
+places-cmd-close =
+ .key = w
+
+places-view-button =
+ .label = Views
+ .tooltiptext = Change your view
+ .accesskey = V
+
+places-view-button-mac =
+ .label = Views
+ .tooltiptext = Change your view
+
+places-view-menu-columns =
+ .label = Show Columns
+ .accesskey = C
+
+places-view-menu-sort =
+ .label = Sort
+ .accesskey = S
+
+places-view-sort-unsorted =
+ .label = Unsorted
+ .accesskey = U
+
+places-view-sort-ascending =
+ .label = A > Z Sort Order
+ .accesskey = A
+
+places-view-sort-descending =
+ .label = Z > A Sort Order
+ .accesskey = Z
+
+places-maintenance-button =
+ .label = Import and Backup
+ .tooltiptext = Import and backup your bookmarks
+ .accesskey = I
+
+places-maintenance-button-mac =
+ .label = Import and Backup
+ .tooltiptext = Import and backup your bookmarks
+
+places-cmd-backup =
+ .label = Backup…
+ .accesskey = B
+
+places-cmd-restore =
+ .label = Restore
+ .accesskey = R
+
+places-cmd-restore-from-file =
+ .label = Choose File…
+ .accesskey = C
+
+places-import-bookmarks-from-html =
+ .label = Import Bookmarks from HTML…
+ .accesskey = I
+
+places-export-bookmarks-to-html =
+ .label = Export Bookmarks to HTML…
+ .accesskey = E
+
+places-import-other-browser =
+ .label = Import Data from Another Browser…
+ .accesskey = A
+
+places-view-sort-col-name =
+ .label = Name
+
+places-view-sort-col-tags =
+ .label = Tags
+
+places-view-sort-col-url =
+ .label = Location
+
+places-view-sort-col-most-recent-visit =
+ .label = Most Recent Visit
+
+places-view-sort-col-visit-count =
+ .label = Visit Count
+
+places-view-sort-col-date-added =
+ .label = Added
+
+places-view-sort-col-last-modified =
+ .label = Last Modified
+
+places-view-sortby-name =
+ .label = Sort by Name
+ .accesskey = N
+places-view-sortby-url =
+ .label = Sort by Location
+ .accesskey = L
+places-view-sortby-date =
+ .label = Sort by Most Recent Visit
+ .accesskey = V
+places-view-sortby-visit-count =
+ .label = Sort by Visit Count
+ .accesskey = C
+places-view-sortby-date-added =
+ .label = Sort by Added
+ .accesskey = e
+places-view-sortby-last-modified =
+ .label = Sort by Last Modified
+ .accesskey = M
+places-view-sortby-tags =
+ .label = Sort by Tags
+ .accesskey = T
+
+places-cmd-find-key =
+ .key = f
+
+places-back-button =
+ .tooltiptext = Go back
+
+places-forward-button =
+ .tooltiptext = Go forward
+
+places-details-pane-select-an-item-description = Select an item to view and edit its properties
+
+places-details-pane-no-items =
+ .value = No items
+# Variables:
+# $count (Number): number of items
+places-details-pane-items-count =
+ .value =
+ { $count ->
+ [one] One item
+ *[other] { $count } items
+ }
+
+## Strings used as a placeholder in the Library search field. For example,
+## "Search History" stands for "Search through the browser's history".
+
+places-search-bookmarks =
+ .placeholder = Search Bookmarks
+places-search-history =
+ .placeholder = Search History
+places-search-downloads =
+ .placeholder = Search Downloads
+
+##
+
+places-locked-prompt = The bookmarks and history system will not be functional because one of { -brand-short-name }’s files is in use by another application. Some security software can cause this problem.
diff --git a/browser/locales/en-US/browser/placesPrompts.ftl b/browser/locales/en-US/browser/placesPrompts.ftl
new file mode 100644
index 0000000000..b55f77c3c9
--- /dev/null
+++ b/browser/locales/en-US/browser/placesPrompts.ftl
@@ -0,0 +1,20 @@
+# 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/.
+
+places-error-title = { -brand-short-name }
+places-no-title = (no title)
+
+# Do not translate `javascript:` and `data:`, they refer to the scheme used in URLs
+places-load-js-data-url-error = For security reasons, “javascript:” or “data:” URLs cannot be loaded from the history window or sidebar.
+
+places-bookmarks-backup-title = Bookmarks backup filename
+places-bookmarks-restore-alert-title = Revert Bookmarks
+places-bookmarks-restore-alert = This will replace all of your current bookmarks with the backup. Are you sure?
+places-bookmarks-restore-title = Select a bookmarks backup
+places-bookmarks-restore-filter-name = JSON
+places-bookmarks-restore-format-error = Unsupported file type.
+places-bookmarks-restore-parse-error = Unable to process the backup file.
+
+places-bookmarks-import = Import Bookmarks File
+places-bookmarks-export = Export Bookmarks File
diff --git a/browser/locales/en-US/browser/policies/policies-descriptions.ftl b/browser/locales/en-US/browser/policies/policies-descriptions.ftl
new file mode 100644
index 0000000000..6908dd5f9d
--- /dev/null
+++ b/browser/locales/en-US/browser/policies/policies-descriptions.ftl
@@ -0,0 +1,225 @@
+# 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/.
+
+## The Enterprise Policies feature is aimed at system administrators
+## who want to deploy these settings across several Firefox installations
+## all at once. This is traditionally done through the Windows Group Policy
+## feature, but the system also supports other forms of deployment.
+## These are short descriptions for individual policies, to be displayed
+## in the documentation section in about:policies.
+
+policy-3rdparty = Set policies that WebExtensions can access via chrome.storage.managed.
+
+policy-AllowedDomainsForApps = Define domains allowed to access Google Workspace.
+
+policy-AllowFileSelectionDialogs = Allow file selection dialogs.
+
+policy-AppAutoUpdate = Enable or disable automatic application update.
+
+policy-AppUpdatePin = Prevent { -brand-short-name } from being updated beyond the specified version.
+
+policy-AppUpdateURL = Set custom app update URL.
+
+policy-Authentication = Configure integrated authentication for websites that support it.
+
+policy-AutoLaunchProtocolsFromOrigins = Define a list of external protocols that can be used from listed origins without prompting the user.
+
+policy-BackgroundAppUpdate2 = Enable or disable the background updater.
+
+policy-BlockAboutAddons = Block access to the Add-ons Manager (about:addons).
+
+policy-BlockAboutConfig = Block access to the about:config page.
+
+policy-BlockAboutProfiles = Block access to the about:profiles page.
+
+policy-BlockAboutSupport = Block access to the about:support page.
+
+policy-Bookmarks = Create bookmarks in the Bookmarks toolbar, Bookmarks menu, or a specified folder inside them.
+
+policy-CaptivePortal = Enable or disable captive portal support.
+
+policy-CertificatesDescription = Add certificates or use built-in certificates.
+
+policy-Cookies = Allow or deny websites to set cookies.
+
+# Containers in this context is referring to container tabs in Firefox.
+policy-Containers = Set policies related to containers.
+
+policy-DisableAccounts = Disable account-based services, including sync.
+
+policy-DisabledCiphers = Disable ciphers.
+
+policy-DefaultDownloadDirectory = Set the default download directory.
+
+policy-DisableAppUpdate = Prevent the browser from updating.
+
+policy-DisableBuiltinPDFViewer = Disable PDF.js, the built-in PDF viewer in { -brand-short-name }.
+
+policy-DisableDefaultBrowserAgent = Prevent the default browser agent from taking any actions. Only applicable to Windows; other platforms don’t have the agent.
+
+policy-DisableDeveloperTools = Block access to the developer tools.
+
+policy-DisableFeedbackCommands = Disable commands to send feedback from the Help menu (Submit Feedback and Report Deceptive Site).
+
+policy-DisableFirefoxAccounts = Disable { -fxaccount-brand-name } based services, including Sync.
+
+# Firefox Screenshots is the name of the feature, and should not be translated.
+policy-DisableFirefoxScreenshots = Disable the Firefox Screenshots feature.
+
+policy-DisableFirefoxStudies = Prevent { -brand-short-name } from running studies.
+
+policy-DisableForgetButton = Prevent access to the Forget button.
+
+policy-DisableFormHistory = Don’t remember search and form history.
+
+policy-DisablePrimaryPasswordCreation = If true, a Primary Password can’t be created.
+
+policy-DisablePasswordReveal = Do not allow passwords to be revealed in saved logins.
+
+policy-DisablePocket2 = Disable the feature to save webpages to { -pocket-brand-name }.
+
+policy-DisablePrivateBrowsing = Disable Private Browsing.
+
+policy-DisableProfileImport = Disable the menu command to Import data from another browser.
+
+policy-DisableProfileRefresh = Disable the Refresh { -brand-short-name } button in the about:support page.
+
+policy-DisableSafeMode = Disable the feature to restart in Safe Mode. Note: the Shift key to enter Safe Mode can only be disabled on Windows using Group Policy.
+
+policy-DisableSecurityBypass = Prevent the user from bypassing certain security warnings.
+
+policy-DisableSetAsDesktopBackground = Disable the menu command Set as Desktop Background for images.
+
+policy-DisableSystemAddonUpdate = Prevent the browser from installing and updating system add-ons.
+
+policy-DisableTelemetry = Turn off Telemetry.
+
+policy-DisableThirdPartyModuleBlocking = Prevent the user from blocking third-party modules that get injected into the { -brand-short-name } process.
+
+policy-DisplayBookmarksToolbar = Display the Bookmarks Toolbar by default.
+
+policy-DisplayMenuBar = Display the Menu Bar by default.
+
+policy-DNSOverHTTPS = Configure DNS over HTTPS.
+
+policy-DontCheckDefaultBrowser = Disable check for default browser on startup.
+
+policy-DownloadDirectory = Set and lock the download directory.
+
+# “lock” means that the user won’t be able to change this setting
+policy-EnableTrackingProtection = Enable or disable Content Blocking and optionally lock it.
+
+# “lock” means that the user won’t be able to change this setting
+policy-EncryptedMediaExtensions = Enable or disable Encrypted Media Extensions and optionally lock it.
+
+policy-ExemptDomainFileTypePairsFromFileTypeDownloadWarnings = Disable warnings based on file extension for specific file types on domains.
+
+# A “locked” extension can’t be disabled or removed by the user. This policy
+# takes 3 keys (“Install”, ”Uninstall”, ”Locked”), you can either keep them in
+# English or translate them as verbs.
+policy-Extensions = Install, uninstall or lock extensions. The Install option takes URLs or paths as parameters. The Uninstall and Locked options take extension IDs.
+
+policy-ExtensionSettings = Manage all aspects of extension installation.
+
+policy-ExtensionUpdate = Enable or disable automatic extension updates.
+
+policy-FirefoxHome2 = Configure { -firefox-home-brand-name }.
+
+policy-FirefoxSuggest = Configure { -firefox-suggest-brand-name }.
+
+policy-GoToIntranetSiteForSingleWordEntryInAddressBar = Force direct intranet site navigation instead of searching when typing single word entries in the address bar.
+
+policy-Handlers = Configure default application handlers.
+
+policy-HardwareAcceleration = If false, turn off hardware acceleration.
+
+# “lock” means that the user won’t be able to change this setting
+policy-Homepage = Set and optionally lock the homepage.
+
+policy-InstallAddonsPermission = Allow certain websites to install add-ons.
+
+policy-LegacyProfiles = Disable the feature enforcing a separate profile for each installation.
+
+## Do not translate "SameSite", it's the name of a cookie attribute.
+
+policy-LegacySameSiteCookieBehaviorEnabled = Enable default legacy SameSite cookie behavior setting.
+
+policy-LegacySameSiteCookieBehaviorEnabledForDomainList = Revert to legacy SameSite behavior for cookies on specified sites.
+
+##
+
+policy-LocalFileLinks = Allow specific websites to link to local files.
+
+policy-ManagedBookmarks = Configures a list of bookmarks managed by an administrator that cannot be changed by the user.
+
+policy-ManualAppUpdateOnly = Allow manual updates only and do not notify the user about updates.
+
+policy-PrimaryPassword = Require or prevent using a Primary Password.
+
+policy-PrintingEnabled = Enable or disable printing.
+
+policy-NetworkPrediction = Enable or disable network prediction (DNS prefetching).
+
+policy-NewTabPage = Enable or disable the New Tab page.
+
+policy-NoDefaultBookmarks = Disable creation of the default bookmarks bundled with { -brand-short-name }, and the Smart Bookmarks (Most Visited, Recent Tags). Note: this policy is only effective if used before the first run of the profile.
+
+policy-OfferToSaveLogins = Enforce the setting to allow { -brand-short-name } to offer to remember saved logins and passwords. Both true and false values are accepted.
+
+policy-OfferToSaveLoginsDefault = Set the default value for allowing { -brand-short-name } to offer to remember saved logins and passwords. Both true and false values are accepted.
+
+policy-OverrideFirstRunPage = Override the first run page. Set this policy to blank if you want to disable the first run page.
+
+policy-OverridePostUpdatePage = Override the post-update “What’s New” page. Set this policy to blank if you want to disable the post-update page.
+
+policy-PasswordManagerEnabled = Enable saving passwords to the password manager.
+
+policy-PasswordManagerExceptions = Prevent { -brand-short-name } from saving passwords for specific sites.
+
+# PDF.js and PDF should not be translated
+policy-PDFjs = Disable or configure PDF.js, the built-in PDF viewer in { -brand-short-name }.
+
+policy-Permissions2 = Configure permissions for camera, microphone, location, notifications, and autoplay.
+
+policy-PictureInPicture = Enable or disable Picture-in-Picture.
+
+policy-PopupBlocking = Allow certain websites to display popups by default.
+
+policy-Preferences = Set and lock the value for a subset of preferences.
+
+policy-PromptForDownloadLocation = Ask where to save files when downloading.
+
+policy-Proxy = Configure proxy settings.
+
+policy-RequestedLocales = Set the list of requested locales for the application in order of preference.
+
+policy-SanitizeOnShutdown2 = Clear navigation data on shutdown.
+
+policy-SearchBar = Set the default location of the search bar. The user is still allowed to customize it.
+
+policy-SearchEngines = Configure search engine settings. This policy is only available on the Extended Support Release (ESR) version.
+
+policy-SearchSuggestEnabled = Enable or disable search suggestions.
+
+# For more information, see https://wikipedia.org/wiki/PKCS_11
+policy-SecurityDevices2 = Add or delete PKCS #11 modules.
+
+policy-ShowHomeButton = Show the home button on the toolbar.
+
+policy-SSLVersionMax = Set the maximum SSL version.
+
+policy-SSLVersionMin = Set the minimum SSL version.
+
+policy-StartDownloadsInTempDirectory = Force downloads to start off in a local, temporary location rather than the default download directory.
+
+policy-SupportMenu = Add a custom support menu item to the help menu.
+
+policy-UserMessaging = Don’t show certain messages to the user.
+
+policy-UseSystemPrintDialog = Print using the system print dialog.
+
+# “format” refers to the format used for the value of this policy.
+policy-WebsiteFilter = Block websites from being visited. See documentation for more details on the format.
+
+policy-Windows10SSO = Allow Windows single sign-on for Microsoft, work, and school accounts.
diff --git a/browser/locales/en-US/browser/preferences/addEngine.ftl b/browser/locales/en-US/browser/preferences/addEngine.ftl
new file mode 100644
index 0000000000..9a1f56f3ba
--- /dev/null
+++ b/browser/locales/en-US/browser/preferences/addEngine.ftl
@@ -0,0 +1,22 @@
+# 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/.
+
+add-engine-window2 =
+ .title = Add Search Engine
+ .style = min-width: 32em;
+
+add-engine-button = Add Custom Engine
+
+add-engine-name = Search engine name
+
+add-engine-alias = Alias
+
+add-engine-url = Engine URL, use %s in place of the search term
+
+add-engine-dialog=
+ .buttonlabelaccept = Add Engine
+ .buttonaccesskeyaccept = A
+
+engine-name-exists = An engine with that name already exists
+engine-alias-exists = An engine with that alias already exists
diff --git a/browser/locales/en-US/browser/preferences/applicationManager.ftl b/browser/locales/en-US/browser/preferences/applicationManager.ftl
new file mode 100644
index 0000000000..f0ee804d0c
--- /dev/null
+++ b/browser/locales/en-US/browser/preferences/applicationManager.ftl
@@ -0,0 +1,25 @@
+# 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/.
+
+app-manager-window2 =
+ .title = Application details
+ .style = min-width: 30em; min-height: 20em;
+
+app-manager-remove =
+ .label = Remove
+ .accesskey = R
+
+# Variables:
+# $type (String) - the URI scheme of the link (e.g. mailto:)
+app-manager-handle-protocol = The following applications can be used to handle { $type } links.
+
+# Variables:
+# $type (String) - the MIME type (e.g. application/binary)
+app-manager-handle-file = The following applications can be used to handle { $type } content.
+
+## These strings are followed, on a new line,
+## by the URL or path of the application.
+
+app-manager-web-app-info = This web application is hosted at:
+app-manager-local-app-info = This application is located at:
diff --git a/browser/locales/en-US/browser/preferences/blocklists.ftl b/browser/locales/en-US/browser/preferences/blocklists.ftl
new file mode 100644
index 0000000000..931598167e
--- /dev/null
+++ b/browser/locales/en-US/browser/preferences/blocklists.ftl
@@ -0,0 +1,33 @@
+# 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/.
+
+blocklist-window2 =
+ .title = Block Lists
+ .style = min-width: 55em
+
+blocklist-description = Choose the list { -brand-short-name } uses to block online trackers. Lists provided by <a data-l10n-name="disconnect-link" title="Disconnect">Disconnect</a>.
+blocklist-close-key =
+ .key = w
+
+blocklist-treehead-list =
+ .label = List
+
+blocklist-dialog=
+ .buttonlabelaccept = Save Changes
+ .buttonaccesskeyaccept = S
+
+
+# This template constructs the name of the block list in the block lists dialog.
+# It combines the list name and description.
+# e.g. "Standard (Recommended). This list does a pretty good job."
+#
+# Variables:
+# $listName {string, "Standard (Recommended)."} - List name.
+# $description {string, "This list does a pretty good job."} - Description of the list.
+blocklist-item-list-template = { $listName } { $description }
+
+blocklist-item-moz-std-listName = Level 1 block list (Recommended).
+blocklist-item-moz-std-description = Allows some trackers so fewer websites break.
+blocklist-item-moz-full-listName = Level 2 block list.
+blocklist-item-moz-full-description = Blocks all detected trackers. Some websites or content may not load properly.
diff --git a/browser/locales/en-US/browser/preferences/clearSiteData.ftl b/browser/locales/en-US/browser/preferences/clearSiteData.ftl
new file mode 100644
index 0000000000..f9ea112bf6
--- /dev/null
+++ b/browser/locales/en-US/browser/preferences/clearSiteData.ftl
@@ -0,0 +1,56 @@
+# 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/.
+
+clear-site-data-window2 =
+ .title = Clear Data
+ .style = min-width: 35em
+
+clear-site-data-description = Clearing all cookies and site data stored by { -brand-short-name } may sign you out of websites and remove offline web content. Clearing cache data will not affect your logins.
+
+clear-site-data-close-key =
+ .key = w
+
+# The parameters in parentheses in this string describe disk usage
+# in the format ($amount $unit), e.g. "Cookies and Site Data (24 KB)"
+# Variables:
+# $amount (Number) - Amount of site data currently stored on disk
+# $unit (String) - Abbreviation of the unit that $amount is in, e.g. "MB"
+clear-site-data-cookies-with-data =
+ .label = Cookies and Site Data ({ $amount } { $unit })
+ .accesskey = S
+
+# This string is a placeholder for while the data used to fill
+# clear-site-data-cookies-with-data is loading. This placeholder is usually
+# only shown for a very short time (< 1s), so it should be very similar
+# or the same as clear-site-data-cookies-with-data (except the amount and unit),
+# to avoid flickering.
+clear-site-data-cookies-empty =
+ .label = Cookies and Site Data
+ .accesskey = S
+
+clear-site-data-cookies-info = You may get signed out of websites if cleared
+
+# The parameters in parentheses in this string describe disk usage
+# in the format ($amount $unit), e.g. "Cached Web Content (24 KB)"
+# Variables:
+# $amount (Number) - Amount of cache currently stored on disk
+# $unit (String) - Abbreviation of the unit that $amount is in, e.g. "MB"
+clear-site-data-cache-with-data =
+ .label = Cached Web Content ({ $amount } { $unit })
+ .accesskey = W
+
+# This string is a placeholder for while the data used to fill
+# clear-site-data-cache-with-data is loading. This placeholder is usually
+# only shown for a very short time (< 1s), so it should be very similar
+# or the same as clear-site-data-cache-with-data (except the amount and unit),
+# to avoid flickering.
+clear-site-data-cache-empty =
+ .label = Cached Web Content
+ .accesskey = W
+
+clear-site-data-cache-info = Will require websites to reload images and data
+
+clear-site-data-dialog =
+ .buttonlabelaccept = Clear
+ .buttonaccesskeyaccept = l
diff --git a/browser/locales/en-US/browser/preferences/colors.ftl b/browser/locales/en-US/browser/preferences/colors.ftl
new file mode 100644
index 0000000000..4447ee9de2
--- /dev/null
+++ b/browser/locales/en-US/browser/preferences/colors.ftl
@@ -0,0 +1,40 @@
+# 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/.
+
+colors-dialog2 =
+ .title = Colors
+ .style = min-width: 41em;
+
+colors-close-key =
+ .key = w
+
+colors-page-override = Override the colors specified by the page with your selections above
+ .accesskey = O
+
+colors-page-override-option-always =
+ .label = Always
+colors-page-override-option-auto =
+ .label = Only with High Contrast themes
+colors-page-override-option-never =
+ .label = Never
+
+colors-text-and-background = Text and Background
+
+colors-text-header = Text
+ .accesskey = T
+
+colors-background = Background
+ .accesskey = B
+
+colors-use-system =
+ .label = Use system colors
+ .accesskey = s
+
+colors-links-header = Link Colors
+
+colors-unvisited-links = Unvisited Links
+ .accesskey = L
+
+colors-visited-links = Visited Links
+ .accesskey = V
diff --git a/browser/locales/en-US/browser/preferences/connection.ftl b/browser/locales/en-US/browser/preferences/connection.ftl
new file mode 100644
index 0000000000..cf66c983ac
--- /dev/null
+++ b/browser/locales/en-US/browser/preferences/connection.ftl
@@ -0,0 +1,94 @@
+# 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/.
+
+connection-window2 =
+ .title = Connection Settings
+ .style =
+ { PLATFORM() ->
+ [macos] min-width: 44em
+ *[other] min-width: 49em
+ }
+
+connection-close-key =
+ .key = w
+
+connection-disable-extension =
+ .label = Disable Extension
+
+connection-proxy-configure = Configure Proxy Access to the Internet
+
+connection-proxy-option-no =
+ .label = No proxy
+ .accesskey = y
+connection-proxy-option-system =
+ .label = Use system proxy settings
+ .accesskey = U
+connection-proxy-option-auto =
+ .label = Auto-detect proxy settings for this network
+ .accesskey = w
+connection-proxy-option-manual =
+ .label = Manual proxy configuration
+ .accesskey = M
+
+connection-proxy-http = HTTP Proxy
+ .accesskey = x
+connection-proxy-http-port = Port
+ .accesskey = P
+connection-proxy-https-sharing =
+ .label = Also use this proxy for HTTPS
+ .accesskey = s
+
+connection-proxy-https = HTTPS Proxy
+ .accesskey = H
+connection-proxy-ssl-port = Port
+ .accesskey = o
+
+connection-proxy-socks = SOCKS Host
+ .accesskey = C
+connection-proxy-socks-port = Port
+ .accesskey = t
+
+connection-proxy-socks4 =
+ .label = SOCKS v4
+ .accesskey = K
+connection-proxy-socks5 =
+ .label = SOCKS v5
+ .accesskey = v
+connection-proxy-noproxy = No proxy for
+ .accesskey = N
+
+connection-proxy-noproxy-desc = Example: .mozilla.org, .net.nz, 192.168.1.0/24
+
+# Do not translate "localhost", "127.0.0.1/8" and "::1". (You can translate "and".)
+connection-proxy-noproxy-localhost-desc-2 = Connections to localhost, 127.0.0.1/8, and ::1 are never proxied.
+
+connection-proxy-autotype =
+ .label = Automatic proxy configuration URL
+ .accesskey = A
+
+connection-proxy-reload =
+ .label = Reload
+ .accesskey = e
+
+connection-proxy-autologin-checkbox =
+ .label = Do not prompt for authentication if password is saved
+ .accesskey = i
+ .tooltiptext = This option silently authenticates you to proxies when you have saved credentials for them. You will be prompted if authentication fails.
+
+connection-proxy-socks-remote-dns =
+ .label = Proxy DNS when using SOCKS v5
+ .accesskey = D
+
+# Variables:
+# $name (String) - Display name or URL for the DNS over HTTPS provider
+connection-dns-over-https-url-item-default =
+ .label = { $name } (Default)
+ .tooltiptext = Use the default URL for resolving DNS over HTTPS
+
+connection-dns-over-https-url-custom =
+ .label = Custom
+ .accesskey = C
+ .tooltiptext = Enter your preferred URL for resolving DNS over HTTPS
+
+connection-dns-over-https-custom-label = Custom
diff --git a/browser/locales/en-US/browser/preferences/containers.ftl b/browser/locales/en-US/browser/preferences/containers.ftl
new file mode 100644
index 0000000000..73030b1fa6
--- /dev/null
+++ b/browser/locales/en-US/browser/preferences/containers.ftl
@@ -0,0 +1,93 @@
+# 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/.
+
+containers-window-new2 =
+ .title = Add New Container
+ .style = min-width: 45em
+# Variables
+# $name (String) - Name of the container
+containers-window-update-settings2 =
+ .title = { $name } Container Settings
+ .style = min-width: 45em
+
+containers-window-close =
+ .key = w
+
+# This is a term to store style to be applied
+# on the three labels in the containers add/edit dialog:
+# - name
+# - icon
+# - color
+#
+# Using this term and referencing it in the `.style` attribute
+# of the three messages ensures that all three labels
+# will be aligned correctly.
+-containers-labels-style = min-width: 4rem
+
+containers-name-label = Name
+ .accesskey = N
+ .style = { -containers-labels-style }
+
+containers-name-text =
+ .placeholder = Enter a container name
+
+containers-icon-label = Icon
+ .accesskey = I
+ .style = { -containers-labels-style }
+
+containers-color-label = Color
+ .accesskey = o
+ .style = { -containers-labels-style }
+
+containers-dialog =
+ .buttonlabelaccept = Done
+ .buttonaccesskeyaccept = D
+
+containers-color-blue =
+ .label = Blue
+containers-color-turquoise =
+ .label = Turquoise
+containers-color-green =
+ .label = Green
+containers-color-yellow =
+ .label = Yellow
+containers-color-orange =
+ .label = Orange
+containers-color-red =
+ .label = Red
+containers-color-pink =
+ .label = Pink
+containers-color-purple =
+ .label = Purple
+containers-color-toolbar =
+ .label = Match toolbar
+
+containers-icon-fence =
+ .label = Fence
+containers-icon-fingerprint =
+ .label = Fingerprint
+containers-icon-briefcase =
+ .label = Briefcase
+# String represents a money sign but currently uses a dollar sign
+# so don't change to local currency. See Bug 1291672.
+containers-icon-dollar =
+ .label = Dollar sign
+containers-icon-cart =
+ .label = Shopping cart
+containers-icon-circle =
+ .label = Dot
+containers-icon-vacation =
+ .label = Vacation
+containers-icon-gift =
+ .label = Gift
+containers-icon-food =
+ .label = Food
+containers-icon-fruit =
+ .label = Fruit
+containers-icon-pet =
+ .label = Pet
+containers-icon-tree =
+ .label = Tree
+containers-icon-chill =
+ .label = Chill
diff --git a/browser/locales/en-US/browser/preferences/fonts.ftl b/browser/locales/en-US/browser/preferences/fonts.ftl
new file mode 100644
index 0000000000..0f4269e8be
--- /dev/null
+++ b/browser/locales/en-US/browser/preferences/fonts.ftl
@@ -0,0 +1,116 @@
+# 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/.
+
+fonts-window =
+ .title = Fonts
+
+fonts-window-close =
+ .key = w
+
+## Font groups by language
+
+fonts-langgroup-header = Fonts for
+ .accesskey = F
+
+fonts-langgroup-arabic =
+ .label = Arabic
+fonts-langgroup-armenian =
+ .label = Armenian
+fonts-langgroup-bengali =
+ .label = Bengali
+fonts-langgroup-simpl-chinese =
+ .label = Simplified Chinese
+fonts-langgroup-trad-chinese-hk =
+ .label = Traditional Chinese (Hong Kong)
+fonts-langgroup-trad-chinese =
+ .label = Traditional Chinese (Taiwan)
+fonts-langgroup-cyrillic =
+ .label = Cyrillic
+fonts-langgroup-devanagari =
+ .label = Devanagari
+fonts-langgroup-ethiopic =
+ .label = Ethiopic
+fonts-langgroup-georgian =
+ .label = Georgian
+fonts-langgroup-el =
+ .label = Greek
+fonts-langgroup-gujarati =
+ .label = Gujarati
+fonts-langgroup-gurmukhi =
+ .label = Gurmukhi
+fonts-langgroup-japanese =
+ .label = Japanese
+fonts-langgroup-hebrew =
+ .label = Hebrew
+fonts-langgroup-kannada =
+ .label = Kannada
+fonts-langgroup-khmer =
+ .label = Khmer
+fonts-langgroup-korean =
+ .label = Korean
+# Translate "Latin" as the name of Latin (Roman) script, not as the name of the Latin language.
+fonts-langgroup-latin =
+ .label = Latin
+fonts-langgroup-malayalam =
+ .label = Malayalam
+fonts-langgroup-math =
+ .label = Mathematics
+fonts-langgroup-odia =
+ .label = Odia
+fonts-langgroup-sinhala =
+ .label = Sinhala
+fonts-langgroup-tamil =
+ .label = Tamil
+fonts-langgroup-telugu =
+ .label = Telugu
+fonts-langgroup-thai =
+ .label = Thai
+fonts-langgroup-tibetan =
+ .label = Tibetan
+fonts-langgroup-canadian =
+ .label = Unified Canadian Syllabary
+fonts-langgroup-other =
+ .label = Other Writing Systems
+
+## Default fonts and their sizes
+
+fonts-proportional-header = Proportional
+ .accesskey = P
+
+fonts-default-serif =
+ .label = Serif
+fonts-default-sans-serif =
+ .label = Sans Serif
+
+fonts-proportional-size = Size
+ .accesskey = z
+
+fonts-serif = Serif
+ .accesskey = S
+
+fonts-sans-serif = Sans-serif
+ .accesskey = n
+
+fonts-monospace = Monospace
+ .accesskey = M
+
+fonts-monospace-size = Size
+ .accesskey = e
+
+fonts-minsize = Minimum font size
+ .accesskey = o
+
+fonts-minsize-none =
+ .label = None
+
+fonts-allow-own =
+ .label = Allow pages to choose their own fonts, instead of your selections above
+ .accesskey = A
+
+# Variables:
+# $name {string, "Arial"} - Name of the default font
+fonts-label-default =
+ .label = Default ({ $name })
+fonts-label-default-unnamed =
+ .label = Default
diff --git a/browser/locales/en-US/browser/preferences/formAutofill.ftl b/browser/locales/en-US/browser/preferences/formAutofill.ftl
new file mode 100644
index 0000000000..2324a3f197
--- /dev/null
+++ b/browser/locales/en-US/browser/preferences/formAutofill.ftl
@@ -0,0 +1,146 @@
+# 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/.
+
+## The address and credit card autofill management dialog in browser preferences
+
+autofill-manage-addresses-title = Saved addresses
+autofill-manage-addresses-list-header = Addresses
+
+autofill-manage-payment-methods-title = Saved payment methods
+autofill-manage-cards-list-header = Cards
+
+autofill-manage-dialog =
+ .style = min-width: 560px
+autofill-manage-remove-button = Remove
+autofill-manage-add-button = Add…
+autofill-manage-edit-button = Edit…
+
+## The address capture doorhanger
+
+address-capture-save-doorhanger-header = Save address?
+address-capture-save-doorhanger-description = Save info to { -brand-short-name } so you can fill out forms quickly.
+address-capture-update-doorhanger-header = Update address?
+address-capture-edit-doorhanger-header = Edit address
+
+address-capture-save-button =
+ .label = Save
+ .accessKey = S
+address-capture-not-now-button =
+ .label = Not now
+ .accessKey = N
+address-capture-cancel-button =
+ .label = Cancel
+ .accessKey = C
+address-capture-update-button =
+ .label = Update
+ .accessKey = U
+address-capture-manage-address-button =
+ .label = Address settings
+address-capture-learn-more-button =
+ .label = Learn more
+address-capture-open-menu-button =
+ .aria-label = Open menu
+address-capture-edit-address-button =
+ .aria-label = Edit address
+
+
+# The dialog title for creating addresses in browser preferences.
+autofill-add-address-title = Add address
+# The dialog title for editing addresses in browser preferences.
+autofill-edit-address-title = Edit address
+
+autofill-address-name = Name
+autofill-address-given-name = First Name
+autofill-address-additional-name = Middle Name
+autofill-address-family-name = Last Name
+autofill-address-organization = Organization
+autofill-address-street-address = Street Address
+
+autofill-address-street = Street Address
+
+## address-level-3 (Sublocality) names
+
+# Used in IR, MX
+autofill-address-neighborhood = Neighborhood
+# Used in MY
+autofill-address-village-township = Village or Township
+autofill-address-island = Island
+# Used in IE
+autofill-address-townland = Townland
+
+## address-level-2 names
+
+autofill-address-city = City
+# Used in HK, SD, SY, TR as Address Level-2 and used in KR as Sublocality.
+autofill-address-district = District
+# Used in GB, NO, SE
+autofill-address-post-town = Post town
+# Used in AU as Address Level-2 and used in ZZ as Sublocality.
+autofill-address-suburb = Suburb
+
+## address-level-1 names
+
+autofill-address-province = Province
+autofill-address-state = State
+autofill-address-county = County
+# Used in BB, JM
+autofill-address-parish = Parish
+# Used in JP
+autofill-address-prefecture = Prefecture
+# Used in HK
+autofill-address-area = Area
+# Used in KR
+autofill-address-do-si = Do/Si
+# Used in NI, CO
+autofill-address-department = Department
+# Used in AE
+autofill-address-emirate = Emirate
+# Used in RU and UA
+autofill-address-oblast = Oblast
+
+## Postal code name types
+
+# Used in IN
+autofill-address-pin = Pin
+autofill-address-postal-code = Postal Code
+autofill-address-zip = ZIP Code
+# Used in IE
+autofill-address-eircode = Eircode
+
+##
+
+autofill-address-country = Country or Region
+autofill-address-country-only = Country
+autofill-address-tel = Phone
+autofill-address-email = Email
+
+autofill-cancel-button = Cancel
+autofill-save-button = Save
+autofill-country-warning-message = Form Autofill is currently available only for certain countries.
+autofill-message-tooltip = View message about autofill
+
+# The dialog title for creating credit cards in browser preferences.
+autofill-add-card-title = Add card
+# The dialog title for editing credit cards in browser preferences.
+autofill-edit-card-title2 = Edit card
+
+autofill-card-number = Card Number
+autofill-card-invalid-number = Please enter a valid card number
+autofill-card-name-on-card = Name on Card
+autofill-card-expires-month = Exp. Month
+autofill-card-expires-year = Exp. Year
+autofill-card-billing-address = Billing Address
+autofill-card-network = Card Type
+
+## These are brand names and should only be translated when a locale-specific name for that brand is in common use
+
+autofill-card-network-amex = American Express
+autofill-card-network-cartebancaire = Carte Bancaire
+autofill-card-network-diners = Diners Club
+autofill-card-network-discover = Discover
+autofill-card-network-jcb = JCB
+autofill-card-network-mastercard = MasterCard
+autofill-card-network-mir = MIR
+autofill-card-network-unionpay = Union Pay
+autofill-card-network-visa = Visa
diff --git a/browser/locales/en-US/browser/preferences/fxaPairDevice.ftl b/browser/locales/en-US/browser/preferences/fxaPairDevice.ftl
new file mode 100644
index 0000000000..80ae5801ad
--- /dev/null
+++ b/browser/locales/en-US/browser/preferences/fxaPairDevice.ftl
@@ -0,0 +1,17 @@
+# 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/.
+
+fxa-pair-device-dialog-sync2 =
+ .style = min-width: 32em;
+
+fxa-qrcode-pair-title = Sync { -brand-product-name } on your phone or tablet
+fxa-qrcode-pair-step1 = 1. Open { -brand-product-name } on your mobile device.
+
+fxa-qrcode-pair-step2-signin = 2. Go to the menu (<img data-l10n-name="ios-menu-icon"/> on iOS or <img data-l10n-name="android-menu-icon"/> on Android) and tap <strong>Sync and save data</strong>
+
+fxa-qrcode-pair-step3 = 3. Tap <strong>Ready to Scan</strong> and hold your phone over this code
+
+fxa-qrcode-error-title = Pairing unsuccessful.
+
+fxa-qrcode-error-body = Try again.
diff --git a/browser/locales/en-US/browser/preferences/languages.ftl b/browser/locales/en-US/browser/preferences/languages.ftl
new file mode 100644
index 0000000000..b008a4874a
--- /dev/null
+++ b/browser/locales/en-US/browser/preferences/languages.ftl
@@ -0,0 +1,73 @@
+# 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/.
+
+webpage-languages-window2 =
+ .title = Webpage Language Settings
+ .style = min-width: 40em
+
+languages-close-key =
+ .key = w
+
+languages-description = Web pages are sometimes offered in more than one language. Choose languages for displaying these web pages, in order of preference
+
+languages-customize-spoof-english =
+ .label = Request English versions of web pages for enhanced privacy
+
+languages-customize-moveup =
+ .label = Move Up
+ .accesskey = U
+
+languages-customize-movedown =
+ .label = Move Down
+ .accesskey = D
+
+languages-customize-remove =
+ .label = Remove
+ .accesskey = R
+
+languages-customize-select-language =
+ .placeholder = Select a language to add…
+
+languages-customize-add =
+ .label = Add
+ .accesskey = A
+
+# The pattern used to generate strings presented to the user in the
+# locale selection list.
+#
+# Example:
+# Icelandic [is]
+# Spanish (Chile) [es-CL]
+#
+# Variables:
+# $locale (String) - A name of the locale (for example: "Icelandic", "Spanish (Chile)")
+# $code (String) - Locale code of the locale (for example: "is", "es-CL")
+languages-code-format =
+ .label = { $locale } [{ $code }]
+
+languages-active-code-format =
+ .value = { languages-code-format.label }
+
+browser-languages-window2 =
+ .title = { -brand-short-name } Language Settings
+ .style = min-width: 40em
+
+browser-languages-description = { -brand-short-name } will display the first language as your default and will display alternate languages if necessary in the order they appear.
+
+browser-languages-search = Search for more languages…
+
+browser-languages-searching =
+ .label = Searching for languages…
+
+browser-languages-downloading =
+ .label = Downloading…
+
+browser-languages-select-language =
+ .label = Select a language to add…
+ .placeholder = Select a language to add…
+
+browser-languages-installed-label = Installed languages
+browser-languages-available-label = Available languages
+
+browser-languages-error = { -brand-short-name } can’t update your languages right now. Check that you are connected to the internet or try again.
diff --git a/browser/locales/en-US/browser/preferences/moreFromMozilla.ftl b/browser/locales/en-US/browser/preferences/moreFromMozilla.ftl
new file mode 100644
index 0000000000..241f50cd4a
--- /dev/null
+++ b/browser/locales/en-US/browser/preferences/moreFromMozilla.ftl
@@ -0,0 +1,39 @@
+# 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/.
+
+## These strings are used in the about:preferences moreFromMozilla page
+
+more-from-moz-title = More from { -vendor-short-name }
+more-from-moz-category =
+ .tooltiptext = More from { -vendor-short-name }
+
+more-from-moz-subtitle = Check out other { -vendor-short-name } products that work to support a healthy internet.
+
+more-from-moz-firefox-mobile-title = { -brand-product-name } Mobile
+more-from-moz-firefox-mobile-description = The mobile browser that puts your privacy first.
+
+more-from-moz-mozilla-vpn-title = { -mozilla-vpn-brand-name }
+more-from-moz-mozilla-vpn-description = Discover an added layer of anonymous browsing and protection.
+
+more-from-moz-qr-code-box-firefox-mobile-title = Download using your mobile device. Point your camera at the QR code. When a link appears, tap it.
+more-from-moz-qr-code-box-firefox-mobile-button = Send an email to your phone instead
+more-from-moz-qr-code-firefox-mobile-img =
+ .alt = QR code to download { -brand-product-name } Mobile
+
+more-from-moz-button-mozilla-vpn-2 = Get VPN
+
+more-from-moz-learn-more-link = Learn more
+
+## These strings are for the Firefox Relay card in about:preferences moreFromMozilla page
+
+more-from-moz-firefox-relay-title = { -relay-brand-name }
+more-from-moz-firefox-relay-description = Protect your inbox and your identity with free email masking.
+more-from-moz-firefox-relay-button = Get { -relay-brand-short-name }
+
+## These strings are for the Mozilla Monitor card in about:preferences moreFromMozilla page
+
+more-from-moz-mozilla-monitor-title = { -mozmonitor-brand-name }
+more-from-moz-mozilla-monitor-us-description = Automatically take back your exposed personal info.
+more-from-moz-mozilla-monitor-global-description = Get alerts when your data has been in a breach.
+more-from-moz-mozilla-monitor-button = Get { -monitor-brand-short-name }
diff --git a/browser/locales/en-US/browser/preferences/permissions.ftl b/browser/locales/en-US/browser/preferences/permissions.ftl
new file mode 100644
index 0000000000..726a00f998
--- /dev/null
+++ b/browser/locales/en-US/browser/preferences/permissions.ftl
@@ -0,0 +1,222 @@
+# 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/.
+
+permissions-window2 =
+ .title = Exceptions
+ .style = min-width: 45em
+
+permissions-close-key =
+ .key = w
+
+permissions-address = Address of website
+ .accesskey = d
+
+permissions-block =
+ .label = Block
+ .accesskey = B
+
+permissions-disable-etp =
+ .label = Add Exception
+ .accesskey = E
+
+permissions-session =
+ .label = Allow for Session
+ .accesskey = S
+
+permissions-allow =
+ .label = Allow
+ .accesskey = A
+
+permissions-button-off =
+ .label = Turn Off
+ .accesskey = O
+
+permissions-button-off-temporarily =
+ .label = Turn Off Temporarily
+ .accesskey = T
+
+permissions-site-name =
+ .label = Website
+
+permissions-status =
+ .label = Status
+
+permissions-remove =
+ .label = Remove Website
+ .accesskey = R
+
+permissions-remove-all =
+ .label = Remove All Websites
+ .accesskey = e
+
+permission-dialog =
+ .buttonlabelaccept = Save Changes
+ .buttonaccesskeyaccept = S
+
+permissions-autoplay-menu = Default for all websites:
+
+permissions-searchbox =
+ .placeholder = Search Website
+
+permissions-capabilities-autoplay-allow =
+ .label = Allow Audio and Video
+permissions-capabilities-autoplay-block =
+ .label = Block Audio
+permissions-capabilities-autoplay-blockall =
+ .label = Block Audio and Video
+
+permissions-capabilities-allow =
+ .label = Allow
+permissions-capabilities-block =
+ .label = Block
+permissions-capabilities-prompt =
+ .label = Always Ask
+
+permissions-capabilities-listitem-allow =
+ .value = Allow
+permissions-capabilities-listitem-block =
+ .value = Block
+permissions-capabilities-listitem-allow-session =
+ .value = Allow for Session
+
+permissions-capabilities-listitem-off =
+ .value = Off
+permissions-capabilities-listitem-off-temporarily =
+ .value = Off temporarily
+
+## Invalid Hostname Dialog
+
+permissions-invalid-uri-title = Invalid Hostname Entered
+permissions-invalid-uri-label = Please enter a valid hostname
+
+## Exceptions - Tracking Protection
+
+permissions-exceptions-etp-window2 =
+ .title = Exceptions for Enhanced Tracking Protection
+ .style = { permissions-window2.style }
+permissions-exceptions-manage-etp-desc = You can specify which websites have Enhanced Tracking Protection turned off. Type the exact address of the site you want to manage and then click Add Exception.
+
+## Exceptions - Cookies
+
+permissions-exceptions-cookie-window2 =
+ .title = Exceptions - Cookies and Site Data
+ .style = { permissions-window2.style }
+permissions-exceptions-cookie-desc = You can specify which websites are always or never allowed to use cookies and site data. Type the exact address of the site you want to manage and then click Block, Allow for Session, or Allow.
+
+## Exceptions - HTTPS-Only Mode
+
+permissions-exceptions-https-only-window2 =
+ .title = Exceptions - HTTPS-Only Mode
+ .style = { permissions-window2.style }
+permissions-exceptions-https-only-desc2 = You can turn off HTTPS-Only Mode for specific websites. { -brand-short-name } won’t attempt to upgrade the connection to secure HTTPS for those sites.
+
+## Exceptions - Pop-ups
+
+permissions-exceptions-popup-window2 =
+ .title = Allowed Websites - Pop-ups
+ .style = { permissions-window2.style }
+permissions-exceptions-popup-desc = You can specify which websites are allowed to open pop-up windows. Type the exact address of the site you want to allow and then click Allow.
+
+## Exceptions - Saved Passwords
+
+permissions-exceptions-saved-passwords-window =
+ .title = Exceptions - Saved Passwords
+ .style = { permissions-window2.style }
+permissions-exceptions-saved-passwords-desc = { -brand-short-name } won’t save passwords for sites listed here.
+
+## Exceptions - Add-ons
+
+permissions-exceptions-addons-window2 =
+ .title = Allowed Websites - Add-ons Installation
+ .style = { permissions-window2.style }
+permissions-exceptions-addons-desc = You can specify which websites are allowed to install add-ons. Type the exact address of the site you want to allow and then click Allow.
+
+## Site Permissions - Autoplay
+
+permissions-site-autoplay-window2 =
+ .title = Settings - Autoplay
+ .style = { permissions-window2.style }
+permissions-site-autoplay-desc = You can manage the sites that do not follow your default autoplay settings here.
+
+## Site Permissions - Notifications
+
+permissions-site-notification-window2 =
+ .title = Settings - Notification Permissions
+ .style = { permissions-window2.style }
+permissions-site-notification-desc = The following websites have requested to send you notifications. You can specify which websites are allowed to send you notifications. You can also block new requests asking to allow notifications.
+permissions-site-notification-disable-label =
+ .label = Block new requests asking to allow notifications
+permissions-site-notification-disable-desc = This will prevent any websites not listed above from requesting permission to send notifications. Blocking notifications may break some website features.
+
+## Site Permissions - Location
+
+permissions-site-location-window2 =
+ .title = Settings - Location Permissions
+ .style = { permissions-window2.style }
+permissions-site-location-desc = The following websites have requested to access your location. You can specify which websites are allowed to access your location. You can also block new requests asking to access your location.
+permissions-site-location-disable-label =
+ .label = Block new requests asking to access your location
+permissions-site-location-disable-desc = This will prevent any websites not listed above from requesting permission to access your location. Blocking access to your location may break some website features.
+
+## Site Permissions - Virtual Reality
+
+permissions-site-xr-window2 =
+ .title = Settings - Virtual Reality Permissions
+ .style = { permissions-window2.style }
+permissions-site-xr-desc = The following websites have requested to access your virtual reality devices. You can specify which websites are allowed to access your virtual reality devices. You can also block new requests asking to access your virtual reality devices.
+permissions-site-xr-disable-label =
+ .label = Block new requests asking to access your virtual reality devices
+permissions-site-xr-disable-desc = This will prevent any websites not listed above from requesting permission to access your virtual reality devices. Blocking access to your virtual reality devices may break some website features.
+
+## Site Permissions - Camera
+
+permissions-site-camera-window2 =
+ .title = Settings - Camera Permissions
+ .style = { permissions-window2.style }
+permissions-site-camera-desc = The following websites have requested to access your camera. You can specify which websites are allowed to access your camera. You can also block new requests asking to access your camera.
+permissions-site-camera-disable-label =
+ .label = Block new requests asking to access your camera
+permissions-site-camera-disable-desc = This will prevent any websites not listed above from requesting permission to access your camera. Blocking access to your camera may break some website features.
+
+## Site Permissions - Microphone
+
+permissions-site-microphone-window2 =
+ .title = Settings - Microphone Permissions
+ .style = { permissions-window2.style }
+permissions-site-microphone-desc = The following websites have requested to access your microphone. You can specify which websites are allowed to access your microphone. You can also block new requests asking to access your microphone.
+permissions-site-microphone-disable-label =
+ .label = Block new requests asking to access your microphone
+permissions-site-microphone-disable-desc = This will prevent any websites not listed above from requesting permission to access your microphone. Blocking access to your microphone may break some website features.
+
+## Site Permissions - Speaker
+##
+## "Speaker" refers to an audio output device.
+
+permissions-site-speaker-window =
+ .title = Settings - Speaker Permissions
+ .style = { permissions-window2.style }
+permissions-site-speaker-desc = The following websites have requested to select an audio output device. You can specify which websites are allowed to select an audio output device.
+
+permissions-exceptions-doh-window =
+ .title = Website Exceptions for DNS over HTTPS
+ .style = { permissions-window2.style }
+permissions-exceptions-manage-doh-desc = { -brand-short-name } won’t use secure DNS on these sites and their subdomains.
+
+permissions-doh-entry-field = Enter website domain name
+ .accesskey = d
+
+permissions-doh-add-exception =
+ .label = Add
+ .accesskey = A
+
+permissions-doh-col =
+ .label = Domain
+
+permissions-doh-remove =
+ .label = Remove
+ .accesskey = R
+
+permissions-doh-remove-all =
+ .label = Remove All
+ .accesskey = e
diff --git a/browser/locales/en-US/browser/preferences/preferences.ftl b/browser/locales/en-US/browser/preferences/preferences.ftl
new file mode 100644
index 0000000000..f193689074
--- /dev/null
+++ b/browser/locales/en-US/browser/preferences/preferences.ftl
@@ -0,0 +1,1598 @@
+# 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/.
+
+do-not-track-description = Send websites a “Do Not Track” signal that you don’t want to be tracked
+do-not-track-description2 =
+ .label = Send websites a “Do Not Track” request
+ .accesskey = d
+do-not-track-learn-more = Learn more
+do-not-track-option-default-content-blocking-known =
+ .label = Only when { -brand-short-name } is set to block known trackers
+do-not-track-option-always =
+ .label = Always
+
+global-privacy-control-description =
+ .label = Tell websites not to sell or share my data
+ .accesskey = s
+
+non-technical-privacy-header = Website Privacy Preferences
+
+# Do not translate.
+# "Global Privacy Control" or "GPC" are a web platform feature name and abbreviation
+# included to facilitate power-user search of the about:preferences page.
+global-privacy-control-search = Global Privacy Control (GPC)
+
+settings-page-title = Settings
+
+# This is used to determine the width of the search field in about:preferences,
+# in order to make the entire placeholder string visible
+#
+# Please keep the placeholder string short to avoid truncation.
+#
+# Notice: The value of the `.style` attribute is a CSS string, and the `width`
+# is the name of the CSS property. It is intended only to adjust the element's width.
+# Do not translate.
+search-input-box2 =
+ .style = width: 15.4em
+ .placeholder = Find in Settings
+
+managed-notice = Your browser is being managed by your organization.
+
+category-list =
+ .aria-label = Categories
+
+pane-general-title = General
+category-general =
+ .tooltiptext = { pane-general-title }
+
+pane-home-title = Home
+category-home =
+ .tooltiptext = { pane-home-title }
+
+pane-search-title = Search
+category-search =
+ .tooltiptext = { pane-search-title }
+
+pane-privacy-title = Privacy & Security
+category-privacy =
+ .tooltiptext = { pane-privacy-title }
+
+pane-sync-title3 = Sync
+category-sync3 =
+ .tooltiptext = { pane-sync-title3 }
+
+pane-experimental-title = { -brand-short-name } Experiments
+category-experimental =
+ .tooltiptext = { -brand-short-name } Experiments
+pane-experimental-subtitle = Proceed with Caution
+pane-experimental-search-results-header = { -brand-short-name } Experiments: Proceed with Caution
+pane-experimental-description2 = Changing advanced configuration settings can impact { -brand-short-name } performance or security.
+
+pane-experimental-reset =
+ .label = Restore Defaults
+ .accesskey = R
+
+help-button-label = { -brand-short-name } Support
+addons-button-label = Extensions & Themes
+
+focus-search =
+ .key = f
+
+close-button =
+ .aria-label = Close
+
+## Browser Restart Dialog
+
+feature-enable-requires-restart = { -brand-short-name } must restart to enable this feature.
+feature-disable-requires-restart = { -brand-short-name } must restart to disable this feature.
+should-restart-title = Restart { -brand-short-name }
+should-restart-ok = Restart { -brand-short-name } now
+cancel-no-restart-button = Cancel
+restart-later = Restart Later
+
+## Extension Control Notifications
+##
+## These strings are used to inform the user
+## about changes made by extensions to browser settings.
+##
+## <img data-l10n-name="icon"/> is going to be replaced by the extension icon.
+##
+## Variables:
+## $name (string) - Name of the extension
+
+# This string is shown to notify the user that the password manager setting
+# is being controlled by an extension
+extension-controlling-password-saving = <img data-l10n-name="icon"/> <strong>{ $name }</strong> controls this setting.
+
+# This string is shown to notify the user that their notifications permission
+# is being controlled by an extension.
+extension-controlling-web-notifications = <img data-l10n-name="icon"/> <strong>{ $name }</strong> controls this setting.
+
+# This string is shown to notify the user that Container Tabs
+# are being enabled by an extension.
+extension-controlling-privacy-containers = <img data-l10n-name="icon"/> <strong>{ $name }</strong> requires Container Tabs.
+
+# This string is shown to notify the user that their content blocking "All Detected Trackers"
+# preferences are being controlled by an extension.
+extension-controlling-websites-content-blocking-all-trackers = <img data-l10n-name="icon"/> <strong>{ $name }</strong> controls this setting.
+
+# This string is shown to notify the user that their proxy configuration preferences
+# are being controlled by an extension.
+extension-controlling-proxy-config = <img data-l10n-name ="icon"/> <strong>{ $name }</strong> controls how { -brand-short-name } connects to the internet.
+
+# This string is shown after the user disables an extension to notify the user
+# how to enable an extension that they disabled.
+#
+# <img data-l10n-name="addons-icon"/> will be replaced with Add-ons icon
+# <img data-l10n-name="menu-icon"/> will be replaced with Menu icon
+extension-controlled-enable = To enable the extension go to <img data-l10n-name="addons-icon"/> Add-ons in the <img data-l10n-name="menu-icon"/> menu.
+
+## Preferences UI Search Results
+
+search-results-header = Search Results
+
+# `<span data-l10n-name="query"></span>` will be replaced by the search term.
+search-results-empty-message2 =
+ Sorry! There are no results in Settings for “<span data-l10n-name="query"></span>”.
+
+search-results-help-link = Need help? Visit <a data-l10n-name="url">{ -brand-short-name } Support</a>
+
+## General Section
+
+startup-header = Startup
+
+always-check-default =
+ .label = Always check if { -brand-short-name } is your default browser
+ .accesskey = y
+
+is-default = { -brand-short-name } is currently your default browser
+is-not-default = { -brand-short-name } is not your default browser
+
+set-as-my-default-browser =
+ .label = Make Default…
+ .accesskey = D
+
+startup-restore-windows-and-tabs =
+ .label = Open previous windows and tabs
+ .accesskey = s
+
+windows-launch-on-login =
+ .label = Open { -brand-short-name } automatically when your computer starts up
+ .accesskey = O
+windows-launch-on-login-disabled = This preference has been disabled in Windows. To change, visit <a data-l10n-name="startup-link">Startup Apps</a> in System settings.
+
+startup-restore-warn-on-quit =
+ .label = Warn you when quitting the browser
+
+disable-extension =
+ .label = Disable Extension
+
+preferences-data-migration-header = Import Browser Data
+preferences-data-migration-description = Import bookmarks, passwords, history, and autofill data into { -brand-short-name }.
+preferences-data-migration-button =
+ .label = Import Data
+ .accesskey = m
+
+tabs-group-header = Tabs
+
+ctrl-tab-recently-used-order =
+ .label = Ctrl+Tab cycles through tabs in recently used order
+ .accesskey = T
+
+open-new-link-as-tabs =
+ .label = Open links in tabs instead of new windows
+ .accesskey = w
+
+confirm-on-close-multiple-tabs =
+ .label = Confirm before closing multiple tabs
+ .accesskey = m
+
+# This string is used for the confirm before quitting preference.
+# Variables:
+# $quitKey (string) - the quit keyboard shortcut, and formatted
+# in the same manner as it would appear,
+# for example, in the File menu.
+confirm-on-quit-with-key =
+ .label = Confirm before quitting with { $quitKey }
+ .accesskey = b
+
+warn-on-open-many-tabs =
+ .label = Warn you when opening multiple tabs might slow down { -brand-short-name }
+ .accesskey = d
+
+switch-to-new-tabs =
+ .label = When you open a link, image or media in a new tab, switch to it immediately
+ .accesskey = h
+
+show-tabs-in-taskbar =
+ .label = Show tab previews in the Windows taskbar
+ .accesskey = k
+
+browser-containers-enabled =
+ .label = Enable Container Tabs
+ .accesskey = n
+
+browser-containers-learn-more = Learn more
+
+browser-containers-settings =
+ .label = Settings…
+ .accesskey = i
+
+containers-disable-alert-title = Close All Container Tabs?
+
+## Variables:
+## $tabCount (number) - Number of tabs
+
+containers-disable-alert-desc =
+ { $tabCount ->
+ [one] If you disable Container Tabs now, { $tabCount } container tab will be closed. Are you sure you want to disable Container Tabs?
+ *[other] If you disable Container Tabs now, { $tabCount } container tabs will be closed. Are you sure you want to disable Container Tabs?
+ }
+
+containers-disable-alert-ok-button =
+ { $tabCount ->
+ [one] Close { $tabCount } Container Tab
+ *[other] Close { $tabCount } Container Tabs
+ }
+
+##
+
+containers-disable-alert-cancel-button = Keep enabled
+
+containers-remove-alert-title = Remove This Container?
+
+# Variables:
+# $count (number) - Number of tabs that will be closed.
+containers-remove-alert-msg =
+ { $count ->
+ [one] If you remove this Container now, { $count } container tab will be closed. Are you sure you want to remove this Container?
+ *[other] If you remove this Container now, { $count } container tabs will be closed. Are you sure you want to remove this Container?
+ }
+
+containers-remove-ok-button = Remove this Container
+containers-remove-cancel-button = Don’t remove this Container
+
+settings-tabs-show-image-in-preview =
+ .label = Show an image preview when you hover on a tab
+ .accessKey = h
+
+## General Section - Language & Appearance
+
+language-and-appearance-header = Language and Appearance
+
+preferences-web-appearance-header = Website appearance
+
+preferences-web-appearance-description = Some websites adapt their color scheme based on your preferences. Choose which color scheme you’d like to use for those sites.
+
+preferences-web-appearance-choice-auto = Automatic
+preferences-web-appearance-choice-light = Light
+preferences-web-appearance-choice-dark = Dark
+
+preferences-web-appearance-choice-tooltip-auto =
+ .title = Automatically change website backgrounds and content based on your system settings and { -brand-short-name } theme.
+preferences-web-appearance-choice-tooltip-light =
+ .title = Use a light appearance for website backgrounds and content.
+preferences-web-appearance-choice-tooltip-dark =
+ .title = Use a dark appearance for website backgrounds and content.
+
+preferences-web-appearance-choice-input-auto =
+ .aria-description = { preferences-web-appearance-choice-tooltip-auto.title }
+
+preferences-web-appearance-choice-input-light =
+ .aria-description = { preferences-web-appearance-choice-tooltip-light.title }
+
+preferences-web-appearance-choice-input-dark =
+ .aria-description = { preferences-web-appearance-choice-tooltip-dark.title }
+
+# This can appear when using windows HCM or "Override colors: always" without
+# system colors.
+preferences-web-appearance-override-warning = Your color selections are overriding website appearance. <a data-l10n-name="colors-link">Manage colors</a>
+
+# This message contains one link. It can be moved within the sentence as needed
+# to adapt to your language, but should not be changed.
+preferences-web-appearance-footer = Manage { -brand-short-name } themes in <a data-l10n-name="themes-link">Extensions & Themes</a>
+
+preferences-colors-header = Colors
+
+preferences-colors-description = Override { -brand-short-name }’s default colors for text, website backgrounds, and links.
+
+preferences-colors-manage-button =
+ .label = Manage Colors…
+ .accesskey = C
+
+preferences-fonts-header = Fonts
+
+default-font = Default font
+ .accesskey = D
+default-font-size = Size
+ .accesskey = S
+
+advanced-fonts =
+ .label = Advanced…
+ .accesskey = A
+
+# Zoom is a noun, and the message is used as header for a group of options
+preferences-zoom-header = Zoom
+
+preferences-default-zoom = Default zoom
+ .accesskey = z
+
+# Variables:
+# $percentage (number) - Zoom percentage value
+preferences-default-zoom-value =
+ .label = { $percentage }%
+
+preferences-zoom-text-only =
+ .label = Zoom text only
+ .accesskey = t
+
+preferences-text-zoom-override-warning =
+ .message = Warning: If you select “Zoom text only” and your default zoom is not set to 100%, it may cause some sites or content to break.
+
+language-header = Language
+
+choose-language-description = Choose your preferred language for displaying pages
+
+choose-button =
+ .label = Choose…
+ .accesskey = o
+
+choose-browser-language-description = Choose the languages used to display menus, messages, and notifications from { -brand-short-name }.
+manage-browser-languages-button =
+ .label = Set Alternatives…
+ .accesskey = l
+confirm-browser-language-change-description = Restart { -brand-short-name } to apply these changes
+confirm-browser-language-change-button = Apply and Restart
+
+fx-translate-web-pages = { -translations-brand-name }
+
+translate-exceptions =
+ .label = Exceptions…
+ .accesskey = x
+
+# Variables:
+# $localeName (string) - Localized name of the locale to be used.
+use-system-locale =
+ .label = Use your operating system settings for “{ $localeName }” to format dates, times, numbers, and measurements.
+
+check-user-spelling =
+ .label = Check your spelling as you type
+ .accesskey = t
+
+## General Section - Files and Applications
+
+files-and-applications-title = Files and Applications
+
+download-header = Downloads
+
+download-save-where = Save files to
+ .accesskey = v
+
+download-choose-folder =
+ .label =
+ { PLATFORM() ->
+ [macos] Choose…
+ *[other] Browse…
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [macos] e
+ *[other] o
+ }
+
+download-always-ask-where =
+ .label = Always ask you where to save files
+ .accesskey = A
+
+applications-header = Applications
+
+applications-description = Choose how { -brand-short-name } handles the files you download from the web or the applications you use while browsing.
+
+applications-filter =
+ .placeholder = Search file types or applications
+
+applications-type-column =
+ .label = Content Type
+ .accesskey = T
+
+applications-action-column =
+ .label = Action
+ .accesskey = A
+
+# Variables:
+# $extension (String) - file extension (e.g .TXT)
+applications-file-ending = { $extension } file
+applications-action-save =
+ .label = Save File
+
+# Variables:
+# $app-name (String) - Name of an application (e.g Adobe Acrobat)
+applications-use-app =
+ .label = Use { $app-name }
+
+# Variables:
+# $app-name (String) - Name of an application (e.g Adobe Acrobat)
+applications-use-app-default =
+ .label = Use { $app-name } (default)
+
+applications-use-os-default =
+ .label =
+ { PLATFORM() ->
+ [macos] Use macOS default application
+ [windows] Use Windows default application
+ *[other] Use system default application
+ }
+
+applications-use-other =
+ .label = Use other…
+applications-select-helper = Select Helper Application
+
+applications-manage-app =
+ .label = Application Details…
+applications-always-ask =
+ .label = Always ask
+
+# Variables:
+# $type-description (string) - Description of the type (e.g "Portable Document Format")
+# $type (string) - The MIME type (e.g application/binary)
+applications-type-description-with-type = { $type-description } ({ $type })
+
+# Variables:
+# $extension (string) - File extension (e.g .TXT)
+# $type (string) - The MIME type (e.g application/binary)
+applications-file-ending-with-type = { applications-file-ending } ({ $type })
+
+# Variables:
+# $plugin-name (string) - Name of a plugin (e.g Adobe Flash)
+applications-use-plugin-in =
+ .label = Use { $plugin-name } (in { -brand-short-name })
+applications-open-inapp =
+ .label = Open in { -brand-short-name }
+
+## The strings in this group are used to populate
+## selected label element based on the string from
+## the selected menu item.
+
+applications-use-plugin-in-label =
+ .value = { applications-use-plugin-in.label }
+
+applications-action-save-label =
+ .value = { applications-action-save.label }
+
+applications-use-app-label =
+ .value = { applications-use-app.label }
+
+applications-open-inapp-label =
+ .value = { applications-open-inapp.label }
+
+applications-always-ask-label =
+ .value = { applications-always-ask.label }
+
+applications-use-app-default-label =
+ .value = { applications-use-app-default.label }
+
+applications-use-other-label =
+ .value = { applications-use-other.label }
+
+applications-use-os-default-label =
+ .value = { applications-use-os-default.label }
+
+##
+
+applications-handle-new-file-types-description = What should { -brand-short-name } do with other files?
+
+applications-save-for-new-types =
+ .label = Save files
+ .accesskey = S
+
+applications-ask-before-handling =
+ .label = Ask whether to open or save files
+ .accesskey = A
+
+drm-content-header = Digital Rights Management (DRM) Content
+
+play-drm-content =
+ .label = Play DRM-controlled content
+ .accesskey = P
+
+play-drm-content-learn-more = Learn more
+
+update-application-title = { -brand-short-name } Updates
+
+update-application-description = Keep { -brand-short-name } up to date for the best performance, stability, and security.
+
+# Variables:
+# $version (string) - Firefox version
+update-application-version = Version { $version } <a data-l10n-name="learn-more">What’s new</a>
+
+update-history =
+ .label = Show Update History…
+ .accesskey = p
+
+update-application-allow-description = Allow { -brand-short-name } to
+
+update-application-auto =
+ .label = Automatically install updates (recommended)
+ .accesskey = A
+
+update-application-check-choose =
+ .label = Check for updates but let you choose to install them
+ .accesskey = C
+
+update-application-manual =
+ .label = Never check for updates (not recommended)
+ .accesskey = N
+
+update-application-background-enabled =
+ .label = When { -brand-short-name } is not running
+ .accesskey = W
+
+update-application-warning-cross-user-setting = This setting will apply to all Windows accounts and { -brand-short-name } profiles using this installation of { -brand-short-name }.
+
+update-application-suppress-prompts =
+ .label = Show fewer update notification prompts
+ .accesskey = n
+
+update-setting-write-failure-title2 = Error saving Update settings
+
+# Variables:
+# $path (string) - Path to the configuration file
+# The newlines between the main text and the line containing the path is
+# intentional so the path is easier to identify.
+update-setting-write-failure-message2 =
+ { -brand-short-name } encountered an error and didn’t save this change. Note that changing this update setting requires permission to write to the file below. You or a system administrator may be able resolve the error by granting the Users group full control to this file.
+
+ Could not write to file: { $path }
+
+update-in-progress-title = Update In Progress
+
+update-in-progress-message = Do you want { -brand-short-name } to continue with this update?
+
+update-in-progress-ok-button = &Discard
+# Continue is the cancel button so pressing escape or using a platform standard
+# method of closing the UI will not discard the update.
+update-in-progress-cancel-button = &Continue
+
+## General Section - Performance
+
+performance-title = Performance
+
+performance-use-recommended-settings-checkbox =
+ .label = Use recommended performance settings
+ .accesskey = U
+
+performance-use-recommended-settings-desc = These settings are tailored to your computer’s hardware and operating system.
+
+performance-settings-learn-more = Learn more
+
+performance-allow-hw-accel =
+ .label = Use hardware acceleration when available
+ .accesskey = r
+
+performance-limit-content-process-option = Content process limit
+ .accesskey = l
+
+performance-limit-content-process-enabled-desc = Additional content processes can improve performance when using multiple tabs, but will also use more memory.
+performance-limit-content-process-blocked-desc = Modifying the number of content processes is only possible with multiprocess { -brand-short-name }. <a data-l10n-name="learn-more">Learn how to check if multiprocess is enabled</a>
+
+# Variables:
+# $num (number) - Default value of the `dom.ipc.processCount` pref.
+performance-default-content-process-count =
+ .label = { $num } (default)
+
+## General Section - Browsing
+
+browsing-title = Browsing
+
+browsing-use-autoscroll =
+ .label = Use autoscrolling
+ .accesskey = a
+
+browsing-use-smooth-scrolling =
+ .label = Use smooth scrolling
+ .accesskey = m
+
+browsing-gtk-use-non-overlay-scrollbars =
+ .label = Always show scrollbars
+ .accesskey = o
+
+browsing-always-underline-links=
+ .label = Always underline links
+ .accesskey = u
+
+browsing-use-onscreen-keyboard =
+ .label = Show a touch keyboard when necessary
+ .accesskey = c
+
+browsing-use-cursor-navigation =
+ .label = Always use the cursor keys to navigate within pages
+ .accesskey = k
+
+browsing-use-full-keyboard-navigation =
+ .label = Use the tab key to move focus between form controls and links
+ .accesskey = t
+
+browsing-search-on-start-typing =
+ .label = Search for text when you start typing
+ .accesskey = x
+
+browsing-picture-in-picture-toggle-enabled =
+ .label = Enable picture-in-picture video controls
+ .accesskey = E
+
+browsing-picture-in-picture-learn-more = Learn more
+
+browsing-media-control =
+ .label = Control media via keyboard, headset, or virtual interface
+ .accesskey = v
+
+browsing-media-control-learn-more = Learn more
+
+browsing-cfr-recommendations =
+ .label = Recommend extensions as you browse
+ .accesskey = R
+browsing-cfr-features =
+ .label = Recommend features as you browse
+ .accesskey = f
+
+browsing-cfr-recommendations-learn-more = Learn more
+
+## General Section - Proxy
+
+network-settings-title = Network Settings
+
+network-proxy-connection-description = Configure how { -brand-short-name } connects to the internet.
+
+network-proxy-connection-learn-more = Learn more
+
+network-proxy-connection-settings =
+ .label = Settings…
+ .accesskey = e
+
+## Home Section
+
+home-new-windows-tabs-header = New Windows and Tabs
+
+home-new-windows-tabs-description2 = Choose what you see when you open your homepage, new windows, and new tabs.
+
+## Home Section - Home Page Customization
+
+home-homepage-mode-label = Homepage and new windows
+
+home-newtabs-mode-label = New tabs
+
+home-restore-defaults =
+ .label = Restore Defaults
+ .accesskey = R
+
+home-mode-choice-default-fx =
+ .label = { -firefox-home-brand-name } (Default)
+
+home-mode-choice-custom =
+ .label = Custom URLs…
+
+home-mode-choice-blank =
+ .label = Blank Page
+
+home-homepage-custom-url =
+ .placeholder = Paste a URL…
+
+# This string has a special case for '1' and [other] (default). If necessary for
+# your language, you can add {$tabCount} to your translations and use the
+# standard CLDR forms, or only use the form for [other] if both strings should
+# be identical.
+use-current-pages =
+ .label =
+ { $tabCount ->
+ [1] Use Current Page
+ *[other] Use Current Pages
+ }
+ .accesskey = C
+
+choose-bookmark =
+ .label = Use Bookmark…
+ .accesskey = B
+
+## Home Section - Firefox Home Content Customization
+
+home-prefs-content-header2 = { -firefox-home-brand-name } Content
+home-prefs-content-description2 = Choose what content you want on your { -firefox-home-brand-name } screen.
+
+home-prefs-search-header =
+ .label = Web Search
+home-prefs-shortcuts-header =
+ .label = Shortcuts
+home-prefs-shortcuts-description = Sites you save or visit
+home-prefs-shortcuts-by-option-sponsored =
+ .label = Sponsored shortcuts
+
+home-prefs-recommended-by-header-generic =
+ .label = Recommended stories
+home-prefs-recommended-by-description-generic = Exceptional content curated by the { -brand-product-name } family
+
+##
+
+home-prefs-recommended-by-learn-more = How it works
+home-prefs-recommended-by-option-sponsored-stories =
+ .label = Sponsored stories
+home-prefs-recommended-by-option-recent-saves =
+ .label = Show Recent Saves
+
+home-prefs-highlights-option-visited-pages =
+ .label = Visited pages
+home-prefs-highlights-options-bookmarks =
+ .label = Bookmarks
+home-prefs-highlights-option-most-recent-download =
+ .label = Most recent download
+home-prefs-highlights-option-saved-to-pocket =
+ .label = Pages saved to { -pocket-brand-name }
+
+home-prefs-recent-activity-header =
+ .label = Recent activity
+home-prefs-recent-activity-description = A selection of recent sites and content
+
+# Variables:
+# $num (number) - Number of rows displayed
+home-prefs-sections-rows-option =
+ .label =
+ { $num ->
+ [one] { $num } row
+ *[other] { $num } rows
+ }
+
+## Search Section
+
+search-engine-default-header = Default Search Engine
+search-engine-default-desc-2 = This is your default search engine in the address bar and search bar. You can switch it at any time.
+search-engine-default-private-desc-2 = Choose a different default search engine for Private Windows only
+search-separate-default-engine =
+ .label = Use this search engine in Private Windows
+ .accesskey = U
+
+search-suggestions-header = Search Suggestions
+search-suggestions-desc = Choose how suggestions from search engines appear.
+
+search-show-suggestions-option =
+ .label = Show search suggestions
+ .accesskey = S
+
+search-show-suggestions-url-bar-option =
+ .label = Show search suggestions in address bar results
+ .accesskey = l
+
+
+# With this option enabled, on the search results page
+# the URL will be replaced by the search terms in the address bar
+# when using the current default search engine.
+search-show-search-term-option =
+ .label = Show search terms instead of URL on default search engine results page
+
+
+# This string describes what the user will observe when the system
+# prioritizes search suggestions over browsing history in the results
+# that extend down from the address bar. In the original English string,
+# "ahead" refers to location (appearing most proximate to), not time
+# (appearing before).
+search-show-suggestions-above-history-option =
+ .label = Show search suggestions ahead of browsing history in address bar results
+
+search-show-suggestions-private-windows =
+ .label = Show search suggestions in Private Windows
+
+search-suggestions-cant-show = Search suggestions will not be shown in location bar results because you have configured { -brand-short-name } to never remember history.
+
+search-one-click-header2 = Search Shortcuts
+
+search-one-click-desc = Choose the alternative search engines that appear below the address bar and search bar when you start to enter a keyword.
+
+search-choose-engine-column =
+ .label = Search Engine
+search-choose-keyword-column =
+ .label = Keyword
+
+search-restore-default =
+ .label = Restore Default Search Engines
+ .accesskey = D
+
+search-remove-engine =
+ .label = Remove
+ .accesskey = R
+search-add-engine =
+ .label = Add
+ .accesskey = A
+
+search-find-more-link = Find more search engines
+
+# This warning is displayed when the chosen keyword is already in use
+# ('Duplicate' is an adjective)
+search-keyword-warning-title = Duplicate Keyword
+# Variables:
+# $name (string) - Name of a search engine.
+search-keyword-warning-engine = You have chosen a keyword that is currently in use by “{ $name }”. Please select another.
+search-keyword-warning-bookmark = You have chosen a keyword that is currently in use by a bookmark. Please select another.
+
+## Containers Section
+
+containers-back-button2 =
+ .aria-label = Back to Settings
+containers-header = Container Tabs
+containers-add-button =
+ .label = Add New Container
+ .accesskey = A
+
+containers-new-tab-check =
+ .label = Select a container for each new tab
+ .accesskey = S
+
+containers-settings-button =
+ .label = Settings
+containers-remove-button =
+ .label = Remove
+
+## Firefox account - Signed out. Note that "Sync" and "Firefox account" are now
+## more discrete ("signed in" no longer means "and sync is connected").
+
+sync-signedout-caption = Take Your Web With You
+sync-signedout-description2 = Synchronize your bookmarks, history, tabs, passwords, add-ons, and settings across all your devices.
+
+sync-signedout-account-signin3 =
+ .label = Sign in to sync…
+ .accesskey = i
+
+# This message contains two links and two icon images.
+# `<img data-l10n-name="android-icon"/>` - Android logo icon
+# `<a data-l10n-name="android-link">` - Link to Android Download
+# `<img data-l10n-name="ios-icon">` - iOS logo icon
+# `<a data-l10n-name="ios-link">` - Link to iOS Download
+#
+# They can be moved within the sentence as needed to adapt
+# to your language, but should not be changed or translated.
+sync-mobile-promo = Download Firefox for <img data-l10n-name="android-icon"/> <a data-l10n-name="android-link">Android</a> or <img data-l10n-name="ios-icon"/> <a data-l10n-name="ios-link">iOS</a> to sync with your mobile device.
+
+## Firefox account - Signed in
+
+sync-profile-picture =
+ .tooltiptext = Change profile picture
+
+sync-sign-out =
+ .label = Sign Out…
+ .accesskey = g
+
+sync-manage-account = Manage account
+ .accesskey = o
+
+## Variables
+## $email (string) - Email used for Firefox account
+
+sync-signedin-unverified = { $email } is not verified.
+sync-signedin-login-failure = Please sign in to reconnect { $email }
+
+##
+
+sync-verify-account =
+ .label = Verify Account
+ .accesskey = V
+
+sync-remove-account =
+ .label = Remove Account
+ .accesskey = R
+
+sync-sign-in =
+ .label = Sign in
+ .accesskey = g
+
+## Sync section - enabling or disabling sync.
+
+prefs-syncing-on = Syncing: ON
+
+prefs-syncing-off = Syncing: OFF
+
+prefs-sync-turn-on-syncing =
+ .label = Turn on syncing…
+ .accesskey = s
+
+prefs-sync-offer-setup-label2 = Synchronize your bookmarks, history, tabs, passwords, add-ons, and settings across all your devices.
+
+prefs-sync-now-button =
+ .label = Sync Now
+ .accesskey = N
+
+prefs-syncing-button =
+ .label = Syncing…
+
+## The list of things currently syncing.
+
+sync-syncing-across-devices-heading = You are syncing these items across all your connected devices:
+
+sync-currently-syncing-bookmarks = Bookmarks
+sync-currently-syncing-history = History
+sync-currently-syncing-tabs = Open tabs
+sync-currently-syncing-passwords = Passwords
+sync-currently-syncing-addresses = Addresses
+sync-currently-syncing-payment-methods = Payment methods
+sync-currently-syncing-addons = Add-ons
+sync-currently-syncing-settings = Settings
+
+sync-change-options =
+ .label = Change…
+ .accesskey = C
+
+## The "Choose what to sync" dialog.
+
+sync-choose-what-to-sync-dialog3 =
+ .title = Choose What To Sync
+ .style = min-width: 36em;
+ .buttonlabelaccept = Save Changes
+ .buttonaccesskeyaccept = S
+ .buttonlabelextra2 = Disconnect…
+ .buttonaccesskeyextra2 = D
+
+sync-choose-dialog-subtitle = Changes to the list of items to sync will be reflected across all your connected devices.
+
+sync-engine-bookmarks =
+ .label = Bookmarks
+ .accesskey = m
+
+sync-engine-history =
+ .label = History
+ .accesskey = r
+
+sync-engine-tabs =
+ .label = Open tabs
+ .tooltiptext = A list of what’s open on all synced devices
+ .accesskey = t
+
+sync-engine-passwords =
+ .label = Passwords
+ .tooltiptext = Passwords you’ve saved
+ .accesskey = P
+
+sync-engine-addresses =
+ .label = Addresses
+ .tooltiptext = Postal addresses you’ve saved (desktop only)
+ .accesskey = e
+
+sync-engine-payment-methods2 =
+ .label = Payment methods
+ .tooltiptext = Names, card numbers, and expiry dates
+ .accesskey = n
+
+sync-engine-addons =
+ .label = Add-ons
+ .tooltiptext = Extensions and themes for Firefox desktop
+ .accesskey = A
+
+sync-engine-settings =
+ .label = Settings
+ .tooltiptext = General, Privacy, and Security settings you’ve changed
+ .accesskey = s
+
+## The device name controls.
+
+sync-device-name-header = Device Name
+
+sync-device-name-change =
+ .label = Change Device Name…
+ .accesskey = h
+
+sync-device-name-cancel =
+ .label = Cancel
+ .accesskey = n
+
+sync-device-name-save =
+ .label = Save
+ .accesskey = v
+
+sync-connect-another-device = Connect another device
+
+## Privacy Section
+
+privacy-header = Browser Privacy
+
+## Privacy Section - Passwords
+
+# "Logins" is the former term for "Passwords". Users should find password settings
+# by searching for the former term "logins". It's not displayed in the UI.
+pane-privacy-passwords-header = Passwords
+ .searchkeywords = logins
+
+# Checkbox to control whether UI is shown to users to save or fill logins/passwords.
+forms-ask-to-save-passwords =
+ .label = Ask to save passwords
+ .accesskey = A
+forms-exceptions =
+ .label = Exceptions…
+ .accesskey = x
+forms-suggest-passwords =
+ .label = Suggest strong passwords
+ .accesskey = S
+forms-breach-alerts =
+ .label = Show alerts about passwords for breached websites
+ .accesskey = b
+forms-breach-alerts-learn-more-link = Learn more
+preferences-relay-integration-checkbox2 =
+ .label = Suggest { -relay-brand-name } email masks to protect your email address
+ .accesskey = r
+relay-integration-learn-more-link = Learn more
+
+# Checkbox which controls filling saved logins into fields automatically when they appear, in some cases without user interaction.
+forms-fill-usernames-and-passwords =
+ .label = Fill usernames and passwords automatically
+ .accesskey = F
+forms-saved-passwords =
+ .label = Saved passwords
+ .accesskey = d
+forms-primary-pw-use =
+ .label = Use a Primary Password
+ .accesskey = U
+forms-primary-pw-learn-more-link = Learn more
+# This string uses the former name of the Primary Password feature
+# ("Master Password" in English) so that the preferences can be found
+# when searching for the old name. The accesskey is unused.
+forms-master-pw-change =
+ .label = Change Master Password…
+ .accesskey = M
+forms-primary-pw-change =
+ .label = Change Primary Password…
+ .accesskey = P
+# Leave this message empty if the translation for "Primary Password" matches
+# "Master Password" in your language. If you're editing the FTL file directly,
+# use { "" } as the value.
+forms-primary-pw-former-name = Formerly known as Master Password
+
+forms-primary-pw-fips-title = You are currently in FIPS mode. FIPS requires a non-empty Primary Password.
+forms-master-pw-fips-desc = Password Change Failed
+forms-windows-sso =
+ .label = Allow Windows single sign-on for Microsoft, work, and school accounts
+forms-windows-sso-learn-more-link = Learn more
+forms-windows-sso-desc = Manage accounts in your device settings
+
+windows-passkey-settings-label = Manage passkeys in system settings
+
+## OS Authentication dialog
+
+# This message can be seen by trying to add a Primary Password.
+primary-password-os-auth-dialog-message-win = To create a Primary Password, enter your Windows login credentials. This helps protect the security of your accounts.
+
+# This message can be seen by trying to add a Primary Password.
+# The macOS strings are preceded by the operating system with "Firefox is trying to "
+# and includes subtitle of "Enter password for the user "xxx" to allow this." These
+# notes are only valid for English. Please test in your locale.
+primary-password-os-auth-dialog-message-macosx = create a Primary Password
+master-password-os-auth-dialog-caption = { -brand-full-name }
+
+## Privacy section - Autofill
+
+pane-privacy-autofill-header = Autofill
+autofill-addresses-checkbox = Save and fill addresses
+ .accesskey = a
+autofill-saved-addresses-button = Saved addresses
+ .accesskey = S
+autofill-payment-methods-checkbox-message = Save and fill payment methods
+ .accesskey = m
+autofill-payment-methods-checkbox-submessage = Includes credit and debit cards
+ .accesskey = I
+autofill-saved-payment-methods-button = Saved payment methods
+ .accesskey = v
+autofill-reauth-checkbox = { PLATFORM() ->
+ [macos] Require macOS authentication to fill and edit payment methods.
+ [windows] Require Windows authentication to fill and edit payment methods.
+ [linux] Require Linux authentication to fill and edit payment methods.
+ *[other] Require authentication to fill and edit payment methods.
+ }
+ .accesskey = o
+
+## Privacy Section - History
+
+history-header = History
+
+# This label is followed, on the same line, by a dropdown list of options
+# (Remember history, etc.).
+# In English it visually creates a full sentence, e.g.
+# "Firefox will" + "Remember history".
+#
+# If this doesn't work for your language, you can translate this message:
+# - Simply as "Firefox", moving the verb into each option.
+# This will result in "Firefox" + "Will remember history", etc.
+# - As a stand-alone message, for example "Firefox history settings:".
+history-remember-label = { -brand-short-name } will
+ .accesskey = w
+
+history-remember-option-all =
+ .label = Remember history
+history-remember-option-never =
+ .label = Never remember history
+history-remember-option-custom =
+ .label = Use custom settings for history
+
+history-remember-description = { -brand-short-name } will remember your browsing, download, form, and search history.
+history-dontremember-description = { -brand-short-name } will use the same settings as private browsing, and will not remember any history as you browse the Web.
+
+history-private-browsing-permanent =
+ .label = Always use private browsing mode
+ .accesskey = p
+
+history-remember-browser-option =
+ .label = Remember browsing and download history
+ .accesskey = b
+
+history-remember-search-option =
+ .label = Remember search and form history
+ .accesskey = f
+
+history-clear-on-close-option =
+ .label = Clear history when { -brand-short-name } closes
+ .accesskey = r
+
+history-clear-on-close-settings =
+ .label = Settings…
+ .accesskey = t
+
+history-clear-button =
+ .label = Clear History…
+ .accesskey = s
+
+## Privacy Section - Site Data
+
+sitedata-header = Cookies and Site Data
+
+sitedata-total-size-calculating = Calculating site data and cache size…
+
+# Variables:
+# $value (number) - Value of the unit (for example: 4.6, 500)
+# $unit (string) - Name of the unit (for example: "bytes", "KB")
+sitedata-total-size = Your stored cookies, site data, and cache are currently using { $value } { $unit } of disk space.
+
+sitedata-learn-more = Learn more
+
+sitedata-delete-on-close =
+ .label = Delete cookies and site data when { -brand-short-name } is closed
+ .accesskey = c
+
+sitedata-delete-on-close-private-browsing2 = Based on your history settings, { -brand-short-name } deletes cookies and site data from your session when you close the browser.
+
+sitedata-allow-cookies-option =
+ .label = Accept cookies and site data
+ .accesskey = A
+
+sitedata-disallow-cookies-option =
+ .label = Block cookies and site data
+ .accesskey = B
+
+# This label means 'type of content that is blocked', and is followed by a drop-down list with content types below.
+# The list items are the strings named sitedata-block-*-option*.
+sitedata-block-desc = Type blocked
+ .accesskey = T
+
+sitedata-option-block-cross-site-trackers =
+ .label = Cross-site trackers
+sitedata-option-block-cross-site-tracking-cookies =
+ .label = Cross-site tracking cookies
+sitedata-option-block-cross-site-cookies =
+ .label = Cross-site tracking cookies, and isolate other cross-site cookies
+sitedata-option-block-unvisited =
+ .label = Cookies from unvisited websites
+sitedata-option-block-all-cross-site-cookies =
+ .label = All cross-site cookies (may cause websites to break)
+sitedata-option-block-all =
+ .label = All cookies (will cause websites to break)
+
+sitedata-clear =
+ .label = Clear Data…
+ .accesskey = l
+
+sitedata-settings =
+ .label = Manage Data…
+ .accesskey = M
+
+sitedata-cookies-exceptions =
+ .label = Manage Exceptions…
+ .accesskey = x
+
+## Privacy Section - Cookie Banner Blocking
+
+cookie-banner-blocker-header = Cookie Banner Blocker
+cookie-banner-blocker-description = When a site asks if they can use cookies in private browsing mode, { -brand-short-name } automatically refuses for you. Only on supported sites.
+cookie-banner-learn-more = Learn More
+cookie-banner-blocker-checkbox-label =
+ .label = Automatically refuse cookie banners
+
+## Privacy Section - Address Bar
+
+addressbar-header = Address Bar
+
+addressbar-suggest = When using the address bar, suggest
+
+addressbar-locbar-history-option =
+ .label = Browsing history
+ .accesskey = h
+addressbar-locbar-bookmarks-option =
+ .label = Bookmarks
+ .accesskey = k
+addressbar-locbar-clipboard-option =
+ .label = Clipboard
+ .accesskey = C
+addressbar-locbar-openpage-option =
+ .label = Open tabs
+ .accesskey = O
+# Shortcuts refers to the shortcut tiles on the new tab page, previously known as top sites. Translation should be consistent.
+addressbar-locbar-shortcuts-option =
+ .label = Shortcuts
+ .accesskey = S
+addressbar-locbar-topsites-option =
+ .label = Top sites
+ .accesskey = T
+addressbar-locbar-engines-option =
+ .label = Search engines
+ .accesskey = a
+addressbar-locbar-quickactions-option =
+ .label = Quick actions
+ .accesskey = Q
+addressbar-locbar-showrecentsearches-option =
+ .label = Show recent searches
+ .accesskey = r
+
+addressbar-quickactions-learn-more = Learn more
+
+## Privacy Section - Content Blocking
+
+content-blocking-enhanced-tracking-protection = Enhanced Tracking Protection
+
+content-blocking-section-top-level-description = Trackers follow you around online to collect information about your browsing habits and interests. { -brand-short-name } blocks many of these trackers and other malicious scripts.
+
+content-blocking-learn-more = Learn more
+
+content-blocking-fpi-incompatibility-warning = You are using First Party Isolation (FPI), which overrides some of { -brand-short-name }’s cookie settings.
+
+# There is no need to translate "Resist Fingerprinting (RFP)". This is a
+# feature that can only be enabled via about:config, and it's not exposed to
+# standard users (e.g. via Settings).
+content-blocking-rfp-incompatibility-warning = You’re using Resist Fingerprinting (RFP), which replaces some of { -brand-short-name }’s fingerprinting protection settings. This might cause some sites to break.
+
+## These strings are used to define the different levels of
+## Enhanced Tracking Protection.
+
+# "Standard" in this case is an adjective, meaning "default" or "normal".
+enhanced-tracking-protection-setting-standard =
+ .label = Standard
+ .accesskey = d
+enhanced-tracking-protection-setting-strict =
+ .label = Strict
+ .accesskey = r
+enhanced-tracking-protection-setting-custom =
+ .label = Custom
+ .accesskey = C
+
+##
+
+content-blocking-etp-standard-desc = Balanced for protection and performance. Pages will load normally.
+content-blocking-etp-strict-desc = Stronger protection, but may cause some sites or content to break.
+content-blocking-etp-custom-desc = Choose which trackers and scripts to block.
+content-blocking-etp-blocking-desc = { -brand-short-name } blocks the following:
+
+content-blocking-private-windows = Tracking content in Private Windows
+content-blocking-cross-site-cookies-in-all-windows2 = Cross-site cookies in all windows
+content-blocking-cross-site-tracking-cookies = Cross-site tracking cookies
+content-blocking-all-cross-site-cookies-private-windows = Cross-site cookies in Private Windows
+content-blocking-cross-site-tracking-cookies-plus-isolate = Cross-site tracking cookies, and isolate remaining cookies
+content-blocking-social-media-trackers = Social media trackers
+content-blocking-all-cookies = All cookies
+content-blocking-unvisited-cookies = Cookies from unvisited sites
+content-blocking-all-windows-tracking-content = Tracking content in all windows
+content-blocking-all-cross-site-cookies = All cross-site cookies
+content-blocking-cryptominers = Cryptominers
+content-blocking-fingerprinters = Fingerprinters
+# The known fingerprinters are those that are known for collecting browser fingerprints from user devices. And
+# the suspected fingerprinters are those that we are uncertain about browser fingerprinting activities. But they could
+# possibly acquire browser fingerprints because of the behavior on accessing APIs that expose browser fingerprints.
+content-blocking-known-and-suspected-fingerprinters = Known and suspected fingerprinters
+
+# The tcp-rollout strings are no longer used for the rollout but for tcp-by-default in the standard section
+
+# "Contains" here means "isolates", "limits".
+content-blocking-etp-standard-tcp-rollout-description = Total Cookie Protection contains cookies to the site you’re on, so trackers can’t use them to follow you between sites.
+content-blocking-etp-standard-tcp-rollout-learn-more = Learn more
+
+content-blocking-etp-standard-tcp-title = Includes Total Cookie Protection, our most powerful privacy feature ever
+
+content-blocking-warning-title = Heads up!
+content-blocking-and-isolating-etp-warning-description-2 = This setting may cause some websites to not display content or work correctly. If a site seems broken, you may want to turn off tracking protection for that site to load all content.
+content-blocking-warning-learn-how = Learn how
+
+content-blocking-reload-description = You will need to reload your tabs to apply these changes.
+content-blocking-reload-tabs-button =
+ .label = Reload All Tabs
+ .accesskey = R
+
+content-blocking-tracking-content-label =
+ .label = Tracking content
+ .accesskey = T
+content-blocking-tracking-protection-option-all-windows =
+ .label = In all windows
+ .accesskey = A
+content-blocking-option-private =
+ .label = Only in private windows
+ .accesskey = p
+content-blocking-tracking-protection-change-block-list = Change block list
+
+content-blocking-cookies-label =
+ .label = Cookies
+ .accesskey = C
+
+content-blocking-expand-section =
+ .tooltiptext = More information
+
+# Cryptomining refers to using scripts on websites that can use a computer’s resources to mine cryptocurrency without a user’s knowledge.
+content-blocking-cryptominers-label =
+ .label = Cryptominers
+ .accesskey = y
+
+# Browser fingerprinting is a method of tracking users by the configuration and settings information (their "digital fingerprint")
+# that is visible to websites they browse, rather than traditional tracking methods such as IP addresses and unique cookies.
+#
+# The known fingerprinters are those that are known for collecting browser fingerprints from user devices.
+content-blocking-known-fingerprinters-label =
+ .label = Known fingerprinters
+ .accesskey = K
+
+# The suspected fingerprinters are those that we are uncertain about browser fingerprinting activities. But they could
+# possibly acquire browser fingerprints because of the behavior on accessing APIs that expose browser fingerprints.
+content-blocking-suspected-fingerprinters-label =
+ .label = Suspected fingerprinters
+ .accesskey = S
+
+## Privacy Section - Tracking
+
+tracking-manage-exceptions =
+ .label = Manage Exceptions…
+ .accesskey = x
+
+## Privacy Section - Permissions
+
+permissions-header = Permissions
+
+permissions-location = Location
+permissions-location-settings =
+ .label = Settings…
+ .accesskey = t
+
+permissions-xr = Virtual Reality
+permissions-xr-settings =
+ .label = Settings…
+ .accesskey = t
+
+permissions-camera = Camera
+permissions-camera-settings =
+ .label = Settings…
+ .accesskey = t
+
+permissions-microphone = Microphone
+permissions-microphone-settings =
+ .label = Settings…
+ .accesskey = t
+
+# Short form for "the act of choosing sound output devices and redirecting audio to the chosen devices".
+permissions-speaker = Speaker Selection
+permissions-speaker-settings =
+ .label = Settings…
+ .accesskey = t
+
+permissions-notification = Notifications
+permissions-notification-settings =
+ .label = Settings…
+ .accesskey = t
+permissions-notification-link = Learn more
+
+permissions-notification-pause =
+ .label = Pause notifications until { -brand-short-name } restarts
+ .accesskey = n
+
+permissions-autoplay = Autoplay
+
+permissions-autoplay-settings =
+ .label = Settings…
+ .accesskey = t
+
+permissions-block-popups =
+ .label = Block pop-up windows
+ .accesskey = B
+
+# "popup" is a misspelling that is more popular than the correct spelling of
+# "pop-up" so it's included as a search keyword, not displayed in the UI.
+permissions-block-popups-exceptions-button =
+ .label = Exceptions…
+ .accesskey = E
+ .searchkeywords = popups
+
+permissions-addon-install-warning =
+ .label = Warn you when websites try to install add-ons
+ .accesskey = W
+
+permissions-addon-exceptions =
+ .label = Exceptions…
+ .accesskey = E
+
+## Privacy Section - Data Collection
+
+collection-header2 = { -brand-short-name } Data Collection and Use
+ .searchkeywords = telemetry
+
+collection-description = We strive to provide you with choices and collect only what we need to provide and improve { -brand-short-name } for everyone. We always ask permission before receiving personal information.
+collection-privacy-notice = Privacy Notice
+
+collection-health-report-telemetry-disabled = You’re no longer allowing { -vendor-short-name } to capture technical and interaction data. All past data will be deleted within 30 days.
+collection-health-report-telemetry-disabled-link = Learn more
+
+collection-health-report =
+ .label = Allow { -brand-short-name } to send technical and interaction data to { -vendor-short-name }
+ .accesskey = r
+collection-health-report-link = Learn more
+
+collection-studies =
+ .label = Allow { -brand-short-name } to install and run studies
+collection-studies-link = View { -brand-short-name } studies
+
+addon-recommendations =
+ .label = Allow { -brand-short-name } to make personalized extension recommendations
+addon-recommendations-link = Learn more
+
+# This message is displayed above disabled data sharing options in developer builds
+# or builds with no Telemetry support available.
+collection-health-report-disabled = Data reporting is disabled for this build configuration
+
+collection-backlogged-crash-reports-with-link = Allow { -brand-short-name } to send backlogged crash reports on your behalf <a data-l10n-name="crash-reports-link">Learn more</a>
+ .accesskey = c
+
+privacy-segmentation-section-header = New features that enhance your browsing
+
+privacy-segmentation-section-description = When we offer features that use your data to give you a more personal experience:
+
+privacy-segmentation-radio-off =
+ .label = Use { -brand-product-name } recommendations
+
+privacy-segmentation-radio-on =
+ .label = Show detailed information
+
+## Privacy Section - Security
+##
+## It is important that wording follows the guidelines outlined on this page:
+## https://developers.google.com/safe-browsing/developers_guide_v2#AcceptableUsage
+
+security-header = Security
+
+security-browsing-protection = Deceptive Content and Dangerous Software Protection
+
+security-enable-safe-browsing =
+ .label = Block dangerous and deceptive content
+ .accesskey = B
+security-enable-safe-browsing-link = Learn more
+
+security-block-downloads =
+ .label = Block dangerous downloads
+ .accesskey = d
+
+security-block-uncommon-software =
+ .label = Warn you about unwanted and uncommon software
+ .accesskey = c
+
+## Privacy Section - Certificates
+
+certs-header = Certificates
+
+certs-enable-ocsp =
+ .label = Query OCSP responder servers to confirm the current validity of certificates
+ .accesskey = Q
+
+certs-view =
+ .label = View Certificates…
+ .accesskey = C
+
+certs-devices =
+ .label = Security Devices…
+ .accesskey = D
+
+certs-thirdparty-toggle =
+ .label = Allow { -brand-short-name } to automatically trust third-party root certificates you install
+ .accesskey = t
+
+space-alert-over-5gb-settings-button =
+ .label = Open Settings
+ .accesskey = O
+
+space-alert-over-5gb-message2 = <strong>{ -brand-short-name } is running out of disk space.</strong> Website contents may not display properly. You can clear stored data in Settings > Privacy & Security > Cookies and Site Data.
+
+space-alert-under-5gb-message2 = <strong>{ -brand-short-name } is running out of disk space.</strong> Website contents may not display properly. Visit “Learn more” to optimize your disk usage for better browsing experience.
+
+## Privacy Section - HTTPS-Only
+
+httpsonly-header = HTTPS-Only Mode
+
+httpsonly-description = HTTPS provides a secure, encrypted connection between { -brand-short-name } and the websites you visit. Most websites support HTTPS, and if HTTPS-Only Mode is enabled, then { -brand-short-name } will upgrade all connections to HTTPS.
+
+httpsonly-learn-more = Learn more
+
+httpsonly-radio-enabled =
+ .label = Enable HTTPS-Only Mode in all windows
+
+httpsonly-radio-enabled-pbm =
+ .label = Enable HTTPS-Only Mode in private windows only
+
+httpsonly-radio-disabled =
+ .label = Don’t enable HTTPS-Only Mode
+
+## DoH Section
+
+preferences-doh-header = DNS over HTTPS
+
+preferences-doh-description2 = Domain Name System (DNS) over HTTPS sends your request for a domain name through an encrypted connection, providing a secure DNS and making it harder for others to see which website you’re about to access.
+
+# Variables:
+# $status (string) - The status of the DoH connection
+preferences-doh-status = Status: { $status }
+# Variables:
+# $name (string) - The name of the DNS over HTTPS resolver. If a custom resolver is used, the name will be the domain of the URL.
+preferences-doh-resolver = Provider: { $name }
+# This is displayed instead of $name in preferences-doh-resolver
+# when the DoH URL is not a valid URL
+preferences-doh-bad-url = Invalid URL
+preferences-doh-steering-status = Using local provider
+
+preferences-doh-status-active = Active
+preferences-doh-status-disabled = Off
+# Variables:
+# $reason (string) - A string representation of the reason DoH is not active. For example NS_ERROR_UNKNOWN_HOST or TRR_RCODE_FAIL.
+preferences-doh-status-not-active = Not active ({ $reason })
+
+preferences-doh-group-message2 = Enable DNS over HTTPS using:
+
+preferences-doh-expand-section =
+ .tooltiptext = More information
+
+preferences-doh-setting-default =
+ .label = Default Protection
+ .accesskey = D
+preferences-doh-default-desc = { -brand-short-name } decides when to use secure DNS to protect your privacy.
+preferences-doh-default-detailed-desc-1 = Use secure DNS in regions where it’s available
+preferences-doh-default-detailed-desc-2 = Use your default DNS resolver if there is a problem with the secure DNS provider
+preferences-doh-default-detailed-desc-3 = Use a local provider, if possible
+preferences-doh-default-detailed-desc-4 = Turn off when VPN, parental control, or enterprise policies are active
+preferences-doh-default-detailed-desc-5 = Turn off when a network tells { -brand-short-name } it shouldn’t use secure DNS
+
+preferences-doh-setting-enabled =
+ .label = Increased Protection
+ .accesskey = I
+preferences-doh-enabled-desc = You control when to use secure DNS and choose your provider.
+preferences-doh-enabled-detailed-desc-1 = Use the provider you select
+preferences-doh-enabled-detailed-desc-2 = Only use your default DNS resolver if there is a problem with secure DNS
+
+preferences-doh-setting-strict =
+ .label = Max Protection
+ .accesskey = M
+preferences-doh-strict-desc = { -brand-short-name } will always use secure DNS. You’ll see a security risk warning before we use your system DNS.
+preferences-doh-strict-detailed-desc-1 = Only use the provider you select
+preferences-doh-strict-detailed-desc-2 = Always warn if secure DNS isn’t available
+preferences-doh-strict-detailed-desc-3 = If secure DNS is not available sites will not load or function properly
+
+preferences-doh-setting-off =
+ .label = Off
+ .accesskey = O
+preferences-doh-off-desc = Use your default DNS resolver
+
+preferences-doh-checkbox-warn =
+ .label = Warn if a third party actively prevents secure DNS
+ .accesskey = W
+
+preferences-doh-select-resolver = Choose provider:
+
+preferences-doh-exceptions-description = { -brand-short-name } won’t use secure DNS on these sites
+
+preferences-doh-manage-exceptions =
+ .label = Manage Exceptions…
+ .accesskey = x
+
+## The following strings are used in the Download section of settings
+
+desktop-folder-name = Desktop
+downloads-folder-name = Downloads
+choose-download-folder-title = Choose Download Folder:
diff --git a/browser/locales/en-US/browser/preferences/selectBookmark.ftl b/browser/locales/en-US/browser/preferences/selectBookmark.ftl
new file mode 100644
index 0000000000..e0d15bff79
--- /dev/null
+++ b/browser/locales/en-US/browser/preferences/selectBookmark.ftl
@@ -0,0 +1,9 @@
+# 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/.
+
+select-bookmark-window2 =
+ .title = Set Home Page
+ .style = min-width: 32em;
+
+select-bookmark-desc = Choose a Bookmark to be your Home Page. If you choose a folder, the Bookmarks in that folder will be opened in Tabs.
diff --git a/browser/locales/en-US/browser/preferences/siteDataSettings.ftl b/browser/locales/en-US/browser/preferences/siteDataSettings.ftl
new file mode 100644
index 0000000000..ee815acabb
--- /dev/null
+++ b/browser/locales/en-US/browser/preferences/siteDataSettings.ftl
@@ -0,0 +1,65 @@
+# 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/.
+
+## Settings
+
+site-data-settings-window =
+ .title = Manage Cookies and Site Data
+
+site-data-settings-description = The following websites store cookies and site data on your computer. { -brand-short-name } keeps data from websites with persistent storage until you delete it, and deletes data from websites with non-persistent storage as space is needed.
+
+site-data-search-textbox =
+ .placeholder = Search websites
+ .accesskey = S
+
+site-data-column-host =
+ .label = Site
+site-data-column-cookies =
+ .label = Cookies
+site-data-column-storage =
+ .label = Storage
+site-data-column-last-used =
+ .label = Last Used
+
+# This label is used in the "Host" column for local files, which have no host.
+site-data-local-file-host = (local file)
+
+site-data-remove-selected =
+ .label = Remove Selected
+ .accesskey = R
+
+site-data-settings-dialog =
+ .buttonlabelaccept = Save Changes
+ .buttonaccesskeyaccept = a
+
+# Variables:
+# $value (Number) - Value of the unit (for example: 4.6, 500)
+# $unit (String) - Name of the unit (for example: "bytes", "KB")
+site-storage-usage =
+ .value = { $value } { $unit }
+site-storage-persistent =
+ .value = { site-storage-usage.value } (Persistent)
+
+site-data-remove-all =
+ .label = Remove All
+ .accesskey = e
+
+site-data-remove-shown =
+ .label = Remove All Shown
+ .accesskey = e
+
+## Removing
+
+site-data-removing-dialog =
+ .title = { site-data-removing-header }
+ .buttonlabelaccept = Remove
+
+site-data-removing-header = Removing Cookies and Site Data
+
+site-data-removing-desc = Removing cookies and site data may log you out of websites. Are you sure you want to make the changes?
+# Variables:
+# $baseDomain (String) - The single domain for which data is being removed
+site-data-removing-single-desc = Removing cookies and site data may log you out of websites. Are you sure you want to remove cookies and site data for <strong>{ $baseDomain }</strong>?
+
+site-data-removing-table = Cookies and site data for the following websites will be removed
diff --git a/browser/locales/en-US/browser/preferences/translation.ftl b/browser/locales/en-US/browser/preferences/translation.ftl
new file mode 100644
index 0000000000..313641e5e2
--- /dev/null
+++ b/browser/locales/en-US/browser/preferences/translation.ftl
@@ -0,0 +1,40 @@
+# 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/.
+
+translation-window2 =
+ .title = Exceptions - Translation
+ .style = min-width: 36em
+
+translation-close-key =
+ .key = w
+
+translation-languages-disabled-desc = Translation will not be offered for the following languages
+
+translation-languages-column =
+ .label = Languages
+
+translation-languages-button-remove =
+ .label = Remove Language
+ .accesskey = R
+
+translation-languages-button-remove-all =
+ .label = Remove All Languages
+ .accesskey = e
+
+translation-sites-disabled-desc = Translation will not be offered for the following sites
+
+translation-sites-column =
+ .label = Websites
+
+translation-sites-button-remove =
+ .label = Remove Site
+ .accesskey = S
+
+translation-sites-button-remove-all =
+ .label = Remove All Sites
+ .accesskey = i
+
+translation-dialog =
+ .buttonlabelaccept = Close
+ .buttonaccesskeyaccept = C
diff --git a/browser/locales/en-US/browser/profile/default-bookmarks.ftl b/browser/locales/en-US/browser/profile/default-bookmarks.ftl
new file mode 100644
index 0000000000..e70e221d92
--- /dev/null
+++ b/browser/locales/en-US/browser/profile/default-bookmarks.ftl
@@ -0,0 +1,52 @@
+# 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/.
+
+# This file intentionally uses hard-coded brand names instead of Fluent terms.
+# This approach minimizes issues across multiple release channels and rebranded
+# versions.
+
+default-bookmarks-title = Bookmarks
+default-bookmarks-heading = Bookmarks
+
+default-bookmarks-toolbarfolder = Bookmarks Toolbar Folder
+default-bookmarks-toolbarfolder-description = Add bookmarks to this folder to see them displayed on the Bookmarks Toolbar
+
+# link title for https://www.mozilla.org/firefox/central/
+default-bookmarks-getting-started = Getting Started
+
+# Firefox links folder name
+default-bookmarks-firefox-heading = Mozilla Firefox
+
+# link title for https://www.mozilla.org/firefox/help/
+default-bookmarks-firefox-get-help = Get Help
+
+# link title for https://www.mozilla.org/firefox/customize/
+default-bookmarks-firefox-customize = Customize Firefox
+
+# link title for https://www.mozilla.org/contribute/
+default-bookmarks-firefox-community = Get Involved
+
+# link title for https://www.mozilla.org/about/
+default-bookmarks-firefox-about = About Us
+
+# Firefox Nightly links folder name
+default-bookmarks-nightly-heading = Firefox Nightly Resources
+
+# Nightly builds only, link title for https://blog.nightly.mozilla.org/
+default-bookmarks-nightly-blog = Firefox Nightly blog
+
+# Nightly builds only, link title for https://bugzilla.mozilla.org/
+default-bookmarks-bugzilla = Mozilla Bug Tracker
+
+# Nightly builds only, link title for https://developer.mozilla.org/
+default-bookmarks-mdn = Mozilla Developer Network
+
+# Nightly builds only, link title for https://addons.mozilla.org/firefox/addon/nightly-tester-tools/
+default-bookmarks-nightly-tester-tools = Nightly Tester Tools
+
+# Nightly builds only, link title for about:crashes
+default-bookmarks-crashes = All your crashes
+
+# Nightly builds only, link title for https://planet.mozilla.org/
+default-bookmarks-planet = Planet Mozilla
diff --git a/browser/locales/en-US/browser/protections.ftl b/browser/locales/en-US/browser/protections.ftl
new file mode 100644
index 0000000000..f183862ebe
--- /dev/null
+++ b/browser/locales/en-US/browser/protections.ftl
@@ -0,0 +1,233 @@
+# 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/.
+
+# Variables:
+# $count (Number) - Number of tracking events blocked.
+graph-week-summary =
+ { $count ->
+ [one] { -brand-short-name } blocked { $count } tracker over the past week
+ *[other] { -brand-short-name } blocked { $count } trackers over the past week
+ }
+
+# Variables:
+# $count (Number) - Number of tracking events blocked.
+# $earliestDate (Number) - Unix timestamp in ms, representing a date. The
+# earliest date recorded in the database.
+graph-total-tracker-summary =
+ { $count ->
+ [one] <b>{ $count }</b> tracker blocked since { DATETIME($earliestDate, day: "numeric", month: "long", year: "numeric") }
+ *[other] <b>{ $count }</b> trackers blocked since { DATETIME($earliestDate, day: "numeric", month: "long", year: "numeric") }
+ }
+
+# Text displayed instead of the graph when in Private Mode
+graph-private-window = { -brand-short-name } continues to block trackers in Private Windows, but does not keep a record of what was blocked.
+# Weekly summary of the graph when the graph is empty in Private Mode
+graph-week-summary-private-window = Trackers { -brand-short-name } blocked this week
+
+protection-report-webpage-title = Protections Dashboard
+protection-report-page-content-title = Protections Dashboard
+# This message shows when all privacy protections are turned off, which is why we use the word "can", Firefox is able to protect your privacy, but it is currently not.
+protection-report-page-summary = { -brand-short-name } can protect your privacy behind the scenes while you browse. This is a personalized summary of those protections, including tools to take control of your online security.
+# This message shows when at least some protections are turned on, we are more assertive compared to the message above, Firefox is actively protecting you.
+protection-report-page-summary-default = { -brand-short-name } protects your privacy behind the scenes while you browse. This is a personalized summary of those protections, including tools to take control of your online security.
+
+protection-report-settings-link = Manage your privacy and security settings
+
+etp-card-title-always = Enhanced Tracking Protection: Always On
+etp-card-title-custom-not-blocking = Enhanced Tracking Protection: OFF
+etp-card-content-description = { -brand-short-name } automatically stops companies from secretly following you around the web.
+protection-report-etp-card-content-custom-not-blocking = All protections are currently turned off. Choose which trackers to block by managing your { -brand-short-name } protections settings.
+protection-report-manage-protections = Manage settings
+
+# This string is used to label the X axis of a graph. Other days of the week are generated via Intl.DateTimeFormat,
+# capitalization for this string should match the output for your locale.
+graph-today = Today
+
+# This string is used to describe the graph for screenreader users.
+graph-legend-description = A graph containing the total number of each type of tracker blocked this week.
+
+social-tab-title = Social Media Trackers
+social-tab-contant = Social networks place trackers on other websites to follow what you do, see, and watch online. This allows social media companies to learn more about you beyond what you share on your social media profiles. <a data-l10n-name="learn-more-link">Learn more</a>
+
+cookie-tab-title = Cross-Site Tracking Cookies
+cookie-tab-content = These cookies follow you from site to site to gather data about what you do online. They are set by third parties such as advertisers and analytics companies. Blocking cross-site tracking cookies reduces the number of ads that follow you around. <a data-l10n-name="learn-more-link">Learn more</a>
+
+tracker-tab-title = Tracking Content
+tracker-tab-description = Websites may load external ads, videos, and other content with tracking code. Blocking tracking content can help sites load faster, but some buttons, forms, and login fields might not work. <a data-l10n-name="learn-more-link">Learn more</a>
+
+fingerprinter-tab-title = Fingerprinters
+fingerprinter-tab-content = Fingerprinters collect settings from your browser and computer to create a profile of you. Using this digital fingerprint, they can track you across different websites. <a data-l10n-name="learn-more-link">Learn more</a>
+
+cryptominer-tab-title = Cryptominers
+cryptominer-tab-content = Cryptominers use your system’s computing power to mine digital money. Cryptomining scripts drain your battery, slow down your computer, and can increase your energy bill. <a data-l10n-name="learn-more-link">Learn more</a>
+
+protections-close-button2 =
+ .aria-label = Close
+ .title = Close
+
+mobile-app-title = Block ad trackers across more devices
+mobile-app-card-content = Use the mobile browser with built-in protection against ad tracking.
+mobile-app-links = { -brand-product-name } Browser for <a data-l10n-name="android-mobile-inline-link">Android</a> and <a data-l10n-name="ios-mobile-inline-link">iOS</a>
+
+lockwise-title = Never forget a password again
+passwords-title-logged-in = Manage your passwords
+passwords-header-content = { -brand-product-name } securely stores your passwords in your browser.
+lockwise-header-content-logged-in = Securely store and sync your passwords to all your devices.
+protection-report-passwords-save-passwords-button = Save passwords
+ .title = Save passwords
+protection-report-passwords-manage-passwords-button = Manage passwords
+ .title = Manage passwords
+
+
+# Variables:
+# $count (Number) - Number of passwords exposed in data breaches.
+lockwise-scanned-text-breached-logins =
+ { $count ->
+ [one] 1 password may have been exposed in a data breach.
+ *[other] { $count } passwords may have been exposed in a data breach.
+ }
+
+# While English doesn't use the number in the plural form, you can add $count to your language
+# if needed for grammatical reasons.
+# Variables:
+# $count (Number) - Number of passwords stored in Lockwise.
+lockwise-scanned-text-no-breached-logins =
+ { $count ->
+ [one] 1 password stored securely.
+ *[other] Your passwords are being stored securely.
+ }
+lockwise-how-it-works-link = How it works
+
+monitor-title = Look out for data breaches
+monitor-link = How it works
+monitor-header-content-no-account = Check { -monitor-brand-name } to see if you’ve been part of a known data breach, and get alerts about new breaches.
+monitor-header-content-signed-in = { -monitor-brand-name } warns you if your info has appeared in a known data breach.
+monitor-sign-up-link = Sign up for breach alerts
+ .title = Sign up for breach alerts on { -monitor-brand-name }
+auto-scan = Automatically scanned today
+
+monitor-emails-tooltip =
+ .title = View monitored email addresses on { -monitor-brand-short-name }
+monitor-breaches-tooltip =
+ .title = View known data breaches on { -monitor-brand-short-name }
+monitor-passwords-tooltip =
+ .title = View exposed passwords on { -monitor-brand-short-name }
+
+# This string is displayed after a large numeral that indicates the total number
+# of email addresses being monitored. Don’t add $count to
+# your localization, because it would result in the number showing twice.
+info-monitored-emails =
+ { $count ->
+ [one] Email address being monitored
+ *[other] Email addresses being monitored
+ }
+
+# This string is displayed after a large numeral that indicates the total number
+# of known data breaches. Don’t add $count to
+# your localization, because it would result in the number showing twice.
+info-known-breaches-found =
+ { $count ->
+ [one] Known data breach has exposed your information
+ *[other] Known data breaches have exposed your information
+ }
+
+# This string is displayed after a large numeral that indicates the total number
+# of known data breaches that are marked as resolved by the user. Don’t add $count
+# to your localization, because it would result in the number showing twice.
+info-known-breaches-resolved =
+ { $count ->
+ [one] Known data breach marked as resolved
+ *[other] Known data breaches marked as resolved
+ }
+
+# This string is displayed after a large numeral that indicates the total number
+# of exposed passwords. Don’t add $count to
+# your localization, because it would result in the number showing twice.
+info-exposed-passwords-found =
+ { $count ->
+ [one] Password exposed across all breaches
+ *[other] Passwords exposed across all breaches
+ }
+
+# This string is displayed after a large numeral that indicates the total number
+# of exposed passwords that are marked as resolved by the user. Don’t add $count
+# to your localization, because it would result in the number showing twice.
+info-exposed-passwords-resolved =
+ { $count ->
+ [one] Password exposed in unresolved breaches
+ *[other] Passwords exposed in unresolved breaches
+ }
+
+monitor-no-breaches-title = Good news!
+monitor-no-breaches-description = You have no known breaches. If that changes, we will let you know.
+monitor-view-report-link = View report
+ .title = Resolve breaches on { -monitor-brand-short-name }
+monitor-breaches-unresolved-title = Resolve your breaches
+monitor-breaches-unresolved-description = After reviewing breach details and taking steps to protect your info, you can mark breaches as resolved.
+monitor-manage-breaches-link = Manage breaches
+ .title = Manage breaches on { -monitor-brand-short-name }
+monitor-breaches-resolved-title = Nice! You’ve resolved all known breaches.
+monitor-breaches-resolved-description = If your email appears in any new breaches, we will let you know.
+
+# Variables:
+# $numBreachesResolved (Number) - Number of breaches marked as resolved by the user on Monitor.
+# $numBreaches (Number) - Number of breaches in which a user's data was involved, detected by Monitor.
+monitor-partial-breaches-title =
+ { $numBreaches ->
+ *[other] { $numBreachesResolved } out of { $numBreaches } breaches marked as resolved
+ }
+
+# Variables:
+# $percentageResolved (Number) - Percentage of breaches marked as resolved by a user on Monitor.
+monitor-partial-breaches-percentage = { $percentageResolved }% complete
+
+monitor-partial-breaches-motivation-title-start = Great start!
+monitor-partial-breaches-motivation-title-middle = Keep it up!
+monitor-partial-breaches-motivation-title-end = Almost done! Keep it up.
+monitor-partial-breaches-motivation-description = Resolve the rest of your breaches on { -monitor-brand-short-name }.
+monitor-resolve-breaches-link = Resolve breaches
+ .title = Resolve breaches on { -monitor-brand-short-name }
+
+## The title attribute is used to display the type of protection.
+## The aria-label is spoken by screen readers to make the visual graph accessible to blind users.
+##
+## Variables:
+## $count (Number) - Number of specific trackers
+## $percentage (Number) - Percentage this type of tracker contributes to the whole graph
+
+bar-tooltip-social =
+ .title = Social Media Trackers
+ .aria-label =
+ { $count ->
+ [one] { $count } social media tracker ({ $percentage }%)
+ *[other] { $count } social media trackers ({ $percentage }%)
+ }
+bar-tooltip-cookie =
+ .title = Cross-Site Tracking Cookies
+ .aria-label =
+ { $count ->
+ [one] { $count } cross-site tracking cookie ({ $percentage }%)
+ *[other] { $count } cross-site tracking cookies ({ $percentage }%)
+ }
+bar-tooltip-tracker =
+ .title = Tracking Content
+ .aria-label =
+ { $count ->
+ [one] { $count } tracking content ({ $percentage }%)
+ *[other] { $count } tracking content ({ $percentage }%)
+ }
+bar-tooltip-fingerprinter =
+ .title = Fingerprinters
+ .aria-label =
+ { $count ->
+ [one] { $count } fingerprinter ({ $percentage }%)
+ *[other] { $count } fingerprinters ({ $percentage }%)
+ }
+bar-tooltip-cryptominer =
+ .title = Cryptominers
+ .aria-label =
+ { $count ->
+ [one] { $count } cryptominer ({ $percentage }%)
+ *[other] { $count } cryptominers ({ $percentage }%)
+ }
diff --git a/browser/locales/en-US/browser/protectionsPanel.ftl b/browser/locales/en-US/browser/protectionsPanel.ftl
new file mode 100644
index 0000000000..94b461d49e
--- /dev/null
+++ b/browser/locales/en-US/browser/protectionsPanel.ftl
@@ -0,0 +1,161 @@
+# 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/.
+
+protections-panel-sendreportview-error = There was an error sending the report. Please try again later.
+
+# A link shown when ETP is disabled for a site. Opens the breakage report subview when clicked.
+protections-panel-sitefixedsendreport-label = Site fixed? Send report
+
+## These strings are used to define the different levels of
+## Enhanced Tracking Protection.
+
+protections-popup-footer-protection-label-strict = Strict
+ .label = Strict
+protections-popup-footer-protection-label-custom = Custom
+ .label = Custom
+protections-popup-footer-protection-label-standard = Standard
+ .label = Standard
+
+##
+
+# The text a screen reader speaks when focused on the info button.
+protections-panel-etp-more-info =
+ .aria-label = More information about Enhanced Tracking Protection
+
+protections-panel-etp-on-header = Enhanced Tracking Protection is ON for this site
+protections-panel-etp-off-header = Enhanced Tracking Protection is OFF for this site
+
+## Text for the toggles shown when ETP is enabled/disabled for a given site.
+## .description is transferred into a separate paragraph by the moz-toggle
+## custom element code.
+## $host (String): the hostname of the site that is being displayed.
+
+protections-panel-etp-toggle-on =
+ .label = Enhanced Tracking Protection
+ .description = On for this site
+ .aria-label = Enhanced Tracking Protection: On for { $host }
+protections-panel-etp-toggle-off =
+ .label = Enhanced Tracking Protection
+ .description = Off for this site
+ .aria-label = Enhanced Tracking Protection: Off for { $host }
+
+# The link to be clicked to open the sub-panel view
+protections-panel-site-not-working = Site not working?
+
+# The heading/title of the sub-panel view
+protections-panel-site-not-working-view =
+ .title = Site Not Working?
+
+## The "Allowed" header also includes a "Why?" link that, when hovered, shows
+## a tooltip explaining why these items were not blocked in the page.
+
+protections-panel-not-blocking-why-label = Why?
+protections-panel-not-blocking-why-etp-on-tooltip-label =
+ .label = Blocking these could break elements of some websites. Without trackers, some buttons, forms, and login fields might not work.
+protections-panel-not-blocking-why-etp-off-tooltip-label =
+ .label = All trackers on this site have been loaded because protections are turned off.
+
+##
+
+protections-panel-no-trackers-found = No trackers known to { -brand-short-name } were detected on this page.
+
+protections-panel-content-blocking-tracking-protection = Tracking Content
+
+protections-panel-content-blocking-socialblock = Social Media Trackers
+protections-panel-content-blocking-cryptominers-label = Cryptominers
+protections-panel-content-blocking-fingerprinters-label = Fingerprinters
+
+## In the protections panel, Content Blocking category items are in three sections:
+## "Blocked" for categories being blocked in the current page,
+## "Allowed" for categories detected but not blocked in the current page, and
+## "None Detected" for categories not detected in the current page.
+## These strings are used in the header labels of each of these sections.
+
+protections-panel-blocking-label = Blocked
+protections-panel-not-blocking-label = Allowed
+protections-panel-not-found-label = None Detected
+
+##
+
+protections-panel-settings-label = Protection settings
+protections-panel-protectionsdashboard-label = Protections dashboard
+
+## In the Site Not Working? view, we suggest turning off protections if
+## the user is experiencing issues with any of a variety of functionality.
+
+# The header of the list
+protections-panel-site-not-working-view-header = Turn off protections if you’re having issues with:
+
+# The list items, shown in a <ul>
+protections-panel-site-not-working-view-issue-list-login-fields = Login fields
+protections-panel-site-not-working-view-issue-list-forms = Forms
+protections-panel-site-not-working-view-issue-list-payments = Payments
+protections-panel-site-not-working-view-issue-list-comments = Comments
+protections-panel-site-not-working-view-issue-list-videos = Videos
+protections-panel-site-not-working-view-issue-list-fonts = Fonts
+
+protections-panel-site-not-working-view-send-report = Send a report
+
+##
+
+protections-panel-cross-site-tracking-cookies = These cookies follow you from site to site to gather data about what you do online. They are set by third parties such as advertisers and analytics companies.
+protections-panel-cryptominers = Cryptominers use your system’s computing power to mine digital money. Cryptomining scripts drain your battery, slow down your computer, and can increase your energy bill.
+protections-panel-fingerprinters = Fingerprinters collect settings from your browser and computer to create a profile of you. Using this digital fingerprint, they can track you across different websites.
+protections-panel-tracking-content = Websites may load external ads, videos, and other content with tracking code. Blocking tracking content can help sites load faster, but some buttons, forms, and login fields might not work.
+protections-panel-social-media-trackers = Social networks place trackers on other websites to follow what you do, see, and watch online. This allows social media companies to learn more about you beyond what you share on your social media profiles.
+
+protections-panel-description-shim-allowed = Some trackers marked below have been partially unblocked on this page because you interacted with them.
+protections-panel-description-shim-allowed-learn-more = Learn more
+protections-panel-shim-allowed-indicator =
+ .tooltiptext = Tracker partially unblocked
+
+protections-panel-content-blocking-manage-settings =
+ .label = Manage protection settings
+ .accesskey = M
+
+protections-panel-content-blocking-breakage-report-view =
+ .title = Report a Broken Site
+protections-panel-content-blocking-breakage-report-view-description2 = Blocking certain trackers can cause problems with some websites. Reporting these problems helps make { -brand-short-name } better for everyone. Sending this report will send a URL and information about your browser settings to { -vendor-short-name }.
+protections-panel-content-blocking-breakage-report-view-collection-url = URL
+protections-panel-content-blocking-breakage-report-view-collection-url-label =
+ .aria-label = URL
+protections-panel-content-blocking-breakage-report-view-collection-comments = Optional: Describe the problem
+protections-panel-content-blocking-breakage-report-view-collection-comments-label =
+ .aria-label = Optional: Describe the problem
+protections-panel-content-blocking-breakage-report-view-cancel =
+ .label = Cancel
+protections-panel-content-blocking-breakage-report-view-send-report =
+ .label = Send Report
+
+# Cookie Banner Handling
+
+protections-panel-cookie-banner-blocker-header = Cookie Banner Blocker
+protections-panel-cookie-banner-handling-enabled = On for this site
+protections-panel-cookie-banner-handling-disabled = Off for this site
+protections-panel-cookie-banner-handling-undetected = Site currently not supported
+
+protections-panel-cookie-banner-blocker-view-title =
+ .title = Cookie Banner Blocker
+# Variables
+# $host (String): the hostname of the site that is being displayed.
+protections-panel-cookie-banner-blocker-view-turn-off-for-site = Turn off Cookie Banner Blocker for { $host }?
+protections-panel-cookie-banner-blocker-view-turn-on-for-site = Turn on Cookie Banner Blocker for this site?
+protections-panel-cookie-banner-view-cookie-clear-warning = { -brand-short-name } will clear this site’s cookies and refresh the page. Clearing all cookies may sign you out or empty shopping carts.
+protections-panel-cookie-banner-blocker-view-turn-on-description = Turn on and { -brand-short-name } will try to automatically refuse cookie banners on this site.
+protections-panel-cookie-banner-view-cancel-label =
+ .label = Cancel
+protections-panel-cookie-banner-view-turn-off-label =
+ .label = Turn Off
+protections-panel-cookie-banner-view-turn-on-label =
+ .label = Turn On
+
+protections-panel-report-broken-site =
+ .label = Report broken site
+ .title = Report broken site
+
+## Protections panel info message
+
+cfr-protections-panel-header = Browse without being followed
+cfr-protections-panel-body = Keep your data to yourself. { -brand-short-name } protects you from many of the most common trackers that follow what you do online.
+cfr-protections-panel-link-text = Learn more
diff --git a/browser/locales/en-US/browser/recentlyClosed.ftl b/browser/locales/en-US/browser/recentlyClosed.ftl
new file mode 100644
index 0000000000..46188692ea
--- /dev/null
+++ b/browser/locales/en-US/browser/recentlyClosed.ftl
@@ -0,0 +1,29 @@
+# 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/.
+
+## These strings are used in the main menu,
+## and should follow the same capitalization (title case for English).
+## Check menubar.ftl for reference.
+
+recently-closed-menu-reopen-all-tabs = Reopen All Tabs
+recently-closed-menu-reopen-all-windows = Reopen All Windows
+
+## These strings are used in the app menu,
+## and should follow the same capitalization (sentence case for English).
+## Check appmenu.ftl for reference.
+
+recently-closed-panel-reopen-all-tabs = Reopen all tabs
+recently-closed-panel-reopen-all-windows = Reopen all windows
+
+##
+
+# Variables:
+# $tabCount (Number): Number of other tabs
+# $winTitle (String): Window title
+recently-closed-undo-close-window-label =
+ { $tabCount ->
+ [0] { $winTitle }
+ [one] { $winTitle } (and { $tabCount } other tab)
+ *[other] { $winTitle } (and { $tabCount } other tabs)
+ }
diff --git a/browser/locales/en-US/browser/reportBrokenSite.ftl b/browser/locales/en-US/browser/reportBrokenSite.ftl
new file mode 100644
index 0000000000..428b6b15ee
--- /dev/null
+++ b/browser/locales/en-US/browser/reportBrokenSite.ftl
@@ -0,0 +1,53 @@
+# 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/.
+
+report-broken-site-mainview-title = Report broken site
+report-broken-site-panel-header =
+ .label = Report broken site
+ .title = Report broken site
+report-broken-site-panel-intro = Help make { -brand-product-name } better for everyone. { -vendor-short-name } uses the info you send to fix website problems.
+report-broken-site-panel-url = URL
+
+report-broken-site-panel-reason-label = What’s broken?
+report-broken-site-panel-reason-optional-label = What’s broken? (optional)
+
+report-broken-site-panel-reason-choose =
+ .label = Choose reason
+report-broken-site-panel-reason-slow =
+ .label = Site slow or not working
+report-broken-site-panel-reason-media =
+ .label = Images or videos
+report-broken-site-panel-reason-content =
+ .label = Buttons, links, and other content
+report-broken-site-panel-reason-account =
+ .label = Sign-in or Sign-out
+report-broken-site-panel-reason-adblockers =
+ .label = Ad blockers
+report-broken-site-panel-reason-other =
+ .label = Something else
+
+report-broken-site-panel-description-label = Describe the problem
+
+report-broken-site-panel-description-optional-label = Describe the problem (optional)
+
+report-broken-site-panel-send-more-info-link = Send more info
+
+report-broken-site-panel-button-cancel =
+ .label = Cancel
+
+report-broken-site-panel-button-okay =
+ .label = Okay
+
+report-broken-site-panel-button-send =
+ .label = Send
+
+report-broken-site-panel-unspecified = Unspecified
+report-broken-site-panel-report-sent-label = Your report has been sent
+report-broken-site-panel-report-sent-header =
+ .label = Your report has been sent
+ .title = Your report has been sent
+report-broken-site-panel-report-sent-text = Thank you for helping { -brand-product-name } make the web more open, accessible, and better for everyone.
+
+report-broken-site-panel-invalid-url-label = Please enter a valid URL
+report-broken-site-panel-missing-reason-label = Please choose a reason
diff --git a/browser/locales/en-US/browser/safeMode.ftl b/browser/locales/en-US/browser/safeMode.ftl
new file mode 100644
index 0000000000..dbe9f9fe78
--- /dev/null
+++ b/browser/locales/en-US/browser/safeMode.ftl
@@ -0,0 +1,15 @@
+# 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/.
+
+troubleshoot-mode-window =
+ .title = Open { -brand-short-name } in Troubleshoot Mode?
+ .style = max-width: 400px
+start-troubleshoot-mode =
+ .label = Open
+refresh-profile =
+ .label = Refresh { -brand-short-name }
+troubleshoot-mode-description = Use this special mode of { -brand-short-name } to diagnose issues. Your extensions and customizations will be temporarily disabled.
+skip-troubleshoot-refresh-profile = You can also skip troubleshooting and refresh { -brand-short-name }, instead.
+# Shown on the safe mode dialog after multiple startup crashes.
+auto-safe-mode-description = { -brand-short-name } closed unexpectedly while starting. This might be caused by add-ons or other problems. You can try to resolve the problem by troubleshooting in Safe Mode.
diff --git a/browser/locales/en-US/browser/safebrowsing/blockedSite.ftl b/browser/locales/en-US/browser/safebrowsing/blockedSite.ftl
new file mode 100644
index 0000000000..0df3926107
--- /dev/null
+++ b/browser/locales/en-US/browser/safebrowsing/blockedSite.ftl
@@ -0,0 +1,60 @@
+# 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/.
+
+safeb-blocked-phishing-page-title = Deceptive site ahead
+safeb-blocked-malware-page-title = Visiting this website may harm your computer
+safeb-blocked-unwanted-page-title = The site ahead may contain harmful programs
+safeb-blocked-harmful-page-title = The site ahead may contain malware
+safeb-blocked-phishing-page-short-desc = { -brand-short-name } blocked this page because it may trick you into doing something dangerous like installing software or revealing personal information like passwords or credit cards.
+safeb-blocked-malware-page-short-desc = { -brand-short-name } blocked this page because it might attempt to install malicious software that may steal or delete personal information on your computer.
+safeb-blocked-unwanted-page-short-desc = { -brand-short-name } blocked this page because it might try to trick you into installing programs that harm your browsing experience (for example, by changing your homepage or showing extra ads on sites you visit).
+safeb-blocked-harmful-page-short-desc = { -brand-short-name } blocked this page because it might try to install dangerous apps that steal or delete your information (for example, photos, passwords, messages and credit cards).
+# Variables:
+# $advisoryname (string) - Name of the advisory entity
+safeb-palm-advisory-desc = Advisory provided by <a data-l10n-name='advisory_provider'>{ $advisoryname }</a>.
+safeb-palm-accept-label = Go back
+safeb-palm-see-details-label = See details
+
+## Variables
+## $sitename (string) - Domain name for the blocked page
+
+safeb-blocked-phishing-page-error-desc-override = <span data-l10n-name='sitename'>{ $sitename }</span> has been <a data-l10n-name='error_desc_link'>reported as a deceptive site</a>. You can <a data-l10n-name='report_detection'>report a detection problem</a> or <a data-l10n-name='ignore_warning_link'>ignore the risk</a> and go to this unsafe site.
+safeb-blocked-phishing-page-error-desc-no-override = <span data-l10n-name='sitename'>{ $sitename }</span> has been <a data-l10n-name='error_desc_link'>reported as a deceptive site</a>. You can <a data-l10n-name='report_detection'>report a detection problem</a>.
+
+##
+
+safeb-blocked-phishing-page-learn-more = Learn more about deceptive sites and phishing at <a data-l10n-name='learn_more_link'>www.antiphishing.org</a>. Learn more about { -brand-short-name }’s Phishing and Malware Protection at <a data-l10n-name='firefox_support'>support.mozilla.org</a>.
+
+## Variables
+## $sitename (string) - Domain name for the blocked page
+
+safeb-blocked-malware-page-error-desc-override-sumo = <span data-l10n-name='sitename'>{ $sitename }</span> has been <a data-l10n-name='error_desc_link'>reported as containing malicious software</a>. You can <a data-l10n-name='ignore_warning_link'>ignore the risk</a> and go to this unsafe site.
+safeb-blocked-malware-page-error-desc-no-override-sumo = <span data-l10n-name='sitename'>{ $sitename }</span> has been <a data-l10n-name='error_desc_link'>reported as containing malicious software</a>.
+
+##
+
+safeb-blocked-malware-page-learn-more-sumo = Learn more about { -brand-short-name }’s Phishing and Malware Protection at <a data-l10n-name='firefox_support'>support.mozilla.org</a>.
+
+## Variables
+## $sitename (string) - Domain name for the blocked page
+
+safeb-blocked-unwanted-page-error-desc-override = <span data-l10n-name='sitename'>{ $sitename }</span> has been <a data-l10n-name='error_desc_link'>reported as containing harmful software</a>. You can <a data-l10n-name='ignore_warning_link'>ignore the risk</a> and go to this unsafe site.
+safeb-blocked-unwanted-page-error-desc-no-override = <span data-l10n-name='sitename'>{ $sitename }</span> has been <a data-l10n-name='error_desc_link'>reported as containing harmful software</a>.
+
+##
+
+safeb-blocked-unwanted-page-learn-more = Learn more about harmful and unwanted software at <a data-l10n-name='learn_more_link'>Unwanted Software Policy</a>. Learn more about { -brand-short-name }’s Phishing and Malware Protection at <a data-l10n-name='firefox_support'>support.mozilla.org</a>.
+
+## Variables
+## $sitename (string) - Domain name for the blocked page
+
+safeb-blocked-harmful-page-error-desc-override = <span data-l10n-name='sitename'>{ $sitename }</span> has been <a data-l10n-name='error_desc_link'>reported as containing a potentially harmful application</a>. You can <a data-l10n-name='ignore_warning_link'>ignore the risk</a> and go to this unsafe site.
+safeb-blocked-harmful-page-error-desc-no-override = <span data-l10n-name='sitename'>{ $sitename }</span> has been <a data-l10n-name='error_desc_link'>reported as containing a potentially harmful application</a>.
+
+##
+
+safeb-blocked-harmful-page-learn-more = Learn more about { -brand-short-name }’s Phishing and Malware Protection at <a data-l10n-name='firefox_support'>support.mozilla.org</a>.
+safeb-palm-notdeceptive =
+ .label = This isn’t a deceptive site…
+ .accesskey = d
diff --git a/browser/locales/en-US/browser/sanitize.ftl b/browser/locales/en-US/browser/sanitize.ftl
new file mode 100644
index 0000000000..df5bb713f3
--- /dev/null
+++ b/browser/locales/en-US/browser/sanitize.ftl
@@ -0,0 +1,164 @@
+# 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/.
+
+sanitize-prefs2 =
+ .title = Settings for Clearing History
+ .style = min-width: 34em
+
+sanitize-prefs-style =
+ .style = width: 17em
+
+sanitize-dialog-title2 =
+ .title = Clear browsing data and cookies
+ .style = min-width: 34em
+
+sanitize-dialog-title =
+ .title = Clear Recent History
+ .style = min-width: 34em
+
+# When "Time range to clear" is set to "Everything", this message is used for the
+# title instead of dialog-title.
+sanitize-dialog-title-everything =
+ .title = Clear All History
+ .style = min-width: 34em
+
+clear-data-settings-label = When closed, { -brand-short-name } should automatically clear all
+
+sanitize-on-shutdown-description = Automatically clear all checked items when { -brand-short-name } closes.
+
+## clear-time-duration-prefix is followed by a dropdown list, with
+## values localized using clear-time-duration-value-* messages.
+## clear-time-duration-suffix is left empty in English, but can be
+## used in other languages to change the structure of the message.
+##
+## This results in English:
+## Time range to clear: (Last Hour, Today, etc.)
+
+clear-time-duration-prefix =
+ .value = Time range to clear:{ " " }
+ .accesskey = T
+
+clear-time-duration-prefix2 =
+ .value = When:
+ .accesskey = W
+
+clear-time-duration-value-last-hour =
+ .label = Last hour
+
+clear-time-duration-value-last-2-hours =
+ .label = Last two hours
+
+clear-time-duration-value-last-4-hours =
+ .label = Last four hours
+
+clear-time-duration-value-today =
+ .label = Today
+
+clear-time-duration-value-everything =
+ .label = Everything
+
+clear-time-duration-suffix =
+ .value = { "" }
+
+## These strings are used as section comments and checkboxes
+## to select the items to remove
+
+history-section-label = History
+
+item-history-and-downloads =
+ .label = Browsing & download history
+ .accesskey = B
+
+item-history-form-data-downloads =
+ .label = History
+ .accesskey = H
+
+item-history-form-data-downloads-description = Clears site and download history, saved form info, and searches
+
+item-cookies =
+ .label = Cookies
+ .accesskey = C
+
+# Variables:
+# $amount (Number) - Amount of site data currently stored on disk
+# $unit (String) - Abbreviation of the unit that $amount is in, e.g. "MB"
+item-cookies-site-data-with-size =
+ .label = Cookies and site data ({ $amount } { $unit })
+ .accesskey = e
+
+item-cookies-site-data =
+ .label = Cookies and site data
+ .accesskey = e
+
+item-cookies-site-data-description = May sign you out of sites or empty shopping carts
+
+item-active-logins =
+ .label = Active logins
+ .accesskey = l
+
+item-cache =
+ .label = Cache
+ .accesskey = a
+
+# Variables:
+# $amount (Number) - Amount of cached data
+# $unit (String) - Abbreviation of the unit that $amount is in, e.g. "MB"
+item-cached-content-with-size =
+ .label = Temporary cached files and pages ({ $amount } { $unit })
+ .accesskey = f
+
+item-cached-content =
+ .label = Temporary cached files and pages
+ .accesskey = f
+
+item-cached-content-description = Clears items that helps sites load faster
+
+item-form-search-history =
+ .label = Form & search history
+ .accesskey = F
+
+item-site-prefs =
+ .label = Site settings
+ .accesskey = i
+
+item-site-prefs-description = Resets your permissions and site preferences to original settings
+
+data-section-label = Data
+
+item-site-settings =
+ .label = Site settings
+ .accesskey = S
+
+item-offline-apps =
+ .label = Offline website data
+ .accesskey = O
+
+sanitize-everything-undo-warning = This action cannot be undone.
+
+window-close =
+ .key = w
+
+sanitize-button-ok =
+ .label = Clear Now
+
+sanitize-button-ok2 =
+ .label = Clear
+
+sanitize-button-ok-on-shutdown =
+ .label = Save Changes
+
+# The label for the default button between the user clicking it and the window
+# closing. Indicates the items are being cleared.
+sanitize-button-clearing =
+ .label = Clearing
+
+# Warning that appears when "Time range to clear" is set to "Everything" in Clear
+# Recent History dialog, provided that the user has not modified the default set
+# of history items to clear.
+sanitize-everything-warning = All history will be cleared.
+
+# Warning that appears when "Time range to clear" is set to "Everything" in Clear
+# Recent History dialog, provided that the user has modified the default set of
+# history items to clear.
+sanitize-selected-warning = All selected items will be cleared.
diff --git a/browser/locales/en-US/browser/screenshots.ftl b/browser/locales/en-US/browser/screenshots.ftl
new file mode 100644
index 0000000000..1ccf631ae1
--- /dev/null
+++ b/browser/locales/en-US/browser/screenshots.ftl
@@ -0,0 +1,60 @@
+# 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/.
+
+screenshot-toolbarbutton =
+ .label = Screenshot
+ .tooltiptext = Take a screenshot
+
+screenshot-shortcut =
+ .key = S
+
+screenshots-instructions = Drag or click on the page to select a region. Press ESC to cancel.
+screenshots-cancel-button = Cancel
+screenshots-save-visible-button = Save visible
+screenshots-save-page-button = Save full page
+screenshots-download-button = Download
+screenshots-download-button-tooltip = Download screenshot
+screenshots-copy-button = Copy
+screenshots-copy-button-tooltip = Copy screenshot to clipboard
+screenshots-download-button-title =
+ .title = Download screenshot
+screenshots-copy-button-title =
+ .title = Copy screenshot to clipboard
+screenshots-cancel-button-title =
+ .title = Cancel
+screenshots-retry-button-title =
+ .title = Retry screenshot
+
+screenshots-meta-key = {
+ PLATFORM() ->
+ [macos] ⌘
+ *[other] Ctrl
+}
+screenshots-notification-link-copied-title = Link Copied
+screenshots-notification-link-copied-details = The link to your shot has been copied to the clipboard. Press {screenshots-meta-key}-V to paste.
+
+screenshots-notification-image-copied-title = Shot Copied
+screenshots-notification-image-copied-details = Your shot has been copied to the clipboard. Press {screenshots-meta-key}-V to paste.
+
+screenshots-request-error-title = Out of order.
+screenshots-request-error-details = Sorry! We couldn’t save your shot. Please try again later.
+
+screenshots-connection-error-title = We can’t connect to your screenshots.
+screenshots-connection-error-details = Please check your Internet connection. If you are able to connect to the Internet, there may be a temporary problem with the { -screenshots-brand-name } service.
+
+screenshots-login-error-details = We couldn’t save your shot because there is a problem with the { -screenshots-brand-name } service. Please try again later.
+
+screenshots-unshootable-page-error-title = We can’t screenshot this page.
+screenshots-unshootable-page-error-details = This isn’t a standard Web page, so you can’t take a screenshot of it.
+
+screenshots-empty-selection-error-title = Your selection is too small
+
+screenshots-private-window-error-title = { -screenshots-brand-name } is disabled in Private Browsing Mode
+screenshots-private-window-error-details = Sorry for the inconvenience. We are working on this feature for future releases.
+
+screenshots-generic-error-title = Whoa! { -screenshots-brand-name } went haywire.
+screenshots-generic-error-details = We’re not sure what just happened. Care to try again or take a shot of a different page?
+
+screenshots-too-large-error-title = Your screenshot was cropped because it was too large
+screenshots-too-large-error-details = Try selecting a region that’s smaller than 32,700 pixels on its longest side or 124,900,000 pixels total area.
diff --git a/browser/locales/en-US/browser/screenshotsOverlay.ftl b/browser/locales/en-US/browser/screenshotsOverlay.ftl
new file mode 100644
index 0000000000..ab8d8740a1
--- /dev/null
+++ b/browser/locales/en-US/browser/screenshotsOverlay.ftl
@@ -0,0 +1,15 @@
+# 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/.
+
+screenshots-overlay-cancel-button = Cancel
+screenshots-overlay-instructions = Drag or click on the page to select a region. Press ESC to cancel.
+screenshots-overlay-download-button = Download
+screenshots-overlay-copy-button = Copy
+
+# This string represents the selection size area
+# "x" here represents "by" (i.e 123 by 456)
+# Variables:
+# $width (Number) - The width of the selection region in pixels
+# $height (Number) - The height of the selection region in pixels
+screenshots-overlay-selection-region-size = { $width } x { $height }
diff --git a/browser/locales/en-US/browser/search.ftl b/browser/locales/en-US/browser/search.ftl
new file mode 100644
index 0000000000..c6f3e8cde3
--- /dev/null
+++ b/browser/locales/en-US/browser/search.ftl
@@ -0,0 +1,38 @@
+# 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/.
+
+## These strings are used for errors when installing OpenSearch engines, e.g.
+## via "Add Search Engine" on the address bar or search bar.
+## Variables
+## $location-url (String) - the URL of the OpenSearch engine that was attempted to be installed.
+
+opensearch-error-duplicate-title = Install Error
+opensearch-error-duplicate-desc = { -brand-short-name } could not install the search plugin from “{ $location-url }” because an engine with the same name already exists.
+
+opensearch-error-format-title = Invalid Format
+opensearch-error-format-desc = { -brand-short-name } could not install the search engine from: { $location-url }
+
+opensearch-error-download-title = Download Error
+opensearch-error-download-desc =
+ { -brand-short-name } could not download the search plugin from: { $location-url }
+
+##
+
+searchbar-submit =
+ .tooltiptext = Submit search
+
+# This string is displayed in the search box when the input field is empty
+searchbar-input =
+ .placeholder = Search
+
+searchbar-icon =
+ .tooltiptext = Search
+
+## Infobar shown when search engine is removed and replaced.
+## Variables
+## $oldEngine (String) - the search engine to be removed.
+## $newEngine (String) - the search engine to replace the removed search engine.
+
+removed-search-engine-message2 = <strong>Your default search engine has been changed.</strong> { $oldEngine } is no longer available as a default search engine in { -brand-short-name }. { $newEngine } is now your default search engine. To change to another default search engine, go to settings.
+remove-search-engine-button = OK
diff --git a/browser/locales/en-US/browser/setDesktopBackground.ftl b/browser/locales/en-US/browser/setDesktopBackground.ftl
new file mode 100644
index 0000000000..53d35fbf86
--- /dev/null
+++ b/browser/locales/en-US/browser/setDesktopBackground.ftl
@@ -0,0 +1,40 @@
+# 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/.
+
+set-desktop-background-window =
+ .title = Set Desktop Background
+
+set-desktop-background-accept =
+ .label = Set Desktop Background
+
+open-desktop-prefs =
+ .label = Open Desktop Preferences
+
+set-background-preview-unavailable = Preview unavailable
+
+# This refers to the wallpaper "spanning" multiple monitors when the
+# user has more than one. Only some of the entire image will be on
+# each monitor. This should ideally match the wording in Windows' own
+# Desktop Background settings page.
+set-background-span =
+ .label = Span
+
+set-background-color = Color:
+
+set-background-position = Position:
+
+set-background-tile =
+ .label = Tile
+
+set-background-center =
+ .label = Center
+
+set-background-stretch =
+ .label = Stretch
+
+set-background-fill =
+ .label = Fill
+
+set-background-fit =
+ .label = Fit
diff --git a/browser/locales/en-US/browser/shopping.ftl b/browser/locales/en-US/browser/shopping.ftl
new file mode 100644
index 0000000000..ae6c47ae8b
--- /dev/null
+++ b/browser/locales/en-US/browser/shopping.ftl
@@ -0,0 +1,272 @@
+# 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/.
+
+shopping-page-title = { -brand-product-name } Shopping
+
+# Title for page showing where a user can check the
+# review quality of online shopping product reviews
+shopping-main-container-title = Review Checker
+shopping-beta-marker = Beta
+# This string is for ensuring that screen reader technology
+# can read out the "Beta" part of the shopping sidebar header.
+# Any changes to shopping-main-container-title and
+# shopping-beta-marker should also be reflected here.
+shopping-a11y-header =
+ .aria-label = Review Checker - beta
+shopping-close-button =
+ .title = Close
+# This string is for notifying screen reader users that the
+# sidebar is still loading data.
+shopping-a11y-loading =
+ .aria-label = Loading…
+
+## Strings for the letter grade component.
+## For now, we only support letter grades A, B, C, D and F.
+## Letter A indicates the highest grade, and F indicates the lowest grade.
+## Letters are hardcoded and cannot be localized.
+
+shopping-letter-grade-description-ab = Reliable reviews
+shopping-letter-grade-description-c = Mix of reliable and unreliable reviews
+shopping-letter-grade-description-df = Unreliable reviews
+
+# This string is displayed in a tooltip that appears when the user hovers
+# over the letter grade component without a visible description.
+# It is also used for screen readers.
+# $letter (String) - The letter grade as A, B, C, D or F (hardcoded).
+# $description (String) - The localized letter grade description. See shopping-letter-grade-description-* strings above.
+shopping-letter-grade-tooltip =
+ .title = { $letter } - { $description }
+
+## Strings for the shopping message-bar
+
+shopping-message-bar-warning-stale-analysis-message-2 = New info to check
+shopping-message-bar-warning-stale-analysis-button = Check now
+
+shopping-message-bar-generic-error =
+ .heading = No info available right now
+ .message = We’re working to resolve the issue. Please check back soon.
+
+shopping-message-bar-warning-not-enough-reviews =
+ .heading = Not enough reviews yet
+ .message = When this product has more reviews, we’ll be able to check their quality.
+
+shopping-message-bar-warning-product-not-available =
+ .heading = Product is not available
+ .message = If you see this product is back in stock, report it and we’ll work on checking the reviews.
+shopping-message-bar-warning-product-not-available-button2 = Report product is in stock
+
+shopping-message-bar-thanks-for-reporting =
+ .heading = Thanks for reporting!
+ .message = We should have info about this product’s reviews within 24 hours. Please check back.
+
+shopping-message-bar-warning-product-not-available-reported =
+ .heading = Info coming soon
+ .message = We should have info about this product’s reviews within 24 hours. Please check back.
+
+shopping-message-bar-analysis-in-progress-title2 = Checking review quality
+shopping-message-bar-analysis-in-progress-message2 = This could take about 60 seconds.
+
+# Variables:
+# $percentage (Number) - The percentage complete that the analysis is, per our servers.
+shopping-message-bar-analysis-in-progress-with-amount = Checking review quality ({ $percentage }%)
+
+shopping-message-bar-page-not-supported =
+ .heading = We can’t check these reviews
+ .message = Unfortunately, we can’t check the review quality for certain types of products. For example, gift cards and streaming video, music, and games.
+
+shopping-message-bar-keep-closed-header =
+ .heading = Keep closed?
+ .message = You can update your settings to keep Review Checker closed by default. Right now, it opens automatically.
+shopping-message-bar-keep-closed-dismiss-button = No thanks
+shopping-message-bar-keep-closed-accept-button = Yes, keep closed
+
+## Strings for the product review snippets card
+
+shopping-highlights-label =
+ .label = Highlights from recent reviews
+
+shopping-highlight-price = Price
+shopping-highlight-quality = Quality
+shopping-highlight-shipping = Shipping
+shopping-highlight-competitiveness = Competitiveness
+shopping-highlight-packaging = Packaging
+
+## Strings for show more card
+
+shopping-show-more-button = Show more
+shopping-show-less-button = Show less
+
+## Strings for the settings card
+
+shopping-settings-label =
+ .label = Settings
+shopping-settings-recommendations-toggle =
+ .label = Show ads in Review Checker
+shopping-settings-recommendations-learn-more2 =
+ You’ll see occasional ads for relevant products. We only advertise products with reliable reviews. <a data-l10n-name="review-quality-url">Learn more</a>
+shopping-settings-opt-out-button = Turn off Review Checker
+powered-by-fakespot = Review Checker is powered by <a data-l10n-name="fakespot-link">{ -fakespot-brand-full-name }</a>.
+
+shopping-settings-auto-open-toggle =
+ .label = Automatically open Review Checker
+
+# Description text for regions where we support three sites. Sites are limited to Amazon, Walmart and Best Buy.
+# Variables:
+# $firstSite (String) - The first shopping page name
+# $secondSite (String) - The second shopping page name
+# $thirdSite (String) - The third shopping page name
+shopping-settings-auto-open-description-three-sites = When you view products on { $firstSite }, { $secondSite }, and { $thirdSite }
+
+# Description text for regions where we support only one site (e.g. currently used in FR/DE with Amazon).
+# Variables:
+# $currentSite (String) - The current shopping page name
+shopping-settings-auto-open-description-single-site = When you view products on { $currentSite }
+
+shopping-settings-sidebar-enabled-state = Review Checker is <strong>On</strong>
+
+## Strings for the adjusted rating component
+
+# "Adjusted rating" means a star rating that has been adjusted to include only
+# reliable reviews.
+shopping-adjusted-rating-label =
+ .label = Adjusted rating
+shopping-adjusted-rating-unreliable-reviews = Unreliable reviews removed
+
+## Strings for the review reliability component
+
+shopping-review-reliability-label =
+ .label = How reliable are these reviews?
+
+## Strings for the analysis explainer component
+
+shopping-analysis-explainer-label =
+ .label = How we determine review quality
+shopping-analysis-explainer-intro2 =
+ We use AI technology from { -fakespot-brand-full-name } to check the reliability of product reviews. This will only help you assess review quality, not product quality.
+shopping-analysis-explainer-grades-intro =
+ We assign each product’s reviews a <strong>letter grade</strong> from A to F.
+shopping-analysis-explainer-adjusted-rating-description =
+ The <strong>adjusted rating</strong> is based only on reviews we believe to be reliable.
+shopping-analysis-explainer-learn-more2 =
+ Learn more about <a data-l10n-name="review-quality-url">how { -fakespot-brand-name } determines review quality</a>.
+
+# This string includes the short brand name of one of the three supported
+# websites, which will be inserted without being translated.
+# $retailer (String) - capitalized name of the shopping website, for example, "Amazon".
+shopping-analysis-explainer-highlights-description =
+ <strong>Highlights</strong> are from { $retailer } reviews within the last 80 days that we believe to be reliable.
+
+shopping-analysis-explainer-review-grading-scale-reliable = Reliable reviews. We believe the reviews are likely from real customers who left honest, unbiased reviews.
+shopping-analysis-explainer-review-grading-scale-mixed = We believe there’s a mix of reliable and unreliable reviews.
+shopping-analysis-explainer-review-grading-scale-unreliable = Unreliable reviews. We believe the reviews are likely fake or from biased reviewers.
+
+## Strings for UrlBar button
+
+shopping-sidebar-open-button2 =
+ .tooltiptext = Open Review Checker
+shopping-sidebar-close-button2 =
+ .tooltiptext = Close Review Checker
+
+## Strings for the unanalyzed product card.
+## The word 'analyzer' when used here reflects what this tool is called on
+## fakespot.com. If possible, a different word should be used for the Fakespot
+## tool (the Fakespot by Mozilla 'analyzer') other than 'checker', which is
+## used in the name of the Firefox feature ('Review Checker'). If that is not
+## possible - if these terms are not meaningfully different - that is OK.
+
+shopping-unanalyzed-product-header-2 = No info about these reviews yet
+shopping-unanalyzed-product-message-2 = To know whether this product’s reviews are reliable, check the review quality. It only takes about 60 seconds.
+shopping-unanalyzed-product-analyze-button = Check review quality
+
+## Strings for the advertisement
+
+more-to-consider-ad-label =
+ .label = More to consider
+ad-by-fakespot = Ad by { -fakespot-brand-name }
+
+## Shopping survey strings.
+
+shopping-survey-headline = Help improve { -brand-product-name }
+shopping-survey-question-one = How satisfied are you with the Review Checker experience in { -brand-product-name }?
+
+shopping-survey-q1-radio-1-label = Very satisfied
+shopping-survey-q1-radio-2-label = Satisfied
+shopping-survey-q1-radio-3-label = Neutral
+shopping-survey-q1-radio-4-label = Dissatisfied
+shopping-survey-q1-radio-5-label = Very dissatisfied
+
+shopping-survey-question-two = Does the Review Checker make it easier for you to make purchase decisions?
+
+shopping-survey-q2-radio-1-label = Yes
+shopping-survey-q2-radio-2-label = No
+shopping-survey-q2-radio-3-label = I don’t know
+
+shopping-survey-next-button-label = Next
+shopping-survey-submit-button-label = Submit
+shopping-survey-terms-link = Terms of use
+shopping-survey-thanks =
+ .heading = Thanks for your feedback!
+
+## Shopping Feature Callout strings.
+## "price tag" refers to the price tag icon displayed in the address bar to
+## access the feature.
+
+shopping-callout-closed-opted-in-subtitle = Get back to <strong>Review Checker</strong> whenever you see the price tag.
+
+shopping-callout-pdp-opted-in-title = Are these reviews reliable? Find out fast.
+shopping-callout-pdp-opted-in-subtitle = Open Review Checker to see an adjusted rating with unreliable reviews removed. Plus, see highlights from recent authentic reviews.
+
+shopping-callout-closed-not-opted-in-title = One click to reliable reviews
+shopping-callout-closed-not-opted-in-subtitle = Give Review Checker a try whenever you see the price tag. Get insights from real shoppers quickly — before you buy.
+
+shopping-callout-closed-not-opted-in-revised-title = One click to trustworthy reviews
+shopping-callout-closed-not-opted-in-revised-subtitle = Just click the price tag icon in the address bar to get back to Review Checker.
+shopping-callout-closed-not-opted-in-revised-button = Got it
+
+shopping-callout-not-opted-in-reminder-title = Shop with confidence
+shopping-callout-not-opted-in-reminder-subtitle = Not sure if a product’s reviews are real or fake? Review Checker from { -brand-product-name } can help.
+shopping-callout-not-opted-in-reminder-open-button = Open Review Checker
+shopping-callout-not-opted-in-reminder-close-button = Dismiss
+shopping-callout-not-opted-in-reminder-ignore-checkbox = Don’t show again
+shopping-callout-not-opted-in-reminder-img-alt =
+ .aria-label = Abstract illustration of three product reviews. One has a warning symbol indicating it may not be trustworthy.
+
+shopping-callout-disabled-auto-open-title = Review Checker is now closed by default
+shopping-callout-disabled-auto-open-subtitle = Click the price tag icon in the address bar whenever you want to see if you can trust a product’s reviews.
+shopping-callout-disabled-auto-open-button = Got it
+
+shopping-callout-opted-out-title = Review Checker is off
+shopping-callout-opted-out-subtitle = To turn it back on, click the price tag icon in the address bar and follow the prompts.
+shopping-callout-opted-out-button = Got it
+
+## Onboarding message strings.
+
+shopping-onboarding-headline = Try our trusted guide to product reviews
+
+# Dynamic subtitle. Sites are limited to Amazon, Walmart or Best Buy.
+# Variables:
+# $currentSite (str) - The current shopping page name
+# $secondSite (str) - A second shopping page name
+# $thirdSite (str) - A third shopping page name
+shopping-onboarding-dynamic-subtitle-1 = See how reliable product reviews are on <b>{ $currentSite }</b> before you buy. Review Checker, an experimental feature from { -brand-product-name }, is built right into the browser. It works on <b>{ $secondSite }</b> and <b>{ $thirdSite }</b>, too.
+
+# Subtitle for countries where we only support one shopping website (e.g. currently used in FR/DE with Amazon)
+# Variables:
+# $currentSite (str) - The current shopping page name
+shopping-onboarding-single-subtitle = See how reliable product reviews are on <b>{ $currentSite }</b> before you buy. Review Checker, an experimental feature from { -brand-product-name }, is built right into the browser.
+
+shopping-onboarding-body = Using the power of { -fakespot-brand-full-name }, we help you avoid biased and inauthentic reviews. Our AI model is always improving to protect you as you shop. <a data-l10n-name="learn_more">Learn more</a>
+shopping-onboarding-opt-in-privacy-policy-and-terms-of-use3 = By selecting “{ shopping-onboarding-opt-in-button }“ you agree to { -brand-product-name }’s <a data-l10n-name="privacy_policy">privacy policy</a> and { -fakespot-brand-name }’s <a data-l10n-name="terms_of_use">terms of use.</a>
+shopping-onboarding-opt-in-button = Yes, try it
+shopping-onboarding-not-now-button = Not now
+shopping-onboarding-dialog-close-button =
+ .title = Close
+ .aria-label = Close
+
+# Aria-label to make the "steps" of the shopping onboarding container visible to screen readers.
+# Variables:
+# $current (Int) - Number of the current page
+# $total (Int) - Total number of pages
+shopping-onboarding-welcome-steps-indicator-label =
+ .aria-label = Progress: step { $current } of { $total }
diff --git a/browser/locales/en-US/browser/sidebarMenu.ftl b/browser/locales/en-US/browser/sidebarMenu.ftl
new file mode 100644
index 0000000000..746a2084df
--- /dev/null
+++ b/browser/locales/en-US/browser/sidebarMenu.ftl
@@ -0,0 +1,18 @@
+# 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/.
+
+sidebar-menu-bookmarks =
+ .label = Bookmarks
+
+sidebar-menu-history =
+ .label = History
+
+sidebar-menu-synced-tabs =
+ .label = Synced Tabs
+
+sidebar-menu-close =
+ .label = Close Sidebar
+
+sidebar-close-button =
+ .tooltiptext = Close sidebar
diff --git a/browser/locales/en-US/browser/sitePermissions.ftl b/browser/locales/en-US/browser/sitePermissions.ftl
new file mode 100644
index 0000000000..52671a2ccf
--- /dev/null
+++ b/browser/locales/en-US/browser/sitePermissions.ftl
@@ -0,0 +1,12 @@
+# 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/.
+
+# This string is used to display the option to open blocked popup(s) in site permission management panels.
+# Variables:
+# $count (String) - Number of blocked pop-ups
+site-permissions-open-blocked-popups =
+ { $count ->
+ [one] Open { $count } blocked pop-up…
+ *[other] Open { $count } blocked pop-ups…
+ }
diff --git a/browser/locales/en-US/browser/siteProtections.ftl b/browser/locales/en-US/browser/siteProtections.ftl
new file mode 100644
index 0000000000..d2436b6392
--- /dev/null
+++ b/browser/locales/en-US/browser/siteProtections.ftl
@@ -0,0 +1,106 @@
+# 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/.
+
+content-blocking-trackers-view-empty = None detected on this site
+
+content-blocking-cookies-blocking-trackers-label = Cross-Site Tracking Cookies
+content-blocking-cookies-blocking-third-party-label = Third-Party Cookies
+content-blocking-cookies-blocking-unvisited-label = Unvisited Site Cookies
+content-blocking-cookies-blocking-all-label = All Cookies
+
+content-blocking-cookies-view-first-party-label = From This Site
+content-blocking-cookies-view-trackers-label = Cross-Site Tracking Cookies
+content-blocking-cookies-view-third-party-label = Third-Party Cookies
+
+# This label is shown next to a cookie origin in the cookies subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Allowed"
+content-blocking-cookies-view-allowed-label =
+ .value = Allowed
+# This label is shown next to a cookie origin in the cookies subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Blocked"
+content-blocking-cookies-view-blocked-label =
+ .value = Blocked
+
+# Variables:
+# $domain (String): the domain of the site.
+content-blocking-cookies-view-remove-button =
+ .tooltiptext = Clear cookie exception for { $domain }
+
+tracking-protection-icon-active = Blocking social media trackers, cross-site tracking cookies, and fingerprinters.
+tracking-protection-icon-active-container =
+ .aria-label = { tracking-protection-icon-active }
+tracking-protection-icon-disabled = Enhanced Tracking Protection is OFF for this site.
+tracking-protection-icon-disabled-container =
+ .aria-label = { tracking-protection-icon-disabled }
+tracking-protection-icon-no-trackers-detected = No trackers known to { -brand-short-name } were detected on this page.
+tracking-protection-icon-no-trackers-detected-container =
+ .aria-label = { tracking-protection-icon-no-trackers-detected }
+
+## Variables:
+## $host (String): the site's hostname
+
+# Header of the Protections Panel.
+protections-header = Protections for { $host }
+
+## Blocking and Not Blocking sub-views in the Protections Panel
+
+protections-blocking-fingerprinters =
+ .title = Fingerprinters Blocked
+protections-blocking-cryptominers =
+ .title = Cryptominers Blocked
+protections-blocking-cookies-trackers =
+ .title = Cross-Site Tracking Cookies Blocked
+protections-blocking-cookies-third-party =
+ .title = Third-Party Cookies Blocked
+protections-blocking-cookies-all =
+ .title = All Cookies Blocked
+protections-blocking-cookies-unvisited =
+ .title = Unvisited Site Cookies Blocked
+protections-blocking-tracking-content =
+ .title = Tracking Content Blocked
+protections-blocking-social-media-trackers =
+ .title = Social Media Trackers Blocked
+protections-not-blocking-fingerprinters =
+ .title = Not Blocking Fingerprinters
+protections-not-blocking-cryptominers =
+ .title = Not Blocking Cryptominers
+protections-not-blocking-cookies-third-party =
+ .title = Not Blocking Third-Party Cookies
+protections-not-blocking-cookies-all =
+ .title = Not Blocking Cookies
+protections-not-blocking-cross-site-tracking-cookies =
+ .title = Not Blocking Cross-Site Tracking Cookies
+protections-not-blocking-tracking-content =
+ .title = Not Blocking Tracking Content
+protections-not-blocking-social-media-trackers =
+ .title = Not Blocking Social Media Trackers
+
+## Footer and Milestones sections in the Protections Panel
+## Variables:
+## $trackerCount (Number): number of trackers blocked
+## $date (Date): the date on which we started counting
+
+# This text indicates the total number of trackers blocked on all sites.
+# In its tooltip, we show the date when we started counting this number.
+protections-footer-blocked-tracker-counter =
+ { $trackerCount ->
+ [one] { $trackerCount } Blocked
+ *[other] { $trackerCount } Blocked
+ }
+ .tooltiptext = Since { DATETIME($date, year: "numeric", month: "long", day: "numeric") }
+# This text indicates the total number of trackers blocked on all sites.
+# It should be the same as protections-footer-blocked-tracker-counter;
+# this message is used to leave out the tooltip when the date is not available.
+protections-footer-blocked-tracker-counter-no-tooltip =
+ { $trackerCount ->
+ [one] { $trackerCount } Blocked
+ *[other] { $trackerCount } Blocked
+ }
+
+# In English this looks like "Firefox blocked over 10,000 trackers since October 2019"
+protections-milestone =
+ { $trackerCount ->
+ [one] { -brand-short-name } blocked { $trackerCount } tracker since { DATETIME($date, year: "numeric", month: "long") }
+ *[other] { -brand-short-name } blocked over { $trackerCount } trackers since { DATETIME($date, year: "numeric", month: "long") }
+ }
diff --git a/browser/locales/en-US/browser/speechDispatcher.ftl b/browser/locales/en-US/browser/speechDispatcher.ftl
new file mode 100644
index 0000000000..761c73afe9
--- /dev/null
+++ b/browser/locales/en-US/browser/speechDispatcher.ftl
@@ -0,0 +1,15 @@
+# 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/.
+
+### Speech Dispatches is the name of a speech synthesis tool and shouldn’t be
+### localized (https://freebsoft.org/speechd).
+
+speech-dispatcher-lib-missing = You can’t use speech synthesis because the Speech Dispatcher library is missing.
+speech-dispatcher-lib-too-old = You can’t use speech synthesis because Speech Dispatcher needs to be updated.
+speech-dispatcher-missing-symbol = You can’t use speech synthesis because the Speech Dispatcher library is broken.
+speech-dispatcher-open-fail = You can’t use speech synthesis because Speech Dispatcher won’t open.
+speech-dispatcher-no-voices = You can’t use speech synthesis because voices aren’t available in Speech Dispatcher.
+speech-dispatcher-dismiss-button =
+ .label = Don’t show again
+ .accesskey = D
diff --git a/browser/locales/en-US/browser/spotlight.ftl b/browser/locales/en-US/browser/spotlight.ftl
new file mode 100644
index 0000000000..fb05f484de
--- /dev/null
+++ b/browser/locales/en-US/browser/spotlight.ftl
@@ -0,0 +1,22 @@
+# 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/.
+
+# Dialog close button
+spotlight-dialog-close-button =
+ .title = Close
+ .aria-label = Close
+
+## Mobile download button strings
+
+spotlight-android-marketplace-button =
+ .title = Get it on Google Play
+spotlight-ios-marketplace-button =
+ .title = Download on the App Store
+
+## Firefox Focus promo message strings
+
+spotlight-focus-promo-title = Get { -focus-brand-name }
+spotlight-focus-promo-subtitle = Scan the QR code to download.
+spotlight-focus-promo-qr-code =
+ .alt = Scan the QR code to get { -focus-brand-name }
diff --git a/browser/locales/en-US/browser/sync.ftl b/browser/locales/en-US/browser/sync.ftl
new file mode 100644
index 0000000000..90416a581b
--- /dev/null
+++ b/browser/locales/en-US/browser/sync.ftl
@@ -0,0 +1,45 @@
+# 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/.
+
+fxa-toolbar-sync-syncing2 = Syncing…
+
+sync-disconnect-dialog-title2 = Disconnect?
+sync-disconnect-dialog-body = { -brand-product-name } will stop syncing your account but won’t delete any of your browsing data on this device.
+sync-disconnect-dialog-button = Disconnect
+
+fxa-signout-dialog-title2 = Sign out of your account?
+fxa-signout-dialog-body = Synced data will remain in your account.
+fxa-signout-dialog2-button = Sign out
+fxa-signout-dialog2-checkbox = Delete data from this device (passwords, history, bookmarks, etc.)
+
+fxa-menu-sync-settings =
+ .label = Sync settings
+fxa-menu-turn-on-sync =
+ .value = Turn on sync
+fxa-menu-turn-on-sync-default = Turn on sync
+
+fxa-menu-connect-another-device =
+ .label = Connect another device…
+# Variables:
+# $tabCount (Number): The number of tabs sent to the device.
+fxa-menu-send-tab-to-device =
+ .label =
+ { $tabCount ->
+ [1] Send tab to device
+ *[other] Send { $tabCount } tabs to device
+ }
+
+# This is shown dynamically within "Send tab to device" in fxa menu.
+fxa-menu-send-tab-to-device-syncnotready =
+ .label = Syncing Devices…
+
+# This is shown within "Send tab to device" in fxa menu if account is not configured.
+fxa-menu-send-tab-to-device-description = Send a tab instantly to any device you’re signed in on.
+
+fxa-menu-sign-out =
+ .label = Sign out…
+
+
+fxa-menu-sync-title = Sync
+fxa-menu-sync-description = Access your web anywhere
diff --git a/browser/locales/en-US/browser/syncedTabs.ftl b/browser/locales/en-US/browser/syncedTabs.ftl
new file mode 100644
index 0000000000..415d9ca793
--- /dev/null
+++ b/browser/locales/en-US/browser/syncedTabs.ftl
@@ -0,0 +1,61 @@
+# 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/.
+
+synced-tabs-sidebar-title = Synced Tabs
+synced-tabs-sidebar-noclients-subtitle = Want to see your tabs from other devices here?
+synced-tabs-sidebar-intro = View a list of tabs from your other devices.
+synced-tabs-sidebar-unverified = Your account needs to be verified.
+synced-tabs-sidebar-notabs = No open tabs
+synced-tabs-sidebar-open-settings = Open Sync settings
+synced-tabs-sidebar-tabsnotsyncing = Turn on tab syncing to view a list of tabs from your other devices.
+synced-tabs-sidebar-connect-another-device = Connect Another Device
+synced-tabs-sidebar-search =
+ .placeholder = Search synced tabs
+
+## Displayed in the Synced Tabs sidebar's context menu when right-clicking tabs
+## and/or devices in the list. The "Open" strings below should be translated
+## consistently with the equivalent strings for the bookmarks manager's context
+## menu. That menu is activated by right-clicking a bookmark in the Library
+## window. The bookmarks manager context's strings are located in places.ftl.
+
+synced-tabs-context-open =
+ .label = Open
+ .accesskey = O
+synced-tabs-context-open-in-tab =
+ .label = Open in New Tab
+ .accesskey = w
+synced-tabs-context-open-in-container-tab =
+ .label = Open in New Container Tab
+ .accesskey = i
+synced-tabs-context-open-in-window =
+ .label = Open in New Window
+ .accesskey = N
+synced-tabs-context-open-in-private-window =
+ .label = Open in New Private Window
+ .accesskey = P
+
+##
+
+# Displayed in the Synced Tabs sidebar's context menu when right-clicking tabs
+# and/or devices in the list. This string is for a menuitem equivalent to one in
+# the tab context menu (activated by right-clicking a tab in the tabstrip). That
+# string is located in tabContextMenu.ftl. So, this string should be translated
+# consistently with the "Bookmark Tab…" string there.
+synced-tabs-context-bookmark =
+ .label = Bookmark Tab…
+ .accesskey = B
+synced-tabs-context-copy =
+ .label = Copy
+ .accesskey = C
+synced-tabs-context-open-all-in-tabs =
+ .label = Open All in Tabs
+ .accesskey = O
+synced-tabs-context-manage-devices =
+ .label = Manage Devices…
+ .accesskey = D
+synced-tabs-context-sync-now =
+ .label = Sync Now
+ .accesskey = S
+synced-tabs-fxa-sign-in = Sign in to sync
+synced-tabs-turn-on-sync = Turn on sync
diff --git a/browser/locales/en-US/browser/tabContextMenu.ftl b/browser/locales/en-US/browser/tabContextMenu.ftl
new file mode 100644
index 0000000000..df58df794c
--- /dev/null
+++ b/browser/locales/en-US/browser/tabContextMenu.ftl
@@ -0,0 +1,110 @@
+# 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/.
+
+tab-context-new-tab =
+ .label = New Tab
+ .accesskey = w
+reload-tab =
+ .label = Reload Tab
+ .accesskey = R
+select-all-tabs =
+ .label = Select All Tabs
+ .accesskey = S
+tab-context-play-tab =
+ .label = Play Tab
+ .accesskey = l
+tab-context-play-tabs =
+ .label = Play Tabs
+ .accesskey = y
+duplicate-tab =
+ .label = Duplicate Tab
+ .accesskey = D
+duplicate-tabs =
+ .label = Duplicate Tabs
+ .accesskey = D
+# The following string is displayed on a menuitem that will close the tabs from the start of the tabstrip to the currently targeted tab (excluding the currently targeted and any other selected tabs).
+# In left-to-right languages this should use "Left" and in right-to-left languages this should use "Right".
+close-tabs-to-the-start =
+ .label = Close Tabs to Left
+ .accesskey = l
+# The following string is displayed on a menuitem that will close the tabs from the end of the tabstrip to the currently targeted tab (excluding the currently targeted and any other selected tabs).
+# In left-to-right languages this should use "Right" and in right-to-left languages this should use "Left".
+close-tabs-to-the-end =
+ .label = Close Tabs to Right
+ .accesskey = i
+close-other-tabs =
+ .label = Close Other Tabs
+ .accesskey = o
+reload-tabs =
+ .label = Reload Tabs
+ .accesskey = R
+pin-tab =
+ .label = Pin Tab
+ .accesskey = P
+unpin-tab =
+ .label = Unpin Tab
+ .accesskey = p
+pin-selected-tabs =
+ .label = Pin Tabs
+ .accesskey = P
+unpin-selected-tabs =
+ .label = Unpin Tabs
+ .accesskey = p
+bookmark-selected-tabs =
+ .label = Bookmark Tabs…
+ .accesskey = B
+tab-context-bookmark-tab =
+ .label = Bookmark Tab…
+ .accesskey = B
+tab-context-open-in-new-container-tab =
+ .label = Open in New Container Tab
+ .accesskey = e
+move-to-start =
+ .label = Move to Start
+ .accesskey = S
+move-to-end =
+ .label = Move to End
+ .accesskey = E
+move-to-new-window =
+ .label = Move to New Window
+ .accesskey = W
+tab-context-close-multiple-tabs =
+ .label = Close Multiple Tabs
+ .accesskey = M
+tab-context-share-url =
+ .label = Share
+ .accesskey = h
+
+## Variables:
+## $tabCount (Number): the number of tabs that are affected by the action.
+
+tab-context-reopen-closed-tabs =
+ .label =
+ { $tabCount ->
+ [1] Reopen Closed Tab
+ *[other] Reopen Closed Tabs
+ }
+ .accesskey = o
+tab-context-close-n-tabs =
+ .label =
+ { $tabCount ->
+ [1] Close Tab
+ *[other] Close { $tabCount } Tabs
+ }
+ .accesskey = C
+tab-context-move-tabs =
+ .label =
+ { $tabCount ->
+ [1] Move Tab
+ *[other] Move Tabs
+ }
+ .accesskey = v
+
+tab-context-send-tabs-to-device =
+ .label =
+ { $tabCount ->
+ [1] Send Tab to Device
+ *[other] Send { $tabCount } Tabs to Device
+ }
+ .accesskey = n
diff --git a/browser/locales/en-US/browser/tabbrowser.ftl b/browser/locales/en-US/browser/tabbrowser.ftl
new file mode 100644
index 0000000000..21e4897ac5
--- /dev/null
+++ b/browser/locales/en-US/browser/tabbrowser.ftl
@@ -0,0 +1,169 @@
+# 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/.
+
+tabbrowser-empty-tab-title = New Tab
+tabbrowser-empty-private-tab-title = New Private Tab
+
+tabbrowser-menuitem-close-tab =
+ .label = Close Tab
+tabbrowser-menuitem-close =
+ .label = Close
+
+# Displayed as a tooltip on container tabs
+# Variables:
+# $title (String): the title of the current tab.
+# $containerName (String): the name of the current container.
+tabbrowser-container-tab-title = { $title } — { $containerName }
+
+# Variables:
+# $tabCount (Number): The number of tabs that will be closed.
+tabbrowser-close-tabs-tooltip =
+ .label =
+ { $tabCount ->
+ [one] Close tab
+ *[other] Close { $tabCount } tabs
+ }
+
+## Tooltips for tab audio control
+## Variables:
+## $tabCount (Number): The number of tabs that will be affected.
+
+# Variables:
+# $shortcut (String): The keyboard shortcut for "Mute tab".
+tabbrowser-mute-tab-audio-tooltip =
+ .label =
+ { $tabCount ->
+ [one] Mute tab ({ $shortcut })
+ *[other] Mute { $tabCount } tabs ({ $shortcut })
+ }
+# Variables:
+# $shortcut (String): The keyboard shortcut for "Unmute tab".
+tabbrowser-unmute-tab-audio-tooltip =
+ .label =
+ { $tabCount ->
+ [one] Unmute tab ({ $shortcut })
+ *[other] Unmute { $tabCount } tabs ({ $shortcut })
+ }
+tabbrowser-mute-tab-audio-background-tooltip =
+ .label =
+ { $tabCount ->
+ [one] Mute tab
+ *[other] Mute { $tabCount } tabs
+ }
+tabbrowser-unmute-tab-audio-background-tooltip =
+ .label =
+ { $tabCount ->
+ [one] Unmute tab
+ *[other] Unmute { $tabCount } tabs
+ }
+tabbrowser-unblock-tab-audio-tooltip =
+ .label =
+ { $tabCount ->
+ [one] Play tab
+ *[other] Play { $tabCount } tabs
+ }
+
+## Confirmation dialog when closing a window with more than one tab open,
+## or when quitting when only one window is open.
+
+# The singular form is not considered since this string is used only for multiple tabs.
+# Variables:
+# $tabCount (Number): The number of tabs that will be closed.
+tabbrowser-confirm-close-tabs-title =
+ { $tabCount ->
+ *[other] Close { $tabCount } tabs?
+ }
+tabbrowser-confirm-close-tabs-button = Close tabs
+tabbrowser-confirm-close-tabs-checkbox = Confirm before closing multiple tabs
+
+## Confirmation dialog when quitting using the menu and multiple windows are open.
+
+# The forms for 0 or 1 items are not considered since this string is used only for
+# multiple windows.
+# Variables:
+# $windowCount (Number): The number of windows that will be closed.
+tabbrowser-confirm-close-windows-title =
+ { $windowCount ->
+ *[other] Close { $windowCount } windows?
+ }
+tabbrowser-confirm-close-windows-button =
+ { PLATFORM() ->
+ [windows] Close and exit
+ *[other] Close and quit
+ }
+
+## Confirmation dialog when quitting using the keyboard shortcut (Ctrl/Cmd+Q)
+## Windows does not show a prompt on quit when using the keyboard shortcut by default.
+
+tabbrowser-confirm-close-tabs-with-key-title = Close window and quit { -brand-short-name }?
+tabbrowser-confirm-close-tabs-with-key-button = Quit { -brand-short-name }
+# Variables:
+# $quitKey (String): the text of the keyboard shortcut for quitting.
+tabbrowser-confirm-close-tabs-with-key-checkbox = Confirm before quitting with { $quitKey }
+
+## Confirmation dialog when opening multiple tabs simultaneously
+
+tabbrowser-confirm-open-multiple-tabs-title = Confirm open
+# Variables:
+# $tabCount (Number): The number of tabs that will be opened.
+tabbrowser-confirm-open-multiple-tabs-message =
+ { $tabCount ->
+ *[other] You are about to open { $tabCount } tabs. This might slow down { -brand-short-name } while the pages are loading. Are you sure you want to continue?
+ }
+tabbrowser-confirm-open-multiple-tabs-button = Open tabs
+tabbrowser-confirm-open-multiple-tabs-checkbox = Warn me when opening multiple tabs might slow down { -brand-short-name }
+
+## Confirmation dialog for enabling caret browsing
+
+tabbrowser-confirm-caretbrowsing-title = Caret Browsing
+tabbrowser-confirm-caretbrowsing-message = Pressing F7 turns Caret Browsing on or off. This feature places a moveable cursor in web pages, allowing you to select text with the keyboard. Do you want to turn Caret Browsing on?
+tabbrowser-confirm-caretbrowsing-checkbox = Do not show me this dialog box again.
+
+##
+
+# Variables:
+# $domain (String): URL of the page that is trying to steal focus.
+tabbrowser-allow-dialogs-to-get-focus =
+ .label = Allow notifications like this from { $domain } to take you to their tab
+
+tabbrowser-customizemode-tab-title = Customize { -brand-short-name }
+
+## Context menu buttons, of which only one will be visible at a time
+
+tabbrowser-context-mute-tab =
+ .label = Mute Tab
+ .accesskey = M
+tabbrowser-context-unmute-tab =
+ .label = Unmute Tab
+ .accesskey = m
+# The accesskey should match the accesskey for tabbrowser-context-mute-tab
+tabbrowser-context-mute-selected-tabs =
+ .label = Mute Tabs
+ .accesskey = M
+# The accesskey should match the accesskey for tabbrowser-context-unmute-tab
+tabbrowser-context-unmute-selected-tabs =
+ .label = Unmute Tabs
+ .accesskey = m
+
+# This string is used as an additional tooltip and accessibility description for tabs playing audio
+tabbrowser-tab-audio-playing-description = Playing audio
+
+## Ctrl-Tab dialog
+
+# Variables:
+# $tabCount (Number): The number of tabs in the current browser window. It will always be 2 at least.
+tabbrowser-ctrl-tab-list-all-tabs =
+ .label =
+ { $tabCount ->
+ *[other] List All { $tabCount } Tabs
+ }
+
+## Tab manager menu buttons
+
+tabbrowser-manager-mute-tab =
+ .tooltiptext = Mute tab
+tabbrowser-manager-unmute-tab =
+ .tooltiptext = Unmute tab
+tabbrowser-manager-close-tab =
+ .tooltiptext = Close tab
diff --git a/browser/locales/en-US/browser/textRecognition.ftl b/browser/locales/en-US/browser/textRecognition.ftl
new file mode 100644
index 0000000000..8f07e5c120
--- /dev/null
+++ b/browser/locales/en-US/browser/textRecognition.ftl
@@ -0,0 +1,14 @@
+# 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/.
+
+## Text recognition works through a modal that presents the text that is found
+## in an image, and copies the results to the clipboard.
+
+text-recognition-modal-searching-title = Searching image for text…
+text-recognition-modal-results-title = Text copied from image
+text-recognition-modal-no-results-title = Sorry, we couldn’t extract any text. Try a different image. <a data-l10n-name="error-link">Learn more</a>.
+text-recognition-modal-close-button = Close
+
+# The title of the the modal is only available to screen readers.
+text-recognition-modal-accessible-modal-title = Results for text extraction
diff --git a/browser/locales/en-US/browser/toolbarContextMenu.ftl b/browser/locales/en-US/browser/toolbarContextMenu.ftl
new file mode 100644
index 0000000000..e43c0eb20a
--- /dev/null
+++ b/browser/locales/en-US/browser/toolbarContextMenu.ftl
@@ -0,0 +1,90 @@
+# 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/.
+
+toolbar-context-menu-new-tab =
+ .label = New Tab
+ .accesskey = w
+toolbar-context-menu-reload-selected-tab =
+ .label = Reload Selected Tab
+ .accesskey = R
+toolbar-context-menu-reload-selected-tabs =
+ .label = Reload Selected Tabs
+ .accesskey = R
+toolbar-context-menu-bookmark-selected-tab =
+ .label = Bookmark Selected Tab…
+ .accesskey = T
+toolbar-context-menu-bookmark-selected-tabs =
+ .label = Bookmark Selected Tabs…
+ .accesskey = T
+toolbar-context-menu-select-all-tabs =
+ .label = Select All Tabs
+ .accesskey = S
+# Variables
+# $tabCount (number) - Number of tabs
+toolbar-context-menu-reopen-closed-tabs =
+ .label =
+ { $tabCount ->
+ [1] Reopen Closed Tab
+ *[other] Reopen Closed Tabs
+ }
+ .accesskey = o
+
+toolbar-context-menu-manage-extension =
+ .label = Manage Extension
+ .accesskey = E
+toolbar-context-menu-remove-extension =
+ .label = Remove Extension
+ .accesskey = v
+
+# This label is used in the extensions toolbar buttons context menus,
+# a user can use this command to submit to Mozilla an abuse report
+# related to that extension. "Report" is a verb.
+toolbar-context-menu-report-extension =
+ .label = Report Extension
+ .accesskey = o
+
+# Can appear on the same context menu as toolbar-context-menu-menu-bar-cmd
+# ("Menu Bar") and personalbarCmd ("Bookmarks Toolbar"), so they should
+# have different access keys.
+toolbar-context-menu-pin-to-overflow-menu =
+ .label = Pin to Overflow Menu
+ .accesskey = P
+toolbar-context-menu-auto-hide-downloads-button-2 =
+ .label = Hide Button When Empty
+ .accesskey = H
+toolbar-context-menu-always-open-downloads-panel =
+ .label = Show Panel When Download Begins
+ .accesskey = S
+toolbar-context-menu-remove-from-toolbar =
+ .label = Remove from Toolbar
+ .accesskey = R
+toolbar-context-menu-view-customize-toolbar =
+ .label = Customize…
+ .accesskey = C
+toolbar-context-menu-view-customize-toolbar-2 =
+ .label = Customize Toolbar…
+ .accesskey = C
+# This is only ever shown when toolbar-context-menu-pin-to-overflow-menu
+# is hidden, so they can share access keys.
+toolbar-context-menu-pin-to-toolbar =
+ .label = Pin to Toolbar
+ .accesskey = P
+
+toolbar-context-menu-bookmarks-toolbar-always-show-2 =
+ .label = Always Show
+ .accesskey = A
+toolbar-context-menu-bookmarks-toolbar-never-show-2 =
+ .label = Never Show
+ .accesskey = N
+toolbar-context-menu-bookmarks-toolbar-on-new-tab-2 =
+ .label = Only Show on New Tab
+ .accesskey = O
+
+toolbar-context-menu-bookmarks-show-other-bookmarks =
+ .label = Show Other Bookmarks
+ .accesskey = h
+
+toolbar-context-menu-menu-bar-cmd =
+ .toolbarname = Menu Bar
+ .accesskey = M
diff --git a/browser/locales/en-US/browser/touchbar/touchbar.ftl b/browser/locales/en-US/browser/touchbar/touchbar.ftl
new file mode 100644
index 0000000000..aee15423b8
--- /dev/null
+++ b/browser/locales/en-US/browser/touchbar/touchbar.ftl
@@ -0,0 +1,37 @@
+# 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/.
+
+# Strings in this file are used to localize button titles displayed on the
+# MacBook Touch Bar.
+back = Back
+forward = Forward
+reload = Reload
+home = Home
+fullscreen = Fullscreen
+touchbar-fullscreen-exit = Exit Fullscreen
+find = Find
+new-tab = New tab
+add-bookmark = Add bookmark
+reader-view = Reader View
+# Meant to match the string displayed in an empty URL bar.
+open-location = Search or enter address
+share = Share
+close-window = Close Window
+open-sidebar = Sidebars
+
+# This string describes shortcuts for search.
+search-popover = Search shortcuts
+# Describes searches limited to a specific scope
+# (e.g. searching only in history).
+search-search-in = Search in:
+
+## Various categories of shortcuts for search.
+
+search-bookmarks = Bookmarks
+search-history = History
+search-opentabs = Open Tabs
+search-tags = Tags
+search-titles = Titles
+
+##
diff --git a/browser/locales/en-US/browser/translations.ftl b/browser/locales/en-US/browser/translations.ftl
new file mode 100644
index 0000000000..8483a4591a
--- /dev/null
+++ b/browser/locales/en-US/browser/translations.ftl
@@ -0,0 +1,168 @@
+# 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/.
+
+# The button for "Firefox Translations" in the url bar. Note that here "Beta" should
+# not be translated, as it is a reflection of the un-localized BETA icon that is in the
+# panel.
+urlbar-translations-button2 =
+ .tooltiptext = Translate this page - Beta
+
+# Note that here "Beta" should not be translated, as it is a reflection of the
+# un-localized BETA icon that is in the panel.
+urlbar-translations-button-intro =
+ .tooltiptext = Try private translations in { -brand-shorter-name } - Beta
+
+# If your language requires declining the language name, a possible solution
+# is to adapt the structure of the phrase, or use a support noun, e.g.
+# `Page translated from: { $fromLanguage }. Current target language: { $toLanguage }`
+#
+# Variables:
+# $fromLanguage (string) - The original language of the document.
+# $toLanguage (string) - The target language of the translation.
+urlbar-translations-button-translated =
+ .tooltiptext = Page translated from { $fromLanguage } to { $toLanguage }
+
+urlbar-translations-button-loading =
+ .tooltiptext = Translation in progress
+
+translations-panel-settings-button =
+ .aria-label = Manage translation settings
+
+## Options in the Firefox Translations settings.
+
+translations-panel-settings-manage-languages =
+ .label = Manage languages
+translations-panel-settings-about2 =
+ .label = About translations in { -brand-shorter-name }
+
+# Text displayed for the option to always translate a given language
+# Variables:
+# $language (string) - The localized display name of the detected language
+translations-panel-settings-always-translate-language =
+ .label = Always translate { $language }
+translations-panel-settings-always-translate-unknown-language =
+ .label = Always translate this language
+translations-panel-settings-always-offer-translation =
+ .label = Always offer to translate
+
+# Text displayed for the option to never translate a given language
+# Variables:
+# $language (string) - The localized display name of the detected language
+translations-panel-settings-never-translate-language =
+ .label = Never translate { $language }
+translations-panel-settings-never-translate-unknown-language =
+ .label = Never translate this language
+
+# Text displayed for the option to never translate this website
+translations-panel-settings-never-translate-site =
+ .label = Never translate this site
+
+## The translation panel appears from the url bar, and this view is the default
+## translation view.
+
+translations-panel-header = Translate this page?
+translations-panel-translate-button =
+ .label = Translate
+translations-panel-translate-button-loading =
+ .label = Please wait…
+translations-panel-translate-cancel =
+ .label = Cancel
+translations-panel-learn-more-link = Learn more
+
+translations-panel-intro-header = Try private translations in { -brand-shorter-name }
+translations-panel-intro-description = For your privacy, translations never leave your device. New languages and improvements coming soon!
+
+translations-panel-error-translating = There was a problem translating. Please try again.
+translations-panel-error-load-languages = Couldn’t load languages
+translations-panel-error-load-languages-hint = Check your internet connection and try again.
+translations-panel-error-load-languages-hint-button =
+ .label = Try again
+
+translations-panel-error-unsupported = Translation isn’t available for this page
+translations-panel-error-dismiss-button =
+ .label = Got it
+translations-panel-error-change-button =
+ .label = Change source language
+# If your language requires declining the language name, a possible solution
+# is to adapt the structure of the phrase, or use a support noun, e.g.
+# `Sorry, we don't support the language yet: { $language }
+#
+# Variables:
+# $language (string) - The language of the document.
+translations-panel-error-unsupported-hint-known = Sorry, we don’t support { $language } yet.
+translations-panel-error-unsupported-hint-unknown = Sorry, we don’t support this language yet.
+
+## Each label is followed, on a new line, by a dropdown list of language names.
+## If this structure is problematic for your locale, an alternative way is to
+## translate them as `Source language:` and `Target language:`
+
+translations-panel-from-label = Translate from
+translations-panel-to-label = Translate to
+
+## The translation panel appears from the url bar, and this view is the "restore" view
+## that lets a user restore a page to the original language, or translate into another
+## language.
+
+# If your language requires declining the language name, a possible solution
+# is to adapt the structure of the phrase, or use a support noun, e.g.
+# `The page is translated from: { $fromLanguage }. Current target language: { $toLanguage }`
+#
+# Variables:
+# $fromLanguage (string) - The original language of the document.
+# $toLanguage (string) - The target language of the translation.
+translations-panel-revisit-header = This page is translated from { $fromLanguage } to { $toLanguage }
+translations-panel-choose-language =
+ .label = Choose a language
+translations-panel-restore-button =
+ .label = Show original
+
+## Firefox Translations language management in about:preferences.
+
+translations-manage-header = Translations
+translations-manage-settings-button =
+ .label = Settings…
+ .accesskey = t
+translations-manage-intro = Set your language and site translation preferences and manage languages installed for offline translation.
+translations-manage-install-description = Install languages for offline translation
+translations-manage-language-install-button =
+ .label = Install
+translations-manage-language-install-all-button =
+ .label = Install all
+ .accesskey = I
+translations-manage-language-remove-button =
+ .label = Remove
+translations-manage-language-remove-all-button =
+ .label = Remove all
+ .accesskey = e
+translations-manage-error-install = There was a problem installing the language files. Please try again.
+translations-manage-error-remove = There was an error removing the language files. Please try again.
+translations-manage-error-list = Failed to get the list of available languages for translation. Refresh the page to try again.
+
+translations-settings-title =
+ .title = Translations Settings
+ .style = min-width: 36em
+translations-settings-close-key =
+ .key = w
+translations-settings-always-translate-langs-description = Translation will happen automatically for the following languages
+translations-settings-never-translate-langs-description = Translation will not be offered for the following languages
+translations-settings-never-translate-sites-description = Translation will not be offered for the following sites
+translations-settings-languages-column =
+ .label = Languages
+translations-settings-remove-language-button =
+ .label = Remove Language
+ .accesskey = R
+translations-settings-remove-all-languages-button =
+ .label = Remove All Languages
+ .accesskey = e
+translations-settings-sites-column =
+ .label = Websites
+translations-settings-remove-site-button =
+ .label = Remove Site
+ .accesskey = S
+translations-settings-remove-all-sites-button =
+ .label = Remove All Sites
+ .accesskey = m
+translations-settings-close-dialog =
+ .buttonlabelaccept = Close
+ .buttonaccesskeyaccept = C
diff --git a/browser/locales/en-US/browser/unifiedExtensions.ftl b/browser/locales/en-US/browser/unifiedExtensions.ftl
new file mode 100644
index 0000000000..8db0d9488a
--- /dev/null
+++ b/browser/locales/en-US/browser/unifiedExtensions.ftl
@@ -0,0 +1,52 @@
+# 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/.
+
+### These strings appear in the Unified Extensions panel.
+
+## Panel
+
+unified-extensions-header-title = Extensions
+unified-extensions-manage-extensions =
+ .label = Manage extensions
+
+## An extension in the main list
+
+# Each extension in the unified extensions panel (list) has a secondary button
+# to open a context menu. This string is used for each of these buttons.
+# Variables:
+# $extensionName (String) - Name of the extension
+unified-extensions-item-open-menu =
+ .aria-label = Open menu for { $extensionName }
+
+unified-extensions-item-message-manage = Manage extension
+
+## Extension's context menu
+
+unified-extensions-context-menu-pin-to-toolbar =
+ .label = Pin to Toolbar
+
+unified-extensions-context-menu-manage-extension =
+ .label = Manage Extension
+
+unified-extensions-context-menu-remove-extension =
+ .label = Remove Extension
+
+unified-extensions-context-menu-report-extension =
+ .label = Report Extension
+
+unified-extensions-context-menu-move-widget-up =
+ .label = Move Up
+
+unified-extensions-context-menu-move-widget-down =
+ .label = Move Down
+
+## Notifications
+
+# .heading is processed by moz-message-bar to be used as a heading attribute
+unified-extensions-mb-quarantined-domain-message-3 =
+ .heading = Some extensions are not allowed
+ .message = To protect your data, some extensions can’t read or change data on this site. Use the extension’s settings to allow on sites restricted by { -vendor-short-name }.
+
+unified-extensions-mb-quarantined-domain-learn-more = Learn more
+ .aria-label = Learn more: Some extensions are not allowed
diff --git a/browser/locales/en-US/browser/webProtocolHandler.ftl b/browser/locales/en-US/browser/webProtocolHandler.ftl
new file mode 100644
index 0000000000..584611bcfd
--- /dev/null
+++ b/browser/locales/en-US/browser/webProtocolHandler.ftl
@@ -0,0 +1,19 @@
+# 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/.
+
+protocolhandler-mailto-os-handler-notificationbox = Always use { -brand-short-name } to open links that send email?
+protocolhandler-mailto-os-handler-yes-confirm = { -brand-short-name } is now your default application for opening links that send email.
+protocolhandler-mailto-os-handler-yes-button = Set as default
+protocolhandler-mailto-os-handler-no-button = Not now
+
+## Variables:
+## $url (String): The url of a webmailer, but only its full domain name.
+
+protocolhandler-mailto-handler-notificationbox-always = Always open email links using { $url }?
+protocolhandler-mailto-handler-yes-confirm = { $url } is now your default site for opening links that send email.
+
+##
+
+protocolhandler-mailto-handler-yes-button = Set as default
+protocolhandler-mailto-handler-no-button = Not now
diff --git a/browser/locales/en-US/browser/webauthnDialog.ftl b/browser/locales/en-US/browser/webauthnDialog.ftl
new file mode 100644
index 0000000000..14f6ac7184
--- /dev/null
+++ b/browser/locales/en-US/browser/webauthnDialog.ftl
@@ -0,0 +1,31 @@
+# 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/.
+
+# Variables:
+# $retriesLeft (Number): number of tries left
+webauthn-pin-invalid-long-prompt =
+ { $retriesLeft ->
+ [one] Incorrect PIN. You have { $retriesLeft } attempt left before you permanently lose access to the credentials on this device.
+ *[other] Incorrect PIN. You have { $retriesLeft } attempts left before you permanently lose access to the credentials on this device.
+ }
+webauthn-pin-invalid-short-prompt = Incorrect PIN. Try again.
+webauthn-pin-required-prompt = Please enter the PIN for your device.
+
+webauthn-select-sign-result-unknown-account = Unknown account
+
+webauthn-a-passkey-label = Use a passkey
+webauthn-another-passkey-label = Use another passkey
+
+# Variables:
+# $domain (String): the domain of the site.
+webauthn-specific-passkey-label = Passkey for { $domain }
+
+# Variables:
+# $retriesLeft (Number): number of tries left
+webauthn-uv-invalid-long-prompt =
+ { $retriesLeft ->
+ [one] User verification failed. You have { $retriesLeft } attempt left. Try again.
+ *[other] User verification failed. You have { $retriesLeft } attempts left. Try again.
+ }
+webauthn-uv-invalid-short-prompt = User verification failed. Try again.
diff --git a/browser/locales/en-US/browser/webrtcIndicator.ftl b/browser/locales/en-US/browser/webrtcIndicator.ftl
new file mode 100644
index 0000000000..5b48a9bc51
--- /dev/null
+++ b/browser/locales/en-US/browser/webrtcIndicator.ftl
@@ -0,0 +1,215 @@
+# 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/.
+
+## These strings are used so that the window has a title in tools that
+## enumerate/look for window titles. It is not normally visible anywhere.
+
+webrtc-indicator-title = { -brand-short-name } — Sharing Indicator
+
+## Used as list items in sharing menu
+
+webrtc-item-camera = camera
+webrtc-item-microphone = microphone
+webrtc-item-audio-capture = tab audio
+webrtc-item-application = application
+webrtc-item-screen = screen
+webrtc-item-window = window
+webrtc-item-browser = tab
+
+##
+
+# This is used for the website origin for the sharing menu if no readable origin could be deduced from the URL.
+webrtc-sharing-menuitem-unknown-host = Unknown origin
+
+# Variables:
+# $origin (String): The website origin (e.g. www.mozilla.org)
+# $itemList (String): A formatted list of items (e.g. "camera, microphone and tab audio")
+webrtc-sharing-menuitem =
+ .label = { $origin } ({ $itemList })
+webrtc-sharing-menu =
+ .label = Tabs sharing devices
+ .accesskey = d
+
+webrtc-sharing-window = You are sharing another application window.
+webrtc-sharing-browser-window = You are sharing { -brand-short-name }.
+webrtc-sharing-screen = You are sharing your entire screen.
+webrtc-stop-sharing-button = Stop Sharing
+webrtc-microphone-unmuted =
+ .title = Turn microphone off
+webrtc-microphone-muted =
+ .title = Turn microphone on
+webrtc-camera-unmuted =
+ .title = Turn camera off
+webrtc-camera-muted =
+ .title = Turn camera on
+webrtc-minimize =
+ .title = Minimize indicator
+
+## These strings will display as a tooltip on supported systems where we show
+## device sharing state in the OS notification area. We do not use these strings
+## on macOS, as global menu bar items do not have native tooltips.
+
+webrtc-camera-system-menu =
+ .label = You are sharing your camera. Click to control sharing.
+webrtc-microphone-system-menu =
+ .label = You are sharing your microphone. Click to control sharing.
+webrtc-screen-system-menu =
+ .label = You are sharing a window or a screen. Click to control sharing.
+
+## These strings are only used on Mac for menus attached to icons
+## near the clock on the mac menubar.
+## Variables:
+## $streamTitle (String): the title of the tab using the share.
+## $tabCount (Number): the title of the tab using the share.
+
+webrtc-indicator-menuitem-control-sharing =
+ .label = Control Sharing
+webrtc-indicator-menuitem-control-sharing-on =
+ .label = Control Sharing on “{ $streamTitle }”
+
+webrtc-indicator-menuitem-sharing-camera-with =
+ .label = Sharing Camera with “{ $streamTitle }”
+webrtc-indicator-menuitem-sharing-camera-with-n-tabs =
+ .label =
+ { $tabCount ->
+ [one] Sharing Camera with { $tabCount } tab
+ *[other] Sharing Camera with { $tabCount } tabs
+ }
+
+webrtc-indicator-menuitem-sharing-microphone-with =
+ .label = Sharing Microphone with “{ $streamTitle }”
+webrtc-indicator-menuitem-sharing-microphone-with-n-tabs =
+ .label =
+ { $tabCount ->
+ [one] Sharing Microphone with { $tabCount } tab
+ *[other] Sharing Microphone with { $tabCount } tabs
+ }
+
+webrtc-indicator-menuitem-sharing-application-with =
+ .label = Sharing an Application with “{ $streamTitle }”
+webrtc-indicator-menuitem-sharing-application-with-n-tabs =
+ .label =
+ { $tabCount ->
+ [one] Sharing an Application with { $tabCount } tab
+ *[other] Sharing Applications with { $tabCount } tabs
+ }
+
+webrtc-indicator-menuitem-sharing-screen-with =
+ .label = Sharing Screen with “{ $streamTitle }”
+webrtc-indicator-menuitem-sharing-screen-with-n-tabs =
+ .label =
+ { $tabCount ->
+ [one] Sharing Screen with { $tabCount } tab
+ *[other] Sharing Screen with { $tabCount } tabs
+ }
+
+webrtc-indicator-menuitem-sharing-window-with =
+ .label = Sharing a Window with “{ $streamTitle }”
+webrtc-indicator-menuitem-sharing-window-with-n-tabs =
+ .label =
+ { $tabCount ->
+ [one] Sharing a Window with { $tabCount } tab
+ *[other] Sharing Windows with { $tabCount } tabs
+ }
+
+webrtc-indicator-menuitem-sharing-browser-with =
+ .label = Sharing a Tab with “{ $streamTitle }”
+# This message is shown when the contents of a tab is shared during a WebRTC
+# session, which currently is only possible with Loop/Hello.
+webrtc-indicator-menuitem-sharing-browser-with-n-tabs =
+ .label =
+ { $tabCount ->
+ [one] Sharing a Tab with { $tabCount } tab
+ *[other] Sharing Tabs with { $tabCount } tabs
+ }
+
+## Variables:
+## $origin (String): the website origin (e.g. www.mozilla.org).
+
+webrtc-allow-share-audio-capture = Allow { $origin } to listen to this tab’s audio?
+webrtc-allow-share-camera = Allow { $origin } to use your camera?
+webrtc-allow-share-microphone = Allow { $origin } to use your microphone?
+webrtc-allow-share-screen = Allow { $origin } to see your screen?
+# "Speakers" is used in a general sense that might include headphones or
+# another audio output connection.
+webrtc-allow-share-speaker = Allow { $origin } to use other speakers?
+webrtc-allow-share-camera-and-microphone = Allow { $origin } to use your camera and microphone?
+webrtc-allow-share-camera-and-audio-capture = Allow { $origin } to use your camera and listen to this tab’s audio?
+webrtc-allow-share-screen-and-microphone = Allow { $origin } to use your microphone and see your screen?
+webrtc-allow-share-screen-and-audio-capture = Allow { $origin } to listen to this tab’s audio and see your screen?
+
+## Special phrasing for sharing devices when the origin is a file url.
+
+webrtc-allow-share-audio-capture-with-file = Allow this local file to listen to this tab’s audio?
+webrtc-allow-share-camera-with-file = Allow this local file to use your camera?
+webrtc-allow-share-microphone-with-file = Allow this local file to use your microphone?
+webrtc-allow-share-screen-with-file = Allow this local file to see your screen?
+# "Speakers" is used in a general sense that might include headphones or
+# another audio output connection.
+webrtc-allow-share-speaker-with-file = Allow this local file to use other speakers?
+webrtc-allow-share-camera-and-microphone-with-file = Allow this local file to use your camera and microphone?
+webrtc-allow-share-camera-and-audio-capture-with-file = Allow this local file to use your camera and listen to this tab’s audio?
+webrtc-allow-share-screen-and-microphone-with-file = Allow this local file to use your microphone and see your screen?
+webrtc-allow-share-screen-and-audio-capture-with-file = Allow this local file to listen to this tab’s audio and see your screen?
+
+## Variables:
+## $origin (String): the first party origin.
+## $thirdParty (String): the third party origin.
+
+webrtc-allow-share-audio-capture-unsafe-delegation = Allow { $origin } to give { $thirdParty } permission to listen to this tab’s audio?
+webrtc-allow-share-camera-unsafe-delegation = Allow { $origin } to give { $thirdParty } access to your camera?
+webrtc-allow-share-microphone-unsafe-delegation = Allow { $origin } to give { $thirdParty } access to your microphone?
+webrtc-allow-share-screen-unsafe-delegation = Allow { $origin } to give { $thirdParty } permission to see your screen?
+# "Speakers" is used in a general sense that might include headphones or
+# another audio output connection.
+webrtc-allow-share-speaker-unsafe-delegation = Allow { $origin } to give { $thirdParty } access to other speakers?
+webrtc-allow-share-camera-and-microphone-unsafe-delegation = Allow { $origin } to give { $thirdParty } access to your camera and microphone?
+webrtc-allow-share-camera-and-audio-capture-unsafe-delegation = Allow { $origin } to give { $thirdParty } access to your camera and listen to this tab’s audio?
+webrtc-allow-share-screen-and-microphone-unsafe-delegation = Allow { $origin } to give { $thirdParty } access to your microphone and see your screen?
+webrtc-allow-share-screen-and-audio-capture-unsafe-delegation = Allow { $origin } to give { $thirdParty } permission to listen to this tab’s audio and see your screen?
+
+##
+
+webrtc-share-screen-warning = Only share screens with sites you trust. Sharing can allow deceptive sites to browse as you and steal your private data.
+webrtc-share-browser-warning = Only share { -brand-short-name } with sites you trust. Sharing can allow deceptive sites to browse as you and steal your private data.
+
+webrtc-share-screen-learn-more = Learn more
+webrtc-pick-window-or-screen = Select window or screen
+webrtc-share-entire-screen = Entire screen
+webrtc-share-pipe-wire-portal = Use operating system settings
+# Variables:
+# $monitorIndex (String): screen number (digits 1, 2, etc).
+webrtc-share-monitor = Screen { $monitorIndex }
+# Variables:
+# $windowCount (Number): the number of windows currently displayed by the application.
+# $appName (String): the name of the application.
+webrtc-share-application =
+ { $windowCount ->
+ [one] { $appName } ({ $windowCount } window)
+ *[other] { $appName } ({ $windowCount } windows)
+ }
+
+## These buttons are the possible answers to the various prompts in the "webrtc-allow-share-*" strings.
+
+webrtc-action-allow =
+ .label = Allow
+ .accesskey = A
+webrtc-action-block =
+ .label = Block
+ .accesskey = B
+webrtc-action-always-block =
+ .label = Always block
+ .accesskey = w
+webrtc-action-not-now =
+ .label = Not now
+ .accesskey = N
+
+##
+
+webrtc-remember-allow-checkbox = Remember this decision
+webrtc-mute-notifications-checkbox = Mute website notifications while sharing
+
+webrtc-reason-for-no-permanent-allow-screen = { -brand-short-name } can not allow permanent access to your screen.
+webrtc-reason-for-no-permanent-allow-audio = { -brand-short-name } can not allow permanent access to your tab’s audio without asking which tab to share.
+webrtc-reason-for-no-permanent-allow-insecure = Your connection to this site is not secure. To protect you, { -brand-short-name } will only allow access for this session.
diff --git a/browser/locales/en-US/chrome/browser/browser.properties b/browser/locales/en-US/chrome/browser/browser.properties
new file mode 100644
index 0000000000..c326f2843c
--- /dev/null
+++ b/browser/locales/en-US/chrome/browser/browser.properties
@@ -0,0 +1,379 @@
+# 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/.
+
+nv_timeout=Timed Out
+openFile=Open File
+
+droponhometitle=Set Home Page
+droponhomemsg=Do you want this document to be your new home page?
+droponhomemsgMultiple=Do you want these documents to be your new home pages?
+
+# context menu strings
+
+# LOCALIZATION NOTE (contextMenuSearch): %1$S is the search engine,
+# %2$S is the selection string.
+contextMenuSearch=Search %1$S for “%2$S”
+contextMenuSearch.accesskey=S
+contextMenuPrivateSearch=Search in a Private Window
+contextMenuPrivateSearch.accesskey=h
+# LOCALIZATION NOTE (contextMenuPrivateSearchOtherEngine): %S is the search
+# engine name as set for Private Browsing mode. This label is only used when
+# this engine is different from the default engine name used in normal mode.
+contextMenuPrivateSearchOtherEngine=Search with %S in a Private Window
+contextMenuPrivateSearchOtherEngine.accesskey=h
+
+# bookmark dialog strings
+
+bookmarkAllTabsDefault=[Folder Name]
+
+unsignedAddonsDisabled.message=One or more installed add-ons cannot be verified and have been disabled.
+unsignedAddonsDisabled.learnMore.label=Learn More
+unsignedAddonsDisabled.learnMore.accesskey=L
+
+# LOCALIZATION NOTE (geolocationLastAccessIndicatorText): %S is the relative time of the most recent geolocation access (e.g. 5 min. ago)
+geolocationLastAccessIndicatorText=Last access %S
+
+# LOCALIZATION NOTE (openProtocolHandlerPermissionEntryLabel): %S is the scheme of the protocol the site may open an application for. For example: mailto
+openProtocolHandlerPermissionEntryLabel=%S:// links
+
+crashedpluginsMessage.title=The %S plugin has crashed.
+crashedpluginsMessage.reloadButton.label=Reload page
+crashedpluginsMessage.reloadButton.accesskey=R
+crashedpluginsMessage.submitButton.label=Submit a crash report
+crashedpluginsMessage.submitButton.accesskey=S
+crashedpluginsMessage.learnMore=Learn More…
+
+# Keyword fixup messages
+# LOCALIZATION NOTE (keywordURIFixup.message): Used when the user tries to visit
+# a local host page, by the time the DNS request recognizes it, we have already
+# loaded a search page for the given word. An infobar then asks to the user
+# whether he rather wanted to visit the host. %S is the recognized host.
+keywordURIFixup.message=Did you mean to go to %S?
+keywordURIFixup.goTo=Yes, take me to %S
+keywordURIFixup.goTo.accesskey=Y
+
+# Sanitize
+# LOCALIZATION NOTE (update.downloadAndInstallButton.label): %S is replaced by the
+# version of the update: "Update to 28.0".
+update.downloadAndInstallButton.label=Update to %S
+update.downloadAndInstallButton.accesskey=U
+
+menuOpenAllInTabs.label=Open All in Tabs
+
+# Unified Back-/Forward Popup
+tabHistory.reloadCurrent=Reload this page
+tabHistory.goBack=Go back to this page
+tabHistory.goForward=Go forward to this page
+
+# URL Bar
+pasteAndGo.label=Paste and Go
+# LOCALIZATION NOTE (reloadButton.tooltip):
+# %S is the keyboard shortcut for reloading the current page
+reloadButton.tooltip=Reload current page (%S)
+# LOCALIZATION NOTE (stopButton.tooltip):
+# %S is the keyboard shortcut for stopping loading the page
+stopButton.tooltip=Stop loading this page (%S)
+# LOCALIZATION NOTE (urlbar-zoom-button.tooltip):
+# %S is the keyboard shortcut for resetting the zoom level to 100%
+urlbar-zoom-button.tooltip=Reset zoom level (%S)
+# LOCALIZATION NOTE (reader-mode-button.tooltip):
+# %S is the keyboard shortcut for entering/exiting reader view
+reader-mode-button.tooltip=Toggle reader view (%S)
+
+# LOCALIZATION NOTE(zoom-button.label): %S is the current page zoom level,
+# %% will be displayed as a single % character (% is commonly used to define
+# format specifiers, so it needs to be escaped).
+zoom-button.label = %S%%
+
+# General bookmarks button
+# LOCALIZATION NOTE (bookmarksMenuButton.tooltip):
+# %S is the keyboard shortcut for "Show All Bookmarks"
+bookmarksMenuButton.tooltip=Show your bookmarks (%S)
+
+# Downloads button tooltip
+# LOCALIZATION NOTE (downloads.tooltip):
+# %S is the keyboard shortcut for "Downloads"
+downloads.tooltip=Display the progress of ongoing downloads (%S)
+
+# New Window button tooltip
+# LOCALIZATION NOTE (newWindowButton.tooltip):
+# %S is the keyboard shortcut for "New Window"
+newWindowButton.tooltip=Open a new window (%S)
+
+# New Tab button tooltip
+# LOCALIZATION NOTE (newTabButton.tooltip):
+# %S is the keyboard shortcut for "New Tab"
+newTabButton.tooltip=Open a new tab (%S)
+newTabContainer.tooltip=Open a new tab (%S)\nPress and hold to open a new container tab
+newTabAlwaysContainer.tooltip=Select container to open a new tab
+
+# Canvas permission prompt
+# LOCALIZATION NOTE (canvas.siteprompt2): %S is hostname
+canvas.siteprompt2=Allow %S to use your HTML5 canvas image data?
+canvas.siteprompt2.warning=This may be used to uniquely identify your computer.
+canvas.block=Block
+canvas.block.accesskey=B
+canvas.allow2=Allow
+canvas.allow2.accesskey=A
+canvas.remember2=Remember this decision
+
+# WebAuthn prompts
+# LOCALIZATION NOTE (webauthn.userPresence): %S is hostname
+webauthn.userPresencePrompt=Touch your security key to continue with %S.
+# LOCALIZATION NOTE (webauthn.registerDirectPrompt3):
+# %S is hostname.
+# The website is asking for extended information about your
+# hardware authenticator that shouldn't be generally necessary. Permitting
+# this is safe if you only use one account at this website. If you have
+# multiple accounts at this website, and you use the same hardware
+# authenticator, then the website could link those accounts together.
+# And this is true even if you use a different profile / browser (or even Tor
+# Browser). To avoid this, you should use different hardware authenticators
+# for different accounts on this website.
+webauthn.registerDirectPrompt3=%S is requesting extended information about your security key, which may affect your privacy.
+# LOCALIZATION NOTE (webauthn.registerDirectPromptHint):
+# %S is brandShortName
+webauthn.registerDirectPromptHint=%S can anonymize this for you, but the website might decline this key. If declined, you can try again.
+# LOCALIZATION NOTE (webauthn.selectSignResultPrompt): %S is hostname
+webauthn.selectSignResultPrompt=Multiple accounts found for %S. Select which to use or cancel.
+# LOCALIZATION NOTE (webauthn.selectDevicePrompt): %S is hostname
+webauthn.selectDevicePrompt=Multiple devices found for %S. Please select one.
+# LOCALIZATION NOTE (webauthn.deviceBlockedPrompt): %S is hostname
+webauthn.deviceBlockedPrompt=User verification failed on %S. There are no attempts left and your device has been locked, because the wrong PIN was provided too many times. The device needs a reset.
+# LOCALIZATION NOTE (webauthn.pinAuthBlockedPrompt): %S is hostname
+webauthn.pinAuthBlockedPrompt=User verification failed on %S. There were too many failed attempts in a row and PIN authentication has been temporarily blocked. Your device needs a power cycle (unplug and re-insert).
+# LOCALIZATION NOTE (webauthn.pinNotSetPrompt): %S is hostname
+webauthn.pinNotSetPrompt=User verification failed on %S. You may need to set a PIN on your device.
+# LOCALIZATION NOTE (webauthn.uvBlockedPrompt): %S is hostname
+webauthn.uvBlockedPrompt=User verification failed on %S. There were too many failed attempts and the built-in user verification method has been blocked.
+webauthn.alreadyRegisteredPrompt=This device is already registered. Try a different device.
+webauthn.cancel=Cancel
+webauthn.cancel.accesskey=c
+webauthn.proceed=Proceed
+webauthn.proceed.accesskey=p
+webauthn.anonymize=Anonymize anyway
+
+# LOCALIZATION NOTE (identity.identified.verifier, identity.identified.state_and_country, identity.ev.contentOwner2):
+# %S is the hostname of the site that is being displayed.
+identity.identified.verifier=Verified by: %S
+identity.identified.verified_by_you=You have added a security exception for this site.
+identity.identified.state_and_country=%S, %S
+identity.ev.contentOwner2=Certificate issued to: %S
+
+# LOCALIZATION NOTE (identity.notSecure.label):
+# Keep this string as short as possible, this is displayed in the URL bar
+# use a synonym for "safe" or "private" if "secure" is too long.
+identity.notSecure.label=Not Secure
+identity.notSecure.tooltip=Connection is not secure
+
+identity.extension.label=Extension (%S)
+identity.extension.tooltip=Loaded by extension: %S
+
+# Application menu
+
+# LOCALIZATION NOTE(zoomReduce-button.tooltip): %S is the keyboard shortcut.
+zoomReduce-button.tooltip = Zoom out (%S)
+# LOCALIZATION NOTE(zoomReset-button.tooltip): %S is the keyboard shortcut.
+zoomReset-button.tooltip = Reset zoom level (%S)
+# LOCALIZATION NOTE(zoomEnlarge-button.tooltip): %S is the keyboard shortcut.
+zoomEnlarge-button.tooltip = Zoom in (%S)
+
+# LOCALIZATION NOTE (cut-button.tooltip): %S is the keyboard shortcut.
+cut-button.tooltip = Cut (%S)
+# LOCALIZATION NOTE (copy-button.tooltip): %S is the keyboard shortcut.
+copy-button.tooltip = Copy (%S)
+# LOCALIZATION NOTE (paste-button.tooltip): %S is the keyboard shortcut.
+paste-button.tooltip = Paste (%S)
+
+# Geolocation UI
+
+geolocation.allow=Allow
+geolocation.allow.accesskey=A
+geolocation.block=Block
+geolocation.block.accesskey=B
+geolocation.shareWithSite4=Allow %S to access your location?
+geolocation.shareWithFile4=Allow this local file to access your location?
+# LOCALIZATION NOTE(geolocation.shareWithSiteUnsafeDelegation2):
+# %1$S is the first party origin, %2$S is the third party origin.
+geolocation.shareWithSiteUnsafeDelegation2=Allow %1$S to give %2$S permission to access your location?
+geolocation.remember=Remember this decision
+
+# Virtual Reality Device UI
+xr.allow2=Allow
+xr.allow2.accesskey=A
+xr.block=Block
+xr.block.accesskey=B
+xr.shareWithSite4=Allow %S to access virtual reality devices? This may expose sensitive information.
+xr.shareWithFile4=Allow this local file to access virtual reality devices? This may expose sensitive information.
+xr.remember=Remember this decision
+
+# Persistent storage UI
+persistentStorage.allow=Allow
+persistentStorage.allow.accesskey=A
+persistentStorage.block.label=Block
+persistentStorage.block.accesskey=B
+persistentStorage.allowWithSite2=Allow %S to store data in persistent storage?
+
+# Web notifications UI
+# LOCALIZATION NOTE (alwaysBlock, block)
+# The two button strings will never be shown at the same time, so
+# it's okay for them to have the same access key
+webNotifications.allow2=Allow
+webNotifications.allow2.accesskey=A
+webNotifications.notNow=Not Now
+webNotifications.notNow.accesskey=n
+webNotifications.never=Never Allow
+webNotifications.never.accesskey=v
+webNotifications.alwaysBlock=Always Block
+webNotifications.alwaysBlock.accesskey=B
+webNotifications.block=Block
+webNotifications.block.accesskey=B
+webNotifications.receiveFromSite3=Allow %S to send notifications?
+
+# Phishing/Malware Notification Bar.
+# LOCALIZATION NOTE (notADeceptiveSite, notAnAttack)
+# The two button strings will never be shown at the same time, so
+# it's okay for them to have the same access key
+safebrowsing.getMeOutOfHereButton.label=Get me out of here!
+safebrowsing.getMeOutOfHereButton.accessKey=G
+safebrowsing.deceptiveSite=Deceptive Site!
+safebrowsing.notADeceptiveSiteButton.label=This isn’t a deceptive site…
+safebrowsing.notADeceptiveSiteButton.accessKey=D
+safebrowsing.reportedAttackSite=Reported Attack Site!
+safebrowsing.notAnAttackButton.label=This isn’t an attack site…
+safebrowsing.notAnAttackButton.accessKey=A
+safebrowsing.reportedUnwantedSite=Reported Unwanted Software Site!
+safebrowsing.reportedHarmfulSite=Reported Harmful Site!
+
+# LOCALIZATION NOTE (addKeywordTitleAutoFill): %S will be replaced by the page's title
+# Used as the bookmark name when saving a keyword for a search field.
+addKeywordTitleAutoFill=Search %S
+
+# troubleshootModeRestart
+# LOCALIZATION NOTE (troubleshootModeRestartPromptTitle): %S is the name of the product (e.g., Firefox)
+troubleshootModeRestartPromptTitle=Restart %S in Troubleshoot Mode?
+troubleshootModeRestartPromptMessage=Your extensions, themes, and custom settings will be temporarily disabled.
+troubleshootModeRestartButton=Restart
+
+# LOCALIZATION NOTE (browser.menu.showCharacterEncoding): Set to the string
+# "true" (spelled and capitalized exactly that way) to show the "Text
+# Encoding" menu in the main Firefox button on Windows. Any other value will
+# hide it. Regardless of the value of this setting, the "Text Encoding"
+# menu will always be accessible via the "Browser Tools" menu.
+# This is not a string to translate; it just controls whether the menu shows
+# up in the Firefox button. If users frequently use the "Text Encoding"
+# menu, set this to "true". Otherwise, you can leave it as "false".
+browser.menu.showCharacterEncoding=false
+
+# Process hang reporter
+# LOCALIZATION NOTE (processHang.selected_tab.label): %1$S is the name of the product (e.g., Firefox)
+processHang.selected_tab.label = This page is slowing down %1$S. To speed up your browser, stop this page.
+# LOCALIZATION NOTE (processHang.nonspecific_tab.label): %1$S is the name of the product (e.g., Firefox)
+processHang.nonspecific_tab.label = A web page is slowing down %1$S. To speed up your browser, stop that page.
+# LOCALIZATION NOTE (processHang.specific_tab.label): %1$S is the title of the tab.
+# %2$S is the name of the product (e.g., Firefox)
+processHang.specific_tab.label = “%1$S” is slowing down %2$S. To speed up your browser, stop that page.
+# LOCALIZATION NOTE (processHang.add-on.label2): %1$S is the name of the
+# extension. %2$S is the name of the product (e.g., Firefox)
+processHang.add-on.label2 = “%1$S” is slowing down %2$S. To speed up your browser, stop that extension.
+processHang.add-on.learn-more.text = Learn more
+processHang.button_stop2.label = Stop
+processHang.button_stop2.accessKey = S
+processHang.button_debug.label = Debug Script
+processHang.button_debug.accessKey = D
+
+# LOCALIZATION NOTE (fullscreenButton.tooltip): %S is the keyboard shortcut for full screen
+fullscreenButton.tooltip=Display the window in full screen (%S)
+
+# These are visible when opening the popup inside the bookmarks sidebar
+sidebar.moveToLeft=Move Sidebar to Left
+sidebar.moveToRight=Move Sidebar to Right
+
+# LOCALIZATION NOTE(emeNotifications.drmContentDisabled.message): NB: inserted via innerHTML, so please don't use <, > or & in this string. %S will be the 'learn more' link
+emeNotifications.drmContentDisabled.message2 = You must enable DRM to play some audio or video on this page.
+emeNotifications.drmContentDisabled.button.label = Enable DRM
+emeNotifications.drmContentDisabled.button.accesskey = E
+
+# LOCALIZATION NOTE(emeNotifications.drmContentCDMInstalling.message): NB: inserted via innerHTML, so please don't use <, > or & in this string. %S is brandShortName
+emeNotifications.drmContentCDMInstalling.message = %S is installing components needed to play the audio or video on this page. Please try again later.
+
+emeNotifications.unknownDRMSoftware = Unknown
+
+# LOCALIZATION NOTE (customizeMode.tabTitle): %S is brandShortName
+customizeMode.tabTitle = Customize %S
+
+# LOCALIZATION NOTE (sendTabsToDevice.label):
+# Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs sent to the device.
+sendTabsToDevice.label = Send tab to device;Send #1 tabs to device
+sendTabsToDevice.accesskey = n
+
+decoder.noCodecs.button = Learn how
+decoder.noCodecs.accesskey = L
+decoder.noCodecsLinux.message = To play video, you may need to install the required video codecs.
+decoder.noHWAcceleration.message = To improve video quality, you may need to install Microsoft’s Media Feature Pack.
+decoder.noPulseAudio.message = To play audio, you may need to install the required PulseAudio software.
+decoder.unsupportedLibavcodec.message = libavcodec may be vulnerable or is not supported, and should be updated to play video.
+
+decoder.decodeError.message = An error occurred while decoding a media resource.
+decoder.decodeError.button = Report site issue
+decoder.decodeError.accesskey = R
+decoder.decodeWarning.message = A recoverable error occurred while decoding a media resource.
+
+# LOCALIZATION NOTE (captivePortal.infoMessage3):
+# Shown in a notification bar when we detect a captive portal is blocking network access
+# and requires the user to log in before browsing.
+captivePortal.infoMessage3 = You must log in to this network before you can access the Internet.
+# LOCALIZATION NOTE (captivePortal.showLoginPage2):
+# The label for a button shown in the info bar in all tabs except the login page tab.
+# The button shows the portal login page tab when clicked.
+captivePortal.showLoginPage2 = Open network login page
+
+# LOCALIZATION NOTE (permissions.header):
+# %S is the hostname of the site that is being displayed.
+permissions.header = Permissions for %S
+permissions.remove.tooltip = Clear this permission and ask again
+
+permissions.fullscreen.promptCanceled = Canceled pending permission requests: permission requests should not be issued before entering DOM fullscreen.
+permissions.fullscreen.fullScreenCanceled = Exited DOM fullscreen: permission requests should not be issued while in DOM fullscreen.
+
+# LOCALIZATION NOTE (aboutDialog.architecture.*):
+# The sixtyFourBit and thirtyTwoBit strings describe the architecture of the
+# current Firefox build: 32-bit or 64-bit. These strings are used in parentheses
+# between the Firefox version and the "What's new" link in the About dialog,
+# e.g.: "48.0.2 (32-bit) <What's new>" or "51.0a1 (2016-09-05) (64-bit)".
+aboutDialog.architecture.sixtyFourBit = 64-bit
+aboutDialog.architecture.thirtyTwoBit = 32-bit
+
+midi.allow.label = Allow
+midi.allow.accesskey = A
+midi.block.label = Block
+midi.block.accesskey = B
+midi.remember=Remember this decision
+midi.shareWithFile = Allow this local file to access your MIDI devices?
+# LOCALIZATION NOTE (midi.shareWithSite): %S is the name of the site URL (https://...) requesting MIDI access
+midi.shareWithSite = Allow %S to access your MIDI devices?
+midi.shareSysexWithFile = Allow this local file to access your MIDI devices and send/receive SysEx messages?
+# LOCALIZATION NOTE (midi.shareSysexWithSite): %S is the name of the site URL (https://...) requesting MIDI access
+midi.shareSysexWithSite = Allow %S to access your MIDI devices and send/receive SysEx messages?
+
+# LOCALIZATION NOTE (panel.back):
+# This is used by screen readers to label the "back" button in various browser
+# popup panels, including the sliding subviews of the main menu.
+panel.back = Back
+
+storageAccess1.Allow.label = Allow
+storageAccess1.Allow.accesskey = A
+storageAccess1.DontAllow.label = Block
+storageAccess1.DontAllow.accesskey = B
+# LOCALIZATION NOTE (storageAccess4.message, storageAccess1.hintText):
+# %1$S is the name of the site URL (www.site1.example) trying to track the user's activity.
+# %2$S is the name of the site URL (www.site2.example) that the user is visiting. This is the same domain name displayed in the address bar.
+storageAccess4.message = Allow %1$S to use its cookies on %2$S?
+storageAccess1.hintText = You may want to block access if it’s not clear why %1$S needs this data.
+
+# LOCALIZATION NOTE (gnomeSearchProviderSearchWeb):
+# Used for search by Gnome Shell activity screen, %S is a searched string.
+gnomeSearchProviderSearchWeb=Search the web for “%S”
diff --git a/browser/locales/en-US/chrome/browser/customizableui/customizableWidgets.properties b/browser/locales/en-US/chrome/browser/customizableui/customizableWidgets.properties
new file mode 100644
index 0000000000..fab5fb066c
--- /dev/null
+++ b/browser/locales/en-US/chrome/browser/customizableui/customizableWidgets.properties
@@ -0,0 +1,54 @@
+# 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/.
+
+history-panelmenu.label = History
+# LOCALIZATION NOTE(history-panelmenu.tooltiptext2): %S is the keyboard shortcut
+history-panelmenu.tooltiptext2 = Show your history (%S)
+
+find-button.label = Find
+# LOCALIZATION NOTE(find-button.tooltiptext3): %S is the keyboard shortcut.
+find-button.tooltiptext3 = Find in this page (%S)
+
+developer-button.label = Developer
+# LOCALIZATION NOTE(developer-button.tooltiptext): %S is the keyboard shortcut
+developer-button.tooltiptext2 = Open Web developer tools (%S)
+
+sidebar-button.label = Sidebars
+sidebar-button.tooltiptext2 = Show sidebars
+
+zoom-controls.label = Zoom Controls
+zoom-controls.tooltiptext2 = Zoom controls
+
+zoom-out-button.label = Zoom out
+# LOCALIZATION NOTE(zoom-out-button.tooltiptext2): %S is the keyboard shortcut.
+zoom-out-button.tooltiptext2 = Zoom out (%S)
+
+# LOCALIZATION NOTE(zoom-reset-button.tooltiptext2): %S is the keyboard shortcut.
+zoom-reset-button.tooltiptext2 = Reset zoom level (%S)
+
+zoom-in-button.label = Zoom in
+# LOCALIZATION NOTE(zoom-in-button.tooltiptext2): %S is the keyboard shortcut.
+zoom-in-button.tooltiptext2 = Zoom in (%S)
+
+edit-controls.label = Edit Controls
+edit-controls.tooltiptext2 = Edit controls
+
+cut-button.label = Cut
+# LOCALIZATION NOTE(cut-button.tooltiptext2): %S is the keyboard shortcut.
+cut-button.tooltiptext2 = Cut (%S)
+
+copy-button.label = Copy
+# LOCALIZATION NOTE(copy-button.tooltiptext2): %S is the keyboard shortcut.
+copy-button.tooltiptext2 = Copy (%S)
+
+paste-button.label = Paste
+# LOCALIZATION NOTE(paste-button.tooltiptext2): %S is the keyboard shortcut.
+paste-button.tooltiptext2 = Paste (%S)
+
+panic-button.label = Forget
+panic-button.tooltiptext = Forget about some browsing history
+
+toolbarspring.label = Flexible Space
+toolbarseparator.label = Separator
+toolbarspacer.label = Space
diff --git a/browser/locales/en-US/chrome/browser/downloads/downloads.properties b/browser/locales/en-US/chrome/browser/downloads/downloads.properties
new file mode 100644
index 0000000000..308d9f8f0b
--- /dev/null
+++ b/browser/locales/en-US/chrome/browser/downloads/downloads.properties
@@ -0,0 +1,82 @@
+# 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/.
+
+# LOCALIZATION NOTE (stateStarting):
+# Indicates that the download is starting.
+stateStarting=Starting…
+# LOCALIZATION NOTE (stateFailed):
+# Indicates that the download failed because of an error.
+stateFailed=Failed
+# LOCALIZATION NOTE (statePaused):
+# Indicates that the download was paused by the user.
+statePaused=Paused
+# LOCALIZATION NOTE (stateCanceled):
+# Indicates that the download was canceled by the user.
+stateCanceled=Canceled
+# LOCALIZATION NOTE (stateCompleted):
+# Indicates that the download was completed.
+stateCompleted=Completed
+# LOCALIZATION NOTE (stateBlockedParentalControls):
+# Indicates that the download was blocked by the Parental Controls feature of
+# Windows. "Parental Controls" should be consistently named and capitalized
+# with the display of this feature in Windows. The following article can
+# provide a reference for the translation of "Parental Controls" in various
+# languages:
+# http://windows.microsoft.com/en-US/windows-vista/Set-up-Parental-Controls
+stateBlockedParentalControls=Blocked by Parental Controls
+# LOCALIZATION NOTE (blockedMalware, blockedPotentiallyUnwanted,
+# blockedUncommon2):
+# These strings are shown in the panel for some types of blocked downloads. You
+# may need to adjust "downloads.width" in "downloads.dtd" if this turns out to
+# be longer than the other existing status strings.
+blockedMalware=This file contains a virus or malware.
+blockedPotentiallyUnwanted=This file may harm your computer.
+blockedPotentiallyInsecure=File not downloaded: Potential security risk.
+blockedUncommon2=This file is not commonly downloaded.
+
+# LOCALIZATION NOTE (fileMovedOrMissing):
+# Displayed when a complete download which is not at the original folder.
+fileMovedOrMissing=File moved or missing
+
+# LOCALIZATION NOTE (fileDeleted):
+# Displayed when a downloaded file has been deleted by Firefox, e.g. by the
+# "Delete File" context menu item.
+fileDeleted=File deleted
+
+# LOCALIZATION NOTE (unblockHeaderUnblock, unblockHeaderOpen,
+# unblockTypeMalware, unblockTypePotentiallyUnwanted2,
+# unblockTypeUncommon2, unblockTip2, unblockButtonOpen,
+# unblockButtonUnblock, unblockButtonConfirmBlock, unblockInsecure2):
+# These strings are displayed in the dialog shown when the user asks a blocked
+# download to be unblocked. The severity of the threat is expressed in
+# descending order by the unblockType strings, it is higher for files detected
+# as malware and lower for uncommon downloads.
+unblockHeaderUnblock=Are you sure you want to allow this download?
+unblockHeaderOpen=Are you sure you want to open this file?
+unblockTypeMalware=This file contains a virus or other malware that will harm your computer.
+unblockTypePotentiallyUnwanted2=This file is disguised as a helpful download, but it can make unexpected changes to your programs and settings.
+unblockTypeUncommon2=This file is not commonly downloaded and may not be safe to open. It may contain a virus or make unexpected changes to your programs and settings.
+unblockInsecure2=The download is offered over HTTP even though the current document was delivered over a secure HTTPS connection. If you proceed, the download may be corrupted or tampered with during the download process.
+unblockTip2=You can search for an alternate download source or try again later.
+unblockButtonOpen=Open
+unblockButtonUnblock=Allow download
+unblockButtonConfirmBlock=Remove file
+
+# LOCALIZATION NOTE (sizeWithUnits):
+# %1$S is replaced with the size number, and %2$S with the measurement unit.
+sizeWithUnits=%1$S %2$S
+sizeUnknown=Unknown size
+
+# LOCALIZATION NOTE (statusSeparator, statusSeparatorBeforeNumber):
+# These strings define templates for the separation of different elements in the
+# status line of a download item. As a separator, by default we use the Unicode
+# character U+2014 'EM DASH' (long dash). Examples of status lines include
+# "Canceled - 222.net", "1.1 MB - website2.com", or "Paused - 1.1 MB". Note
+# that we use a wider space after the separator when it is followed by a number,
+# just to avoid visually confusing it with with a minus sign with some fonts.
+# If you use a different separator, this might not be necessary. However, there
+# is usually no need to change the separator or the order of the substitutions,
+# even for right-to-left languages, unless the defaults are not suitable.
+statusSeparator=%1$S \u2014 %2$S
+statusSeparatorBeforeNumber=%1$S \u2014 %2$S
diff --git a/browser/locales/en-US/chrome/browser/feeds/subscribe.properties b/browser/locales/en-US/chrome/browser/feeds/subscribe.properties
new file mode 100644
index 0000000000..ef01723b9e
--- /dev/null
+++ b/browser/locales/en-US/chrome/browser/feeds/subscribe.properties
@@ -0,0 +1,10 @@
+# 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/.
+
+# LOCALIZATION NOTE (addProtocolHandlerMessage):
+# Message displayed when adding a protocol handler:
+# %1$S is the application's domain, %2$S is the type of protocol
+addProtocolHandlerMessage=Add “%1$S” as an application for %2$S links?
+addProtocolHandlerAddButton=Add application
+addProtocolHandlerAddButtonAccesskey=A
diff --git a/browser/locales/en-US/chrome/browser/places/bookmarkProperties.properties b/browser/locales/en-US/chrome/browser/places/bookmarkProperties.properties
new file mode 100644
index 0000000000..a62cd6339b
--- /dev/null
+++ b/browser/locales/en-US/chrome/browser/places/bookmarkProperties.properties
@@ -0,0 +1,23 @@
+# 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/.
+
+dialogAcceptLabelAddItem=Add
+dialogAcceptLabelSaveItem=Save
+dialogAcceptLabelAddMulti=Add Bookmarks
+dialogAcceptLabelEdit=Save
+dialogTitleAddBookmark=New Bookmark
+dialogTitleAddFolder=New Folder
+dialogTitleAddMulti=New Bookmarks
+dialogTitleEdit=Properties for “%S”
+dialogTitleAddNewBookmark2=Add bookmark
+dialogTitleEditBookmark=Edit “%S”
+dialogTitleEditBookmark2=Edit bookmark
+dialogTitleAddBookmarksFolder=Add bookmarks folder
+dialogTitleAddBookmarkFolder=Add bookmark folder
+dialogTitleEditBookmarksFolder=Edit bookmarks folder
+dialogTitleEditBookmarkFolder=Edit bookmark folder
+
+bookmarkAllTabsDefault=[Folder Name]
+newFolderDefault=New Folder
+newBookmarkDefault=New Bookmark
diff --git a/browser/locales/en-US/chrome/browser/safebrowsing/safebrowsing.properties b/browser/locales/en-US/chrome/browser/safebrowsing/safebrowsing.properties
new file mode 100644
index 0000000000..aa72ddbffd
--- /dev/null
+++ b/browser/locales/en-US/chrome/browser/safebrowsing/safebrowsing.properties
@@ -0,0 +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/.
+
+errorReportFalseDeceptiveTitle=This isn’t a deceptive site
+errorReportFalseDeceptiveMessage=It’s not possible to report this error at this time.
diff --git a/browser/locales/en-US/chrome/browser/search.properties b/browser/locales/en-US/chrome/browser/search.properties
new file mode 100644
index 0000000000..5aa1af7544
--- /dev/null
+++ b/browser/locales/en-US/chrome/browser/search.properties
@@ -0,0 +1,32 @@
+# 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/.
+
+searchtip=Search using %S
+
+# LOCALIZATION NOTE (searchHeader): this is displayed at the top of the panel
+# showing search suggestions.
+# %S is replaced with the name of the current default search engine.
+searchHeader=%S Search
+
+# LOCALIZATION NOTE (cmd_pasteAndSearch): "Search" is a verb, this is the
+# search bar equivalent to the url bar's "Paste and Go"
+cmd_pasteAndSearch=Paste & Search
+
+cmd_clearHistory=Clear Search History
+cmd_clearHistory_accesskey=H
+
+# LOCALIZATION NOTE (searchForSomethingWith2):
+# This string is used to build the header above the list of search shortcuts,
+# for example "Search for <user-typed string> with:"
+searchForSomethingWith2=Search for %S with:
+
+# LOCALIZATION NOTE (searchWithHeader):
+# The wording of this string should be as close as possible to
+# searchForSomethingWith2. This string will be used when the user
+# has not typed anything.
+searchWithHeader=Search with:
+
+# LOCALIZATION NOTE (searchSettings):
+# This is the label for the button that opens Search preferences.
+searchSettings=Change Search Settings
diff --git a/browser/locales/en-US/chrome/browser/shellservice.properties b/browser/locales/en-US/chrome/browser/shellservice.properties
new file mode 100644
index 0000000000..111243c1fc
--- /dev/null
+++ b/browser/locales/en-US/chrome/browser/shellservice.properties
@@ -0,0 +1,16 @@
+# 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/.
+
+# LOCALIZATION NOTE (setDefaultBrowserTitle, setDefaultBrowserMessage, setDefaultBrowserDontAsk, setDefaultBrowserAlertConfirm.label, setDefaultBrowserAlertNotNow.label):
+# These strings are used as an alternative to the ones above, in a modal dialog.
+# %S will be replaced by brandShortName
+setDefaultBrowserTitle=Default Browser
+setDefaultBrowserMessage=%S is not currently set as your default browser. Would you like to make it your default browser?
+setDefaultBrowserDontAsk=Always perform this check when starting %S.
+setDefaultBrowserAlertConfirm.label=Use %S as my default browser
+setDefaultBrowserAlertNotNow.label=Not now
+
+desktopBackgroundLeafNameWin=Desktop Background.bmp
+DesktopBackgroundDownloading=Saving Picture…
+DesktopBackgroundSet=Set Desktop Background
diff --git a/browser/locales/en-US/chrome/browser/siteData.properties b/browser/locales/en-US/chrome/browser/siteData.properties
new file mode 100644
index 0000000000..a6bc660746
--- /dev/null
+++ b/browser/locales/en-US/chrome/browser/siteData.properties
@@ -0,0 +1,8 @@
+# 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/.
+
+clearSiteDataPromptTitle=Clear all cookies and site data
+# LOCALIZATION NOTE (clearSiteDataPromptText): %S = brandShortName
+clearSiteDataPromptText=Selecting ‘Clear Now’ will clear all cookies and site data stored by %S. This may sign you out of websites and remove offline web content.
+clearSiteDataNow=Clear Now
diff --git a/browser/locales/en-US/chrome/browser/sitePermissions.properties b/browser/locales/en-US/chrome/browser/sitePermissions.properties
new file mode 100644
index 0000000000..653354d866
--- /dev/null
+++ b/browser/locales/en-US/chrome/browser/sitePermissions.properties
@@ -0,0 +1,55 @@
+# 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/.
+
+# LOCALIZATION NOTE (state.current.allowed,
+# state.current.allowedForSession,
+# state.current.allowedTemporarily,
+# state.current.blockedTemporarily,
+# state.current.blocked,
+# state.current.hide):
+# This label is used to display active permission states in the site
+# identity popup (which does not have a lot of screen space).
+state.current.allowed = Allowed
+state.current.allowedForSession = Allowed for Session
+state.current.allowedTemporarily = Allowed Temporarily
+state.current.blockedTemporarily = Blocked Temporarily
+state.current.blocked = Blocked
+state.current.prompt = Always Ask
+
+# LOCALIZATION NOTE (state.multichoice.alwaysAsk,
+# state.multichoice.allow,
+# state.multichoice.allowForSession,
+# state.multichoice.block):
+# Used to label permission state checkboxes in the page info dialog.
+state.multichoice.alwaysAsk = Always Ask
+state.multichoice.allow = Allow
+state.multichoice.allowForSession = Allow for Session
+state.multichoice.block = Block
+
+state.multichoice.autoplayblock = Block Audio
+state.multichoice.autoplayblockall = Block Audio and Video
+state.multichoice.autoplayallow = Allow Audio and Video
+
+permission.autoplay.label = Autoplay
+permission.cookie.label = Set cookies
+permission.desktop-notification3.label = Send notifications
+permission.camera.label = Use the camera
+permission.microphone.label = Use the microphone
+permission.screen.label = Share the screen
+# LOCALIZATION NOTE (permission.speaker.label):
+# Short form for (permission to) "Choose and change audio output devices".
+permission.speaker.label = Select speakers
+permission.install.label = Install add-ons
+permission.popup.label = Open pop-up windows
+permission.geo.label = Access your location
+permission.xr.label = Access virtual reality devices
+permission.shortcuts.label = Override keyboard shortcuts
+permission.focus-tab-by-prompt.label = Switch to this tab
+permission.persistent-storage.label = Store data in persistent storage
+permission.canvas.label = Extract canvas data
+permission.midi.label = Access MIDI devices
+permission.midi-sysex.label = Access MIDI devices with SysEx support
+# LOCALIZATION NOTE (permission.open-protocol-handler.label):
+# Open as a verb. "This site may open applications".
+permission.open-protocol-handler.label = Open applications
diff --git a/browser/locales/en-US/chrome/browser/syncSetup.properties b/browser/locales/en-US/chrome/browser/syncSetup.properties
new file mode 100644
index 0000000000..b5d3ddbe7b
--- /dev/null
+++ b/browser/locales/en-US/chrome/browser/syncSetup.properties
@@ -0,0 +1,14 @@
+# 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/.
+
+# Several other strings are used (via Weave.Status.login), but they come from
+# /services/sync
+
+# Firefox Accounts based setup.
+continue.label = Continue
+
+relinkVerify.title = Merge Warning
+relinkVerify.heading = Are you sure you want to sign in to Sync?
+# LOCALIZATION NOTE (relinkVerify.description): Email address of a user previously signed into sync.
+relinkVerify.description = A different user was previously signed in to Sync on this computer. Signing in will merge this browser’s bookmarks, passwords and other settings with %S
diff --git a/browser/locales/en-US/chrome/browser/taskbar.properties b/browser/locales/en-US/chrome/browser/taskbar.properties
new file mode 100644
index 0000000000..987d5ccf84
--- /dev/null
+++ b/browser/locales/en-US/chrome/browser/taskbar.properties
@@ -0,0 +1,12 @@
+# 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/.
+
+taskbar.tasks.newTab.label=Open new tab
+taskbar.tasks.newTab.description=Open a new browser tab.
+taskbar.tasks.newWindow.label=Open new window
+taskbar.tasks.newWindow.description=Open a new browser window.
+taskbar.tasks.newPrivateWindow.label=New private window
+taskbar.tasks.newPrivateWindow.description=Open a new window in private browsing mode.
+taskbar.frequent.label=Frequent
+taskbar.recent.label=Recent
diff --git a/browser/locales/en-US/chrome/browser/uiDensity.properties b/browser/locales/en-US/chrome/browser/uiDensity.properties
new file mode 100644
index 0000000000..0f44f39950
--- /dev/null
+++ b/browser/locales/en-US/chrome/browser/uiDensity.properties
@@ -0,0 +1,5 @@
+# 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/.
+
+uiDensity.menuitem-touch.acceltext=Tablet Mode Enabled
diff --git a/browser/locales/en-US/chrome/overrides/appstrings.properties b/browser/locales/en-US/chrome/overrides/appstrings.properties
new file mode 100644
index 0000000000..c2443faac1
--- /dev/null
+++ b/browser/locales/en-US/chrome/overrides/appstrings.properties
@@ -0,0 +1,44 @@
+# 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/.
+
+malformedURI2=Please check that the URL is correct and try again.
+fileNotFound=Firefox can’t find the file at %S.
+fileAccessDenied=The file at %S is not readable.
+dnsNotFound2=We can’t connect to the server at %S.
+unknownProtocolFound=Firefox doesn’t know how to open this address, because one of the following protocols (%S) isn’t associated with any program or is not allowed in this context.
+connectionFailure=Firefox can’t establish a connection to the server at %S.
+netInterrupt=The connection to %S was interrupted while the page was loading.
+netTimeout=The server at %S is taking too long to respond.
+redirectLoop=Firefox has detected that the server is redirecting the request for this address in a way that will never complete.
+## LOCALIZATION NOTE (confirmRepostPrompt): In this item, don’t translate "%S"
+confirmRepostPrompt=To display this page, %S must send information that will repeat any action (such as a search or order confirmation) that was performed earlier.
+resendButton.label=Resend
+unknownSocketType=Firefox doesn’t know how to communicate with the server.
+netReset=The connection to the server was reset while the page was loading.
+notCached=This document is no longer available.
+netOffline=Firefox is currently in offline mode and can’t browse the Web.
+isprinting=The document cannot change while Printing or in Print Preview.
+deniedPortAccess=This address uses a network port which is normally used for purposes other than Web browsing. Firefox has canceled the request for your protection.
+proxyResolveFailure=Firefox is configured to use a proxy server that can’t be found.
+proxyConnectFailure=Firefox is configured to use a proxy server that is refusing connections.
+contentEncodingError=The page you are trying to view cannot be shown because it uses an invalid or unsupported form of compression.
+unsafeContentType=The page you are trying to view cannot be shown because it is contained in a file type that may not be safe to open. Please contact the website owners to inform them of this problem.
+externalProtocolTitle=External Protocol Request
+externalProtocolPrompt=An external application must be launched to handle %1$S: links.\n\n\nRequested link:\n\n%2$S\n\nApplication: %3$S\n\n\nIf you were not expecting this request it may be an attempt to exploit a weakness in that other program. Cancel this request unless you are sure it is not malicious.\n
+#LOCALIZATION NOTE (externalProtocolUnknown): The following string is shown if the application name can't be determined
+externalProtocolUnknown=<Unknown>
+externalProtocolChkMsg=Remember my choice for all links of this type.
+externalProtocolLaunchBtn=Launch application
+malwareBlocked=The site at %S has been reported as an attack site and has been blocked based on your security preferences.
+harmfulBlocked=The site at %S has been reported as a potentially harmful site and has been blocked based on your security preferences.
+unwantedBlocked=The site at %S has been reported as serving unwanted software and has been blocked based on your security preferences.
+deceptiveBlocked=This web page at %S has been reported as a deceptive site and has been blocked based on your security preferences.
+cspBlocked=This page has a content security policy that prevents it from being loaded in this way.
+xfoBlocked=This page has an X-Frame-Options policy that prevents it from being loaded in this context.
+corruptedContentErrorv2=The site at %S has experienced a network protocol violation that cannot be repaired.
+## LOCALIZATION NOTE (sslv3Used) - Do not translate "%S".
+sslv3Used=Firefox cannot guarantee the safety of your data on %S because it uses SSLv3, a broken security protocol.
+inadequateSecurityError=The website tried to negotiate an inadequate level of security.
+blockedByPolicy=Your organization has blocked access to this page or website.
+networkProtocolError=Firefox has experienced a network protocol violation that cannot be repaired.
diff --git a/browser/locales/en-US/crashreporter/crashreporter-override.ini b/browser/locales/en-US/crashreporter/crashreporter-override.ini
new file mode 100644
index 0000000000..f14b1c4f0d
--- /dev/null
+++ b/browser/locales/en-US/crashreporter/crashreporter-override.ini
@@ -0,0 +1,9 @@
+; 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/.
+
+# This file is in the UTF-8 encoding
+[Strings]
+# LOCALIZATION NOTE (CrashReporterProductErrorText2): The %s is replaced with a string containing detailed information.
+CrashReporterProductErrorText2=Firefox had a problem and crashed. We’ll try to restore your tabs and windows when it restarts.\n\nUnfortunately the crash reporter is unable to submit a crash report.\n\nDetails: %s
+CrashReporterDescriptionText2=Firefox had a problem and crashed. We’ll try to restore your tabs and windows when it restarts.\n\nTo help us diagnose and fix the problem, you can send us a crash report.
diff --git a/browser/locales/en-US/firefox-l10n.js b/browser/locales/en-US/firefox-l10n.js
new file mode 100644
index 0000000000..a4e976e55c
--- /dev/null
+++ b/browser/locales/en-US/firefox-l10n.js
@@ -0,0 +1,5 @@
+# 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/.
+
+#filter substitution
diff --git a/browser/locales/en-US/installer/custom.properties b/browser/locales/en-US/installer/custom.properties
new file mode 100644
index 0000000000..be816b870d
--- /dev/null
+++ b/browser/locales/en-US/installer/custom.properties
@@ -0,0 +1,93 @@
+# 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/.
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+REG_APP_DESC=$BrandShortName delivers safe, easy web browsing. A familiar user interface, enhanced security features including protection from online identity theft, and integrated search let you get the most out of the web.
+# LOCALIZATION NOTE:
+# The non-variable portion of this MUST match the translation of
+# "private-browsing-shortcut-text-2" in browser.ftl
+PRIVATE_BROWSING_SHORTCUT_TITLE=$BrandShortName Private Browsing
+CONTEXT_OPTIONS=$BrandShortName &Options
+CONTEXT_SAFE_MODE=$BrandShortName &Safe Mode
+OPTIONS_PAGE_TITLE=Setup Type
+OPTIONS_PAGE_SUBTITLE=Choose setup options
+SHORTCUTS_PAGE_TITLE=Set Up Shortcuts
+SHORTCUTS_PAGE_SUBTITLE=Create Program Icons
+COMPONENTS_PAGE_TITLE=Set Up Optional Components
+COMPONENTS_PAGE_SUBTITLE=Optional Recommended Components
+OPTIONAL_COMPONENTS_DESC=The Maintenance Service will allow you to update $BrandShortName silently in the background.
+MAINTENANCE_SERVICE_CHECKBOX_DESC=Install &Maintenance Service
+SUMMARY_PAGE_TITLE=Summary
+SUMMARY_PAGE_SUBTITLE=Ready to start installing $BrandShortName
+SUMMARY_INSTALLED_TO=$BrandShortName will be installed to the following location:
+SUMMARY_REBOOT_REQUIRED_INSTALL=A restart of your computer may be required to complete the installation.
+SUMMARY_REBOOT_REQUIRED_UNINSTALL=A restart of your computer may be required to complete the uninstall.
+SUMMARY_INSTALL_CLICK=Click Install to continue.
+SUMMARY_UPGRADE_CLICK=Click Upgrade to continue.
+SURVEY_TEXT=&Tell us what you thought of $BrandShortName
+LAUNCH_TEXT=&Launch $BrandShortName now
+CREATE_ICONS_DESC=Create icons for $BrandShortName:
+ICONS_DESKTOP=On my &desktop
+ICONS_STARTMENU=In my &Start menu Programs folder
+ICONS_TASKBAR=On my &taskbar
+WARN_MANUALLY_CLOSE_APP_INSTALL=$BrandShortName must be closed to proceed with the installation.\n\nPlease close $BrandShortName to continue.
+WARN_MANUALLY_CLOSE_APP_UNINSTALL=$BrandShortName must be closed to proceed with the uninstall.\n\nPlease close $BrandShortName to continue.
+WARN_MANUALLY_CLOSE_APP_REFRESH=$BrandShortName must be closed to proceed with the refresh.\n\nPlease close $BrandShortName to continue.
+WARN_WRITE_ACCESS=You don’t have access to write to the installation directory.\n\nClick OK to select a different directory.
+WARN_DISK_SPACE=You don’t have sufficient disk space to install to this location.\n\nClick OK to select a different location.
+WARN_MIN_SUPPORTED_OSVER_MSG=Sorry, $BrandShortName can’t be installed. This version of $BrandShortName requires ${MinSupportedVer} or newer. Please click the OK button for additional information.
+WARN_MIN_SUPPORTED_CPU_MSG=Sorry, $BrandShortName can’t be installed. This version of $BrandShortName requires a processor with ${MinSupportedCPU} support. Please click the OK button for additional information.
+WARN_MIN_SUPPORTED_OSVER_CPU_MSG=Sorry, $BrandShortName can’t be installed. This version of $BrandShortName requires ${MinSupportedVer} or newer and a processor with ${MinSupportedCPU} support. Please click the OK button for additional information.
+WARN_RESTART_REQUIRED_UNINSTALL=Your computer must be restarted to complete a previous uninstall of $BrandShortName. Do you want to reboot now?
+WARN_RESTART_REQUIRED_UPGRADE=Your computer must be restarted to complete a previous upgrade of $BrandShortName. Do you want to reboot now?
+ERROR_CREATE_DIRECTORY_PREFIX=Error creating directory:
+ERROR_CREATE_DIRECTORY_SUFFIX=Click Cancel to stop the installation or\nRetry to try again.
+
+UN_CONFIRM_PAGE_TITLE=Uninstall $BrandFullName
+UN_CONFIRM_PAGE_SUBTITLE=Remove $BrandFullName from your computer.
+UN_CONFIRM_UNINSTALLED_FROM=$BrandShortName will be uninstalled from the following location:
+UN_CONFIRM_CLICK=Click Uninstall to continue.
+
+UN_REFRESH_PAGE_TITLE=Refresh $BrandShortName Instead?
+UN_REFRESH_PAGE_EXPLANATION=If you’re having problems with $BrandShortName, a refresh can help.\n\nThis will restore the default settings and remove add-ons. Start fresh for optimal performance.
+UN_REFRESH_LEARN_MORE=&Learn more
+UN_REFRESH_BUTTON=&Refresh $BrandShortName
+
+BANNER_CHECK_EXISTING=Checking existing installation…
+
+STATUS_INSTALL_APP=Installing $BrandShortName…
+STATUS_INSTALL_LANG=Installing Language Files (${AB_CD})…
+STATUS_UNINSTALL_MAIN=Uninstalling $BrandShortName…
+STATUS_CLEANUP=A Little Housekeeping…
+
+UN_SURVEY_CHECKBOX_LABEL=Tell Mozilla why you uninstalled $BrandShortName
+
+# _DESC strings support approximately 65 characters per line.
+# One line
+OPTIONS_SUMMARY=Choose the type of setup you prefer, then click Next.
+# One line
+OPTION_STANDARD_DESC=$BrandShortName will be installed with the most common options.
+OPTION_STANDARD_RADIO=&Standard
+# Two lines
+OPTION_CUSTOM_DESC=You may choose individual options to be installed. Recommended for experienced users.
+OPTION_CUSTOM_RADIO=&Custom
+
+# LOCALIZATION NOTE:
+# The following text replaces the Install button text on the summary page.
+UPGRADE_BUTTON=&Upgrade
diff --git a/browser/locales/en-US/installer/mui.properties b/browser/locales/en-US/installer/mui.properties
new file mode 100644
index 0000000000..bf0b378321
--- /dev/null
+++ b/browser/locales/en-US/installer/mui.properties
@@ -0,0 +1,61 @@
+# 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/.
+
+# To make the l10n tinderboxen see changes to this file you can change a value
+# name by adding - to the end of the name followed by chars (e.g. Branding-2).
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+MUI_TEXT_WELCOME_INFO_TITLE=Welcome to the $BrandFullNameDA Setup Wizard
+MUI_TEXT_WELCOME_INFO_TEXT=This wizard will guide you through the installation of $BrandFullNameDA.\n\nIt is recommended that you close all other applications before starting Setup. This will make it possible to update relevant system files without having to reboot your computer.\n\n$_CLICK
+MUI_TEXT_COMPONENTS_TITLE=Choose Components
+MUI_TEXT_COMPONENTS_SUBTITLE=Choose which features of $BrandFullNameDA you want to install.
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE=Description
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO=Position your mouse over a component to see its description.
+MUI_TEXT_DIRECTORY_TITLE=Choose Install Location
+MUI_TEXT_DIRECTORY_SUBTITLE=Choose the folder in which to install $BrandFullNameDA.
+MUI_TEXT_INSTALLING_TITLE=Installing
+MUI_TEXT_INSTALLING_SUBTITLE=Please wait while $BrandFullNameDA is being installed.
+MUI_TEXT_FINISH_TITLE=Installation Complete
+MUI_TEXT_FINISH_SUBTITLE=Setup was completed successfully.
+MUI_TEXT_ABORT_TITLE=Installation Aborted
+MUI_TEXT_ABORT_SUBTITLE=Setup was not completed successfully.
+MUI_BUTTONTEXT_FINISH=&Finish
+MUI_TEXT_FINISH_INFO_TITLE=Completing the $BrandFullNameDA Setup Wizard
+MUI_TEXT_FINISH_INFO_TEXT=$BrandFullNameDA has been installed on your computer.\n\nClick Finish to close this wizard.
+MUI_TEXT_FINISH_INFO_REBOOT=Your computer must be restarted in order to complete the installation of $BrandFullNameDA. Do you want to reboot now?
+MUI_TEXT_FINISH_REBOOTNOW=Reboot now
+MUI_TEXT_FINISH_REBOOTLATER=I want to manually reboot later
+MUI_TEXT_STARTMENU_TITLE=Choose Start Menu Folder
+MUI_TEXT_STARTMENU_SUBTITLE=Choose a Start Menu folder for the $BrandFullNameDA shortcuts.
+MUI_INNERTEXT_STARTMENU_TOP=Select the Start Menu folder in which you would like to create the program’s shortcuts. You can also enter a name to create a new folder.
+MUI_TEXT_ABORTWARNING=Are you sure you want to quit $BrandFullName Setup?
+MUI_UNTEXT_WELCOME_INFO_TITLE=Welcome to the $BrandFullNameDA Uninstall Wizard
+MUI_UNTEXT_WELCOME_INFO_TEXT=This wizard will guide you through the uninstallation of $BrandFullNameDA.\n\nBefore starting the uninstallation, make sure $BrandFullNameDA is not running.\n\n$_CLICK
+MUI_UNTEXT_CONFIRM_TITLE=Uninstall $BrandFullNameDA
+MUI_UNTEXT_CONFIRM_SUBTITLE=Remove $BrandFullNameDA from your computer.
+MUI_UNTEXT_UNINSTALLING_TITLE=Uninstalling
+MUI_UNTEXT_UNINSTALLING_SUBTITLE=Please wait while $BrandFullNameDA is being uninstalled.
+MUI_UNTEXT_FINISH_TITLE=Uninstallation Complete
+MUI_UNTEXT_FINISH_SUBTITLE=Uninstall was completed successfully.
+MUI_UNTEXT_ABORT_TITLE=Uninstallation Aborted
+MUI_UNTEXT_ABORT_SUBTITLE=Uninstall was not completed successfully.
+MUI_UNTEXT_FINISH_INFO_TITLE=Completing the $BrandFullNameDA Uninstall Wizard
+MUI_UNTEXT_FINISH_INFO_TEXT=$BrandFullNameDA has been uninstalled from your computer.\n\nClick Finish to close this wizard.
+MUI_UNTEXT_FINISH_INFO_REBOOT=Your computer must be restarted in order to complete the uninstallation of $BrandFullNameDA. Do you want to reboot now?
+MUI_UNTEXT_ABORTWARNING=Are you sure you want to quit $BrandFullName Uninstall?
diff --git a/browser/locales/en-US/installer/nsisstrings.properties b/browser/locales/en-US/installer/nsisstrings.properties
new file mode 100644
index 0000000000..2ea1cd655f
--- /dev/null
+++ b/browser/locales/en-US/installer/nsisstrings.properties
@@ -0,0 +1,46 @@
+# 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/.
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Do not replace $BrandShortName, $BrandProductName, $BrandFullName,
+# or $BrandFullNameDA with a custom string and always use the same one as used
+# by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+INSTALLER_WIN_CAPTION=$BrandShortName Installer
+
+STUB_CLEANUP_PAVEOVER_HEADER2=$BrandShortName is already installed. Let’s update it.
+STUB_CLEANUP_REINSTALL_HEADER2=$BrandShortName has been installed before. Let’s get you a new copy.
+STUB_CLEANUP_PAVEOVER_BUTTON2=Update
+STUB_CLEANUP_REINSTALL_BUTTON2=Re-install
+STUB_CLEANUP_CHECKBOX_LABEL2=Restore default settings and remove old add-ons for optimal performance
+
+STUB_INSTALLING_LABEL2=Now installing…
+STUB_INSTALLING_HEADLINE2=Optimizing your settings for speed, privacy, and safety.
+STUB_INSTALLING_BODY2=$BrandShortName will be ready in just a few moments.
+STUB_BLURB_FIRST1=The fastest, most responsive $BrandShortName yet
+STUB_BLURB_SECOND1=Faster page loading and tab switching
+STUB_BLURB_THIRD1=Powerful private browsing
+STUB_BLURB_FOOTER2=Built for people, not for profit
+
+WARN_MIN_SUPPORTED_OSVER_MSG=Sorry, $BrandShortName can’t be installed. This version of $BrandShortName requires ${MinSupportedVer} or newer. Please click the OK button for additional information.
+WARN_MIN_SUPPORTED_CPU_MSG=Sorry, $BrandShortName can’t be installed. This version of $BrandShortName requires a processor with ${MinSupportedCPU} support. Please click the OK button for additional information.
+WARN_MIN_SUPPORTED_OSVER_CPU_MSG=Sorry, $BrandShortName can’t be installed. This version of $BrandShortName requires ${MinSupportedVer} or newer and a processor with ${MinSupportedCPU} support. Please click the OK button for additional information.
+WARN_WRITE_ACCESS_QUIT=You don’t have access to write to the installation directory
+WARN_DISK_SPACE_QUIT=You don’t have sufficient disk space to install.
+
+ERROR_DOWNLOAD_CONT=Hmm. For some reason, we could not install $BrandShortName.\nChoose OK to start over.
+
+STUB_CANCEL_PROMPT_HEADING=Do you want to install $BrandShortName?
+STUB_CANCEL_PROMPT_MESSAGE=If you cancel, $BrandShortName will not be installed.
+STUB_CANCEL_PROMPT_BUTTON_CONTINUE=Install $BrandShortName
+STUB_CANCEL_PROMPT_BUTTON_EXIT=Cancel
diff --git a/browser/locales/en-US/installer/override.properties b/browser/locales/en-US/installer/override.properties
new file mode 100644
index 0000000000..e9e005ea21
--- /dev/null
+++ b/browser/locales/en-US/installer/override.properties
@@ -0,0 +1,86 @@
+# 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/.
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+# Strings that require a space at the end should be enclosed with double
+# quotes and the double quotes will be removed. To add quotes to the beginning
+# and end of a strong enclose the add and additional double quote to the
+# beginning and end of the string (e.g. ""This will include quotes"").
+
+SetupCaption=$BrandFullName Setup
+UninstallCaption=$BrandFullName Uninstall
+BackBtn=< &Back
+NextBtn=&Next >
+AcceptBtn=I &accept the terms in the License Agreement
+DontAcceptBtn=I &do not accept the terms in the License Agreement
+InstallBtn=&Install
+UninstallBtn=&Uninstall
+CancelBtn=Cancel
+CloseBtn=&Close
+BrowseBtn=B&rowse…
+ShowDetailsBtn=Show &details
+ClickNext=Click Next to continue.
+ClickInstall=Click Install to start the installation.
+ClickUninstall=Click Uninstall to start the uninstallation.
+Completed=Completed
+LicenseTextRB=Please review the license agreement before installing $BrandFullNameDA. If you accept all terms of the agreement, select the first option below. $_CLICK
+ComponentsText=Check the components you want to install and uncheck the components you don’t want to install. $_CLICK
+ComponentsSubText2_NoInstTypes=Select components to install:
+DirText=Setup will install $BrandFullNameDA in the following folder. To install in a different folder, click Browse and select another folder. $_CLICK
+DirSubText=Destination Folder
+DirBrowseText=Select the folder to install $BrandFullNameDA in:
+SpaceAvailable="Space available: "
+SpaceRequired="Space required: "
+UninstallingText=$BrandFullNameDA will be uninstalled from the following folder. $_CLICK
+UninstallingSubText=Uninstalling from:
+FileError=Error opening file for writing: \r\n\r\n$0\r\n\r\nClick Abort to stop the installation,\r\nRetry to try again, or\r\nIgnore to skip this file.
+FileError_NoIgnore=Error opening file for writing: \r\n\r\n$0\r\n\r\nClick Retry to try again, or\r\nCancel to stop the installation.
+CantWrite="Can’t write: "
+CopyFailed=Copy failed
+CopyTo="Copy to "
+Registering="Registering: "
+Unregistering="Unregistering: "
+SymbolNotFound="Could not find symbol: "
+CouldNotLoad="Could not load: "
+CreateFolder="Create folder: "
+CreateShortcut="Create shortcut: "
+CreatedUninstaller="Created uninstaller: "
+Delete="Delete file: "
+DeleteOnReboot="Delete on reboot: "
+ErrorCreatingShortcut="Error creating shortcut: "
+ErrorCreating="Error creating: "
+ErrorDecompressing=Error decompressing data! Corrupted installer?
+ErrorRegistering=Error registering DLL
+ExecShell="ExecShell: "
+Exec="Execute: "
+Extract="Extract: "
+ErrorWriting="Extract: error writing to file "
+InvalidOpcode=Installer corrupted: invalid opcode
+NoOLE="No OLE for: "
+OutputFolder="Output folder: "
+RemoveFolder="Remove folder: "
+RenameOnReboot="Rename on reboot: "
+Rename="Rename: "
+Skipped="Skipped: "
+CopyDetails=Copy Details To Clipboard
+LogInstall=Log install process
+Byte=B
+Kilo=K
+Mega=M
+Giga=G
diff --git a/browser/locales/en-US/langpack-metadata.ftl b/browser/locales/en-US/langpack-metadata.ftl
new file mode 100644
index 0000000000..86dbc9c490
--- /dev/null
+++ b/browser/locales/en-US/langpack-metadata.ftl
@@ -0,0 +1,12 @@
+# 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/.
+
+## Strings used to define the metadata of langpacks published on addons.mozilla.org.
+## Only text elements and literals are supported for these strings.
+
+langpack-creator = mozilla.org
+
+# To credit multiple contributors, use a comma-delimited list.
+# Example: Joe Solon, Suzy Solon
+langpack-contributors = { "" }
diff --git a/browser/locales/en-US/updater/updater.ini b/browser/locales/en-US/updater/updater.ini
new file mode 100644
index 0000000000..cc4ae5405e
--- /dev/null
+++ b/browser/locales/en-US/updater/updater.ini
@@ -0,0 +1,9 @@
+; 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/.
+
+; This file is in the UTF-8 encoding
+[Strings]
+TitleText=%MOZ_APP_DISPLAYNAME% Update
+InfoText=%MOZ_APP_DISPLAYNAME% is installing your updates and will start in a few moments…
+MozillaMaintenanceDescription=The Mozilla Maintenance Service ensures that you have the latest and most secure version of Mozilla Firefox on your computer. Keeping Firefox up to date is very important for your online security, and Mozilla strongly recommends that you keep this service enabled.
diff --git a/browser/locales/filter.py b/browser/locales/filter.py
new file mode 100644
index 0000000000..9155947e43
--- /dev/null
+++ b/browser/locales/filter.py
@@ -0,0 +1,36 @@
+# 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/.
+
+
+def test(mod, path, entity=None):
+ # ignore anything but Firefox
+ if mod not in (
+ "netwerk",
+ "dom",
+ "toolkit",
+ "security/manager",
+ "devtools/client",
+ "devtools/shared",
+ "devtools/startup",
+ "browser",
+ "browser/extensions/formautofill",
+ "browser/extensions/report-site-issue",
+ "extensions/spellcheck",
+ "other-licenses/branding/firefox",
+ "browser/branding/official",
+ "services/sync",
+ ):
+ return "ignore"
+ if mod not in ("browser", "extensions/spellcheck"):
+ # we only have exceptions for browser and extensions/spellcheck
+ return "error"
+ if entity is None:
+ # the only files to ignore are spell checkers
+ if mod == "extensions/spellcheck":
+ return "ignore"
+ return "error"
+ if mod == "extensions/spellcheck":
+ # l10n ships en-US dictionary or something, do compare
+ return "error"
+ return "error"
diff --git a/browser/locales/generate_ini.py b/browser/locales/generate_ini.py
new file mode 100644
index 0000000000..ed936d8428
--- /dev/null
+++ b/browser/locales/generate_ini.py
@@ -0,0 +1,28 @@
+# 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/.
+
+# Generate updater.ini by doing some light substitution on the localized updater.ini input,
+# and appending the contents of updater_ini_append on Windows.
+
+import codecs
+import re
+import shutil
+
+import buildconfig
+
+
+def main(output, ini, ini_append=None, locale=None):
+ fixup_re = re.compile("^(Info|Title)Text=")
+ # Input INI is always utf-8.
+ with codecs.open(ini, "rb", "utf_8") as f:
+ for line in f:
+ line = fixup_re.sub(r"\1=", line)
+ line = line.replace(
+ "%MOZ_APP_DISPLAYNAME%", buildconfig.substs["MOZ_APP_DISPLAYNAME"]
+ )
+ output.write(line)
+ if ini_append and buildconfig.substs["OS_TARGET"] == "WINNT":
+ # Also append the contents of `ini_append`.
+ with codecs.open(ini_append, "rb", "utf_8") as f:
+ shutil.copyfileobj(f, output)
diff --git a/browser/locales/jar.mn b/browser/locales/jar.mn
new file mode 100644
index 0000000000..781c6677d9
--- /dev/null
+++ b/browser/locales/jar.mn
@@ -0,0 +1,45 @@
+#filter substitution
+# 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/.
+
+# Note: This file should only contain locale entries. All
+# override and resource entries should go to browser/base/jar.mn to avoid
+# having to create the same entry for each locale.
+
+[localization] @AB_CD@.jar:
+ preview/ion.ftl (../components/ion/content/ion.ftl)
+ preview/protections.ftl (../components/protections/content/protections.ftl)
+ preview/interventions.ftl (../components/urlbar/content/interventions.ftl)
+ preview/enUS-searchFeatures.ftl (../components/urlbar/content/enUS-searchFeatures.ftl)
+ preview/shopping.ftl (../components/shopping/content/shopping.ftl)
+ preview/onboarding.ftl (../components/aboutwelcome/content/onboarding.ftl)
+ preview/select-translations.ftl (../locales-preview/select-translations.ftl)
+ preview/translations.ftl (../locales-preview/translations.ftl)
+ browser (%browser/**/*.ftl)
+
+@AB_CD@.jar:
+% locale browser @AB_CD@ %locale/browser/
+ locale/browser/browser.properties (%chrome/browser/browser.properties)
+ locale/browser/customizableui/customizableWidgets.properties (%chrome/browser/customizableui/customizableWidgets.properties)
+ locale/browser/uiDensity.properties (%chrome/browser/uiDensity.properties)
+ locale/browser/search.properties (%chrome/browser/search.properties)
+ locale/browser/siteData.properties (%chrome/browser/siteData.properties)
+ locale/browser/sitePermissions.properties (%chrome/browser/sitePermissions.properties)
+ locale/browser/shellservice.properties (%chrome/browser/shellservice.properties)
+ locale/browser/taskbar.properties (%chrome/browser/taskbar.properties)
+ locale/browser/downloads/downloads.properties (%chrome/browser/downloads/downloads.properties)
+ locale/browser/places/bookmarkProperties.properties (%chrome/browser/places/bookmarkProperties.properties)
+ locale/browser/safebrowsing/safebrowsing.properties (%chrome/browser/safebrowsing/safebrowsing.properties)
+ locale/browser/feeds/subscribe.properties (%chrome/browser/feeds/subscribe.properties)
+ locale/browser/syncSetup.properties (%chrome/browser/syncSetup.properties)
+% locale browser-region @AB_CD@ %locale/browser-region/
+# the following files are browser-specific overrides
+ locale/browser/appstrings.properties (%chrome/overrides/appstrings.properties)
+
+#ifdef XPI_NAME
+# Bug 1240628, restructure how l10n repacks work with feature addons
+# This is hacky, but ensures the chrome.manifest chain is complete
+[.] chrome.jar:
+% manifest features/chrome.manifest
+#endif
diff --git a/browser/locales/l10n-changesets.json b/browser/locales/l10n-changesets.json
new file mode 100644
index 0000000000..73ef64e2c0
--- /dev/null
+++ b/browser/locales/l10n-changesets.json
@@ -0,0 +1,1826 @@
+{
+ "ach": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "e91bb5281c62d042d6ac7420fed6210baba21fe9"
+ },
+ "af": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "334bb18824909819f950d62906cb69d01149c0a1"
+ },
+ "an": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "fbfa8d9bc6662369009bda463483a032e466934c"
+ },
+ "ar": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "d56d7c7d8d152dba0ad37bd64409de8b10cf047e"
+ },
+ "ast": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "e108773daf853d2bb7c26ea872e0a685da2727c9"
+ },
+ "az": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "31f3a61ec07d9c50ae757395abd7d442cb05cd5f"
+ },
+ "be": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "1f349ae8edbb4470157fd4773da538d67a85af2a"
+ },
+ "bg": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "51b6e21f0f61592bd86d661baf343ef8587c88f4"
+ },
+ "bn": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "bc6b9cc545ff26f7673518f1546e32c202b4a823"
+ },
+ "br": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "de4ee0d4cce6abdb6c956ad1111c899b4ae04532"
+ },
+ "bs": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "d3b4ad0c605ef359a392cde6d52331575656e9b6"
+ },
+ "ca": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "af77f39dc801618332b7144bf6961ad20cdad902"
+ },
+ "ca-valencia": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "7f8da14938a4aa9f4cc9fead0c9ad7f2ebe05169"
+ },
+ "cak": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "f1f2df751c8b185fcecf6961a25fc8f488e05801"
+ },
+ "cs": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "da6fd553465ee18382f3cc75c21cc3d1c548158a"
+ },
+ "cy": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "59ba79d5f08da0b51c36c862e2ebeda3127202c1"
+ },
+ "da": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "a7efb19f09da188d1dd40b7ea32c35cfc7558cff"
+ },
+ "de": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "3b87373324928a82466baa406162476ea5f90d42"
+ },
+ "dsb": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "ad7805f6ba6d4f7c321fa345c4e347e5967dc8b7"
+ },
+ "el": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "96f11733bfbf4b243962a3e02c36bf2e8739d609"
+ },
+ "en-CA": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "ab531bbd3b919f4c90e37220d4c6884ec9ffb396"
+ },
+ "en-GB": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "c26bd29b6e64166297b5da48852358a401faf46c"
+ },
+ "eo": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "0703bd4dc6605ebc478e0b5d60196ac82a6481db"
+ },
+ "es-AR": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "b78fcea612a5238597bf79bbe384303b000bdf09"
+ },
+ "es-CL": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "872f104f71715c23ea206c39d0538bfeefb241b8"
+ },
+ "es-ES": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "4d5aa891eb23ff7dce56edf582cccda615b1d323"
+ },
+ "es-MX": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "149690523cf68e68d054767a4768ee28a82cfacf"
+ },
+ "et": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "0e1b079fd67d92a3ae75d4da71171d69f20f5025"
+ },
+ "eu": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "b6c43671f4115e36b9fc50aeba83fb42e03c67f3"
+ },
+ "fa": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "631d86697a7a82e53c80ad989beb5f70a96b1301"
+ },
+ "ff": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "7091a9a4d60b1d0941c411d165c676687183f4c7"
+ },
+ "fi": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "cc64153528560bb3f90c772a3be459b045a70d32"
+ },
+ "fr": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "8f13f9dfe50c1edba64902bda9b7fb769c0c2b0a"
+ },
+ "fur": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "1976d965fe702dd8bf199855922e9b05fc86bf4d"
+ },
+ "fy-NL": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "e117b7f0e5ff1f34acf0f7bf563e781044a1649c"
+ },
+ "ga-IE": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "559b3bd148a477fbb95fef1bcb2f2ef49be06dc3"
+ },
+ "gd": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "ddbbbdb5eab841b95d00b6defcc86593a1b5253a"
+ },
+ "gl": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "7759f48de6b417c8a9eb296dbf8a8e548639de6a"
+ },
+ "gn": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "4c732e30bcf483ff6753716655d0b06c6265216e"
+ },
+ "gu-IN": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "6065a5c2c8de8cf3f06d5e0a7c1ec537c0da29db"
+ },
+ "he": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "34cd41d090d6000ba5cd084f07c878a5acf93c73"
+ },
+ "hi-IN": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "44ff1ad18d448a14dc2e5c9bbe0b31ebc8d1a470"
+ },
+ "hr": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "898f3c50dbd6732d98d140229184c1e4985d4627"
+ },
+ "hsb": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "cd2c094b04a6e32f2cbd0e3c1e51f28a7ccef767"
+ },
+ "hu": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "1efc1eb07546b8351452cad82a7b4a38ad8c9157"
+ },
+ "hy-AM": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "61ef123c11a260afb202d41ce91ddeef70720011"
+ },
+ "ia": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "77d434d098092f38a91a7d6ab84fe7b8180dee02"
+ },
+ "id": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "fac640f92b280128f208e308178a9efc9b378d6c"
+ },
+ "is": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "ed40eeffd08b16534acf0d5213c0eb866aa18a08"
+ },
+ "it": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "c08889765d4f4552440b1137de60fd8aceb7abfc"
+ },
+ "ja": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "fc85259a7e8f5e53ebda328267f3b91693acf6aa"
+ },
+ "ja-JP-mac": {
+ "pin": false,
+ "platforms": [
+ "macosx64",
+ "macosx64-devedition"
+ ],
+ "revision": "2b68173e13fea3c5bfb33940fdb46972c5ab9a22"
+ },
+ "ka": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "9525652bf79359f6daa8a739cf91a05d116f1bad"
+ },
+ "kab": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "4807d8d223a8017d2283d256226ac6131a963ebf"
+ },
+ "kk": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "9185934b11ced46f03dae5a85dbed37dc59c66ea"
+ },
+ "km": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "bdee7f2c48262ea1731b4755293c8b204184c788"
+ },
+ "kn": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "d9c8fcba3970098b0a419814d55fa53da7ffcf19"
+ },
+ "ko": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "4aa3875c0632447c8f3ab906a866c206bf063647"
+ },
+ "lij": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "636cfd254e26a284c6a0cf80f883dc1a9173e08d"
+ },
+ "lt": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "ce52f16cb4f53c2fbc156e00a895aa479a0293f9"
+ },
+ "lv": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "f21ff0aeca3bf128e039fc26a0d9caca5ea63181"
+ },
+ "mk": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "6b923a0cbbfb1b10331cc11abeffc56758b915a7"
+ },
+ "mr": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "21ed265d30c375ab53250b0d8c23e334f6a5f320"
+ },
+ "ms": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "4c5825a103ab17b608d474fbe3d849996d5285d8"
+ },
+ "my": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "5d63f20baca1860bd4cf80e1285a2d7022195f7b"
+ },
+ "nb-NO": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "1b2a87998064d72ecf5728c39e421b76f39f1cf8"
+ },
+ "ne-NP": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "6e9a8e45e4b5b80e5be0e7ee0790f2e2a3ba11d7"
+ },
+ "nl": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "af2d13daedbd50e6a2b836c586245084b9466aa1"
+ },
+ "nn-NO": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "4a3d9d4c8d20d577844b7c5cc9bb548bbbbca76b"
+ },
+ "oc": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "314ebebf11519e1940d38feee1001c002bd55d49"
+ },
+ "pa-IN": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "fc0a99f3cb10239b8b75b9e780bf1e592159a78f"
+ },
+ "pl": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "af87979d5d113759d5a77d33e4e5044c303a51aa"
+ },
+ "pt-BR": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "652635a805c55f2a4e247b3fff2e004cc8b12d08"
+ },
+ "pt-PT": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "21cae5315562557f51bda5fd56b3428aa52a6bd5"
+ },
+ "rm": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "8bb7b89fa9b324ec367b3f80527cebba3a428b95"
+ },
+ "ro": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "014649510be0915aa21e83e96bf30fce92c9b547"
+ },
+ "ru": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "7fe586cfe29ea3408232fbff859d9d217ead7397"
+ },
+ "sat": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "cc8aeb497943c42bd693bbe3b9bc5d34b16de227"
+ },
+ "sc": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "2beb703b2da66326ef740fd61ee6d168c7a332e5"
+ },
+ "sco": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "607fe5d66eeb1cf0cb6e91ed4217dc7affbbf87a"
+ },
+ "si": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "af5f9ae08dd57027884ee287b840225431b20aa3"
+ },
+ "sk": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "b1d9ff43cf15a951b69a1371544fea05480be4b3"
+ },
+ "sl": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "85fe33068c6c1b75cb83ccee62a0c2c1143ad051"
+ },
+ "son": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "9b2b39b1d87865b0db0f67a966968eea84a39af0"
+ },
+ "sq": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "b100762ed06f3b53b37c0a62bbd30e87144b48a6"
+ },
+ "sr": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "d296ac219c6775bc4bffdff40d6ab9c73c225821"
+ },
+ "sv-SE": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "e63931a5631be2fa1d4a4253df3541fdfa3000cb"
+ },
+ "szl": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "2bcba850238885e2e7fb9b12ae2b6fd1da7056ec"
+ },
+ "ta": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "b23fe1bb7faaeec322c12ddad28dd2c8568f82c2"
+ },
+ "te": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "8e86d4e3639524a1288b8460c18f600341fd6205"
+ },
+ "tg": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "161d2e09c39d1d94e90caf3e1fa55f60fa2ae5bb"
+ },
+ "th": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "fd7efe6ce07379c9f33f0199bff9be9880af48ea"
+ },
+ "tl": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "53333797dfbf17d715c0c26070c6fcea80fe9729"
+ },
+ "tr": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "541cb626f1c8eeb9ddf87f473de456b28a02cae7"
+ },
+ "trs": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "cc89c1bde61073783c0ea110e22e7926b89e89f1"
+ },
+ "uk": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "9b05529e47fa161da593d310d8612a73b124b37d"
+ },
+ "ur": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "7566f7c8147815d51f1d17d847bc8c1d60256860"
+ },
+ "uz": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "8c5d179b742ed4a78889de781942f14480815b0c"
+ },
+ "vi": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "cde933743ea42c55f149948ecfe4764079ef258f"
+ },
+ "xh": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "ca50ac09f6b7ca50859ef54cfa294269838e8d39"
+ },
+ "zh-CN": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "dfe27e8f973c79a55b4867722fd6ae3f5029bc98"
+ },
+ "zh-TW": {
+ "pin": false,
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "e80e1659707222d3130aa3f0a79dda9c13b2a029"
+ }
+} \ No newline at end of file
diff --git a/browser/locales/l10n-onchange-changesets.json b/browser/locales/l10n-onchange-changesets.json
new file mode 100644
index 0000000000..30c722ebb4
--- /dev/null
+++ b/browser/locales/l10n-onchange-changesets.json
@@ -0,0 +1,92 @@
+{
+ "ar": {
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "default"
+ },
+ "en-CA": {
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "default"
+ },
+ "he": {
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "default"
+ },
+ "it": {
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "macosx64",
+ "macosx64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "default"
+ },
+ "ja": {
+ "platforms": [
+ "linux",
+ "linux-devedition",
+ "linux64",
+ "linux64-devedition",
+ "win32",
+ "win32-devedition",
+ "win64",
+ "win64-aarch64",
+ "win64-aarch64-devedition",
+ "win64-devedition"
+ ],
+ "revision": "default"
+ },
+ "ja-JP-mac": {
+ "platforms": [
+ "macosx64",
+ "macosx64-devedition"
+ ],
+ "revision": "default"
+ }
+}
diff --git a/browser/locales/l10n.ini b/browser/locales/l10n.ini
new file mode 100644
index 0000000000..fad1533c64
--- /dev/null
+++ b/browser/locales/l10n.ini
@@ -0,0 +1,24 @@
+# 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/.
+
+[general]
+depth = ../..
+all = browser/locales/all-locales
+
+[compare]
+dirs = browser
+ other-licenses/branding/firefox
+ browser/branding/official
+ devtools/client
+ devtools/startup
+ browser/extensions/formautofill
+ browser/extensions/report-site-issue
+
+[includes]
+# non-central apps might want to use %(topsrcdir)s here, or other vars
+# RFE: that needs to be supported by compare-locales, too, though
+toolkit = toolkit/locales/l10n.ini
+
+[extras]
+dirs = extensions/spellcheck
diff --git a/browser/locales/l10n.toml b/browser/locales/l10n.toml
new file mode 100644
index 0000000000..31baf8c152
--- /dev/null
+++ b/browser/locales/l10n.toml
@@ -0,0 +1,166 @@
+# 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/.
+
+basepath = "../.."
+
+locales = [
+ "ach",
+ "af",
+ "an",
+ "ar",
+ "ast",
+ "az",
+ "be",
+ "bg",
+ "bn",
+ "bo",
+ "br",
+ "brx",
+ "bs",
+ "ca",
+ "ca-valencia",
+ "cak",
+ "ckb",
+ "cs",
+ "cy",
+ "da",
+ "de",
+ "dsb",
+ "el",
+ "en-CA",
+ "en-GB",
+ "eo",
+ "es-AR",
+ "es-CL",
+ "es-ES",
+ "es-MX",
+ "et",
+ "eu",
+ "fa",
+ "ff",
+ "fi",
+ "fr",
+ "fur",
+ "fy-NL",
+ "ga-IE",
+ "gd",
+ "gl",
+ "gn",
+ "gu-IN",
+ "he",
+ "hi-IN",
+ "hr",
+ "hsb",
+ "hu",
+ "hy-AM",
+ "hye",
+ "ia",
+ "id",
+ "is",
+ "it",
+ "ja",
+ "ja-JP-mac",
+ "ka",
+ "kab",
+ "kk",
+ "km",
+ "kn",
+ "ko",
+ "lij",
+ "lo",
+ "lt",
+ "ltg",
+ "lv",
+ "meh",
+ "mk",
+ "mr",
+ "ms",
+ "my",
+ "nb-NO",
+ "ne-NP",
+ "nl",
+ "nn-NO",
+ "oc",
+ "pa-IN",
+ "pl",
+ "pt-BR",
+ "pt-PT",
+ "rm",
+ "ro",
+ "ru",
+ "sat",
+ "sc",
+ "scn",
+ "sco",
+ "si",
+ "sk",
+ "skr",
+ "sl",
+ "son",
+ "sq",
+ "sr",
+ "sv-SE",
+ "szl",
+ "ta",
+ "te",
+ "tg",
+ "th",
+ "tl",
+ "tr",
+ "trs",
+ "uk",
+ "ur",
+ "uz",
+ "vi",
+ "wo",
+ "xh",
+ "zh-CN",
+ "zh-TW",
+ ]
+
+[env]
+ l = "{l10n_base}/{locale}/"
+
+
+[[paths]]
+ reference = "browser/locales/en-US/**"
+ l10n = "{l}browser/**"
+
+[[paths]]
+ reference = "browser/branding/official/locales/en-US/**"
+ l10n = "{l}browser/branding/official/**"
+
+[[paths]]
+ reference = "browser/extensions/formautofill/locales/en-US/**"
+ l10n = "{l}browser/extensions/formautofill/**"
+
+[[paths]]
+ reference = "browser/extensions/report-site-issue/locales/en-US/**"
+ l10n = "{l}browser/extensions/report-site-issue/**"
+
+
+[[includes]]
+ path = "toolkit/locales/l10n.toml"
+
+[[includes]]
+ path = "devtools/client/locales/l10n.toml"
+
+[[paths]]
+ reference = "devtools/startup/locales/en-US/**"
+ l10n = "{l}devtools/startup/**"
+
+# Filters
+# The filters below are evaluated one after the other, in the given order.
+# Enter a combination of path as in the localization, key, and an action,
+# to change the default behavior of compare-locales and l10n merge.
+#
+# For browser/locales/en-US/chrome/browser/foo.properties,
+# path would be {l}browser/chrome/browser/foo.properties
+# key: the key/id of the entity
+# If key isn't specified, the complete file can be missing.
+[[filters]]
+ path = [
+ "{l}browser/firefox-l10n.js",
+ ]
+ action = "ignore"
diff --git a/browser/locales/moz.build b/browser/locales/moz.build
new file mode 100644
index 0000000000..53e3ac361f
--- /dev/null
+++ b/browser/locales/moz.build
@@ -0,0 +1,38 @@
+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
+# vim: set filetype=python:
+# 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/.
+
+JAR_MANIFESTS += ["jar.mn"]
+
+# If DIST_SUBDIR ever gets unset in browser this path might be wrong due to PREF_DIR changing.
+LOCALIZED_PP_FILES.defaults.preferences += ["en-US/firefox-l10n.js"]
+
+if CONFIG["MOZ_CRASHREPORTER"]:
+ LOCALIZED_FILES += ["en-US/crashreporter/crashreporter-override.ini"]
+
+if CONFIG["MOZ_UPDATER"]:
+ LOCALIZED_GENERATED_FILES += ["updater.ini"]
+ updater = LOCALIZED_GENERATED_FILES["updater.ini"]
+ updater.script = "generate_ini.py"
+ updater.inputs = [
+ "en-US/updater/updater.ini",
+ "../installer/windows/nsis/updater_append.ini",
+ ]
+ # Yes, this is weird, but what can you do? This file doesn't want to be in the DIST_SUBDIR,
+ # but we can't really move it to a different directory until we change how locale repacks
+ # work.
+ LOCALIZED_FILES[".."] += ["!updater.ini"]
+
+with Files("**"):
+ BUG_COMPONENT = ("Firefox Build System", "General")
+
+with Files("all-locales"):
+ BUG_COMPONENT = ("Core", "Localization")
+
+with Files("en-US/**"):
+ BUG_COMPONENT = ("Core", "Localization")
+
+with Files("shipped-locales"):
+ BUG_COMPONENT = ("Core", "Localization")
diff --git a/browser/locales/onchange-locales b/browser/locales/onchange-locales
new file mode 100644
index 0000000000..01ca9ea676
--- /dev/null
+++ b/browser/locales/onchange-locales
@@ -0,0 +1,5 @@
+en-CA
+he
+it
+ja
+ja-JP-mac
diff --git a/browser/locales/shipped-locales b/browser/locales/shipped-locales
new file mode 100644
index 0000000000..9d748b1c72
--- /dev/null
+++ b/browser/locales/shipped-locales
@@ -0,0 +1,103 @@
+ach
+af
+an
+ar
+ast
+az
+be
+bg
+bn
+br
+bs
+ca
+ca-valencia
+cak
+cs
+cy
+da
+de
+dsb
+el
+en-CA
+en-GB
+en-US
+eo
+es-AR
+es-CL
+es-ES
+es-MX
+et
+eu
+fa
+ff
+fi
+fr
+fur
+fy-NL
+ga-IE
+gd
+gl
+gn
+gu-IN
+he
+hi-IN
+hr
+hsb
+hu
+hy-AM
+ia
+id
+is
+it
+ja
+ja-JP-mac
+ka
+kab
+kk
+km
+kn
+ko
+lij
+lt
+lv
+mk
+mr
+ms
+my
+nb-NO
+ne-NP
+nl
+nn-NO
+oc
+pa-IN
+pl
+pt-BR
+pt-PT
+rm
+ro
+ru
+sat
+sc
+sco
+si
+sk
+sl
+son
+sq
+sr
+sv-SE
+szl
+ta
+te
+tg
+th
+tl
+tr
+trs
+uk
+ur
+uz
+vi
+xh
+zh-CN
+zh-TW