summaryrefslogtreecommitdiffstats
path: root/l10n-es-MX/mobile/android
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 14:29:10 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 14:29:10 +0000
commit2aa4a82499d4becd2284cdb482213d541b8804dd (patch)
treeb80bf8bf13c3766139fbacc530efd0dd9d54394c /l10n-es-MX/mobile/android
parentInitial commit. (diff)
downloadfirefox-upstream.tar.xz
firefox-upstream.zip
Adding upstream version 86.0.1.upstream/86.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r--l10n-es-MX/mobile/android/chrome/about.dtd21
-rw-r--r--l10n-es-MX/mobile/android/chrome/aboutAccounts.dtd13
-rw-r--r--l10n-es-MX/mobile/android/chrome/aboutAccounts.properties16
-rw-r--r--l10n-es-MX/mobile/android/chrome/aboutAddons.dtd15
-rw-r--r--l10n-es-MX/mobile/android/chrome/aboutAddons.properties11
-rw-r--r--l10n-es-MX/mobile/android/chrome/aboutCertError.dtd31
-rw-r--r--l10n-es-MX/mobile/android/chrome/aboutDownloads.dtd15
-rw-r--r--l10n-es-MX/mobile/android/chrome/aboutDownloads.properties17
-rw-r--r--l10n-es-MX/mobile/android/chrome/aboutHome.dtd7
-rw-r--r--l10n-es-MX/mobile/android/chrome/aboutLogins.dtd9
-rw-r--r--l10n-es-MX/mobile/android/chrome/aboutLogins.properties33
-rw-r--r--l10n-es-MX/mobile/android/chrome/aboutPrivateBrowsing.dtd25
-rw-r--r--l10n-es-MX/mobile/android/chrome/browser.properties476
-rw-r--r--l10n-es-MX/mobile/android/chrome/config.dtd21
-rw-r--r--l10n-es-MX/mobile/android/chrome/config.properties9
-rw-r--r--l10n-es-MX/mobile/android/chrome/devicePrompt.properties5
-rw-r--r--l10n-es-MX/mobile/android/chrome/passwordmgr.properties20
-rw-r--r--l10n-es-MX/mobile/android/chrome/phishing.dtd27
-rw-r--r--l10n-es-MX/mobile/android/chrome/pippki.properties84
-rw-r--r--l10n-es-MX/mobile/android/chrome/sync.properties12
-rw-r--r--l10n-es-MX/mobile/android/chrome/webcompatReporter.properties12
-rw-r--r--l10n-es-MX/mobile/android/defines.inc14
22 files changed, 893 insertions, 0 deletions
diff --git a/l10n-es-MX/mobile/android/chrome/about.dtd b/l10n-es-MX/mobile/android/chrome/about.dtd
new file mode 100644
index 0000000000..773fa8c8d2
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/about.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 aboutPage.title "Acerca de &brandShortName;">
+<!ENTITY aboutPage.warningVersion "&brandShortName; es experimental y podría ser inestable.">
+<!ENTITY aboutPage.checkForUpdates.link "« Buscar actualizaciones »">
+<!ENTITY aboutPage.checkForUpdates.checking "Buscando actualizaciones…">
+<!ENTITY aboutPage.checkForUpdates.none "No hay actualizaciones disponibles">
+<!ENTITY aboutPage.checkForUpdates.available2 "Descargar actualización">
+<!ENTITY aboutPage.checkForUpdates.downloading "Descargando actualización…">
+<!ENTITY aboutPage.checkForUpdates.downloaded2 "Instalar actualización">
+<!ENTITY aboutPage.faq.label "Preguntas frecuentes">
+<!ENTITY aboutPage.support.label "Soporte">
+<!ENTITY aboutPage.privacyPolicy.label "Política de privacidad">
+<!ENTITY aboutPage.rights.label "Conoce tus derechos">
+<!ENTITY aboutPage.relNotes.label "Notas de la versión">
+<!ENTITY aboutPage.credits.label "Créditos">
+<!ENTITY aboutPage.license.label "Información de licencia">
+<!-- LOCALIZATION NOTE (aboutPage.logoTrademark): The message is explicitly about the word "Firefox" being trademarked, that's why we use it, instead of brandShortName. -->
+
+<!ENTITY aboutPage.logoTrademark "Firefox y los logotipos de Firefox son marcas registradas de la Fundación Mozilla.">
diff --git a/l10n-es-MX/mobile/android/chrome/aboutAccounts.dtd b/l10n-es-MX/mobile/android/chrome/aboutAccounts.dtd
new file mode 100644
index 0000000000..6739d1639c
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/aboutAccounts.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 aboutAccounts.connected.title "Cuentas de Firefox">
+<!ENTITY aboutAccounts.connected.description "Estás conectado como">
+<!ENTITY aboutAccounts.syncPreferences.label "Pulsa aquí para revisar tu configuración de sincronización">
+
+<!ENTITY aboutAccounts.noConnection.title "Sin conexión a Internet">
+<!ENTITY aboutAccounts.retry.label "Intentar de nuevo">
+
+<!ENTITY aboutAccounts.restrictedError.title "Restringido">
+<!ENTITY aboutAccounts.restrictedError.description "No se puede administrar cuentas de Firefox desde este perfil.">
diff --git a/l10n-es-MX/mobile/android/chrome/aboutAccounts.properties b/l10n-es-MX/mobile/android/chrome/aboutAccounts.properties
new file mode 100644
index 0000000000..af0684fd9b
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/aboutAccounts.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 (relinkDenied.message): Ideally, this string is short (it's
+# a toast message).
+relinkDenied.message = ¡Ya estás conectado en Sync!
+# LOCALIZATION NOTE (relinkDenied.openPrefs): Ideally, this string is short (it's a
+# button label) and upper-case, to match Google and Android's convention.
+relinkDenied.openPrefs = PREFS
+
+relinkVerify.title = ¿Estás seguro que quieres conectarte a Sync?
+# LOCALIZATION NOTE (relinkVerify.message): Email address of a user previously signed in to Sync.
+relinkVerify.message = Iniciaste sesión previamente en Sync con una dirección de correo electrónico diferente. Iniciar sesión fusionará marcadores de este navegador, contraseñas y otros ajustes con %S
+relinkVerify.continue = Continuar
+relinkVerify.cancel = Cancelar
diff --git a/l10n-es-MX/mobile/android/chrome/aboutAddons.dtd b/l10n-es-MX/mobile/android/chrome/aboutAddons.dtd
new file mode 100644
index 0000000000..76f0120e10
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/aboutAddons.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 aboutAddons.title2 "Complementos">
+<!ENTITY aboutAddons.header2 "Tus complementos">
+
+<!ENTITY addonAction.enable "Habilitar">
+<!ENTITY addonAction.disable "Deshabilitar">
+<!ENTITY addonAction.uninstall "Desinstalar">
+<!ENTITY addonAction.undo "Deshacer">
+<!ENTITY addonAction.update "Actualizar">
+
+<!ENTITY addonUnsigned.message "Este complemento podría no estar verificado por &brandShortName;.">
+<!ENTITY addonUnsigned.learnMore "Saber más">
diff --git a/l10n-es-MX/mobile/android/chrome/aboutAddons.properties b/l10n-es-MX/mobile/android/chrome/aboutAddons.properties
new file mode 100644
index 0000000000..ca46e58ef6
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/aboutAddons.properties
@@ -0,0 +1,11 @@
+# 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/.
+
+addonStatus.uninstalled=%S se desinstalará después de reiniciar.
+
+# Will keep both strings and at runtime will fallback on the old one if the new one is not yet localized
+addons.browseAll=Examinar todos los complementos para Firefox
+addons.browseRecommended=Descubre las extensiones recomendadas de Firefox
+
+addon.options=Opciones
diff --git a/l10n-es-MX/mobile/android/chrome/aboutCertError.dtd b/l10n-es-MX/mobile/android/chrome/aboutCertError.dtd
new file mode 100644
index 0000000000..50ae1a1ed5
--- /dev/null
+++ b/l10n-es-MX/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 "Conexión no confiable">
+<!ENTITY certerror.longpagetitle "Esta conexión no es de confianza">
+<!-- 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 "Le solicitaste a &brandShortName; conectarse en forma segura a <b>#1</b>, pero no es posible confirmarla como tal.">
+
+<!ENTITY certerror.whatShouldIDo.heading "¿Qué debo hacer?">
+<!ENTITY certerror.whatShouldIDo.content "Si comúnmente te conectas a este sitio web sin problemas, este error podría significar que alguien está intentando suplantarlo y no deberías continuar.">
+<!ENTITY certerror.getMeOutOfHere.label "¡Sácame de aquí!">
+
+<!ENTITY certerror.expert.heading "Entiendo los riesgos">
+<!ENTITY certerror.expert.content "Si entiendes lo que está pasando puedes indicarle a &brandShortName; confiar en la identificación de este sitio web. <b>Incluso si confías en este sitio web, este error podría significar que alguien está interfiriendo tu conexión.</b>">
+<!ENTITY certerror.expert.contentPara2 "No añadas una excepción a menos que sepas que hay una buena razón por la cual este sitio no usa identificación confiable.">
+<!ENTITY certerror.addTemporaryException.label "Visitar sitio">
+<!ENTITY certerror.addPermanentException.label "Agregar excepción permanente">
+
+<!ENTITY certerror.technical.heading "Detalles técnicos">
diff --git a/l10n-es-MX/mobile/android/chrome/aboutDownloads.dtd b/l10n-es-MX/mobile/android/chrome/aboutDownloads.dtd
new file mode 100644
index 0000000000..c932149f3a
--- /dev/null
+++ b/l10n-es-MX/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 "Descargas">
+<!ENTITY aboutDownloads.header "Tus descargas">
+<!ENTITY aboutDownloads.empty "No hay descargas">
+
+<!ENTITY aboutDownloads.open "Abrir">
+<!ENTITY aboutDownloads.remove "Eliminar">
+<!ENTITY aboutDownloads.removeAll "Eliminar todo">
+<!ENTITY aboutDownloads.pause "Pausa">
+<!ENTITY aboutDownloads.resume "Reanudar">
+<!ENTITY aboutDownloads.cancel "Cancelar">
+<!ENTITY aboutDownloads.retry "Reintentar">
diff --git a/l10n-es-MX/mobile/android/chrome/aboutDownloads.properties b/l10n-es-MX/mobile/android/chrome/aboutDownloads.properties
new file mode 100644
index 0000000000..87cc1d9cd8
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/aboutDownloads.properties
@@ -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/.
+
+# LOCALIZATION NOTE (downloadMessage.deleteAll):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+downloadMessage.deleteAll=¿Eliminar esta descarga?;Eliminar #1 descargas?
+
+downloadAction.deleteAll=Eliminar todo
+
+downloadState.downloading=Descargando…
+downloadState.canceled=Cancelado
+downloadState.failed=Fallido
+downloadState.paused=Pausado
+downloadState.starting=Iniciando…
+downloadState.unknownSize=Tamaño desconocido
diff --git a/l10n-es-MX/mobile/android/chrome/aboutHome.dtd b/l10n-es-MX/mobile/android/chrome/aboutHome.dtd
new file mode 100644
index 0000000000..452a398608
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/aboutHome.dtd
@@ -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/. -->
+<!-- This string should be kept in sync with the home_title string
+ in android_strings.dtd -->
+
+<!ENTITY abouthome.title "Inicio de &brandShortName;">
diff --git a/l10n-es-MX/mobile/android/chrome/aboutLogins.dtd b/l10n-es-MX/mobile/android/chrome/aboutLogins.dtd
new file mode 100644
index 0000000000..452574655c
--- /dev/null
+++ b/l10n-es-MX/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.title "Inicios de sesión">
+<!ENTITY aboutLogins.update "Actualizar">
+<!ENTITY aboutLogins.emptyLoginText "Mantén tus inicios de sesión seguros">
+<!ENTITY aboutLogins.emptyLoginHint "Inicios de sesión y credenciales que guardas usando &brandShortName; se mostrarán aquí.">
diff --git a/l10n-es-MX/mobile/android/chrome/aboutLogins.properties b/l10n-es-MX/mobile/android/chrome/aboutLogins.properties
new file mode 100644
index 0000000000..2d81aa0946
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/aboutLogins.properties
@@ -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/.
+
+loginsMenu.showPassword=Mostrar contraseña
+loginsMenu.copyPassword=Copiar contraseña
+loginsMenu.copyUsername=Copiar nombre de usuario
+loginsMenu.editLogin=Editar inicio de sesión
+loginsMenu.delete=Eliminar
+
+loginsMenu.deleteAll=Eliminar todo
+
+loginsDialog.confirmDelete=¿Eliminar este inicio de sesión?
+loginsDialog.confirmDeleteForFxaUser=¿Eliminar este inicio de sesión?\n\nEsto puede afectar los inicios de sesión sincronizados.
+loginsDialog.confirmDeleteAll=¿Eliminar todos los inicios de sesión?
+loginsDialog.confirmDeleteAllForFxaUser=¿Eliminar todos los inicios de sesión?\n\nEsto puede afectar los inicios de sesión sincronizados.
+loginsDialog.copy=Copiar
+loginsDialog.confirm=Aceptar
+loginsDialog.cancel=Cancelar
+
+editLogin.fallbackTitle=Editar inicio de sesión
+editLogin.saved1=Inicio de sesión guardado
+editLogin.couldNotSave=Los cambios no pueden guardarse
+
+loginsDetails.copyFailed=Error al copiar
+loginsDetails.passwordCopied=Contraseña copiada
+loginsDetails.usernameCopied=Nombre de usuario copiado
+loginsDetails.deleted=Inicio de sesión eliminado
+
+loginsDetails.deletedAll=Se eliminaron todos los inicios de sesión
+
+password-btn.show=Mostrar
+password-btn.hide=Ocultar
diff --git a/l10n-es-MX/mobile/android/chrome/aboutPrivateBrowsing.dtd b/l10n-es-MX/mobile/android/chrome/aboutPrivateBrowsing.dtd
new file mode 100644
index 0000000000..cbe4b204dc
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/aboutPrivateBrowsing.dtd
@@ -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/. -->
+
+<!ENTITY privatebrowsingpage.title "Navegación privada">
+<!-- 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". -->
+
+<!ENTITY privatebrowsingpage.title.private "+ Protección de rastreo">
+<!-- Localization note (privatebrowsingpage.title.normal1): "Private Browsing"
+ is capitalized in English to be consistent with our existing uses of the
+ term. -->
+<!ENTITY privatebrowsingpage.title.normal1 "No estás navegando en forma privada">
+
+<!ENTITY privatebrowsingpage.description.trackingProtection "&brandShortName; bloquea partes de las páginas que podrían rastrear tu actividad de navegación.">
+<!ENTITY privatebrowsingpage.description.privateDetails "No recordaremos nada de tu historial, pero los archivos descargados y los nuevos marcadores se mantendrán guardados en tu dispositivo.">
+<!-- Localization note (privatebrowsingpage.description.normal2): "Private
+ Browsing is capitalized in English to be consistent with our existing uses
+ of the term. -->
+
+<!ENTITY privatebrowsingpage.description.normal2 "En la navegación privada, no se conserva tu historial de navegación ni las cookies. Los marcadores que añadas y los archivos que descargues sí continuarán guardados en tu dispositivo.">
+
+<!ENTITY privatebrowsingpage.link.private "¿Quieres saber más?">
+<!ENTITY privatebrowsingpage.link.normal "Abrir una nueva pestaña privada">
diff --git a/l10n-es-MX/mobile/android/chrome/browser.properties b/l10n-es-MX/mobile/android/chrome/browser.properties
new file mode 100644
index 0000000000..5913a2c5d5
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/browser.properties
@@ -0,0 +1,476 @@
+# 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.title=Instalando complemento
+addonsConfirmInstall.install=Instalar
+
+addonsConfirmInstallUnsigned.title=Complemento no verificado
+addonsConfirmInstallUnsigned.message=Este sitio desea instalar un complemento no verificado. Procede bajo tu propio riesgo.
+
+# Alerts
+alertAddonsDownloading=Descargando complemento
+alertAddonsInstalledNoRestart.message=Instalación completa
+
+# LOCALIZATION NOTE (alertAddonsInstalledNoRestart.action2): Ideally, this string is short (it's a
+# button label) and upper-case, to match Google and Android's convention.
+alertAddonsInstalledNoRestart.action2=COMPLEMENTOS
+
+alertDownloadsStart2=Iniciando descarga
+alertDownloadsDone2=Descarga completa
+alertDownloadsToast=La descarga ha iniciado…
+alertDownloadsPause=Pausa
+alertDownloadsResume=Reanudar
+alertDownloadsCancel=Cancelar
+# 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.
+alertDownloadSucceeded=%S descargado
+# LOCALIZATION NOTE (downloads.disabledInGuest): This message appears in a toast
+# when the user tries to download something in Guest mode.
+downloads.disabledInGuest=Las descargas están deshabilitadas para las sesiones de invitado
+
+# 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'.
+alertSearchEngineAddedToast='%S' ha sido agregado como motor de búsqueda
+alertSearchEngineErrorToast=No se pudo agregar '%S' como motor de búsqueda
+alertSearchEngineDuplicateToast='%S' ya es uno de tus motores de búsqueda
+
+# LOCALIZATION NOTE (alertShutdownSanitize): This text is shown as a snackbar during shutdown if the
+# user has enabled "Clear private data on exit".
+alertShutdownSanitize=Borrando los datos privados…
+
+alertPrintjobToast=Imprimiendo…
+
+download.blocked=No se pudo descargar el archivo
+
+addonError.titleError=Error
+addonError.titleBlocked=Complemento bloqueado
+addonError.learnMore=Saber más
+
+# LOCALIZATION NOTE (unsignedAddonsDisabled.title, unsignedAddonsDisabled.message):
+# These strings will appear in a dialog when Firefox detects that installed add-ons cannot be verified.
+unsignedAddonsDisabled.title=Complementos no verificados
+unsignedAddonsDisabled.message=Uno o más complementos instalados no pueden ser verificados y han sido deshabilitados.
+unsignedAddonsDisabled.dismiss=Descartar
+unsignedAddonsDisabled.viewAddons=Ver complementos
+
+# 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=El complemento no se pudo descargar por un error en la conexión en #2.
+addonError-2=El complemento de #2 no puede ser instalado porque no coincide con el complemento #3 esperado.
+addonError-3=El complemento descargado desde el #2 no se pudo instalar debido a que parece estar dañado.
+addonError-4=#1 no se pudo instalar porque #3 no logró modificar el archivo necesario.
+addonError-5=#3 ha prevenido que #2 instale un complemento no verificado.
+
+# 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=Este complemento no se pudo instalar debido a un error de sistema de archivos.
+addonLocalError-2=Este complemento no se pudo instalar porque no coincide con el complemento #3 esperado.
+addonLocalError-3=Este complemento no se pudo instalar debido a que parece estar corrupto.
+addonLocalError-4=#1 no puede ser instalado porque #3 no puede modificar el archivo necesario.
+addonLocalError-5=Este complemento no pudo instalarse porque no ha sido verificado.
+addonErrorIncompatible=#1 no se pudo instalar por que no es compatible con #3 #4.
+addonErrorBlocklisted=#1 no se instaló por que tiene un riesgo alto de causar problemas de seguridad o estabilidad.
+
+# Notifications
+notificationRestart.normal=Reiniciar para completar los cambios.
+notificationRestart.blocked=Complementos inseguros instalados. Reiniciar para deshabilitar.
+notificationRestart.button=Reiniciar
+doorhanger.learnMore=Saber más
+
+# Popup Blocker
+
+# LOCALIZATION NOTE (popup.message): Semicolon-separated list of plural forms.
+# #1 is brandShortName and #2 is the number of pop-ups blocked.
+popup.message=#1 ha impedido que este sitio abriera una ventana emergente. ¿Te gustaría mostrarla?;#1 ha impedido que este sitio abriera #2 ventanas emergentes. ¿Te gustaría mostrarlas?
+popup.dontAskAgain=No volver a preguntar por este sitio
+popup.show=Mostrar
+popup.dontShow=No mostrar
+
+# SafeBrowsing
+safeBrowsingDoorhanger=Este sitio ha sido identificado como poseedor de malware o intento de phishing. Ten cuidado.
+
+# LOCALIZATION NOTE (blockPopups.label2): Label that will be used in
+# site settings dialog.
+blockPopups.label2=Ventanas emergentes
+
+# XPInstall
+xpinstallPromptWarning2=%S ha evitado que este sitio (%S) te solicite instalar software en tu dispositivo.
+xpinstallPromptWarningLocal=%S evitó que este complemento (%S) se instalara en tu dispositivo.
+xpinstallPromptWarningDirect=%S evitó que se instalara un complemento en tu dispositivo.
+xpinstallPromptAllowButton=Permitir
+xpinstallDisabledMessageLocked=Tu administrador de sistemas desactivó la instalación de software.
+xpinstallDisabledMessage2=La instalación de software está actualmente deshabilitada. Presiona habilitar e inténtalo de nuevo.
+xpinstallDisabledButton=Habilitar
+
+# LOCALIZATION NOTE (webextPerms.header)
+# This string is used as a header in the webextension permissions dialog,
+# %S is replaced with the localized name of the extension being installed.
+# See https://bug1308309.bmoattachments.org/attachment.cgi?id=8814612
+# for an example of the full dialog.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.header=¿Agregar %S?
+
+# LOCALIZATION NOTE (webextPerms.listIntro)
+# This string will be followed by a list of permissions requested
+# by the webextension.
+webextPerms.listIntro=Se requiere tu permiso para:
+webextPerms.add.label=Agregar
+webextPerms.cancel.label=Cancelar
+
+# LOCALIZATION NOTE (webextPerms.updateText)
+# %S is replaced with the localized name of the updated extension.
+webextPerms.updateText=%S se ha actualizado. Debes aprobar los nuevos permisos antes de que se instale la versión actualizada. Elegir “Cancelar” mantendrá la versión actual del complemento.
+
+webextPerms.updateAccept.label=Actualizar
+
+# LOCALIZATION NOTE (webextPerms.optionalPermsHeader)
+# %S is replaced with the localized name of the extension requesting new
+# permissions.
+webextPerms.optionalPermsHeader=%S solicita permisos adicionales.
+webextPerms.optionalPermsListIntro=Quiere:
+webextPerms.optionalPermsAllow.label=Permitir
+webextPerms.optionalPermsDeny.label=Denegar
+
+webextPerms.description.bookmarks=Leer y modificar marcadores
+webextPerms.description.browserSettings=Leer y modificar configuración del navegador
+webextPerms.description.browsingData=Borrar historial de navegación reciente, cookies y datos relacionados
+webextPerms.description.clipboardRead=Obtener datos desde el portapapeles
+webextPerms.description.clipboardWrite=Ingresar datos desde el portapapeles
+webextPerms.description.devtools=Ampliar las herramientas para desarrolladores para acceder a tus datos en las pestañas abiertas
+webextPerms.description.downloads=Descargar archivos y leer y modificar el historial de descargas del navegador
+webextPerms.description.downloads.open=Abrir archivos descargados a tu computadora
+webextPerms.description.find=Leer el texto de todas las pestañas abiertas
+webextPerms.description.geolocation=Acceder a tu ubicación
+webextPerms.description.history=Acceder al historial de navegación
+webextPerms.description.management=Controlar el uso de la extensión y administrar temas
+# LOCALIZATION NOTE (webextPerms.description.nativeMessaging)
+# %S will be replaced with the name of the application
+webextPerms.description.nativeMessaging=Intercambiar mensajes con programas distintos a %S
+webextPerms.description.notifications=Mostrarte notificaciones
+webextPerms.description.privacy=Leer y modificar la configuración de privacidad
+webextPerms.description.proxy=Controlar la configuración del proxy del navegador
+webextPerms.description.sessions=Acceder a pestañas recientemente cerradas del navegador
+webextPerms.description.tabs=Acceder a pestañas del navegador
+webextPerms.description.topSites=Acceder al historial de navegación
+webextPerms.description.webNavigation=Acceder a la actividad del navegador durante la navegación
+
+webextPerms.hostDescription.allUrls=Acceder a tus datos para todos los sitios web
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.wildcard)
+# %S will be replaced by the DNS domain for which a webextension
+# is requesting access (e.g., mozilla.org)
+webextPerms.hostDescription.wildcard=Acceder a tus datos para los sitios del dominio %S
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.tooManyWildcards):
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 will be replaced by an integer indicating the number of additional
+# domains for which this webextension is requesting permission.
+webextPerms.hostDescription.tooManyWildcards=Acceder a tus datos en #1 otro dominio;Acceder a tus datos en #1 otros dominios
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.oneSite)
+# %S will be replaced by the DNS host name for which a webextension
+# is requesting access (e.g., www.mozilla.org)
+webextPerms.hostDescription.oneSite=Acceder a tus datos para %S
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.tooManySites)
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 will be replaced by an integer indicating the number of additional
+# hosts for which this webextension is requesting permission.
+webextPerms.hostDescription.tooManySites=Acceder a tus datos en #1 otro sitio;Acceder a tus datos en #1 otros sitios
+
+
+# Site Identity
+identity.identified.verifier=Verificado por: %S
+identity.identified.verified_by_you=Agregaste una excepción de seguridad para este sitio
+identity.identified.state_and_country=%S, %S
+
+# Geolocation UI
+geolocation.allow=Compartir
+geolocation.dontAllow=No compartir
+# LOCALIZATION NOTE (geolocation.location): Label that will be used in
+# site settings dialog.
+geolocation.location=Ubicación
+
+# Desktop notification UI
+desktopNotification2.allow=Siempre
+desktopNotification2.dontAllow=Nunca
+# LOCALIZATION NOTE (desktopNotification.notifications): Label that will be
+# used in site settings dialog.
+desktopNotification.notifications=Notificaciones
+
+# Imageblocking
+imageblocking.downloadedImage=Imagen no bloqueada
+imageblocking.showAllImages=Mostrar todo
+
+# 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
+newtabpopup.opened=Nueva pestaña abierta;#1 nuevas pestañas abiertas
+newprivatetabpopup.opened=Nueva pestaña privada abierta;#1 nuevas pestañas privadas abiertas
+
+# LOCALIZATION NOTE (newtabpopup.switch): Ideally, this string is short (it's a
+# button label) and upper-case, to match Google and Android's convention.
+newtabpopup.switch=CAMBIAR
+
+# 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.
+undoCloseToast.message=Cerrado %S
+
+# Private Tab closed message
+# LOCALIZATION NOTE (privateClosedMessage.message): This message appears
+# when the user closes a private tab.
+privateClosedMessage.message=Navegación privada cerrada
+
+# LOCALIZATION NOTE (undoCloseToast.messageDefault): This message appears in a
+# toast when the user closes a tab if there is no title to display.
+undoCloseToast.messageDefault=Pestaña cerrada
+
+# LOCALIZATION NOTE (undoCloseToast.action2): Ideally, this string is short (it's a
+# button label) and upper-case, to match Google and Android's convention.
+undoCloseToast.action2=DESHACER
+
+# Offline web applications
+offlineApps.ask=¿Permitir que %S almacene tus datos en el dispositivo para usarlos sin conexión a Internet?
+offlineApps.dontAskAgain=No preguntar de nuevo por este sitio
+offlineApps.allow=Permitir
+offlineApps.dontAllow2=No permitir
+
+# LOCALIZATION NOTE (offlineApps.offlineData): Label that will be used in
+# site settings dialog.
+offlineApps.offlineData=Datos en modo sin conexión
+
+# LOCALIZATION NOTE (password.logins): Label that will be used in
+ # site settings dialog.
+password.logins=Inicios de sesión
+# LOCALIZATION NOTE (password.save): This should match
+# saveButton in passwordmgr.properties
+password.save=Guardar
+# LOCALIZATION NOTE (password.dontSave): This should match
+# dontSaveButton in passwordmgr.properties
+password.dontSave=No guardar
+
+# 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=Texto copiado al portapapeles
+
+# Casting
+# LOCALIZATION NOTE (casting.sendToDevice): Label that will be used in the
+# dialog/prompt.
+casting.sendToDevice=Enviar al dispositivo
+
+# Context menu
+contextmenu.openInNewTab=Abrir enlace en una nueva pestaña
+contextmenu.openInPrivateTab=Abrir enlace en una pestaña privada
+contextmenu.share=Compartir
+contextmenu.copyLink=Copiar enlace
+contextmenu.shareLink=Compartir enlace
+contextmenu.bookmarkLink=Agregar enlace a marcadores
+contextmenu.copyEmailAddress=Copiar dirección de correo electrónico
+contextmenu.shareEmailAddress=Compartir dirección de correo electrónico
+contextmenu.copyPhoneNumber=Copiar número de teléfono
+contextmenu.sharePhoneNumber=Compartir número de teléfono
+contextmenu.fullScreen=Pantalla completa
+contextmenu.viewImage=Ver imagen
+contextmenu.copyImageLocation=Copiar ruta de la imagen
+contextmenu.shareImage=Compartir imagen
+# 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.search=Buscar %S
+contextmenu.saveImage=Guardar imagen
+contextmenu.showImage=Mostrar imagen
+contextmenu.setImageAs=Establecer imagen como
+# 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.addSearchEngine3=Agregar buscador
+contextmenu.playMedia=Reproducir
+contextmenu.pauseMedia=Pausa
+contextmenu.showControls2=Mostrar controles
+contextmenu.mute=Silenciar
+contextmenu.unmute=Restaurar sonido
+contextmenu.saveVideo=Guardar video
+contextmenu.saveAudio=Guardar sonido
+contextmenu.addToContacts=Agregar a contactos
+# LOCALIZATION NOTE (contextmenu.sendToDevice):
+# The label that will be used in the contextmenu and the pageaction
+contextmenu.sendToDevice=Enviar al dispositivo
+
+contextmenu.copy=Copiar
+contextmenu.cut=Cortar
+contextmenu.selectAll=Seleccionar todo
+contextmenu.paste=Pegar
+
+contextmenu.call=Llamar
+
+#Input widgets UI
+inputWidgetHelper.date=Elegir una fecha
+inputWidgetHelper.datetime-local=Elige una fecha y hora
+inputWidgetHelper.time=Elige una hora
+inputWidgetHelper.week=Elige una semana
+inputWidgetHelper.month=Elige un mes
+inputWidgetHelper.cancel=Cancelar
+inputWidgetHelper.set=Validar
+inputWidgetHelper.clear=Limpiar
+
+# Web Console API
+stacktrace.anonymousFunction=<anónimo>
+stacktrace.outputMessage=Seguimiento de pila desde %S, función %S, línea %S.
+timer.start=%S: temporizador iniciado
+
+# 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
+timer.end=%1$S: %2$Sms
+
+clickToPlayPlugins.activate=Activar
+clickToPlayPlugins.dontActivate=No activar
+# LOCALIZATION NOTE (clickToPlayPlugins.plugins): Label that
+# will be used in site settings dialog.
+clickToPlayPlugins.plugins=Complementos
+
+# Site settings dialog
+
+masterPassword.incorrect=Contraseña incorrecta
+
+# Debugger
+# LOCALIZATION NOTE (remoteIncomingPromptTitle): The title displayed on the
+# dialog that prompts the user to allow the incoming connection.
+remoteIncomingPromptTitle=Conexión entrante
+# LOCALIZATION NOTE (remoteIncomingPromptUSB): The message displayed on the
+# dialog that prompts the user to allow an incoming USB connection.
+remoteIncomingPromptUSB=¿Permitir depuración mediante conexión USB?
+# LOCALIZATION NOTE (remoteIncomingPromptUSB): The message displayed on the
+# dialog that prompts the user to allow an incoming TCP connection.
+remoteIncomingPromptTCP=¿Permitir conexión para depuración remota de %1$S:%2$S? Esta conexión requiere que se escanees un código QR para identificar el certificado del dispositivo remoto. Puedes evitar escaneos remotos recordando el dispositivo.
+# LOCALIZATION NOTE (remoteIncomingPromptDeny): This button will deny an
+# an incoming remote debugger connection.
+remoteIncomingPromptDeny=Denegar
+# LOCALIZATION NOTE (remoteIncomingPromptAllow): This button will allow an
+# an incoming remote debugger connection.
+remoteIncomingPromptAllow=Permitir
+# 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.
+remoteIncomingPromptScan=Escanear
+# 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.
+remoteIncomingPromptScanAndRemember=Escanear y recordar
+# 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.
+remoteQRScanFailedPromptTitle=Falló el escaneo del QR
+# 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.
+remoteQRScanFailedPromptMessage=No se pudo escanear el código QR para depuración remota. Verifica que la app de escaneo de código de barras está instalada y vuelve a intentar la conexión.
+# 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.
+remoteQRScanFailedPromptOK=Aceptar
+
+# Helper apps
+helperapps.open=Abrir
+helperapps.openWithApp2=Abrir con aplicación %S
+helperapps.openWithList2=Abrir con una aplicación
+helperapps.always=Siempre
+helperapps.never=Nunca
+helperapps.pick=Completar acción usando
+helperapps.saveToDisk=Descarga
+helperapps.alwaysUse=Siempre
+helperapps.useJustOnce=Única ocasión
+
+# 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 = ¿Te gustaría compartir la cámara con %S?
+getUserMedia.shareMicrophone.message = ¿Te gustaría compartir tu micrófono con %S?
+getUserMedia.shareCameraAndMicrophone.message = ¿Te gustaría compartir tu cámara y micrófono con %S?
+getUserMedia.denyRequest.label = No compartir
+getUserMedia.shareRequest.label = Compartir
+getUserMedia.videoSource.default = Cámara %S
+getUserMedia.videoSource.frontCamera = Cámara frontal
+getUserMedia.videoSource.backCamera = Cámara trasera
+getUserMedia.videoSource.none = Sin video
+getUserMedia.videoSource.tabShare = Elegir una pestaña para transmitir
+getUserMedia.videoSource.prompt = Fuente de video
+getUserMedia.audioDevice.default = Micrófono %S
+getUserMedia.audioDevice.none = Sin sonido
+getUserMedia.audioDevice.prompt = Micrófono a usar
+getUserMedia.sharingCamera.message2 = Cámara encendida
+getUserMedia.sharingMicrophone.message2 = Micrófono encendido
+getUserMedia.sharingCameraAndMicrophone.message2 = Cámara y micrófono encendidos
+getUserMedia.blockedCameraAccess = La cámara ha sido bloqueada.
+getUserMedia.blockedMicrophoneAccess = El micrófono ha sido bloqueado.
+getUserMedia.blockedCameraAndMicrophoneAccess = La cámara y el micrófono han sido bloqueados.
+
+# 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
+userContextPersonal.label = Personal
+userContextWork.label = Trabajo
+userContextBanking.label = Banca
+userContextShopping.label = Compras
+
+# LOCALIZATION NOTE (readerMode.toolbarTip):
+# Tip shown to users the first time we hide the reader mode toolbar.
+readerMode.toolbarTip=Toca la pantalla para mostrar las opciones de lectura
+
+#Open in App
+openInApp.pageAction = Abrir en aplicación
+openInApp.ok = Aceptar
+openInApp.cancel = Cancelar
+
+#Tab sharing
+tabshare.title = "Elegir una pestaña para transmitir"
+#Tabs in context menus
+browser.menu.context.default = Enlace
+browser.menu.context.img = Imagen
+browser.menu.context.video = Video
+browser.menu.context.audio = Sonido
+browser.menu.context.tel = Teléfono
+browser.menu.context.mailto = Correo
+
+# "Subscribe to page" prompts created in FeedHandler.js
+feedHandler.chooseFeed=Elegir la fuente
+feedHandler.subscribeWith=Subscribirse con
+
+# 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.
+nativeWindow.deprecated=%1$S está desaprobado. Por favor, usa %2$S en su lugar
+
+# Vibration API permission prompt
+vibrationRequest.message = ¿Permitir que este sitio haga vibrar tu dispositivo?
+vibrationRequest.denyButton = No permitir
+vibrationRequest.allowButton = Permitir
diff --git a/l10n-es-MX/mobile/android/chrome/config.dtd b/l10n-es-MX/mobile/android/chrome/config.dtd
new file mode 100644
index 0000000000..4d26ecee12
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/config.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 toolbar.searchPlaceholder "Buscar">
+
+<!ENTITY newPref.namePlaceholder "Nombre">
+
+<!ENTITY newPref.valueBoolean "Booleano">
+<!ENTITY newPref.valueString "Cadena">
+<!ENTITY newPref.valueInteger "Entero">
+
+<!ENTITY newPref.stringPlaceholder "Ingresar una cadena">
+<!ENTITY newPref.numberPlaceholder "Ingresar un número">
+
+<!ENTITY newPref.toggleButton "Conmutar">
+<!ENTITY newPref.cancelButton "Cancelar">
+
+<!ENTITY contextMenu.copyPrefName "Copiar nombre">
+<!ENTITY contextMenu.copyPrefValue "Copiar valor">
diff --git a/l10n-es-MX/mobile/android/chrome/config.properties b/l10n-es-MX/mobile/android/chrome/config.properties
new file mode 100644
index 0000000000..b99401c021
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/config.properties
@@ -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/.
+
+newPref.createButton=Crear
+newPref.changeButton=Cambiar
+
+pref.toggleButton=Alternar
+pref.resetButton=Restablecer
diff --git a/l10n-es-MX/mobile/android/chrome/devicePrompt.properties b/l10n-es-MX/mobile/android/chrome/devicePrompt.properties
new file mode 100644
index 0000000000..29f2666aec
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/devicePrompt.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/.
+
+deviceMenu.title=Dispositivos cercanos
diff --git a/l10n-es-MX/mobile/android/chrome/passwordmgr.properties b/l10n-es-MX/mobile/android/chrome/passwordmgr.properties
new file mode 100644
index 0000000000..633af6a29f
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/passwordmgr.properties
@@ -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/.
+
+# String will be replaced by brandShortName.
+saveLogin=¿Te gustaría que %S recuerde este inicio de sesión?
+rememberButton=Recordar
+neverButton=Nunca
+
+# String is the login's hostname
+updatePassword=¿Actualizar la contraseña guardada para %S?
+updatePasswordNoUser=¿Actualizar la contraseña guardada para este usuario?
+updateButton=Actualizar
+dontUpdateButton=No actualizar
+
+userSelectText2=Selecciona que inicio de sesión actualizar:
+passwordChangeTitle=Confirmar cambio de contraseña
+
+username=Nombre de usuario
+password=Contraseña
diff --git a/l10n-es-MX/mobile/android/chrome/phishing.dtd b/l10n-es-MX/mobile/android/chrome/phishing.dtd
new file mode 100644
index 0000000000..2395d3d831
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/phishing.dtd
@@ -0,0 +1,27 @@
+<!-- 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 "¡Sácame de aquí!">
+<!ENTITY safeb.palm.decline.label "Ignorar esta advertencia">
+<!ENTITY safeb.palm.reportPage.label "¿Por qué fue bloqueada esta página?">
+<!-- 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.palm.advisory.desc "Asesoramiento proporcionado por <a id='advisory_provider'/>">
+
+<!ENTITY safeb.blocked.malwarePage.title "¡Página reportada como atacante!">
+<!-- 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 "Esta página hospedada en <span id='malware_sitename'/> ha sido reportada como atacante y se bloqueó con base en tus preferencias de seguridad.">
+<!ENTITY safeb.blocked.malwarePage.longDesc "<p>Las páginas atacantes intentan instalar programas para robarte información privada, usar tu equipo para atacar a otros o dañar tu sistema.</p><p>Algunas distribuyen intencionalmente programas dañinos y otras fueron comprometidas sin el conocimiento de sus dueños.</p>">
+
+<!ENTITY safeb.blocked.phishingPage.title3 "¡Sitio engañoso!">
+<!-- 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) -->
+<!ENTITY safeb.blocked.phishingPage.shortDesc3 "Esta página ubicada en <span id='phishing_sitename'/> ha sido reportada como atacante y ha sido bloqueada basándonos en tus preferencias de seguridad.">
+<!ENTITY safeb.blocked.phishingPage.longDesc3 "<p>Los sitios fraudulentos están diseñados para convencerle de hacer algo peligroso, como instalar software o revelar su información personal, del tipo de contraseñas, números de teléfono o tarjetas de crédito.</p><p>Introducir información en esta página web puede resultar en el robo de identidad u otros fraudes.</p>">
+
+<!ENTITY safeb.blocked.unwantedPage.title "¡Sitio reportado que contiene software malicioso!">
+<!-- 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) -->
+<!ENTITY safeb.blocked.unwantedPage.shortDesc "Esta página hospedada en <span id='unwanted_sitename'/> ha sido reportada porque contiene software malicioso y se bloqueó con base en tus preferencias de seguridad.">
+<!ENTITY safeb.blocked.unwantedPage.longDesc "Páginas con software malicioso intentan instalar software que puede afectar tu sistema de diversas formas.">
+
+<!ENTITY safeb.blocked.harmfulPage.title "El sitio web puede contener malware">
+<!ENTITY safeb.blocked.harmfulPage.shortDesc "&brandShortName; ha bloqueado esta página porque podría intentar instalar aplicaciones peligrosas que roben o borren tu información (por ejemplo, fotos, contraseñas, mensajes y números de tarjetas de crédito)."> \ No newline at end of file
diff --git a/l10n-es-MX/mobile/android/chrome/pippki.properties b/l10n-es-MX/mobile/android/chrome/pippki.properties
new file mode 100644
index 0000000000..2e3092d12a
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/pippki.properties
@@ -0,0 +1,84 @@
+# 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=Aceptar
+nssdialogs.cancel.label=Cancelar
+
+# These strings are stolen from security/manager/locales/en-US/chrome/pippki/pippki.dtd
+downloadCert.title=Descargando certificado
+downloadCert.message1=Se le ha pedido que confíe en una nueva Autoridad Certificadora (CA).
+downloadCert.viewCert.label=Ver
+downloadCert.trustSSL=Confiar en la identificación de estos sitios web.
+downloadCert.trustEmail=Confiar en identificación en los usuarios de correo electrónico.
+pkcs12.getpassword.title=Diálogo de ingreso de contraseña
+pkcs12.getpassword.message=Por favor, ingresa la contraseña que fue usada para encriptar este respaldo de certificado.
+clientAuthAsk.title=Solicitud de Identificación de Usuario
+clientAuthAsk.message1=Este sitio ha solicitado que te identifiques con un certificado:
+clientAuthAsk.message2=Elige un certificado para presentarlo como identificación:
+clientAuthAsk.message3=Detalles del certificado seleccionado:
+clientAuthAsk.remember.label=Recordar esta decisión
+# 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.
+clientAuthAsk.nickAndSerial=%1$S [%2$S]
+# LOCALIZATION NOTE(clientAuthAsk.hostnameAndPort):
+# %1$S is the hostname of the server.
+# %2$S is the port of the server.
+clientAuthAsk.hostnameAndPort=%1$S:%2$S
+# LOCALIZATION NOTE(clientAuthAsk.organization): %S is the Organization of the
+# server cert.
+clientAuthAsk.organization=Organización: "%S"
+# LOCALIZATION NOTE(clientAuthAsk.issuer): %S is the Organization of the
+# issuer cert of the server cert.
+clientAuthAsk.issuer=Emitido bajo: "%S"
+# 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).
+clientAuthAsk.issuedTo=Emitido para: %1$S
+# LOCALIZATION NOTE(clientAuthAsk.serial): %1$S is the serial number of the
+# selected cert in AA:BB:CC hex format.
+clientAuthAsk.serial=Número de serie: %1$S
+# 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.
+clientAuthAsk.validityPeriod=Válido del %1$S al %2$S
+# LOCALIZATION NOTE(clientAuthAsk.keyUsages): %1$S is a comma separated list of
+# already localized key usages the selected cert is valid for.
+clientAuthAsk.keyUsages=Usos de clave: %1$S
+# LOCALIZATION NOTE(clientAuthAsk.emailAddresses): %1$S is a comma separated
+# list of e-mail addresses the selected cert is valid for.
+clientAuthAsk.emailAddresses=Direcciones de correo: %1$S
+# LOCALIZATION NOTE(clientAuthAsk.issuedBy): %1$S is the Distinguished Name of
+# the cert which issued the selected cert.
+clientAuthAsk.issuedBy=Emitido por: %1$S
+# LOCALIZATION NOTE(clientAuthAsk.storedOn): %1$S is the name of the PKCS #11
+# token the selected cert is stored on.
+clientAuthAsk.storedOn=Almacenado en: %1$S
+clientAuthAsk.viewCert.label=Ver
+
+certmgr.title=Certificate Details
+# These strings are stolen from security/manager/locales/en-US/chrome/pippki/certManager.dtd
+certmgr.subjectinfo.label=Emitido para
+certmgr.issuerinfo.label=Emitido por
+certmgr.periodofvalidity.label=Período de validez
+certmgr.fingerprints.label=Huellas dactilares
+certdetail.cn=Nombre común (CN): %1$S
+certdetail.o=Organización (O): %1$S
+certdetail.ou=Unidad organizativa (OU): %1$S
+# LOCALIZATION NOTE(certdetail.serialnumber): %1$S is the serial number of the
+# cert being viewed in AA:BB:CC hex format.
+certdetail.serialnumber=Número de serie: %1$S
+# LOCALIZATION NOTE(certdetail.sha256fingerprint): %1$S is the SHA-256
+# Fingerprint of the cert being viewed in AA:BB:CC hex format.
+certdetail.sha256fingerprint=Huella digital SHA-256: %1$S
+# LOCALIZATION NOTE(certdetail.sha1fingerprint): %1$S is the SHA-1 Fingerprint
+# of the cert being viewed in AA:BB:CC hex format.
+certdetail.sha1fingerprint=Huella digital SHA1: %1$S
+# LOCALIZATION NOTE(certdetail.notBefore): %1$S is the already localized
+# notBefore date of the cert being viewed.
+certdetail.notBefore=Comienza el: %1$S
+# LOCALIZATION NOTE(certdetail.notAfter): %1$S is the already localized notAfter
+# date of the cert being viewed.
+certdetail.notAfter=Expira el: %1$S
diff --git a/l10n-es-MX/mobile/android/chrome/sync.properties b/l10n-es-MX/mobile/android/chrome/sync.properties
new file mode 100644
index 0000000000..2ee96278e2
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/sync.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/.
+
+# Mobile Sync
+
+# %S is the date and time at which the last sync successfully completed
+lastSync2.label=Última sincronización: %S
+
+# %S is the username logged in
+account.label=Cuenta: %S
+
diff --git a/l10n-es-MX/mobile/android/chrome/webcompatReporter.properties b/l10n-es-MX/mobile/android/chrome/webcompatReporter.properties
new file mode 100644
index 0000000000..45c21544d8
--- /dev/null
+++ b/l10n-es-MX/mobile/android/chrome/webcompatReporter.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/.
+
+# LOCALIZATION NOTE (webcompat.menu.name): A "site issue" is a bug, display,
+# or functionality problem with a webpage in the browser.
+webcompat.menu.name=Informar de problema en sitio
+
+# LOCALIZATION NOTE (webcompat.reportDesktopMode.message): A " site issue" is a
+# bug, display, or functionality problem with a webpage in the browser.
+webcompat.reportDesktopMode.message=¿Informar de problema en sitio?
+webcompat.reportDesktopModeYes.label=Informar
diff --git a/l10n-es-MX/mobile/android/defines.inc b/l10n-es-MX/mobile/android/defines.inc
new file mode 100644
index 0000000000..7d366f5f9e
--- /dev/null
+++ b/l10n-es-MX/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 mozilla.org
+
+# If non-English locales wish to credit multiple contributors, uncomment this
+
+# variable definition and use the format specified.
+
+#define MOZ_LANGPACK_CONTRIBUTORS <em:contributor>Mozilla México</em:contributor>
+
+#unfilter emptyLines