diff --git a/platform/mv3/description/webstore.br_FR.txt b/platform/mv3/description/webstore.br_FR.txt
index 9b9840bdf..f8f6c77c1 100644
--- a/platform/mv3/description/webstore.br_FR.txt
+++ b/platform/mv3/description/webstore.br_FR.txt
@@ -13,7 +13,7 @@ uBOL is entirely declarative, meaning there is no need for a permanent uBOL proc
uBOL does not require broad "read and modify data" permission at install time, hence its limited capabilities out of the box compared to uBlock Origin or other content blockers requiring broad "read and modify data" permissions at install time.
-Neoazh ez eus tu deoc'h reiñ *sklaer* aotreoù ouzhpenn da uBOL el lec'hiennoù ma fell deoc'h, mod-se e vint silet gwelloc'h en ur implij siloù kened hag ensinkladurioù scriplet.
+Koulskoude ez eus tu deoc'h reiñ *sklaer* aotreoù ouzhpenn da uBOL el lec'hiennoù ma fell deoc'h, mod-se e vint silet gwelloc'h en ur implij siloù kened hag ensinkladurioù scriplet.
Evit reiñ aotreoù ouzhpenn da uBOL en ul lec'hienn bennak, n'ho peus nemet digeriñ ar prenestr pop-up ha diuzañ ul live silañ uheloc'h evel ar mod Gwellañ pe ar mod Klok
diff --git a/platform/mv3/extension/_locales/br_FR/messages.json b/platform/mv3/extension/_locales/br_FR/messages.json
index e40731b85..2a8faf56b 100644
--- a/platform/mv3/extension/_locales/br_FR/messages.json
+++ b/platform/mv3/extension/_locales/br_FR/messages.json
@@ -208,7 +208,7 @@
"description": "Link text to uBO's own filter lists repo"
},
"aboutDependencies": {
- "message": "External dependencies (GPLv3-compatible):",
+ "message": "Dalc'hioù diavaez (a glot gant GPLv3)",
"description": "Shown in the About pane"
},
"genericSubmit": {
@@ -256,7 +256,7 @@
"description": "Name of blocking mode 3"
},
"basicFilteringModeDescription": {
- "message": "Basic network filtering from selected filter lists.\n\nDoes not require permission to read and modify data on websites.",
+ "message": "Silañ diazez ar rouedad diouzh ar rolloù siloù diuzet.\n\nN'eus ket ezhomm a aotre evit lenn hag aozañ roadennoù el lec'hiennoù.",
"description": "This describes the 'basic' filtering mode"
},
"optimalFilteringModeDescription": {
diff --git a/platform/mv3/extension/_locales/nl/messages.json b/platform/mv3/extension/_locales/nl/messages.json
index 2441a06c2..cf69665b6 100644
--- a/platform/mv3/extension/_locales/nl/messages.json
+++ b/platform/mv3/extension/_locales/nl/messages.json
@@ -16,7 +16,7 @@
"description": "English: uBO Lite — Dashboard"
},
"dashboardUnsavedWarning": {
- "message": "Waarschuwing! Niet opgeslagen wijzigingen",
+ "message": "Waarschuwing! Niet-opgeslagen wijzigingen.",
"description": "A warning in the dashboard when navigating away from unsaved changes"
},
"dashboardUnsavedWarningStay": {
@@ -32,7 +32,7 @@
"description": "appears as tab name in dashboard"
},
"3pPageName": {
- "message": "Filter lijsten",
+ "message": "Filterlijsten",
"description": "appears as tab name in dashboard"
},
"1pPageName": {
@@ -60,11 +60,11 @@
"description": "English: Click to open the dashboard"
},
"popupTipZapper": {
- "message": "Element wisser modus openen",
+ "message": "Elementwissermodus openen",
"description": "Tooltip for the element-zapper icon in the popup panel"
},
"popupTipPicker": {
- "message": "Element kiezer modus openen",
+ "message": "Elementkiezermodus openen",
"description": "English: Enter element picker mode"
},
"popupTipReport": {
@@ -88,7 +88,7 @@
"description": "Label to be used to show popup panel sections"
},
"popupRevokeGreatPowers": {
- "message": "Klik om uitgebreide toestemmingen op deze website in te trekken",
+ "message": "Klik om uitgebreide toestemmingen op deze website in te trekken.",
"description": "Label to be used to show popup panel sections"
},
"popupLessButton": {
@@ -120,7 +120,7 @@
"description": "Header for a ruleset section in 'Filter lists pane'"
},
"omnipotenceLegend": {
- "message": "uBO Lite kan alleen uitgebreide filtering op een bepaalde website toepassen nadat u de extensie expliciet toestemmingen hebt verleend om gegevens op die website aan te passen. Via deze instelling kunt u toestemmingen voor uitgebreide filtering op alle websites tegelijk verlenen.",
+ "message": "uBO Lite kan alleen uitgebreide filtering op een bepaalde website toepassen nadat u de extensie expliciet toestemmingen hebt verleend om gegevens op die website aan te passen. Via deze instelling kunt u toestemmingen voor uitgebreide filtering aan alle websites tegelijk verlenen.",
"description": "Header for a ruleset section in 'Filter lists pane'"
},
"3pGroupDefault": {
@@ -156,11 +156,11 @@
"description": "Short information about how to create custom filters"
},
"1pImport": {
- "message": "Importeren en toevoegen",
+ "message": "Importeren en toevoegen…",
"description": "English: Import and append"
},
"1pExport": {
- "message": "Exporteren",
+ "message": "Exporteren…",
"description": "English: Export"
},
"1pExportFilename": {
@@ -172,11 +172,11 @@
"description": "A concise description of the 'Trusted sites' pane."
},
"whitelistImport": {
- "message": "Importeren en toevoegen",
+ "message": "Importeren en toevoegen…",
"description": "English: Import and append"
},
"whitelistExport": {
- "message": "Exporteren",
+ "message": "Exporteren…",
"description": "English: Export"
},
"whitelistExportFilename": {
@@ -228,7 +228,7 @@
"description": "The header text for the welcome message section"
},
"firstRunDescription": {
- "message": "U hebt zojuist uBO Lite geïnstalleerd. Hier kunt u de standaard filtermodus voor het gebruik op alle websites kiezen.\n\nStandaard wordt de modus Basis geselecteerd, omdat hiervoor geen toestemming voor het lezen en aanpassen van gegevens is vereist. Als u uBO Lite vertrouwt, kunt u het uitgebreide toestemming voor het lezen en aanpassen van gegevens op alle websites verlenen, zodat standaard meer geavanceerde filtermogelijkheden voor alle websites beschikbaar zijn.",
+ "message": "U hebt zojuist uBO Lite geïnstalleerd. Hier kunt u de standaard filtermodus voor het gebruik op alle websites kiezen.\n\nStandaard wordt de modus Basis geselecteerd, omdat hiervoor geen toestemming voor het lezen en aanpassen van gegevens is vereist. Als u uBO Lite vertrouwt, kunt u het brede toestemming voor het lezen en aanpassen van gegevens op alle websites verlenen, zodat standaard meer geavanceerde filtermogelijkheden voor alle websites beschikbaar zijn.",
"description": "Descriptive text shown at first install time only "
},
"defaultFilteringModeSectionLabel": {
diff --git a/src/_locales/br_FR/messages.json b/src/_locales/br_FR/messages.json
index 4cd4268a3..11cb38fca 100644
--- a/src/_locales/br_FR/messages.json
+++ b/src/_locales/br_FR/messages.json
@@ -316,11 +316,11 @@
"description": "An entry in the browser's contextual menu"
},
"settingsCollapseBlockedPrompt": {
- "message": "Hide placeholders of blocked elements",
+ "message": "Kuzhat an esaouennoù lezet gant an elfennoù bet stanket",
"description": "English: Hide placeholders of blocked elements"
},
"settingsIconBadgePrompt": {
- "message": "Show the number of blocked requests on the icon",
+ "message": "Diskouez an niver a rekedoù bet stanket war an arouez",
"description": "English: Show the number of blocked requests on the icon"
},
"settingsTooltipsPrompt": {
@@ -328,7 +328,7 @@
"description": "A checkbox in the Settings pane"
},
"settingsContextMenuPrompt": {
- "message": "Make use of context menu where appropriate",
+ "message": "Ober gant al lañser kendestenn pa vez ezhomm",
"description": "English: Make use of context menu where appropriate"
},
"settingsColorBlindPrompt": {
@@ -480,7 +480,7 @@
"description": "Filter lists section name"
},
"3pGroupMalware": {
- "message": "Malware protection, security",
+ "message": "Gwarez a-enep ar malware ha surentez",
"description": "Filter lists section name"
},
"3pGroupAnnoyances": {
@@ -528,7 +528,7 @@
"description": "used as a tooltip for error icon beside a list"
},
"1pFormatHint": {
- "message": "One filter per line. A filter can be a plain hostname, or an EasyList-compatible filter. Lines prefixed with !
will be ignored.",
+ "message": "Ur sil dre linenn. Ur sil a c'hall bezañ un anv ostiz hepken pe ur sil hag a glot gant EasyList.\nAl linennoù a grog gant !
a vo dilezet.",
"description": "Short information about how to create custom filters"
},
"1pTrustWarning": {
@@ -656,7 +656,7 @@
"description": "Appears in the logger's tab selector"
},
"logBehindTheScene": {
- "message": "Tabless",
+ "message": "Rekedoù dre guzh",
"description": "Pretty name for behind-the-scene network requests"
},
"loggerCurrentTab": {
@@ -664,15 +664,15 @@
"description": "Appears in the logger's tab selector"
},
"loggerReloadTip": {
- "message": "Reload the tab content",
+ "message": "Adkargañ endalc'had an ivinell",
"description": "Tooltip for the reload button in the logger page"
},
"loggerDomInspectorTip": {
- "message": "Toggle the DOM inspector",
+ "message": "Enaouiñ/lazhañ an enseller DOM",
"description": "Tooltip for the DOM inspector button in the logger page"
},
"loggerPopupPanelTip": {
- "message": "Toggle the popup panel",
+ "message": "Enaouiñ/lazhañ ar banell pop-up",
"description": "Tooltip for the popup panel button in the logger page"
},
"loggerInfoTip": {
@@ -756,7 +756,7 @@
"description": "Label to identify a root context field (typically a hostname)"
},
"loggerEntryDetailsPartyness": {
- "message": "Partyness",
+ "message": "Seurt keveler",
"description": "Label to identify a field providing partyness information"
},
"loggerEntryDetailsType": {
@@ -832,7 +832,7 @@
"description": "Logger setting: A sentence to describe the purpose of the settings below"
},
"loggerSettingPerEntryMaxAge": {
- "message": "Preserve entries from the last {{input}} minutes",
+ "message": "Mirout an enmonedoù eus ar/an {{input}} v/munutenn gent",
"description": "A logger setting"
},
"loggerSettingPerTabMaxLoads": {
@@ -844,7 +844,7 @@
"description": "A logger setting"
},
"loggerSettingPerEntryLineCount": {
- "message": "Use {{input}} lines per entry in vertically expanded mode",
+ "message": "Ober gant {{input}} linenn dre enmont er mod dispaket a-blom",
"description": "A logger setting"
},
"loggerSettingHideColumnsPrompt": {
@@ -864,7 +864,7 @@
"description": "A label for the context column"
},
"loggerSettingHideColumnPartyness": {
- "message": "{{input}} Partyness",
+ "message": "{{input}} Seurt keveler",
"description": "A label for the partyness column"
},
"loggerExportFormatList": {
@@ -908,7 +908,7 @@
"description": "Header of 'Questions and support' section in Support pane"
},
"supportS2P1": {
- "message": "Answers to questions and other kinds of help support is provided on the subreddit /r/uBlockOrigin
.",
+ "message": "Er subreddit /r/uBlockOrigin
e c'hallit kavout respontoù d'ho koulennoù hag a bep seurt skoazell all.",
"description": "First paragraph of 'Questions and support' section in Support pane"
},
"supportS3H": {
@@ -980,7 +980,7 @@
"description": "An entry in the widget used to select the type of issue"
},
"supportS6Select1Option2": {
- "message": "Has overlays or other nuisances",
+ "message": "Gwiskadoù pe saotradurioù all en deus",
"description": "An entry in the widget used to select the type of issue"
},
"supportS6Select1Option3": {
@@ -1040,7 +1040,7 @@
"description": "Link text to uBO's own filter lists repo"
},
"aboutDependencies": {
- "message": "External dependencies (GPLv3-compatible):",
+ "message": "Dalc'hioù diavaez (a glot gant GPLv3):",
"description": "Shown in the About pane"
},
"aboutCDNs": {
@@ -1072,11 +1072,11 @@
"description": "Message asking user to confirm restore"
},
"aboutRestoreDataError": {
- "message": "The data could not be read or is invalid",
+ "message": "N'haller ket lenn ar roadennoù pe direizh ez int",
"description": "Message to display when an error occurred during restore"
},
"aboutResetDataConfirm": {
- "message": "All your settings will be removed, and uBlock₀ will restart.\n\nReset uBlock₀ to factory settings?",
+ "message": "Skarzhet e vo hoc'h arventennoù hag adloc'het uBlock₀.\n\nHa fellout a ra deoc'h adderaouekaat arventennoù uBlock₀?",
"description": "Message asking user to confirm reset"
},
"errorCantConnectTo": {
@@ -1144,7 +1144,7 @@
"description": "label to be used for the parameter-less URL: https://cloud.githubusercontent.com/assets/585534/9832014/bfb1b8f0-593b-11e5-8a27-fba472a5529a.png"
},
"docblockedFoundIn": {
- "message": "A vez kavet e-barzh:",
+ "message": "Hag a vez kavet e-barzh:",
"description": "English: List of filter list names follows"
},
"docblockedBack": {
@@ -1160,7 +1160,7 @@
"description": "Label for checkbox in document-blocked page"
},
"docblockedProceed": {
- "message": "Disable strict blocking for {{hostname}}",
+ "message": "Lazhañ ar stankañ strizh evit {{hostname}}",
"description": "English: Disable strict blocking for {{hostname}} ..."
},
"docblockedDisableTemporary": {
@@ -1176,11 +1176,11 @@
"description": "Button text to navigate to the blocked page"
},
"cloudPush": {
- "message": "Export to cloud storage",
+ "message": "Ezporzhiañ etrezek stokañ ar goumoulenn (cloud)",
"description": "tooltip"
},
"cloudPull": {
- "message": "Import from cloud storage",
+ "message": "Enporzhiañ diouzh stokañ ar goumoulenn (cloud)",
"description": "tooltip"
},
"cloudPullAndMerge": {
@@ -1252,7 +1252,7 @@
"description": "Label for keyboard shortcut used to toggle cosmetic filtering"
},
"relaxBlockingMode": {
- "message": "Relax blocking mode",
+ "message": "Distanañ ar mod stankañ",
"description": "Label for keyboard shortcut used to relax blocking mode"
},
"storageUsed": {
diff --git a/src/_locales/el/messages.json b/src/_locales/el/messages.json
index 6ad50efd7..cb8595cd4 100644
--- a/src/_locales/el/messages.json
+++ b/src/_locales/el/messages.json
@@ -20,7 +20,7 @@
"description": "Label for button to prevent navigating away from unsaved changes"
},
"dashboardUnsavedWarningIgnore": {
- "message": "Αγνόηση",
+ "message": "Παράβλεψη",
"description": "Label for button to ignore unsaved changes"
},
"settingsPageName": {
@@ -72,7 +72,7 @@
"description": "English: Click: disable/enable uBlock₀ for this site.\n\nCtrl+click: disable uBlock₀ only on this page."
},
"popupPowerSwitchInfo1": {
- "message": "Κάντε κλικ για απενεργοποίηση του uBlock₀ για αυτή την ιστοσελίδα.\n\nCtrl+κλικ για απενεργοποίηση του uBlock₀ μόνο σε αυτή τη σελίδα.",
+ "message": "Κάντε κλικ για απενεργοποίηση του uBlock₀ για αυτήν την ιστοσελίδα.\n\nCtrl+κλικ για απενεργοποίηση του uBlock₀ μόνο σε αυτήν τη σελίδα.",
"description": "Message to be read by screen readers"
},
"popupPowerSwitchInfo2": {
@@ -176,7 +176,7 @@
"description": "Tooltip for the no-remote-fonts per-site switch"
},
"popupTipNoRemoteFonts2": {
- "message": "Κάντε κλικ για αναίρεση φραγής απομακρυσμένων γραμματοσειρών σε αυτή την ιστοσελίδα",
+ "message": "Κάντε κλικ για να μην μπλοκάρετε πλέον απομακρυσμένες γραμματοσειρές σε αυτήν την ιστοσελίδα",
"description": "Tooltip for the no-remote-fonts per-site switch"
},
"popupTipNoScripting1": {
@@ -516,7 +516,7 @@
"description": "used as a tooltip for eye icon beside a list"
},
"3pLastUpdate": {
- "message": "Τελευταία ενημέρωση: {{ago}}",
+ "message": "Τελευταία ενημέρωση: {{ago}}.\nΚάντε κλικ για επιβολή ενημέρωσης.",
"description": "used as a tooltip for the clock icon beside a list"
},
"3pUpdating": {
@@ -528,11 +528,11 @@
"description": "used as a tooltip for error icon beside a list"
},
"1pFormatHint": {
- "message": "Ένα φίλτρο ανά γραμμή. Φίλτρο μπορεί να είναι ένα απλό όνομα κεντρικού υπολογιστή (hostname) ή ένα, συμβατό με το Adblock Plus, φίλτρο. Γραμμές με το πρόθεμα ‘!’ θα παραβλέπονται.",
+ "message": "Ένα φίλτρο ανά γραμμή. Ένα φίλτρο μπορεί να είναι ένα απλό όνομα κεντρικού υπολογιστή ή ένα φίλτρο συμβατό με την EasyList. Οι γραμμές με πρόθεμα !
θα παραβλέπονται.",
"description": "Short information about how to create custom filters"
},
"1pTrustWarning": {
- "message": "Μην προσθέτετε φίλτρα από μη αξιόπιστες πηγές.",
+ "message": "Να μην προστίθενται φίλτρα από μη αξιόπιστες πηγές.",
"description": "Warning against copy-pasting filters from random sources"
},
"1pImport": {
@@ -584,7 +584,7 @@
"description": ""
},
"rulesExport": {
- "message": "Εξαγωγή σε αρχείο",
+ "message": "Εξαγωγή σε αρχείο…",
"description": "Button in the 'My rules' pane"
},
"rulesDefaultFileName": {
@@ -608,7 +608,7 @@
"description": "English: a sort option for list of rules."
},
"rulesSortBySource": {
- "message": "Πηγή",
+ "message": "Προέλευση",
"description": "English: a sort option for list of rules."
},
"rulesSortByDestination": {
@@ -1012,7 +1012,7 @@
"description": "Text for 'Unredact' button"
},
"aboutPrivacyPolicy": {
- "message": "Πολιτική Απορρήτου",
+ "message": "Πολιτική απορρήτου",
"description": "Link to privacy policy on GitHub (English)"
},
"aboutChangelog": {
@@ -1060,11 +1060,11 @@
"description": "English: my-ublock-backup_{{datetime}}.txt"
},
"aboutRestoreDataButton": {
- "message": "Επαναφορά από αρχείο...",
+ "message": "Επαναφορά από αρχείο…",
"description": "English: Restore from file..."
},
"aboutResetDataButton": {
- "message": "Επαναφορά στις προεπιλεγμένες ρυθμίσεις...",
+ "message": "Επαναφορά στις προεπιλεγμένες ρυθμίσεις…",
"description": "English: Reset to default settings..."
},
"aboutRestoreDataConfirm": {
@@ -1084,7 +1084,7 @@
"description": "English: Network error: {{msg}}"
},
"subscriberConfirm": {
- "message": "uBlock₀: Προσθήκη του παρακάτω URL στις προσαρμοσμένες λίστες φίλτρων σας;\n\nΤίτλος: \"{{title}}\"\nURL: {{url}}",
+ "message": "Προσθήκη της ακόλουθης διεύθυνσης URL στις λίστες προσαρμοσμένων φίλτρων σας;\n\nΤίτλος: \"{{title}}\"\nURL: {{url}}",
"description": "No longer used"
},
"subscribeButton": {
diff --git a/src/_locales/ku/messages.json b/src/_locales/ku/messages.json
new file mode 100644
index 000000000..8b0108c8a
--- /dev/null
+++ b/src/_locales/ku/messages.json
@@ -0,0 +1,1290 @@
+{
+ "extName": {
+ "message": "uBlock Origin",
+ "description": "extension name."
+ },
+ "extShortDesc": {
+ "message": "Finally, an efficient blocker. Easy on CPU and memory.",
+ "description": "this will be in the Chrome web store: must be 132 characters or less"
+ },
+ "dashboardName": {
+ "message": "uBlock₀ — Dashboard",
+ "description": "English: uBlock₀ — Dashboard"
+ },
+ "dashboardUnsavedWarning": {
+ "message": "Warning! You have unsaved changes",
+ "description": "A warning in the dashboard when navigating away from unsaved changes"
+ },
+ "dashboardUnsavedWarningStay": {
+ "message": "Stay",
+ "description": "Label for button to prevent navigating away from unsaved changes"
+ },
+ "dashboardUnsavedWarningIgnore": {
+ "message": "Ignore",
+ "description": "Label for button to ignore unsaved changes"
+ },
+ "settingsPageName": {
+ "message": "Settings",
+ "description": "appears as tab name in dashboard"
+ },
+ "3pPageName": {
+ "message": "Filter lists",
+ "description": "appears as tab name in dashboard"
+ },
+ "1pPageName": {
+ "message": "My filters",
+ "description": "appears as tab name in dashboard"
+ },
+ "rulesPageName": {
+ "message": "My rules",
+ "description": "appears as tab name in dashboard"
+ },
+ "whitelistPageName": {
+ "message": "Trusted sites",
+ "description": "appears as tab name in dashboard"
+ },
+ "shortcutsPageName": {
+ "message": "Shortcuts",
+ "description": "appears as tab name in dashboard"
+ },
+ "statsPageName": {
+ "message": "uBlock₀ — Logger",
+ "description": "Title for the logger window"
+ },
+ "aboutPageName": {
+ "message": "About",
+ "description": "appears as tab name in dashboard"
+ },
+ "supportPageName": {
+ "message": "Support",
+ "description": "appears as tab name in dashboard"
+ },
+ "assetViewerPageName": {
+ "message": "uBlock₀ — Asset viewer",
+ "description": "Title for the asset viewer page"
+ },
+ "advancedSettingsPageName": {
+ "message": "Advanced settings",
+ "description": "Title for the advanced settings page"
+ },
+ "popupPowerSwitchInfo": {
+ "message": "Click: disable/enable uBlock₀ for this site.\n\nCtrl+click: disable uBlock₀ only on this page.",
+ "description": "English: Click: disable/enable uBlock₀ for this site.\n\nCtrl+click: disable uBlock₀ only on this page."
+ },
+ "popupPowerSwitchInfo1": {
+ "message": "Click to disable uBlock₀ for this site.\n\nCtrl+click to disable uBlock₀ only on this page.",
+ "description": "Message to be read by screen readers"
+ },
+ "popupPowerSwitchInfo2": {
+ "message": "Click to enable uBlock₀ for this site.",
+ "description": "Message to be read by screen readers"
+ },
+ "popupBlockedRequestPrompt": {
+ "message": "requests blocked",
+ "description": "English: requests blocked"
+ },
+ "popupBlockedOnThisPagePrompt": {
+ "message": "on this page",
+ "description": "English: on this page"
+ },
+ "popupBlockedStats": {
+ "message": "{{count}} ({{percent}}%)",
+ "description": "Example: 15 (13%)"
+ },
+ "popupBlockedSinceInstallPrompt": {
+ "message": "since install",
+ "description": "English: since install"
+ },
+ "popupOr": {
+ "message": "or",
+ "description": "English: or"
+ },
+ "popupBlockedOnThisPage_v2": {
+ "message": "Blocked on this page",
+ "description": "For the new mobile-friendly popup design"
+ },
+ "popupBlockedSinceInstall_v2": {
+ "message": "Blocked since install",
+ "description": "For the new mobile-friendly popup design"
+ },
+ "popupDomainsConnected_v2": {
+ "message": "Domains connected",
+ "description": "For the new mobile-friendly popup design"
+ },
+ "popupTipDashboard": {
+ "message": "Open the dashboard",
+ "description": "English: Click to open the dashboard"
+ },
+ "popupTipZapper": {
+ "message": "Enter element zapper mode",
+ "description": "Tooltip for the element-zapper icon in the popup panel"
+ },
+ "popupTipPicker": {
+ "message": "Enter element picker mode",
+ "description": "English: Enter element picker mode"
+ },
+ "popupTipLog": {
+ "message": "Open the logger",
+ "description": "Tooltip used for the logger icon in the panel"
+ },
+ "popupTipReport": {
+ "message": "Report an issue on this website",
+ "description": "Tooltip used for the 'chat' icon in the panel"
+ },
+ "popupTipNoPopups": {
+ "message": "Toggle the blocking of all popups for this site",
+ "description": "Tooltip for the no-popups per-site switch"
+ },
+ "popupTipNoPopups1": {
+ "message": "Click to block all popups on this site",
+ "description": "Tooltip for the no-popups per-site switch"
+ },
+ "popupTipNoPopups2": {
+ "message": "Click to no longer block all popups on this site",
+ "description": "Tooltip for the no-popups per-site switch"
+ },
+ "popupTipNoLargeMedia": {
+ "message": "Toggle the blocking of large media elements for this site",
+ "description": "Tooltip for the no-large-media per-site switch"
+ },
+ "popupTipNoLargeMedia1": {
+ "message": "Click to block large media elements on this site",
+ "description": "Tooltip for the no-large-media per-site switch"
+ },
+ "popupTipNoLargeMedia2": {
+ "message": "Click to no longer block large media elements on this site",
+ "description": "Tooltip for the no-large-media per-site switch"
+ },
+ "popupTipNoCosmeticFiltering": {
+ "message": "Toggle cosmetic filtering for this site",
+ "description": "Tooltip for the no-cosmetic-filtering per-site switch"
+ },
+ "popupTipNoCosmeticFiltering1": {
+ "message": "Click to disable cosmetic filtering on this site",
+ "description": "Tooltip for the no-cosmetic-filtering per-site switch"
+ },
+ "popupTipNoCosmeticFiltering2": {
+ "message": "Click to enable cosmetic filtering on this site",
+ "description": "Tooltip for the no-cosmetic-filtering per-site switch"
+ },
+ "popupTipNoRemoteFonts": {
+ "message": "Toggle the blocking of remote fonts for this site",
+ "description": "Tooltip for the no-remote-fonts per-site switch"
+ },
+ "popupTipNoRemoteFonts1": {
+ "message": "Click to block remote fonts on this site",
+ "description": "Tooltip for the no-remote-fonts per-site switch"
+ },
+ "popupTipNoRemoteFonts2": {
+ "message": "Click to no longer block remote fonts on this site",
+ "description": "Tooltip for the no-remote-fonts per-site switch"
+ },
+ "popupTipNoScripting1": {
+ "message": "Click to disable JavaScript on this site",
+ "description": "Tooltip for the no-scripting per-site switch"
+ },
+ "popupTipNoScripting2": {
+ "message": "Click to no longer disable JavaScript on this site",
+ "description": "Tooltip for the no-scripting per-site switch"
+ },
+ "popupNoPopups_v2": {
+ "message": "Pop-up windows",
+ "description": "Caption for the no-popups per-site switch"
+ },
+ "popupNoLargeMedia_v2": {
+ "message": "Large media elements",
+ "description": "Caption for the no-large-media per-site switch"
+ },
+ "popupNoCosmeticFiltering_v2": {
+ "message": "Cosmetic filtering",
+ "description": "Caption for the no-cosmetic-filtering per-site switch"
+ },
+ "popupNoRemoteFonts_v2": {
+ "message": "Remote fonts",
+ "description": "Caption for the no-remote-fonts per-site switch"
+ },
+ "popupNoScripting_v2": {
+ "message": "JavaScript",
+ "description": "Caption for the no-scripting per-site switch"
+ },
+ "popupMoreButton_v2": {
+ "message": "More",
+ "description": "Label to be used to show popup panel sections"
+ },
+ "popupLessButton_v2": {
+ "message": "Less",
+ "description": "Label to be used to hide popup panel sections"
+ },
+ "popupTipGlobalRules": {
+ "message": "Global rules: this column is for rules which apply to all sites.",
+ "description": "Tooltip when hovering the top-most cell of the global-rules column."
+ },
+ "popupTipLocalRules": {
+ "message": "Local rules: this column is for rules which apply to the current site only.\nLocal rules override global rules.",
+ "description": "Tooltip when hovering the top-most cell of the local-rules column."
+ },
+ "popupTipSaveRules": {
+ "message": "Click to make your changes permanent.",
+ "description": "Tooltip when hovering over the padlock in the dynamic filtering pane."
+ },
+ "popupTipRevertRules": {
+ "message": "Click to revert your changes.",
+ "description": "Tooltip when hovering over the eraser in the dynamic filtering pane."
+ },
+ "popupAnyRulePrompt": {
+ "message": "all",
+ "description": ""
+ },
+ "popupImageRulePrompt": {
+ "message": "images",
+ "description": ""
+ },
+ "popup3pAnyRulePrompt": {
+ "message": "3rd-party",
+ "description": ""
+ },
+ "popup3pPassiveRulePrompt": {
+ "message": "3rd-party CSS/images",
+ "description": ""
+ },
+ "popupInlineScriptRulePrompt": {
+ "message": "inline scripts",
+ "description": ""
+ },
+ "popup1pScriptRulePrompt": {
+ "message": "1st-party scripts",
+ "description": ""
+ },
+ "popup3pScriptRulePrompt": {
+ "message": "3rd-party scripts",
+ "description": ""
+ },
+ "popup3pFrameRulePrompt": {
+ "message": "3rd-party frames",
+ "description": ""
+ },
+ "popupHitDomainCountPrompt": {
+ "message": "domains connected",
+ "description": "appears in popup"
+ },
+ "popupHitDomainCount": {
+ "message": "{{count}} out of {{total}}",
+ "description": "appears in popup"
+ },
+ "popupVersion": {
+ "message": "Version",
+ "description": "Example of use: Version 1.26.4"
+ },
+ "popup3pScriptFilter": {
+ "message": "script",
+ "description": "Appears as an option to filter out firewall rows"
+ },
+ "popup3pFrameFilter": {
+ "message": "frame",
+ "description": "Appears as an option to filter out firewall rows"
+ },
+ "pickerCreate": {
+ "message": "Create",
+ "description": "English: Create"
+ },
+ "pickerPick": {
+ "message": "Pick",
+ "description": "English: Pick"
+ },
+ "pickerQuit": {
+ "message": "Quit",
+ "description": "English: Quit"
+ },
+ "pickerPreview": {
+ "message": "Preview",
+ "description": "Element picker preview mode: will cause the elements matching the current filter to be removed from the page"
+ },
+ "pickerNetFilters": {
+ "message": "Network filters",
+ "description": "English: header for a type of filter in the element picker dialog"
+ },
+ "pickerCosmeticFilters": {
+ "message": "Cosmetic filters",
+ "description": "English: Cosmetic filters"
+ },
+ "pickerCosmeticFiltersHint": {
+ "message": "Click, Ctrl-click",
+ "description": "English: Click, Ctrl-click"
+ },
+ "pickerContextMenuEntry": {
+ "message": "Block element…",
+ "description": "An entry in the browser's contextual menu"
+ },
+ "settingsCollapseBlockedPrompt": {
+ "message": "Hide placeholders of blocked elements",
+ "description": "English: Hide placeholders of blocked elements"
+ },
+ "settingsIconBadgePrompt": {
+ "message": "Show the number of blocked requests on the icon",
+ "description": "English: Show the number of blocked requests on the icon"
+ },
+ "settingsTooltipsPrompt": {
+ "message": "Disable tooltips",
+ "description": "A checkbox in the Settings pane"
+ },
+ "settingsContextMenuPrompt": {
+ "message": "Make use of context menu where appropriate",
+ "description": "English: Make use of context menu where appropriate"
+ },
+ "settingsColorBlindPrompt": {
+ "message": "Color-blind friendly",
+ "description": "English: Color-blind friendly"
+ },
+ "settingsAppearance": {
+ "message": "Appearance",
+ "description": "Section for controlling user interface appearance"
+ },
+ "settingsThemeLabel": {
+ "message": "Theme",
+ "description": "Label for checkbox to enable a custom dark theme"
+ },
+ "settingsThemeAccent0Label": {
+ "message": "Custom accent color",
+ "description": "Label for checkbox to pick an accent color"
+ },
+ "settingsCloudStorageEnabledPrompt": {
+ "message": "Enable cloud storage support",
+ "description": ""
+ },
+ "settingsAdvancedUserPrompt": {
+ "message": "I am an advanced user",
+ "description": "Checkbox to let user access advanced, technical features"
+ },
+ "settingsPrefetchingDisabledPrompt": {
+ "message": "Disable pre-fetching (to prevent any connection for blocked network requests)",
+ "description": "English: "
+ },
+ "settingsHyperlinkAuditingDisabledPrompt": {
+ "message": "Disable hyperlink auditing",
+ "description": "English: "
+ },
+ "settingsWebRTCIPAddressHiddenPrompt": {
+ "message": "Prevent WebRTC from leaking local IP addresses",
+ "description": "English: "
+ },
+ "settingPerSiteSwitchGroup": {
+ "message": "Default behavior",
+ "description": ""
+ },
+ "settingPerSiteSwitchGroupSynopsis": {
+ "message": "These default behaviors can be overridden on a per-site basis",
+ "description": ""
+ },
+ "settingsNoCosmeticFilteringPrompt": {
+ "message": "Disable cosmetic filtering",
+ "description": ""
+ },
+ "settingsNoLargeMediaPrompt": {
+ "message": "Block media elements larger than {{input}} KB",
+ "description": ""
+ },
+ "settingsNoRemoteFontsPrompt": {
+ "message": "Block remote fonts",
+ "description": ""
+ },
+ "settingsNoScriptingPrompt": {
+ "message": "Disable JavaScript",
+ "description": "The default state for the per-site no-scripting switch"
+ },
+ "settingsNoCSPReportsPrompt": {
+ "message": "Block CSP reports",
+ "description": "background information: https://github.com/gorhill/uBlock/issues/3150"
+ },
+ "settingsUncloakCnamePrompt": {
+ "message": "Uncloak canonical names",
+ "description": "background information: https://github.com/uBlockOrigin/uBlock-issues/issues/1513"
+ },
+ "settingsAdvanced": {
+ "message": "Advanced",
+ "description": "Section for controlling advanced-user settings"
+ },
+ "settingsAdvancedSynopsis": {
+ "message": "Features suitable only for technical users",
+ "description": "Description of section controlling advanced-user settings"
+ },
+ "settingsAdvancedUserSettings": {
+ "message": "advanced settings",
+ "description": "For the tooltip of a link which gives access to advanced settings"
+ },
+ "settingsLastRestorePrompt": {
+ "message": "Last restore:",
+ "description": "English: Last restore:"
+ },
+ "settingsLastBackupPrompt": {
+ "message": "Last backup:",
+ "description": "English: Last backup:"
+ },
+ "3pListsOfBlockedHostsPrompt": {
+ "message": "{{netFilterCount}} network filters + {{cosmeticFilterCount}} cosmetic filters from:",
+ "description": "Appears at the top of the _3rd-party filters_ pane"
+ },
+ "3pListsOfBlockedHostsPerListStats": {
+ "message": "{{used}} used out of {{total}}",
+ "description": "Appears aside each filter list in the _3rd-party filters_ pane"
+ },
+ "3pAutoUpdatePrompt1": {
+ "message": "Auto-update filter lists",
+ "description": "A checkbox in the _3rd-party filters_ pane"
+ },
+ "3pUpdateNow": {
+ "message": "Update now",
+ "description": "A button in the in the _3rd-party filters_ pane"
+ },
+ "3pPurgeAll": {
+ "message": "Purge all caches",
+ "description": "A button in the in the _3rd-party filters_ pane"
+ },
+ "3pParseAllABPHideFiltersPrompt1": {
+ "message": "Parse and enforce cosmetic filters",
+ "description": "English: Parse and enforce Adblock+ element hiding filters."
+ },
+ "3pParseAllABPHideFiltersInfo": {
+ "message": "Cosmetic filters serve to hide elements in a web page which are deemed to be a visual nuisance, and which can't be blocked by the network request-based filtering engines.",
+ "description": "Describes the purpose of the 'Parse and enforce cosmetic filters' feature."
+ },
+ "3pIgnoreGenericCosmeticFilters": {
+ "message": "Ignore generic cosmetic filters",
+ "description": "This will cause uBO to ignore all generic cosmetic filters."
+ },
+ "3pIgnoreGenericCosmeticFiltersInfo": {
+ "message": "Generic cosmetic filters are those cosmetic filters which are meant to apply on all web sites. Enabling this option will eliminate the memory and CPU overhead added to web pages as a result of handling generic cosmetic filters.\n\nIt is recommended to enable this option on less powerful devices.",
+ "description": "Describes the purpose of the 'Ignore generic cosmetic filters' feature."
+ },
+ "3pSuspendUntilListsAreLoaded": {
+ "message": "Suspend network activity until all filter lists are loaded",
+ "description": "A checkbox in the 'Filter lists' pane"
+ },
+ "3pListsOfBlockedHostsHeader": {
+ "message": "Lists of blocked hosts",
+ "description": "English: Lists of blocked hosts"
+ },
+ "3pApplyChanges": {
+ "message": "Apply changes",
+ "description": "English: Apply changes"
+ },
+ "3pGroupDefault": {
+ "message": "Built-in",
+ "description": "Filter lists section name"
+ },
+ "3pGroupAds": {
+ "message": "Ads",
+ "description": "Filter lists section name"
+ },
+ "3pGroupPrivacy": {
+ "message": "Privacy",
+ "description": "Filter lists section name"
+ },
+ "3pGroupMalware": {
+ "message": "Malware protection, security",
+ "description": "Filter lists section name"
+ },
+ "3pGroupAnnoyances": {
+ "message": "Annoyances",
+ "description": "Filter lists section name"
+ },
+ "3pGroupMultipurpose": {
+ "message": "Multipurpose",
+ "description": "Filter lists section name"
+ },
+ "3pGroupRegions": {
+ "message": "Regions, languages",
+ "description": "Filter lists section name"
+ },
+ "3pGroupCustom": {
+ "message": "Custom",
+ "description": "Filter lists section name"
+ },
+ "3pImport": {
+ "message": "Import…",
+ "description": "The label for the checkbox used to import external filter lists"
+ },
+ "3pExternalListsHint": {
+ "message": "One URL per line. Invalid URLs will be silently ignored.",
+ "description": "Short information about how to use the textarea to import external filter lists by URL"
+ },
+ "3pExternalListObsolete": {
+ "message": "Out of date.",
+ "description": "used as a tooltip for the out-of-date icon beside a list"
+ },
+ "3pViewContent": {
+ "message": "view content",
+ "description": "used as a tooltip for eye icon beside a list"
+ },
+ "3pLastUpdate": {
+ "message": "Last update: {{ago}}.\nClick to force an update.",
+ "description": "used as a tooltip for the clock icon beside a list"
+ },
+ "3pUpdating": {
+ "message": "Updating…",
+ "description": "used as a tooltip for the spinner icon beside a list"
+ },
+ "3pNetworkError": {
+ "message": "A network error prevented the resource from being updated.",
+ "description": "used as a tooltip for error icon beside a list"
+ },
+ "1pFormatHint": {
+ "message": "One filter per line. A filter can be a plain hostname, or an EasyList-compatible filter. Lines prefixed with !
will be ignored.",
+ "description": "Short information about how to create custom filters"
+ },
+ "1pTrustWarning": {
+ "message": "Do not add filters from untrusted sources.",
+ "description": "Warning against copy-pasting filters from random sources"
+ },
+ "1pImport": {
+ "message": "Import and append…",
+ "description": "Button in the 'My filters' pane"
+ },
+ "1pExport": {
+ "message": "Export…",
+ "description": "Button in the 'My filters' pane"
+ },
+ "1pExportFilename": {
+ "message": "my-ublock-static-filters_{{datetime}}.txt",
+ "description": "English: my-ublock-static-filters_{{datetime}}.txt"
+ },
+ "1pApplyChanges": {
+ "message": "Apply changes",
+ "description": "English: Apply changes"
+ },
+ "rulesPermanentHeader": {
+ "message": "Permanent rules",
+ "description": "header"
+ },
+ "rulesTemporaryHeader": {
+ "message": "Temporary rules",
+ "description": "header"
+ },
+ "rulesRevert": {
+ "message": "Revert",
+ "description": "This will remove all temporary rules"
+ },
+ "rulesCommit": {
+ "message": "Commit",
+ "description": "This will persist temporary rules"
+ },
+ "rulesEdit": {
+ "message": "Edit",
+ "description": "Will enable manual-edit mode (textarea)"
+ },
+ "rulesEditSave": {
+ "message": "Save",
+ "description": "Will save manually-edited content and exit manual-edit mode"
+ },
+ "rulesEditDiscard": {
+ "message": "Discard",
+ "description": "Will discard manually-edited content and exit manual-edit mode"
+ },
+ "rulesImport": {
+ "message": "Import from file…",
+ "description": ""
+ },
+ "rulesExport": {
+ "message": "Export to file…",
+ "description": "Button in the 'My rules' pane"
+ },
+ "rulesDefaultFileName": {
+ "message": "my-ublock-dynamic-rules_{{datetime}}.txt",
+ "description": "default file name to use"
+ },
+ "rulesHint": {
+ "message": "List of your dynamic filtering rules.",
+ "description": "English: List of your dynamic filtering rules."
+ },
+ "rulesFormatHint": {
+ "message": "Rule syntax: source destination type action
(full documentation).",
+ "description": "English: dynamic rule syntax and full documentation."
+ },
+ "rulesSort": {
+ "message": "Sort:",
+ "description": "English: label for sort option."
+ },
+ "rulesSortByType": {
+ "message": "Rule type",
+ "description": "English: a sort option for list of rules."
+ },
+ "rulesSortBySource": {
+ "message": "Source",
+ "description": "English: a sort option for list of rules."
+ },
+ "rulesSortByDestination": {
+ "message": "Destination",
+ "description": "English: a sort option for list of rules."
+ },
+ "whitelistPrompt": {
+ "message": "The trusted site directives dictate on which web pages uBlock Origin should be disabled. One entry per line.",
+ "description": "A concise description of the 'Trusted sites' pane."
+ },
+ "whitelistImport": {
+ "message": "Import and append…",
+ "description": "Button in the 'Trusted sites' pane"
+ },
+ "whitelistExport": {
+ "message": "Export…",
+ "description": "Button in the 'Trusted sites' pane"
+ },
+ "whitelistExportFilename": {
+ "message": "my-ublock-trusted-sites_{{datetime}}.txt",
+ "description": "The default filename to use for import/export purpose"
+ },
+ "whitelistApply": {
+ "message": "Apply changes",
+ "description": "English: Apply changes"
+ },
+ "logRequestsHeaderType": {
+ "message": "Type",
+ "description": "English: Type"
+ },
+ "logRequestsHeaderDomain": {
+ "message": "Domain",
+ "description": "English: Domain"
+ },
+ "logRequestsHeaderURL": {
+ "message": "URL",
+ "description": "English: URL"
+ },
+ "logRequestsHeaderFilter": {
+ "message": "Filter",
+ "description": "English: Filter"
+ },
+ "logAll": {
+ "message": "All",
+ "description": "Appears in the logger's tab selector"
+ },
+ "logBehindTheScene": {
+ "message": "Tabless",
+ "description": "Pretty name for behind-the-scene network requests"
+ },
+ "loggerCurrentTab": {
+ "message": "Current tab",
+ "description": "Appears in the logger's tab selector"
+ },
+ "loggerReloadTip": {
+ "message": "Reload the tab content",
+ "description": "Tooltip for the reload button in the logger page"
+ },
+ "loggerDomInspectorTip": {
+ "message": "Toggle the DOM inspector",
+ "description": "Tooltip for the DOM inspector button in the logger page"
+ },
+ "loggerPopupPanelTip": {
+ "message": "Toggle the popup panel",
+ "description": "Tooltip for the popup panel button in the logger page"
+ },
+ "loggerInfoTip": {
+ "message": "uBlock Origin wiki: The logger",
+ "description": "Tooltip for the top-right info label in the logger page"
+ },
+ "loggerClearTip": {
+ "message": "Clear logger",
+ "description": "Tooltip for the eraser in the logger page; used to blank the content of the logger"
+ },
+ "loggerPauseTip": {
+ "message": "Pause logger (discard all incoming data)",
+ "description": "Tooltip for the pause button in the logger page"
+ },
+ "loggerUnpauseTip": {
+ "message": "Unpause logger",
+ "description": "Tooltip for the play button in the logger page"
+ },
+ "loggerRowFiltererButtonTip": {
+ "message": "Toggle logger filtering",
+ "description": "Tooltip for the row filterer button in the logger page"
+ },
+ "logFilterPrompt": {
+ "message": "filter logger content",
+ "description": "Placeholder string for logger output filtering input field"
+ },
+ "loggerRowFiltererBuiltinTip": {
+ "message": "Logger filtering options",
+ "description": "Tooltip for the button to bring up logger output filtering options"
+ },
+ "loggerRowFiltererBuiltinNot": {
+ "message": "Not",
+ "description": "A keyword in the built-in row filtering expression"
+ },
+ "loggerRowFiltererBuiltinEventful": {
+ "message": "eventful",
+ "description": "A keyword in the built-in row filtering expression: all items corresponding to uBO doing something (blocked, allowed, redirected, etc.)"
+ },
+ "loggerRowFiltererBuiltinBlocked": {
+ "message": "blocked",
+ "description": "A keyword in the built-in row filtering expression"
+ },
+ "loggerRowFiltererBuiltinAllowed": {
+ "message": "allowed",
+ "description": "A keyword in the built-in row filtering expression"
+ },
+ "loggerRowFiltererBuiltinModified": {
+ "message": "modified",
+ "description": "A keyword in the built-in row filtering expression"
+ },
+ "loggerRowFiltererBuiltin1p": {
+ "message": "1st-party",
+ "description": "A keyword in the built-in row filtering expression"
+ },
+ "loggerRowFiltererBuiltin3p": {
+ "message": "3rd-party",
+ "description": "A keyword in the built-in row filtering expression"
+ },
+ "loggerEntryDetailsHeader": {
+ "message": "Details",
+ "description": "Small header to identify the 'Details' pane for a specific logger entry"
+ },
+ "loggerEntryDetailsFilter": {
+ "message": "Filter",
+ "description": "Label to identify a filter field"
+ },
+ "loggerEntryDetailsFilterList": {
+ "message": "Filter list",
+ "description": "Label to identify a filter list field"
+ },
+ "loggerEntryDetailsRule": {
+ "message": "Rule",
+ "description": "Label to identify a rule field"
+ },
+ "loggerEntryDetailsContext": {
+ "message": "Context",
+ "description": "Label to identify a context field (typically a hostname)"
+ },
+ "loggerEntryDetailsRootContext": {
+ "message": "Root context",
+ "description": "Label to identify a root context field (typically a hostname)"
+ },
+ "loggerEntryDetailsPartyness": {
+ "message": "Partyness",
+ "description": "Label to identify a field providing partyness information"
+ },
+ "loggerEntryDetailsType": {
+ "message": "Type",
+ "description": "Label to identify the type of an entry"
+ },
+ "loggerEntryDetailsURL": {
+ "message": "URL",
+ "description": "Label to identify the URL of an entry"
+ },
+ "loggerURLFilteringHeader": {
+ "message": "URL rule",
+ "description": "Small header to identify the dynamic URL filtering section"
+ },
+ "loggerURLFilteringContextLabel": {
+ "message": "Context:",
+ "description": "Label for the context selector"
+ },
+ "loggerURLFilteringTypeLabel": {
+ "message": "Type:",
+ "description": "Label for the type selector"
+ },
+ "loggerStaticFilteringHeader": {
+ "message": "Static filter",
+ "description": "Small header to identify the static filtering section"
+ },
+ "loggerStaticFilteringSentence": {
+ "message": "{{action}} network requests of {{type}} {{br}}which URL address matches {{url}} {{br}}and which originates {{origin}},{{br}}{{importance}} there is a matching exception filter.",
+ "description": "Used in the static filtering wizard"
+ },
+ "loggerStaticFilteringSentencePartBlock": {
+ "message": "Block",
+ "description": "Used in the static filtering wizard"
+ },
+ "loggerStaticFilteringSentencePartAllow": {
+ "message": "Allow",
+ "description": "Used in the static filtering wizard"
+ },
+ "loggerStaticFilteringSentencePartType": {
+ "message": "type “{{type}}”",
+ "description": "Used in the static filtering wizard"
+ },
+ "loggerStaticFilteringSentencePartAnyType": {
+ "message": "any type",
+ "description": "Used in the static filtering wizard"
+ },
+ "loggerStaticFilteringSentencePartOrigin": {
+ "message": "from “{{origin}}”",
+ "description": "Used in the static filtering wizard"
+ },
+ "loggerStaticFilteringSentencePartAnyOrigin": {
+ "message": "from anywhere",
+ "description": "Used in the static filtering wizard"
+ },
+ "loggerStaticFilteringSentencePartNotImportant": {
+ "message": "except when",
+ "description": "Used in the static filtering wizard"
+ },
+ "loggerStaticFilteringSentencePartImportant": {
+ "message": "even if",
+ "description": "Used in the static filtering wizard"
+ },
+ "loggerStaticFilteringFinderSentence1": {
+ "message": "Static filter {{filter}}
found in:",
+ "description": "Below this sentence, the filter list(s) in which the filter was found"
+ },
+ "loggerStaticFilteringFinderSentence2": {
+ "message": "Static filter could not be found in any of the currently enabled filter lists",
+ "description": "Message to show when a filter cannot be found in any filter lists"
+ },
+ "loggerSettingDiscardPrompt": {
+ "message": "Logger entries which do not fulfill all three conditions below will be automatically discarded:",
+ "description": "Logger setting: A sentence to describe the purpose of the settings below"
+ },
+ "loggerSettingPerEntryMaxAge": {
+ "message": "Preserve entries from the last {{input}} minutes",
+ "description": "A logger setting"
+ },
+ "loggerSettingPerTabMaxLoads": {
+ "message": "Preserve at most {{input}} page loads per tab",
+ "description": "A logger setting"
+ },
+ "loggerSettingPerTabMaxEntries": {
+ "message": "Preserve at most {{input}} entries per tab",
+ "description": "A logger setting"
+ },
+ "loggerSettingPerEntryLineCount": {
+ "message": "Use {{input}} lines per entry in vertically expanded mode",
+ "description": "A logger setting"
+ },
+ "loggerSettingHideColumnsPrompt": {
+ "message": "Hide columns:",
+ "description": "Logger settings: a sentence to describe the purpose of the checkboxes below"
+ },
+ "loggerSettingHideColumnTime": {
+ "message": "{{input}} Time",
+ "description": "A label for the time column"
+ },
+ "loggerSettingHideColumnFilter": {
+ "message": "{{input}} Filter/rule",
+ "description": "A label for the filter or rule column"
+ },
+ "loggerSettingHideColumnContext": {
+ "message": "{{input}} Context",
+ "description": "A label for the context column"
+ },
+ "loggerSettingHideColumnPartyness": {
+ "message": "{{input}} Partyness",
+ "description": "A label for the partyness column"
+ },
+ "loggerExportFormatList": {
+ "message": "List",
+ "description": "Label for radio-button to pick export format"
+ },
+ "loggerExportFormatTable": {
+ "message": "Table",
+ "description": "Label for radio-button to pick export format"
+ },
+ "loggerExportEncodePlain": {
+ "message": "Plain",
+ "description": "Label for radio-button to pick export text format"
+ },
+ "loggerExportEncodeMarkdown": {
+ "message": "Markdown",
+ "description": "Label for radio-button to pick export text format"
+ },
+ "supportOpenButton": {
+ "message": "Open",
+ "description": "Text for button which open an external webpage in Support pane"
+ },
+ "supportReportSpecificButton": {
+ "message": "Create new report",
+ "description": "Text for button which open an external webpage in Support pane"
+ },
+ "supportFindSpecificButton": {
+ "message": "Find similar reports",
+ "description": "A clickable link in the filter issue reporter section"
+ },
+ "supportS1H": {
+ "message": "Documentation",
+ "description": "Header of 'Documentation' section in Support pane"
+ },
+ "supportS1P1": {
+ "message": "Read the documentation at uBlock/wiki
to learn about all of uBlock Origin's features.",
+ "description": "First paragraph of 'Documentation' section in Support pane"
+ },
+ "supportS2H": {
+ "message": "Questions and support",
+ "description": "Header of 'Questions and support' section in Support pane"
+ },
+ "supportS2P1": {
+ "message": "Answers to questions and other kinds of help support is provided on the subreddit /r/uBlockOrigin
.",
+ "description": "First paragraph of 'Questions and support' section in Support pane"
+ },
+ "supportS3H": {
+ "message": "Filter issues/website is broken",
+ "description": "Header of 'Filter issues' section in Support pane"
+ },
+ "supportS3P1": {
+ "message": "Report filter issues with specific websites to the uBlockOrigin/uAssets
issue tracker. Requires a GitHub account.",
+ "description": "First paragraph of 'Filter issues' section in Support pane"
+ },
+ "supportS3P2": {
+ "message": "Important: Avoid using other similarly-purposed blockers along with uBlock Origin, as this may cause filter issues on specific websites.",
+ "description": "Second paragraph of 'Filter issues' section in Support pane"
+ },
+ "supportS3P3": {
+ "message": "Tips: Be sure your filter lists are up to date. The logger is the primary tool to diagnose filter-related issues.",
+ "description": "Third paragraph of 'Filter issues' section in Support pane"
+ },
+ "supportS4H": {
+ "message": "Bug report",
+ "description": "Header of 'Bug report' section in Support pane"
+ },
+ "supportS4P1": {
+ "message": "Report issues with uBlock Origin itself to the uBlockOrigin/uBlock-issue
issue tracker. Requires a GitHub account.",
+ "description": "First paragraph of 'Bug report' section in Support pane"
+ },
+ "supportS5H": {
+ "message": "Troubleshooting Information",
+ "description": "Header of 'Troubleshooting Information' section in Support pane"
+ },
+ "supportS5P1": {
+ "message": "Below is technical information that might be useful when volunteers are trying to help you solve a problem.",
+ "description": "First paragraph of 'Troubleshooting Information' section in Support pane"
+ },
+ "supportS5P2": {
+ "message": "Important: Potentially private or sensitive information is redacted by default. Redacted information may make it more difficult to solve a problem.",
+ "description": "Second paragraph of 'Troubleshooting Information' section in Support pane"
+ },
+ "supportS6H": {
+ "message": "Report a filter issue",
+ "description": "Header of 'Report a filter issue' section in Support pane"
+ },
+ "supportS6P1S1": {
+ "message": "To avoid burdening volunteers with duplicate reports, please verify that the issue has not already been reported.",
+ "description": "A paragraph in the filter issue reporter section"
+ },
+ "supportS6P2S1": {
+ "message": "Filter lists are updated daily. Be sure your issue has not already been addressed in the most recent filter lists.",
+ "description": "A paragraph in the filter issue reporter section"
+ },
+ "supportS6P2S2": {
+ "message": "Verify that the issue still exists after reloading the problematic webpage.",
+ "description": "A paragraph in the filter issue reporter section"
+ },
+ "supportS6URL": {
+ "message": "Address of the web page:",
+ "description": "Label for the URL of the page"
+ },
+ "supportS6Select1": {
+ "message": "The web page…",
+ "description": "Label for widget to select type of issue"
+ },
+ "supportS6Select1Option0": {
+ "message": "-- Pick an entry --",
+ "description": "An entry in the widget used to select the type of issue"
+ },
+ "supportS6Select1Option1": {
+ "message": "Shows ads or ad leftovers",
+ "description": "An entry in the widget used to select the type of issue"
+ },
+ "supportS6Select1Option2": {
+ "message": "Has overlays or other nuisances",
+ "description": "An entry in the widget used to select the type of issue"
+ },
+ "supportS6Select1Option3": {
+ "message": "Detects uBlock Origin",
+ "description": "An entry in the widget used to select the type of issue"
+ },
+ "supportS6Select1Option4": {
+ "message": "Has privacy-related issues",
+ "description": "An entry in the widget used to select the type of issue"
+ },
+ "supportS6Select1Option5": {
+ "message": "Malfunctions when uBlock Origin is enabled",
+ "description": "An entry in the widget used to select the type of issue"
+ },
+ "supportS6Select1Option6": {
+ "message": "Opens unwanted tabs or windows",
+ "description": "An entry in the widget used to select the type of issue"
+ },
+ "supportS6Checkbox1": {
+ "message": "Label the web page as “NSFW” (“Not Safe For Work”)",
+ "description": "A checkbox to use for NSFW sites"
+ },
+ "supportRedact": {
+ "message": "Redact",
+ "description": "Text for 'Redact' button"
+ },
+ "supportUnredact": {
+ "message": "Unredact",
+ "description": "Text for 'Unredact' button"
+ },
+ "aboutPrivacyPolicy": {
+ "message": "Privacy policy",
+ "description": "Link to privacy policy on GitHub (English)"
+ },
+ "aboutChangelog": {
+ "message": "Changelog",
+ "description": ""
+ },
+ "aboutCode": {
+ "message": "Source code (GPLv3)",
+ "description": "English: Source code (GPLv3)"
+ },
+ "aboutContributors": {
+ "message": "Contributors",
+ "description": "English: Contributors"
+ },
+ "aboutSourceCode": {
+ "message": "Source code",
+ "description": "Link text to source code repo"
+ },
+ "aboutTranslations": {
+ "message": "Translations",
+ "description": "Link text to translations repo"
+ },
+ "aboutFilterLists": {
+ "message": "Filter lists",
+ "description": "Link text to uBO's own filter lists repo"
+ },
+ "aboutDependencies": {
+ "message": "External dependencies (GPLv3-compatible):",
+ "description": "Shown in the About pane"
+ },
+ "aboutCDNs": {
+ "message": "uBO's own filter lists are freely hosted on the following CDNs:",
+ "description": "Shown in the About pane"
+ },
+ "aboutCDNsInfo": {
+ "message": "A randomly picked CDN is used when a filter list needs to be updated.",
+ "description": "Shown in the About pane"
+ },
+ "aboutBackupDataButton": {
+ "message": "Back up to file…",
+ "description": "Text for button to create a backup of all settings"
+ },
+ "aboutBackupFilename": {
+ "message": "my-ublock-backup_{{datetime}}.txt",
+ "description": "English: my-ublock-backup_{{datetime}}.txt"
+ },
+ "aboutRestoreDataButton": {
+ "message": "Restore from file…",
+ "description": "English: Restore from file..."
+ },
+ "aboutResetDataButton": {
+ "message": "Reset to default settings…",
+ "description": "English: Reset to default settings..."
+ },
+ "aboutRestoreDataConfirm": {
+ "message": "All your settings will be overwritten using data backed up on {{time}}, and uBlock₀ will restart.\n\nOverwrite all existing settings using backed up data?",
+ "description": "Message asking user to confirm restore"
+ },
+ "aboutRestoreDataError": {
+ "message": "The data could not be read or is invalid",
+ "description": "Message to display when an error occurred during restore"
+ },
+ "aboutResetDataConfirm": {
+ "message": "All your settings will be removed, and uBlock₀ will restart.\n\nReset uBlock₀ to factory settings?",
+ "description": "Message asking user to confirm reset"
+ },
+ "errorCantConnectTo": {
+ "message": "Network error: {{msg}}",
+ "description": "English: Network error: {{msg}}"
+ },
+ "subscriberConfirm": {
+ "message": "Add the following URL to your custom filter lists?\n\nTitle: \"{{title}}\"\nURL: {{url}}",
+ "description": "No longer used"
+ },
+ "subscribeButton": {
+ "message": "Subscribe",
+ "description": "For the button used to subscribe to a filter list"
+ },
+ "elapsedOneMinuteAgo": {
+ "message": "a minute ago",
+ "description": "English: a minute ago"
+ },
+ "elapsedManyMinutesAgo": {
+ "message": "{{value}} minutes ago",
+ "description": "English: {{value}} minutes ago"
+ },
+ "elapsedOneHourAgo": {
+ "message": "an hour ago",
+ "description": "English: an hour ago"
+ },
+ "elapsedManyHoursAgo": {
+ "message": "{{value}} hours ago",
+ "description": "English: {{value}} hours ago"
+ },
+ "elapsedOneDayAgo": {
+ "message": "a day ago",
+ "description": "English: a day ago"
+ },
+ "elapsedManyDaysAgo": {
+ "message": "{{value}} days ago",
+ "description": "English: {{value}} days ago"
+ },
+ "showDashboardButton": {
+ "message": "Show Dashboard",
+ "description": "Firefox/Fennec-specific: Show Dashboard"
+ },
+ "showNetworkLogButton": {
+ "message": "Show Logger",
+ "description": "Firefox/Fennec-specific: Show Logger"
+ },
+ "fennecMenuItemBlockingOff": {
+ "message": "off",
+ "description": "Firefox-specific: appears as 'uBlock₀ (off)'"
+ },
+ "docblockedTitle": {
+ "message": "Page blocked",
+ "description": "Used as a title for the document-blocked page"
+ },
+ "docblockedPrompt1": {
+ "message": "uBlock Origin has prevented the following page from loading:",
+ "description": "Used in the strict-blocking page"
+ },
+ "docblockedPrompt2": {
+ "message": "Because of the following filter:",
+ "description": "Used in the strict-blocking page"
+ },
+ "docblockedNoParamsPrompt": {
+ "message": "without parameters",
+ "description": "label to be used for the parameter-less URL: https://cloud.githubusercontent.com/assets/585534/9832014/bfb1b8f0-593b-11e5-8a27-fba472a5529a.png"
+ },
+ "docblockedFoundIn": {
+ "message": "Found in:",
+ "description": "English: List of filter list names follows"
+ },
+ "docblockedBack": {
+ "message": "Go back",
+ "description": "English: Go back"
+ },
+ "docblockedClose": {
+ "message": "Close this window",
+ "description": "English: Close this window"
+ },
+ "docblockedDontWarn": {
+ "message": "Don't warn me again about this site",
+ "description": "Label for checkbox in document-blocked page"
+ },
+ "docblockedProceed": {
+ "message": "Disable strict blocking for {{hostname}}",
+ "description": "English: Disable strict blocking for {{hostname}} ..."
+ },
+ "docblockedDisableTemporary": {
+ "message": "Temporarily",
+ "description": "English: Temporarily"
+ },
+ "docblockedDisablePermanent": {
+ "message": "Permanently",
+ "description": "English: Permanently"
+ },
+ "docblockedDisable": {
+ "message": "Proceed",
+ "description": "Button text to navigate to the blocked page"
+ },
+ "cloudPush": {
+ "message": "Export to cloud storage",
+ "description": "tooltip"
+ },
+ "cloudPull": {
+ "message": "Import from cloud storage",
+ "description": "tooltip"
+ },
+ "cloudPullAndMerge": {
+ "message": "Import from cloud storage and merge with current settings",
+ "description": "tooltip"
+ },
+ "cloudNoData": {
+ "message": "…\n…",
+ "description": ""
+ },
+ "cloudDeviceNamePrompt": {
+ "message": "This device name:",
+ "description": "used as a prompt for the user to provide a custom device name"
+ },
+ "advancedSettingsWarning": {
+ "message": "Warning! Change these advanced settings at your own risk.",
+ "description": "A warning to users at the top of 'Advanced settings' page"
+ },
+ "genericSubmit": {
+ "message": "Submit",
+ "description": "for generic 'Submit' buttons"
+ },
+ "genericApplyChanges": {
+ "message": "Apply changes",
+ "description": "for generic 'Apply changes' buttons"
+ },
+ "genericRevert": {
+ "message": "Revert",
+ "description": "for generic 'Revert' buttons"
+ },
+ "genericBytes": {
+ "message": "bytes",
+ "description": ""
+ },
+ "contextMenuBlockElementInFrame": {
+ "message": "Block element in frame…",
+ "description": "An entry in the browser's contextual menu"
+ },
+ "contextMenuSubscribeToList": {
+ "message": "Subscribe to filter list…",
+ "description": "An entry in the browser's contextual menu"
+ },
+ "contextMenuTemporarilyAllowLargeMediaElements": {
+ "message": "Temporarily allow large media elements",
+ "description": "A context menu entry, present when large media elements have been blocked on the current site"
+ },
+ "contextMenuViewSource": {
+ "message": "View source code…",
+ "description": "A context menu entry, to view the source code of the target resource"
+ },
+ "shortcutCapturePlaceholder": {
+ "message": "Type a shortcut",
+ "description": "Placeholder string for input field used to capture a keyboard shortcut"
+ },
+ "genericMergeViewScrollLock": {
+ "message": "Toggle locked scrolling",
+ "description": "Tooltip for the button used to lock scrolling between the views in the 'My rules' pane"
+ },
+ "genericCopyToClipboard": {
+ "message": "Copy to clipboard",
+ "description": "Label for buttons used to copy something to the clipboard"
+ },
+ "genericSelectAll": {
+ "message": "Select all",
+ "description": "Label for buttons used to select all text in editor"
+ },
+ "toggleCosmeticFiltering": {
+ "message": "Toggle cosmetic filtering",
+ "description": "Label for keyboard shortcut used to toggle cosmetic filtering"
+ },
+ "relaxBlockingMode": {
+ "message": "Relax blocking mode",
+ "description": "Label for keyboard shortcut used to relax blocking mode"
+ },
+ "storageUsed": {
+ "message": "Storage used: {{value}} {{unit}}",
+ "description": " In Setting pane, renders as (example): Storage used: 13.2 MB"
+ },
+ "KB": {
+ "message": "KB",
+ "description": "short for 'kilobytes'"
+ },
+ "MB": {
+ "message": "MB",
+ "description": "short for 'megabytes'"
+ },
+ "GB": {
+ "message": "GB",
+ "description": "short for 'gigabytes'"
+ },
+ "clickToLoad": {
+ "message": "Click to load",
+ "description": "Message used in frame placeholders"
+ },
+ "linterMainReport": {
+ "message": "Errors: {{count}}",
+ "description": "Summary of number of errors as reported by the linter "
+ },
+ "unprocessedRequestTooltip": {
+ "message": "Could not filter properly at browser launch. Reload the page to ensure proper filtering.",
+ "description": "A warning which will appear in the popup panel if needed"
+ },
+ "dummy": {
+ "message": "This entry must be the last one",
+ "description": "so we dont need to deal with comma for last entry"
+ }
+}