summaryrefslogtreecommitdiffstats
path: root/l10n-af/mobile
diff options
context:
space:
mode:
Diffstat (limited to 'l10n-af/mobile')
-rw-r--r--l10n-af/mobile/android/chrome/about.dtd20
-rw-r--r--l10n-af/mobile/android/chrome/aboutAddons.dtd13
-rw-r--r--l10n-af/mobile/android/chrome/aboutAddons.properties5
-rw-r--r--l10n-af/mobile/android/chrome/aboutCertError.dtd31
-rw-r--r--l10n-af/mobile/android/chrome/aboutDownloads.dtd15
-rw-r--r--l10n-af/mobile/android/chrome/aboutDownloads.properties14
-rw-r--r--l10n-af/mobile/android/chrome/aboutLogins.dtd9
-rw-r--r--l10n-af/mobile/android/chrome/aboutLogins.properties13
-rw-r--r--l10n-af/mobile/android/chrome/aboutPrivateBrowsing.dtd18
-rw-r--r--l10n-af/mobile/android/chrome/browser.properties270
-rw-r--r--l10n-af/mobile/android/chrome/config.dtd18
-rw-r--r--l10n-af/mobile/android/chrome/config.properties7
-rw-r--r--l10n-af/mobile/android/chrome/passwordmgr.properties13
-rw-r--r--l10n-af/mobile/android/chrome/phishing.dtd21
-rw-r--r--l10n-af/mobile/android/chrome/pippki.properties52
-rw-r--r--l10n-af/mobile/android/chrome/sync.properties15
-rw-r--r--l10n-af/mobile/android/defines.inc14
-rw-r--r--l10n-af/mobile/chrome/region.properties22
-rw-r--r--l10n-af/mobile/overrides/appstrings.properties28
-rw-r--r--l10n-af/mobile/overrides/netError.dtd104
20 files changed, 702 insertions, 0 deletions
diff --git a/l10n-af/mobile/android/chrome/about.dtd b/l10n-af/mobile/android/chrome/about.dtd
new file mode 100644
index 0000000000..52fc268a82
--- /dev/null
+++ b/l10n-af/mobile/android/chrome/about.dtd
@@ -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/. -->
+<!ENTITY aboutPage.title "Aangaande &brandShortName;">
+<!ENTITY aboutPage.warningVersion "&brandShortName; is eksperimenteel en moontlik onstabiel.">
+
+<!ENTITY aboutPage.checkForUpdates.checking "Kontroleer tans vir bywerkings…">
+
+
+
+
+
+
+<!ENTITY aboutPage.privacyPolicy.label "Privaatheidbeleid">
+
+<!ENTITY aboutPage.relNotes.label "Vrystellingaantekeninge">
+<!ENTITY aboutPage.credits.label "Erkenning">
+<!ENTITY aboutPage.license.label "Lisensiëringinligting">
+<!-- LOCALIZATION NOTE (aboutPage.logoTrademark): The message is explicitly about the word "Firefox" being trademarked, that's why we use it, instead of brandShortName. -->
+
diff --git a/l10n-af/mobile/android/chrome/aboutAddons.dtd b/l10n-af/mobile/android/chrome/aboutAddons.dtd
new file mode 100644
index 0000000000..e12b382aee
--- /dev/null
+++ b/l10n-af/mobile/android/chrome/aboutAddons.dtd
@@ -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/. -->
+
+<!ENTITY aboutAddons.title2 "Byvoegings">
+
+
+<!ENTITY addonAction.enable "Aktiveer">
+<!ENTITY addonAction.disable "Deaktiveer">
+<!ENTITY addonAction.uninstall "Deïnstalleer">
+<!ENTITY addonAction.undo "Ontdoen">
+
+
diff --git a/l10n-af/mobile/android/chrome/aboutAddons.properties b/l10n-af/mobile/android/chrome/aboutAddons.properties
new file mode 100644
index 0000000000..e761745030
--- /dev/null
+++ b/l10n-af/mobile/android/chrome/aboutAddons.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/.
+
+
diff --git a/l10n-af/mobile/android/chrome/aboutCertError.dtd b/l10n-af/mobile/android/chrome/aboutCertError.dtd
new file mode 100644
index 0000000000..66237301ee
--- /dev/null
+++ b/l10n-af/mobile/android/chrome/aboutCertError.dtd
@@ -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/. -->
+
+<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd">
+ %brandDTD;
+
+<!-- These strings are used by Firefox's custom about:certerror page,
+a replacement for the standard security certificate errors produced
+by NSS/PSM via netError.xhtml. -->
+
+
+<!ENTITY certerror.pagetitle "Onvertroude verbinding">
+<!ENTITY certerror.longpagetitle "Hierdie verbinding is onvertroud">
+<!-- Localization note (certerror.introPara1) - The string "#1" will
+be replaced at runtime with the name of the server to which the user
+was trying to connect. -->
+
+<!ENTITY certerror.introPara1 "U het &brandShortName; gevra om beveilig te koppel aan <b>#1</b>, maar ons kan nie bevestig dat u verbinding beveilig is nie.">
+
+<!ENTITY certerror.whatShouldIDo.heading "Wat moet ek doen?">
+<!ENTITY certerror.whatShouldIDo.content "As u gewoonlik aan hierdie werf koppel sonder probleme, kan hierdie fout dalk beteken dat iemand die werf probeer namaak, en dan moet u nie voortgaan nie.">
+<!ENTITY certerror.getMeOutOfHere.label "Eina! Laat ek weg wees!">
+
+<!ENTITY certerror.expert.heading "Ek begryp die risiko">
+<!ENTITY certerror.expert.content "As u weet wat aan die gang is, kan u &brandShortName; aansê om hierdie werf se identifikasie te begin vertrou. <b>Selfs al vertrou u die werf, kan hierdie fout beteken dat iemand besig is om met u verbinding te peuter.</b>">
+<!ENTITY certerror.expert.contentPara2 "Moenie 'n uitsonderingreël byvoeg as u nie seker weet dat daar 'n goeie rede is hoekom hierdie werf nie vertroude identifikasie gebruik nie.">
+
+
+
+<!ENTITY certerror.technical.heading "Tegniese details">
diff --git a/l10n-af/mobile/android/chrome/aboutDownloads.dtd b/l10n-af/mobile/android/chrome/aboutDownloads.dtd
new file mode 100644
index 0000000000..a11a537177
--- /dev/null
+++ b/l10n-af/mobile/android/chrome/aboutDownloads.dtd
@@ -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/. -->
+
+<!ENTITY aboutDownloads.title "Aflaaie">
+
+
+
+<!ENTITY aboutDownloads.open "Open">
+<!ENTITY aboutDownloads.remove "Skrap">
+
+<!ENTITY aboutDownloads.pause "Laat wag">
+<!ENTITY aboutDownloads.resume "Hervat">
+<!ENTITY aboutDownloads.cancel "Kanselleer">
+<!ENTITY aboutDownloads.retry "Probeer weer">
diff --git a/l10n-af/mobile/android/chrome/aboutDownloads.properties b/l10n-af/mobile/android/chrome/aboutDownloads.properties
new file mode 100644
index 0000000000..ced0f058f5
--- /dev/null
+++ b/l10n-af/mobile/android/chrome/aboutDownloads.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/.
+
+# LOCALIZATION NOTE (downloadMessage.deleteAll):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+
+
+downloadState.downloading=Laai tans af…
+downloadState.canceled=Gekanselleer
+downloadState.failed=Misluk
+downloadState.starting=Begin tans…
+downloadState.unknownSize=Onbekende grootte
diff --git a/l10n-af/mobile/android/chrome/aboutLogins.dtd b/l10n-af/mobile/android/chrome/aboutLogins.dtd
new file mode 100644
index 0000000000..a9d350776c
--- /dev/null
+++ b/l10n-af/mobile/android/chrome/aboutLogins.dtd
@@ -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/. -->
+<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd">
+ %brandDTD;
+
+<!ENTITY aboutLogins.update "Bywerk">
+
+
diff --git a/l10n-af/mobile/android/chrome/aboutLogins.properties b/l10n-af/mobile/android/chrome/aboutLogins.properties
new file mode 100644
index 0000000000..50d55e6ce7
--- /dev/null
+++ b/l10n-af/mobile/android/chrome/aboutLogins.properties
@@ -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/.
+
+loginsMenu.delete=Skrap
+
+loginsDialog.copy=Kopieer
+loginsDialog.confirm=OK
+loginsDialog.cancel=Kanselleer
+
+
+
+
diff --git a/l10n-af/mobile/android/chrome/aboutPrivateBrowsing.dtd b/l10n-af/mobile/android/chrome/aboutPrivateBrowsing.dtd
new file mode 100644
index 0000000000..2aae707485
--- /dev/null
+++ b/l10n-af/mobile/android/chrome/aboutPrivateBrowsing.dtd
@@ -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/. -->
+
+<!ENTITY privatebrowsingpage.title "Private blaaiery">
+<!-- Localisation note: the plus sign here is a shorthand way of expressing the word "and". Contextually the privatebrowsingpage.title.private string
+ is used as a title, with the privatebrowsingpage.title string preceding it but on a separate line.
+ So the final line will say "Private Browsing + Tracking Protection". -->
+<!-- Localization note (privatebrowsingpage.title.normal1): "Private Browsing"
+ is capitalized in English to be consistent with our existing uses of the
+ term. -->
+
+
+<!-- Localization note (privatebrowsingpage.description.normal2): "Private
+ Browsing is capitalized in English to be consistent with our existing uses
+ of the term. -->
+
+
diff --git a/l10n-af/mobile/android/chrome/browser.properties b/l10n-af/mobile/android/chrome/browser.properties
new file mode 100644
index 0000000000..183de0165c
--- /dev/null
+++ b/l10n-af/mobile/android/chrome/browser.properties
@@ -0,0 +1,270 @@
+# 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/.
+
+addonsConfirmInstall.install=Installeer
+
+
+# Alerts
+
+# LOCALIZATION NOTE (alertAddonsInstalledNoRestart.action2): Ideally, this string is short (it's a
+# button label) and upper-case, to match Google and Android's convention.
+
+alertDownloadsResume=Hervat
+# LOCALIZATION NOTE (alertDownloadSucceeded): This text is shown as a snackbar inside the app after a
+# successful download. %S will be replaced by the file name of the download.
+# LOCALIZATION NOTE (downloads.disabledInGuest): This message appears in a toast
+# when the user tries to download something in Guest mode.
+
+# LOCALIZATION NOTE (alertSearchEngineAddedToast, alertSearchEngineErrorToast, alertSearchEngineDuplicateToast)
+# %S will be replaced by the name of the search engine (exposed by the current page)
+# that has been added; for example, 'Google'.
+
+# LOCALIZATION NOTE (alertShutdownSanitize): This text is shown as a snackbar during shutdown if the
+# user has enabled "Clear private data on exit".
+
+
+
+
+# LOCALIZATION NOTE (unsignedAddonsDisabled.title, unsignedAddonsDisabled.message):
+# These strings will appear in a dialog when Firefox detects that installed add-ons cannot be verified.
+
+# LOCALIZATION NOTE (addonError-1, addonError-2, addonError-3, addonError-4, addonError-5):
+# #1 is the add-on name, #2 is the add-on host, #3 is the application name
+addonError-1=Die byvoeging kon nie afgelaai word nie omdat die verbinding op #2 misluk het.
+addonError-2=Die byvoeging van #2 kon nie geïnstalleer word nie omdat dit nie dieselfde is as die byvoeging #3 wat verwag is nie.
+addonError-3=Die byvoeging wat van #2 afgelaai is kon nie geïnstalleer word nie omdat dit korrup blyk te wees.
+addonError-4=#1 kon nie geïnstalleer word nie omdat #3 nie die verlangde lêer kan wysig nie.
+
+# LOCALIZATION NOTE (addonLocalError-1, addonLocalError-2, addonLocalError-3, addonLocalError-4, addonLocalError-5, addonErrorIncompatible, addonErrorBlocklisted):
+# #1 is the add-on name, #3 is the application name, #4 is the application version
+addonLocalError-1=Hierdie byvoeging kon nie geïnstalleer word nie vanweë 'n lêerstelselfout.
+addonLocalError-2=Hierdie byvoeging kon nie geïnstalleer word nie omdat dit nie dieselfde is as byvoeging #3 wat verwag is nie.
+addonLocalError-3=Hierdie byvoeging kon nie geïnstalleer word nie omdat dit korrup blyk te wees.
+addonLocalError-4=#1 kon nie geïnstalleer word nie omdat #3 nie die verlangde lêer kan wysig nie.
+addonErrorIncompatible=#1 kon nie geïnstalleer word nie omdat dit onversoenbaar is met #3 #4.
+addonErrorBlocklisted=#1 kon nie geïnstalleer word nie omdat dit 'n hoë risiko dra om stabiliteit- en sekuriteit-probleme te veroorsaak.
+
+# Notifications
+notificationRestart.button=Herbegin
+
+# Popup Blocker
+
+# LOCALIZATION NOTE (popup.message): Semicolon-separated list of plural forms.
+# #1 is brandShortName and #2 is the number of pop-ups blocked.
+
+# SafeBrowsing
+
+# LOCALIZATION NOTE (blockPopups.label2): Label that will be used in
+# site settings dialog.
+
+# XPInstall
+xpinstallPromptAllowButton=Toelaat
+xpinstallDisabledMessageLocked=Sagteware-installering is deur u stelseladministrateur gedeaktiveer.
+xpinstallDisabledButton=Aktiveer
+
+
+# Site Identity
+identity.identified.verifier=Geverifieer deur: %S
+identity.identified.state_and_country=%S, %S
+
+# Geolocation UI
+# LOCALIZATION NOTE (geolocation.location): Label that will be used in
+# site settings dialog.
+geolocation.location=Ligging:
+# LOCALIZATION NOTE (geolocation.dontAskAgain): This label appears next to a
+# checkbox to indicate whether or not the user wants to make a permanent decision.
+
+# Desktop notification UI
+# LOCALIZATION NOTE (desktopNotification.notifications): Label that will be
+# used in site settings dialog.
+
+# FlyWeb UI
+# LOCALIZATION NOTE (flyWebPublishServer.allow): This is an experimental feature only shipping in Nightly, and doesn't need translation.
+# LOCALIZATION NOTE (flyWebPublishServer.dontAllow): This is an experimental feature only shipping in Nightly, and doesn't need translation.
+# LOCALIZATION NOTE (flyWebPublishServer.ask): This is an experimental feature only shipping in Nightly, and doesn't need translation.
+# LOCALIZATION NOTE (flyWebPublishServer.dontAskAgain): This is an experimental feature only shipping in Nightly, and doesn't need translation.
+# LOCALIZATION NOTE (flyWebPublishServer.publishServer): This is an experimental feature only shipping in Nightly, and doesn't need translation.
+
+# Imageblocking
+
+# New Tab Popup
+# LOCALIZATION NOTE (newtabpopup, newprivatetabpopup): Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of tabs
+
+# LOCALIZATION NOTE (newtabpopup.switch): Ideally, this string is short (it's a
+# button label) and upper-case, to match Google and Android's convention.
+
+# Undo close tab toast
+# LOCALIZATION NOTE (undoCloseToast.message): This message appears in a toast
+# when the user closes a tab. %S is the title of the tab that was closed.
+
+# Private Tab closed message
+# LOCALIZATION NOTE (privateClosedMessage.message): This message appears
+# when the user closes a private tab.
+
+# LOCALIZATION NOTE (undoCloseToast.messageDefault): This message appears in a
+# toast when the user closes a tab if there is no title to display.
+
+# LOCALIZATION NOTE (undoCloseToast.action2): Ideally, this string is short (it's a
+# button label) and upper-case, to match Google and Android's convention.
+
+# Offline web applications
+offlineApps.allow=Toelaat
+
+# LOCALIZATION NOTE (offlineApps.offlineData): Label that will be used in
+# site settings dialog.
+
+# LOCALIZATION NOTE (password.logins): Label that will be used in
+ # site settings dialog.
+# LOCALIZATION NOTE (password.save): This should match
+# saveButton in passwordmgr.properties
+# LOCALIZATION NOTE (password.dontSave): This should match
+# dontSaveButton in passwordmgr.properties
+
+# LOCALIZATION NOTE (browser.menu.showCharacterEncoding): Set to the string
+# "true" (spelled and capitalized exactly that way) to show the "Character
+# Encoding" menu in the site menu. Any other value will hide it. Without this
+# setting, the "Character Encoding" menu must be enabled via Preferences.
+# This is not a string to translate. If users frequently use the "Character Encoding"
+# menu, set this to "true". Otherwise, you can leave it as "false".
+browser.menu.showCharacterEncoding=false
+
+# Text Selection
+selectionHelper.textCopied=Teks na die knipbord gekopieer
+
+# Casting
+# LOCALIZATION NOTE (casting.sendToDevice): Label that will be used in the
+# dialog/prompt.
+
+# Context menu
+contextmenu.openInNewTab=Open skakel in nuwe oortjie
+contextmenu.copyEmailAddress=Kopieer e-posadres
+contextmenu.fullScreen=Volskerm
+# LOCALIZATION NOTE (contextmenu.search):
+# The label of the contextmenu item which allows you to search with your default search engine for
+# the text you have selected. %S is the name of the search engine. For example, "Google".
+contextmenu.saveImage=Stoor prent
+# LOCALIZATION NOTE (contextmenu.addSearchEngine3): This string should be rather short. If it is
+# significantly longer than the translation for the "Paste" action then this might trigger an
+# Android bug positioning the floating text selection partially off the screen. This issue heavily
+# depends on the screen size and the specific translations. For English "Paste" / "Add search engine"
+# is working while "Paste" / "Add as search engine" triggers the bug. See bug 1262098 for more details.
+# Manual testing the scenario described in bug 1262098 is highly recommended.
+contextmenu.playMedia=Speel
+contextmenu.saveAudio=Stoor klank
+# LOCALIZATION NOTE (contextmenu.saveMedia):
+# The label that will be used in the contextmenu in place of "Save Video" or "Save Audio", for
+# unloaded video elements.
+# LOCALIZATION NOTE (contextmenu.sendToDevice):
+# The label that will be used in the contextmenu and the pageaction
+
+contextmenu.copy=Kopieer
+contextmenu.selectAll=Kies almal
+contextmenu.paste=Plak
+
+
+#Input widgets UI
+inputWidgetHelper.clear=Maak skoon
+
+# Web Console API
+stacktrace.anonymousFunction=<anoniem>
+stacktrace.outputMessage=Stapelspoor vanaf %S, funksie %S, lyn %S.
+
+# LOCALIZATION NOTE (timer.end):
+# This string is used to display the result of the console.timeEnd() call.
+# %1$S=name of timer, %2$S=number of milliseconds
+
+# Click to play plugins
+# LOCALIZATION NOTE (clickToPlayPlugins.dontAskAgain): This label appears next to a
+# checkbox to indicate whether or not the user wants to make a permanent decision.
+# LOCALIZATION NOTE (clickToPlayPlugins.plugins): Label that
+# will be used in site settings dialog.
+
+# Site settings dialog
+# LOCALIZATION NOTE (siteSettings.labelToValue): This string will be used to
+# dislay a list of current permissions settings for a site.
+# Example: "Store Offline Data: Allow"
+
+
+# Debugger
+# LOCALIZATION NOTE (remoteIncomingPromptTitle): The title displayed on the
+# dialog that prompts the user to allow the incoming connection.
+# LOCALIZATION NOTE (remoteIncomingPromptUSB): The message displayed on the
+# dialog that prompts the user to allow an incoming USB connection.
+# LOCALIZATION NOTE (remoteIncomingPromptUSB): The message displayed on the
+# dialog that prompts the user to allow an incoming TCP connection.
+# LOCALIZATION NOTE (remoteIncomingPromptDeny): This button will deny an
+# an incoming remote debugger connection.
+# LOCALIZATION NOTE (remoteIncomingPromptAllow): This button will allow an
+# an incoming remote debugger connection.
+# LOCALIZATION NOTE (remoteIncomingPromptScan): This button will start a QR
+# code scanner to authenticate an incoming remote debugger connection. The
+# connection will be allowed assuming the scan succeeds.
+# LOCALIZATION NOTE (remoteIncomingPromptScanAndRemember): This button will
+# start a QR code scanner to authenticate an incoming remote debugger
+# connection. The connection will be allowed assuming the scan succeeds, and
+# the other endpoint's certificate will be saved to skip future scans for this
+# client.
+# LOCALIZATION NOTE (remoteQRScanFailedPromptTitle): The title displayed in a
+# dialog when we are unable to complete the QR code scan for an incoming remote
+# debugging connection.
+# LOCALIZATION NOTE (remoteQRScanFailedPromptMessage): The message displayed in
+# a dialog when we are unable to complete the QR code scan for an incoming
+# remote debugging connection.
+# LOCALIZATION NOTE (remoteQRScanFailedPromptOK): This button dismisses the
+# dialog that appears when we are unable to complete the QR code scan for an
+# incoming remote debugging connection.
+
+# LOCALIZATION NOTE (remoteNotificationTitle): %S is the name of the app.
+# LOCALIZATION NOTE (remoteNotificationGenericName): a generic name to use
+# if the name of the app is not available.
+# LOCALIZATION NOTE (remoteNotificationMessage): %S is the port on which
+# the remote debugger server is listening.
+# LOCALIZATION NOTE (remoteStartNotificationTitle): %S is the name of the app.
+# LOCALIZATION NOTE (remoteStartNotificationMessage):
+
+# Site settings dialog
+
+# Helper apps
+helperapps.open=Open
+
+# LOCALIZATION NOTE (getUserMedia.shareCamera.message, getUserMedia.shareMicrophone.message, getUserMedia.shareCameraAndMicrophone.message, getUserMedia.sharingCamera.message, getUserMedia.sharingMicrophone.message, getUserMedia.sharingCameraAndMicrophone.message): %S is the website origin (e.g. www.mozilla.org)
+getUserMedia.shareCamera.message = Wil u die kamera deel met %S?
+getUserMedia.shareMicrophone.message = Wil u die mikrofoon deel met %S?
+getUserMedia.shareCameraAndMicrophone.message = Wil u die kamera en mikrofoon met %S deel?
+
+# LOCALIZATION NOTE (userContextPersonal.label,
+# userContextWork.label,
+# userContextShopping.label,
+# userContextBanking.label,
+# userContextNone.label):
+# These strings specify the four predefined contexts included in support of the
+# Contextual Identity / Containers project. Each context is meant to represent
+# the context that the user is in when interacting with the site. Different
+# contexts will store cookies and other information from those sites in
+# different, isolated locations. You can enable the feature by typing
+# about:config in the URL bar and changing privacy.userContext.enabled to true.
+# Once enabled, you can open a new tab in a specific context by clicking
+# File > New Container Tab > (1 of 4 contexts). Once opened, you will see these
+# strings on the right-hand side of the URL bar.
+# In android this will be only exposed by web extensions
+
+# LOCALIZATION NOTE (readerMode.toolbarTip):
+# Tip shown to users the first time we hide the reader mode toolbar.
+
+#Open in App
+
+#Tab sharing
+#Tabs in context menus
+
+# "Subscribe to page" prompts created in FeedHandler.js
+
+# LOCALIZATION NOTE (nativeWindow.deprecated):
+# This string is shown in the console when someone uses deprecated NativeWindow apis.
+# %1$S=name of the api that's deprecated, %2$S=New API to use. This may be a url to
+# a file they should import or the name of an api.
+
+# Vibration API permission prompt
+
diff --git a/l10n-af/mobile/android/chrome/config.dtd b/l10n-af/mobile/android/chrome/config.dtd
new file mode 100644
index 0000000000..fdb287a6f2
--- /dev/null
+++ b/l10n-af/mobile/android/chrome/config.dtd
@@ -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/. -->
+
+
+<!ENTITY toolbar.searchPlaceholder "Soek">
+
+<!ENTITY newPref.namePlaceholder "Naam">
+
+<!ENTITY newPref.valueBoolean "&amp;Boolese">
+<!ENTITY newPref.valueString "&amp;String">
+<!ENTITY newPref.valueInteger "&amp;Heelgetal">
+
+
+
+<!ENTITY newPref.cancelButton "Kanselleer">
+
+
diff --git a/l10n-af/mobile/android/chrome/config.properties b/l10n-af/mobile/android/chrome/config.properties
new file mode 100644
index 0000000000..b1d87b275c
--- /dev/null
+++ b/l10n-af/mobile/android/chrome/config.properties
@@ -0,0 +1,7 @@
+# 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/.
+
+newPref.changeButton=Wysig
+
+pref.resetButton=Teruglaai
diff --git a/l10n-af/mobile/android/chrome/passwordmgr.properties b/l10n-af/mobile/android/chrome/passwordmgr.properties
new file mode 100644
index 0000000000..6598aa82ef
--- /dev/null
+++ b/l10n-af/mobile/android/chrome/passwordmgr.properties
@@ -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/.
+
+# String will be replaced by brandShortName.
+
+# String is the login's hostname
+updateButton=Bywerk
+
+passwordChangeTitle=Bevestig wagwoordwysiging
+
+username=Gebruikernaam
+password=Wagwoord
diff --git a/l10n-af/mobile/android/chrome/phishing.dtd b/l10n-af/mobile/android/chrome/phishing.dtd
new file mode 100644
index 0000000000..b20be5b60b
--- /dev/null
+++ b/l10n-af/mobile/android/chrome/phishing.dtd
@@ -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/. -->
+
+<!ENTITY safeb.palm.accept.label "Eina! Laat ek weg wees!">
+<!ENTITY safeb.palm.decline.label "Ignoreer hierdie waarskuwing">
+
+<!-- Localization note (safeb.palm.advisory.desc) - Please don't translate <a id="advisory_provider"/> tag. It will be replaced at runtime with advisory link-->
+
+<!ENTITY safeb.blocked.malwarePage.title "'n Gerapporteerde aanvalsbladsy!">
+<!-- Localization note (safeb.blocked.malware.shortDesc) - Please don't translate the contents of the <span id="malware_sitename"/> tag. It will be replaced at runtime with a domain name (e.g. www.badsite.com) -->
+<!ENTITY safeb.blocked.malwarePage.shortDesc "Die webblad by <span id='malware_sitename'/> is as 'n aanvalsbladsy aangegee en is op grond van u sekuriteitvoorkeure geblokkeer.">
+<!ENTITY safeb.blocked.malwarePage.longDesc "<p>Aanvalsbladsye probeer programme installeer wat private inligting steel, u rekenaar gebruik om ander aan te val, of u stelsel beskadig.</p><p>Sommige aanvalsbladsye versprei doelbewus skadelike sagteware, maar baie word oorgeneem sonder die wete of toestemming van hulle eienaars.</p>">
+
+<!-- Localization note (safeb.blocked.phishingPage.shortDesc3) - Please don't translate the contents of the <span id="phishing_sitename"/> tag. It will be replaced at runtime with a domain name (e.g. www.badsite.com) -->
+
+
+<!-- Localization note (safeb.blocked.unwanted.shortDesc) - Please don't translate the contents of the <span id="unwanted_sitename"/> tag. It will be replaced at runtime with a domain name (e.g. www.badsite.com) -->
+
+
+
diff --git a/l10n-af/mobile/android/chrome/pippki.properties b/l10n-af/mobile/android/chrome/pippki.properties
new file mode 100644
index 0000000000..b51306ac28
--- /dev/null
+++ b/l10n-af/mobile/android/chrome/pippki.properties
@@ -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/.
+
+nssdialogs.ok.label=OK
+nssdialogs.cancel.label=Kanselleer
+
+# These strings are stolen from security/manager/locales/en-US/chrome/pippki/pippki.dtd
+downloadCert.title=Sertifikate aflaai
+downloadCert.message1=U is gevra om 'n nuwe sertifikaatowerheid (SO) te vertrou.
+# LOCALIZATION NOTE(clientAuthAsk.nickAndSerial): Represents a single cert when
+# the user is choosing from a list of certificates.
+# %1$S is the nickname of the cert.
+# %2$S is the serial number of the cert in AA:BB:CC hex format.
+# LOCALIZATION NOTE(clientAuthAsk.hostnameAndPort):
+# %1$S is the hostname of the server.
+# %2$S is the port of the server.
+# LOCALIZATION NOTE(clientAuthAsk.organization): %S is the Organization of the
+# server cert.
+# LOCALIZATION NOTE(clientAuthAsk.issuer): %S is the Organization of the
+# issuer cert of the server cert.
+# LOCALIZATION NOTE(clientAuthAsk.issuedTo): %1$S is the Distinguished Name of
+# the currently selected client cert, such as "CN=John Doe,OU=Example" (without
+# quotes).
+# LOCALIZATION NOTE(clientAuthAsk.serial): %1$S is the serial number of the
+# selected cert in AA:BB:CC hex format.
+# LOCALIZATION NOTE(clientAuthAsk.validityPeriod):
+# %1$S is the already localized notBefore date of the selected cert.
+# %2$S is the already localized notAfter date of the selected cert.
+# LOCALIZATION NOTE(clientAuthAsk.keyUsages): %1$S is a comma separated list of
+# already localized key usages the selected cert is valid for.
+# LOCALIZATION NOTE(clientAuthAsk.emailAddresses): %1$S is a comma separated
+# list of e-mail addresses the selected cert is valid for.
+# LOCALIZATION NOTE(clientAuthAsk.issuedBy): %1$S is the Distinguished Name of
+# the cert which issued the selected cert.
+# LOCALIZATION NOTE(clientAuthAsk.storedOn): %1$S is the name of the PKCS #11
+# token the selected cert is stored on.
+
+# These strings are stolen from security/manager/locales/en-US/chrome/pippki/certManager.dtd
+certmgr.subjectinfo.label=Uitgereik aan
+certmgr.issuerinfo.label=Uitgereik deur
+certmgr.fingerprints.label=Vingerafdrukke
+# LOCALIZATION NOTE(certdetail.serialnumber): %1$S is the serial number of the
+# cert being viewed in AA:BB:CC hex format.
+# LOCALIZATION NOTE(certdetail.sha256fingerprint): %1$S is the SHA-256
+# Fingerprint of the cert being viewed in AA:BB:CC hex format.
+# LOCALIZATION NOTE(certdetail.sha1fingerprint): %1$S is the SHA-1 Fingerprint
+# of the cert being viewed in AA:BB:CC hex format.
+# LOCALIZATION NOTE(certdetail.notBefore): %1$S is the already localized
+# notBefore date of the cert being viewed.
+# LOCALIZATION NOTE(certdetail.notAfter): %1$S is the already localized notAfter
+# date of the cert being viewed.
diff --git a/l10n-af/mobile/android/chrome/sync.properties b/l10n-af/mobile/android/chrome/sync.properties
new file mode 100644
index 0000000000..733118b05f
--- /dev/null
+++ b/l10n-af/mobile/android/chrome/sync.properties
@@ -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/.
+
+# Mobile Sync
+
+# %S is the date and time at which the last sync successfully completed
+lastSync2.label=Laas gesinkroniseer: %S
+
+
+# LOCALIZATION NOTE (promoBanner.message.text): First part of the message displayed in a
+# banner on about:home. The final space separates this text from the link.
+
+# LOCALIZATION NOTE (promoBanner.message.link): Second part of the message, styled as a link.
+
diff --git a/l10n-af/mobile/android/defines.inc b/l10n-af/mobile/android/defines.inc
new file mode 100644
index 0000000000..7105135f54
--- /dev/null
+++ b/l10n-af/mobile/android/defines.inc
@@ -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/.
+#filter emptyLines
+
+#define MOZ_LANGPACK_CREATOR Translate.org.za
+
+# If non-English locales wish to credit multiple contributors, uncomment this
+
+# variable definition and use the format specified.
+
+#define MOZ_LANGPACK_CONTRIBUTORS <em:contributor>Translate.org.za</em:contributor> <em:contributor>Samuel Murray</em:contributor> <em:contributor>Friedel Wolff</em:contributor> <em:contributor>Dwayne Bailey</em:contributor>
+
+#unfilter emptyLines
diff --git a/l10n-af/mobile/chrome/region.properties b/l10n-af/mobile/chrome/region.properties
new file mode 100644
index 0000000000..0ff06da932
--- /dev/null
+++ b/l10n-af/mobile/chrome/region.properties
@@ -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/.
+
+# increment this number when anything gets changed in the list below. This will
+# cause Firefox to re-read these prefs and inject any new handlers into the
+# profile database. Note that "new" is defined as "has a different URL"; this
+# means that it's not possible to update the name of existing handler, so
+# don't make any spelling errors here.
+gecko.handlerService.defaultHandlersVersion=3
+
+# The default set of protocol handlers for mailto:
+gecko.handlerService.schemes.mailto.0.name=Yahoo! Mail
+gecko.handlerService.schemes.mailto.0.uriTemplate=https://compose.mail.yahoo.com/?To=%s
+gecko.handlerService.schemes.mailto.1.name=Gmail
+gecko.handlerService.schemes.mailto.1.uriTemplate=https://mail.google.com/mail/?extsrc=mailto&url=%s
+
+# This is the default set of web based feed handlers shown in the reader
+# selection UI
+browser.contentHandlers.types.0.title=My Yahoo!
+browser.contentHandlers.types.0.uri=https://add.my.yahoo.com/rss?url=%s
+
diff --git a/l10n-af/mobile/overrides/appstrings.properties b/l10n-af/mobile/overrides/appstrings.properties
new file mode 100644
index 0000000000..c01c6ea5d4
--- /dev/null
+++ b/l10n-af/mobile/overrides/appstrings.properties
@@ -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/.
+
+# BEFORE EDITING THIS FILE, PLEASE NOTE:
+# These strings are only here to support shipping Fennec ESR.
+# They are unused in GeckoView, so please don't make any changes.
+
+fileNotFound=Firefox kan nie 'n lêer vind by %S nie.
+connectionFailure=Firefox kan nie 'n verbinding met die bediener by %S bewerkstellig nie.
+netInterrupt=Die verbinding met %S is onderbreek terwyl die bladsy gelaai het.
+netTimeout=Die bediener by %S neem te lank om te reageer.
+redirectLoop=Firefox het bespeur dat die bediener die versoek vir hierdie adres herverwys op 'n manier wat nooit afgehandel sal word nie.
+## LOCALIZATION NOTE (confirmRepostPrompt): In this item, don't translate "%S"
+confirmRepostPrompt=Om hierdie bladsy te wys, moet %S inligting stuur wat enige aksie sal herhaal (soos 'n soektog of bevestiging van bestelling) wat vroeër gedoen is.
+resendButton.label=Herstuur
+unknownSocketType=Firefox weet nie hoe om met hierdie bediener te kommunikeer nie.
+netReset=Die verbinding met die bediener is teruggestel terwyl die bladsy besig was om te laai.
+notCached=Dié dokument is nie meer beskikbaar nie.
+netOffline=Firefox is tans in aflynmodus en kan nie die web blaai nie.
+isprinting=Die dokument kan nie gewysig word terwyl dit gedruk word of in drukvoorskou is nie.
+deniedPortAccess=Hierdie adres gebruik 'n netwerkpoort wat gewoonlik gebruik word vir ander doeleindes as webblaaiery. Firefox het die versoek ter wille van u beskerming gekanselleer.
+proxyResolveFailure=Firefox is opgestel om 'n instaanbediener te gebruik wat nie gevind kan word nie.
+proxyConnectFailure=Firefox is opgestel om 'n instaanbediener te gebruik wat verbindings weier.
+contentEncodingError=Die bladsy wat u probeer bekyk, kan nie gewys word nie omdat dit 'n ongeldige of nieondersteunde inpakformaat gebruik.
+unsafeContentType=Die bladsy wat u probeer bekyk, kan nie gewys word nie omdat dit in 'n lêersoort verpak is wat dalk nie veilig is om te open nie. Kontak die webwerf se eienaar om hulle oor die probleem in te lig.
+malwareBlocked=Die werf by %S is as 'n aanvalswerf aangegee en is op grond van u sekuriteitvoorkeur geblokkeer.
+remoteXUL=Hierdie bladsy gebruik 'n tegnologie wat nie meer by verstek in Firefox beskikbaar is nie.
diff --git a/l10n-af/mobile/overrides/netError.dtd b/l10n-af/mobile/overrides/netError.dtd
new file mode 100644
index 0000000000..5b2804924c
--- /dev/null
+++ b/l10n-af/mobile/overrides/netError.dtd
@@ -0,0 +1,104 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd">
+%brandDTD;
+
+<!ENTITY loadError.label "Kan nie die bladsy laai nie">
+<!ENTITY retry.label "Probeer weer">
+
+<!-- Specific error messages -->
+
+
+<!ENTITY connectionFailure.title "Kan nie koppel nie">
+
+
+<!ENTITY deniedPortAccess.title "Hierdie adres het beperkings op">
+<!ENTITY deniedPortAccess.longDesc "">
+
+<!ENTITY dnsNotFound.title "Bediener nie gevind nie">
+<!-- LOCALIZATION NOTE (dnsNotFound.longDesc4) This string contains markup including widgets for searching
+ or enabling wifi connections. The text inside tags should be localized. Do not change the ids. -->
+
+<!ENTITY fileNotFound.title "Lêer nie gevind nie">
+<!ENTITY fileNotFound.longDesc "<ul> <li>Kontroleer die lêernaam vir bokas of onderkas of ander tikfoute.</li> <li>Kontroleer of die lêer verskuif, hernoem of geskrap is.</li> </ul>">
+
+
+
+<!ENTITY generic.title "Oeps.">
+
+
+<!-- LOCALIZATION NOTE (malformedURI.longDesc2) This string contains markup including widgets for searching
+ or enabling wifi connections. The text inside the tags should be localized. Do not touch the ids. -->
+
+<!ENTITY netInterrupt.title "Die verbinding is onderbreek">
+
+
+<!ENTITY notCached.title "Dokumentgeldigheid het verval">
+
+
+<!ENTITY netOffline.title "Aflynmodus">
+<!-- LOCALIZATION NOTE (netOffline.longDesc3) This string contains markup including widgets enabling wifi connections.
+ The text inside the tags should be localized. Do not touch the ids. -->
+
+
+
+<!ENTITY unsafeContentType.title "Onveilige lêersoort">
+
+
+<!ENTITY netReset.title "Die verbinding is teruggestel">
+
+
+<!ENTITY netTimeout.title "Die verbinding het uitgetel">
+
+
+
+
+
+
+<!-- LOCALIZATION NOTE (proxyResolveFailure.longDesc3) This string contains markup including widgets for enabling wifi connections.
+ The text inside the tags should be localized. Do not touch the ids. -->
+
+<!ENTITY redirectLoop.longDesc "<ul> <li>Hierdie probleem kan soms veroorsaak word deur koekies te deaktiveer of te weier om koekies te aanvaar.</li> </ul>">
+
+<!ENTITY unknownSocketType.title "Onverwagse respons vanaf bediener">
+<!ENTITY unknownSocketType.longDesc "<ul> <li>Kontroleer of die persoonlike sekuriteitbestuurder op u rekenaar geïnstalleer is.</li> <li>Dit kan wees vanweë 'n niestandaard-opstelling op die bediener.</li> </ul>">
+
+<!ENTITY nssFailure2.title "Kon nie beveilig koppel nie">
+
+
+
+<!-- LOCALIZATION NOTE (sharedLongDesc3) This string contains markup including widgets for enabling wifi connections.
+ The text inside the tags should be localized. Do not touch the ids. -->
+
+<!ENTITY cspBlocked.title "Geblokkeer deur inhoudbeveiligingsbeleid">
+<!ENTITY cspBlocked.longDesc "<p>&brandShortName; het voorkom dat hierdie bladsy op hierdie manier laai want die bladsy het 'n inhoudbeveiligingsbeleid wat dit keer.</p>">
+
+<!ENTITY corruptedContentErrorv2.title "Fout: inhoud korrup">
+<!ENTITY corruptedContentErrorv2.longDesc "<p>Die bladsy wat u probeer sien kan nie vertoon word nie omdat 'n fout bespeur is in die dataoordrag.</p><ul><li>Kontak die webwerf se eienaar om hulle oor die probleem in te lig.</li></ul>">
+
+<!ENTITY securityOverride.linkText "Of u kan 'n uitsondering byvoeg…">
+
+<!ENTITY securityOverride.exceptionButtonLabel "Voeg uitsondering by…">
+
+<!-- LOCALIZATION NOTE (securityOverride.warningContent) - Do not translate the
+contents of the <xul:button> tags. The only language content is the label= field,
+which uses strings already defined above. The button is included here (instead of
+netError.xhtml) because it exposes functionality specific to firefox. -->
+
+
+<!ENTITY securityOverride.warningContent "<p>Jy moenie 'n uitsondering byvoeg as jy 'n internetverbinding gebruik wat jy nie volledig vertrou nie, of as jy nie gewoonlik 'n waarskuwing vir hierdie bediener sien nie.</p> <button id='getMeOutOfHereButton'>&securityOverride.getMeOutOfHereButton;</button> <button id='exceptionDialogButton'>&securityOverride.exceptionButtonLabel;</button>">
+
+<!ENTITY remoteXUL.title "Afgeleë XUL">
+<!ENTITY remoteXUL.longDesc "<p><ul><li>Kontak die webwerf se eienaar om hulle oor die probleem in te lig.</li></ul></p>">
+
+<!-- LOCALIZATION NOTE (sslv3Used.longDesc) - Do not translate
+ "SSL_ERROR_UNSUPPORTED_VERSION". -->
+
+<!-- LOCALIZATION NOTE (weakCryptoUsed.longDesc) - Do not translate
+ "SSL_ERROR_NO_CYPHER_OVERLAP". -->
+
+<!-- LOCALIZATION NOTE (inadequateSecurityError.longDesc) - Do not translate
+ "NS_ERROR_NET_INADEQUATE_SECURITY". -->
+