{ "extName": { "message": "µMatrix", "description": "extension name." }, "extShortDesc": { "message": "Point & click to forbid/allow any class of requests made by your browser. Use it to block scripts, iframes, ads, facebook, etc.", "description": "this will be in the chrome web store: must be 132 characters or less" }, "settingsPageName": { "message": "Settings", "description": "appears as tab name in dashboard." }, "privacyPageName": { "message": "Privacy", "description": "appears as tab name in dashboard." }, "statsPageName": { "message": "Statistics", "description": "appears as tab name in dashboard." }, "ubiquitousRulesPageName" : { "message": "Ubiquitous rules", "description": "appears as tab name in dashboard." }, "scopedRulesPageName": { "message": "Scoped rules", "description": "appears as tab name in dashboard." }, "aboutPageName": { "message": "About", "description": "appears as tab name in dashboard." }, "allPrettyName": { "message": "all", "description": "HAS TO FIT IN MATRIX HEADER!" }, "cookiePrettyName": { "message": "cookie", "description": "HAS TO FIT IN MATRIX HEADER!" }, "cookiePrettyNamePlural": { "message": "cookies", "description": "..." }, "stylesheetPrettyName": { "message": "css", "description": "HAS TO FIT IN MATRIX HEADER!" }, "stylesheetPrettyNamePlural": { "message": "css", "description": "..." }, "imagePrettyName": { "message": "image", "description": "HAS TO FIT IN MATRIX HEADER!" }, "imagePrettyNamePlural": { "message": "images", "description": "..." }, "objectPrettyName": { "message": "plugin", "description": "HAS TO FIT IN MATRIX HEADER!" }, "objectPrettyNamePlural": { "message": "plugins", "description": "..." }, "scriptPrettyName": { "message": "script", "description": "HAS TO FIT IN MATRIX HEADER!" }, "scriptPrettyNamePlural": { "message": "scripts", "description": "..." }, "xmlhttprequestPrettyName": { "message": "XHR", "description": "HAS TO FIT IN MATRIX HEADER!" }, "xmlhttprequestPrettyNamePlural": { "message": "XHR", "description": "..." }, "sub_framePrettyName": { "message": "frame", "description": "HAS TO FIT IN MATRIX HEADER!" }, "sub_framePrettyNamePlural": { "message": "frames", "description": "..." }, "otherPrettyName": { "message": "other", "description": "HAS TO FIT IN MATRIX HEADER!" }, "otherPrettyNamePlural": { "message": "others", "description": "..." }, "matrixPresetAbsentPrompt" : { "message": "No preset recipe matches this page", "description": "..." }, "matrixPresetPresentPrompt" : { "message": "Click on a preset recipe to import its rules", "description": "..." }, "matrixNoNetTrafficPrompt" : { "message": "No net traffic seen for this tab so far.", "description": "..." }, "matrixMtxButtonTip" : { "message": "Disable/enable matrix filtering \u000a for this scope. \u000aRequests blocked through \u000a matrix filtering on this page: {{count}}.", "description": "Tool tip for matrix button: {{}} is a placeholder for number of blocked requests." }, "matrixPersistButtonTip" : { "message": "Save all temporary changes \u000a for this scope.", "description": "Tool tip for the persist button" }, "matrixRevertButtonTip" : { "message": "Remove temporary changes \u000a for this scope.", "description": "Tool tip for the revert local permission button" }, "matrixRevertButtonAllTip" : { "message": "Remove all temporary \u000a changes.", "description": "Tool tip for the revert all permissions button" }, "matrixReloadButton" : { "message": "Reload the page.", "description": "Tool tip for the reload button" }, "matrixPresetMoreReadTip" : { "message": "Export a recipe: Temporary rules \u000a of current scope will be encoded \u000a as a recipe", "description": "English: Export a recipe: Temporary rules \u000a of current scope will be encoded \u000a as a recipe" }, "matrixPresetMoreWriteTip" : { "message": "Import a recipe: Temporary rules \u000a will be created into current scope", "description": "English: Import a recipe: Temporary rules \u000a will be created into current scope" }, "matrixPresetMoreRecipeTip" : { "message": "Users can exchange recipes here to help each other. Usual warnings about untrusted sources apply.", "description": "English: Users can exchange recipes here to help each other. Usual warnings about untrusted sources apply." }, "statsPageTitle" : { "message": "µMatrix – Statistics", "description": "header for the whole stats page" }, "statsPageGenericStats" : { "message": "Generic statistics", "description": "English: Generic statistics" }, "statsPageCookieHeadersFoiled" : { "message": "HTTP cookie headers foiled: {{count}}", "description": "English: HTTP cookie headers foiled: {{count}}" }, "statsPageRefererHeadersFoiled" : { "message": "HTTP referer headers foiled: {{count}}", "description": "English: HTTP referer headers foiled: {{count}}" }, "statsPageHyperlinkAuditingFoiled" : { "message": "Hyperlink auditing attempts foiled: {{count}}", "description": "English: Hyperlink auditing attempts foiled: {{count}}" }, "statsPageCookiesRemoved" : { "message": "Local cookies removed: {{count}}", "description": "Local cookies removed: {{count}}" }, "statsPageLocalStoragesCleared" : { "message": "Local storages emptied: {{count}}", "description": "Local storages emptied: {{count}}" }, "statsPageBrowserCacheCleared" : { "message": "Browser caches cleared: {{count}}", "description": "Browser caches cleared: {{count}}" }, "statsPageDetailedStats" : { "message": "Detailed statistics", "description": "English: Detailed statistics" }, "statsPageDetailedAllPages" : { "message": "All", "description": "English: All" }, "statsPageDetailedBehindTheScenePage" : { "message": "Chromium: Behind the scene", "description": "English: Chromium: Behind the scene" }, "statsPageOverview" : { "message": "Overview", "description": "English: Overview" }, "statsPageRequests" : { "message": "Requests", "description": "in detailed stats section, header for the type of request" }, "statsPageAllowed" : { "message": "Allowed", "description": "capitalized" }, "statsPageBlocked" : { "message": "Blocked", "description": "capitalized" }, "statsPageDetailed" : { "message": "Request log", "description": "English: Request log" }, "statsPageLogSizePrompt1" : { "message": "Remember the last", "description": "English: Remember the last" }, "statsPageLogSizePrompt2" : { "message": "HTTP requests per page.", "description": "English: HTTP requests per page." }, "statsPageLogSizeHelp" : { "message": "

You can inspect details of the most recent raw HTTP requests which have been made by a web page (see below).

This is mostly useful to advanced users who want to investigate exactly what a web page has been doing. But logging these HTTP requests requires memory, and if you don't care about this technical information, then memory is being wasted.

Hence this field which lets you adjust the maximum number of the most recent HTTP requests which are to be logged for further inspection.

Enter “0” to turn off detailed logging (and consequently reduce the memory footprint of µMatrix).

", "description": "To help user understand the purpose of the log size value" }, "statsPageRefresh" : { "message": "Refresh", "description": "text for refresh button" }, "settingsPageTitle" : { "message": "µMatrix – Settings", "description": "header for the whole Settings page" }, "settingsMatrixHeader" : { "message": "Matrix", "description": "header of Matrix settings section" }, "settingsMatrixDisplayHeader" : { "message": "Appearance", "description": "English: Appearance" }, "settingsMatrixDisplayTextSizePrompt" : { "message": "Text size:", "description": "..." }, "settingsMatrixDisplayTextSizeNormal" : { "message": "Normal", "description": "..." }, "settingsMatrixDisplayTextSizeLarge" : { "message": "Large", "description": "..." }, "settingsMatrixDisplayColorBlind" : { "message": "Color-blind friendly", "description": "English: Color-blind friendly" }, "settingsMatrixMoreSecurityHeader" : { "message": "More security", "description": "..." }, "settingsStrictBlockingPrompt": { "message": "Enable strict blocking.", "description": "" }, "settingsStrictBlockingInfo": { "message": "

Strict\nblocking,\nintroduced in version 0.3.6,\nmeans that even\nif you whitelist a specific hostname, blacklisted type of requests (plugins,\nframes, etc.) will remain blacklisted. For some users this maybe\ntoo bothersome, hence this switch.

\n

Strict blocking on: blacklisted types of request (if any)\nfor a whitelisted hostname are blocked (unless you explicitly whitelist\nspecifically these types of request for the whitelisted hostname.)

\n

Strict blocking off: blacklisted types of request (if any)\nfor a whitelisted hostname are allowed (unless you explicitly blacklist\nspecifically these types of request for the whitelisted hostname.)

", "description": "To help the user understand the purpose of strict blocking" }, "settingsAutoCreateScopePrompt1": { "message": "Auto create temporary", "description": "English: Auto create temporary" }, "settingsAutoCreateDomainScope": { "message": "domain-level", "description": "English: domain-level" }, "settingsAutoCreateSiteScope": { "message": "site-level", "description": "English: site-level" }, "settingsAutoCreateScopePrompt2": { "message": "scope.", "description": "English: scope" }, "settingsAutoCreateScopeInfo": { "message": "

This option enables the automatic creation of a temporary scope if no scope exists for a web site you visit.

There are many advantages to using domain- or site-scoped rules, one of them being the sandboxing of rules, a good habit for enhanced security.

For example, should you want to whitelist “all” for a web site (www.example.com), using a domain-level scope will limit this extremely permissive rule to only pages on that specific domain (example.com), while if used in the global scope (“∗”) the extremely permissive rule would apply to all pages on all web sites, i.e. the whitelisting of the whole internet.

", "description": "English: see relevant messages.json file" }, "settingsMatrixLessSecurityHeader" : { "message": "Less security", "description": "..." }, "settingsAutoWhitelistPrompt": { "message": "Auto whitelist page domain.", "description": "" }, "settingsAutoWhitelistHelp": { "message": "

Some users do not like to constantly whitelist the domain of the page by default. This feature enables automatic temporary whitelisting of a page's whole domain whenever it is first loaded in the browser. The temporary auto-whitelisting will occur only if the page domain is currently graylisted.

Although it is not a recommended feature from a security perspective, it has been included due to popular demand -- I would rather give users this feature than see them give up completely on a blocker.

If you use this feature, I advise that you at least blacklist frame requests and turn on strict blocking.

", "description": "To help user understand the purpose of auto-whitelist" }, "settingsMatrixConvenienceHeader" : { "message": "Convenience", "description": "English: Convenience" }, "settingsMatrixAutoReloadPrompt" : { "message": "When the matrix is closed, smart reload these tabs:", "description": "..." }, "settingsMatrixAutoReloadNone" : { "message": "None", "description": "" }, "settingsMatrixAutoReloadCurrent" : { "message": "Current", "description": "" }, "settingsMatrixAutoReloadAll" : { "message": "All", "description": "" }, "settingsMatrixAutoReloadInfo" : { "message": "Whenever you make changes in the matrix which can affect the display and/or behavior of one or more pages, µMatrix will reload affected pages automatically when you close the matrix.", "description": "..." }, "settingsMatrixCopyGlobalRulesIntoNewScopePrompt" : { "message": "Copy all rules from global scope into newly created local scopes.", "description": "English: Auto delete unused temporary scopes." }, "settingsMatrixCopyGlobalRulesIntoNewScopeHelp" : { "message": "

Scopes are sandboxed, i.e. they do not share rules, and this also applies to the global scope: narrower scopes do not see rules in the global scope.

Some users see this as an impediment, as they wish their global rules were seen by narrower scopes. This option allows to mitigate this “shortcoming” by forcing a copy of all global rules into a newly created narrower scope.

Be mindful that all rules from the global scope are copied, including rules which could be irrelevant to the web site for which the scope was created. This could lead to “rules bloat” when there are many rules in the global scope.

", "description": "English: ..." }, "settingsMatrixDeleteUnusedTemporaryScopesPrompt1" : { "message": "Auto delete unused temporary scopes.", "description": "English: Auto delete unused temporary scopes." }, "settingsMatrixDeleteUnusedTemporaryScopesPrompt2" : { "message": "", "description": "English:" }, "settingsSubframeColor" : { "message": "Blocked frames: Color", "description": "English: Blocked frames: Color" }, "settingsSubframeOpacity" : { "message": "Opacity", "description": "English: Opacity" }, "privacyHeader" : { "message": "Privacy", "description": "header of Privacy section" }, "privacyDeleteBlockedCookiesPrompt" : { "message": "Delete blocked cookies.", "description": "..." }, "privacyDeleteBlockedCookiesHelp" : { "message": "

Blacklisted cookies are not prevented by µMatrix from entering your browser. However they are prevented from leaving your browser, which is what really matters. Not blocking cookies before they enter your browser gives you the opportunity to be informed that a site tried to use cookies, and furthermore to inspect their contents if you wish.

Once these blacklisted cookies have been accounted for by µMatrix, they can be removed from your browser if you wish so.

Important note: Extensions can make web requests during the course of their normal operation. These requests can result in cookies being created in the browser. If the hostname from where a cookie originate is not whitelisted, the cookie will be removed from the browser by µMatrix if this option is checked. So be sure that the hostname(s) with which an extension communicate is whitelisted.

", "description": "..." }, "privacyDeleteNonBlockedSessionCookiesPrompt1" : { "message": "Delete non-blocked session cookies ", "description": "English: Delete non-blocked session cookies" }, "privacyDeleteNonBlockedSessionCookiesPrompt2" : { "message": " minutes after the last time they have been used.", "description": "English: minutes after the last time they have been used." }, "privacyDeleteNonBlockedSessionCookiesHelp" : { "message": "

W3C: “A session cookie ... is erased when you end the browser session. The session cookie is stored in temporary memory and is not retained after the browser is closed.”

Except that this might not be happening when using a Chromium-based browser. Also, to some, having to close the browser in order for the session cookies to clear might not be early enough.

", "description": "..." }, "privacyDeleteBlockedLocalStoragePrompt" : { "message": "Delete local storage content set by blocked hostnames", "description": "..." }, "privacyDeleteBlockedLocalStorageHelp" : { "message": "TODO", "description": "..." }, "privacyClearCachePrompt1" : { "message": "Clear browser cache every", "description": "English: Clear browser cache every" }, "privacyClearCachePrompt2" : { "message": "minutes.", "description": "English: minutes." }, "privacyClearCacheHelp" : { "message": "

Some web sites are really bent on tracking you, so much that they will use not-so-nice tricks to work around whatever measures you take in order to not be tracked.

A few of these tricks rely[1, 2] on the browser cache, which content is often long lasting since rarely will users take the time to regularly clear their browser cache.

There is little inconvenience to clear the browser cache regularly (likelihood is that you won't notice when it happens), and the benefit is to prevent these obnoxious trackers from invading your privacy.

Check this option to have µMatrix do it for you, at the interval you wish.

[1] “Preventing Web Tracking via the Browser Cache”
[2] “Cookieless cookies”

", "description": "..." }, "privacyProcessRefererPrompt" : { "message": "Remove third-party HTTP referer information from requests to non-whitelisted hostnames.", "description": "..." }, "privacyProcessRefererHelp" : { "message": "

From Wikipedia: “HTTP referer is an HTTP header field that identifies the address of the webpage that linked to the resource being requested. ... Because referer information can violate privacy, some web browsers allow the user to disable the sending of referer information.

If this setting is checked, µMatrix will remove the HTTP referer information if both of the following conditions are true:

", "description": "..." }, "privacyProcessHyperlinkAuditingPrompt" : { "message": "Block all hyperlink auditing attempts.", "description": "..." }, "privacyProcessHyperlinkAuditingHelp" : { "message": "

Hyperlink auditing is a mechanism which allow a party, any party, to be informed about which link a user clicked on a particular web page. It is essentially a tracking feature: it allows a web site, or any third-party to that web site, to be informed about which link you clicked on which one of its web pages. The sole purpose is to track your browsing activity.

", "description": "..." }, "privacySpoofUserAgentPrompt1" : { "message": "Spoof User-Agent string by randomly picking a new one below every", "description": "Spoof User-Agent string by randomly picking a new one below every" }, "privacySpoofUserAgentPrompt2" : { "message": "minutes.", "description": "minutes." }, "privacySpoofUserAgentHelp" : { "message": "According to the Electronic Frontier Foundation: “[...] your browser sends a ‘User Agent’ header to the website saying precisely which operating system and web browser you are using. This information could help distinguish Internet users from one another because these versions differ, often considerably, from person to person. [...] the User Agent string becomes a real privacy problem.”

This option allows you to address the privacy issue raised by the EFF.

You can supply your own list of user agent strings. One string per line. Blank lines and lines prefixed with ‘#’ will be ignored.

", "description": "..." }, "privacyBehindTheSceneHeader" : { "message": "Chromium: behind-the-scene requests", "description": "header of Chromium: behind-the-scene requests section" }, "privacyProcessBehindTheSceneHelp" : { "message": "

According to Google Chrome Privacy Whitepaper, Chromium might send HTTP requests to Google without the user expressly visiting a web page. Let's call these special requests behind-the-scene requests. Also, other installed browser extensions can send behind-the-scene HTTP requests.

µMatrix lets you intercept and treat these requests like any other request: they can be processed in order to allow/block them as per your whitelist/blacklist.

Click the extension icon while viewing this page to get started. Required reading: Behind-the-scene requests.

Beware! Blocking behind-the-scene net requests is potentially causing an issue when the user wants to install an extension from the Chrome store (including maybe preventing extensions from being updated), hence the ability to disable the feature here. Blocking can also cause other installed extensions to not work properly (those querying for remote data).

Even if this feature is not enabled, behind-the-scene requests are still logged by µMatrix. You can inspect these requests on the Statistics page.

", "description": "..." }, "privacyDoneButton" : { "message": "Done", "description": "Close the Privacy page" }, "ubiquitousWhatIsThisHeader" : { "message": "What is this?", "description": "English: What is this?" }, "ubiquitousWhatIsThisPrompt" : { "message": "“Ubiquitous rules” are rules which apply everywhere, i.e. in all scopes. A ubiquitous rule can be overridden by any scoped rule for the same element.", "description": "English: “Ubiquitous rules” are rules which apply everywhere, i.e. in all scopes. A ubiquitous rule can be overridden by any scoped rule for the same element." }, "ubiquitousListsOfBlockedHostsPrompt1" : { "message": "All lists of blocked hosts are loaded as ubiquitous rules, hence these hosts are blacklisted in all scopes.", "description": "English: All lists of blocked hosts are loaded as ubiquitous rules, hence these hosts are blacklisted in all scopes." }, "ubiquitousListsOfBlockedHostsPrompt2" : { "message": "{{ubiquitousBlacklistCount}} distinct blocked hostnames from:", "description": "English: {{ubiquitousBlacklistCount}} distinct blocked hostnames from:" }, "ubiquitousListsOfBlockedHostsPerListStats" : { "message": "{{used}} used out of {{total}}", "description": "English: {{used}} used out of {{total}}" }, "ubiquitousListsOfBlockedHostsHeader" : { "message": "Lists of blocked hosts", "description": "English: Lists of blocked hosts" }, "userUbiquitousBlacklistHeader" : { "message": "Your block rules", "description": "English: Your block rules" }, "userUbiquitousWhitelistHeader" : { "message": "Your allow rules", "description": "English: Your allow rules" }, "ubiquitousApplyChanges" : { "message": "Apply changes", "description": "English: Apply changes" }, "ubiquitousFormatHint" : { "message": "One rule per line. A rule can be a plain hostname, or an Adblock Plus-compatible filter. Lines prefixed with ‘#’ will be ignored.", "description": "English: One rule per line. A rule can be a plain hostname, or an Adblock Plus-compatible filter. Lines prefixed with ‘#’ will be ignored." }, "ubiquitousAllowFormatHint" : { "message": "One rule per line. A rule can be a plain hostname, or an Adblock Plus-compatible exception filter (prefixed with ‘@@’). Lines prefixed with ‘#’ will be ignored.", "description": "English: One rule per line. A rule can be a plain hostname, or an Adblock Plus-compatible exception filter (prefixed with ‘@@’). Lines prefixed with ‘#’ will be ignored." }, "ubiquitousImport" : { "message": "Import and append", "description": "English: Import and append" }, "ubiquitousExport" : { "message": "Export", "description": "English: Export" }, "scopedCommitAllButton": { "message": "Commit all", "description": "English: Commit all" }, "scopedRevertAllButton": { "message": "Revert all", "description": "English: Revert all" }, "scopedMarkAllForDeletionButton": { "message": "Mark all for deletion", "description": "English: Mark all for deletion" }, "scopedResetToFactoryButton": { "message": "Reset to factory", "description": "English: Reset to factory" }, "scopedRulesHeader": { "message": "Rules", "description": "English: Rules" }, "scopedRulesInfo": { "message": "This is where you want to backup all of your scopes and rules: Click “Export rules”, optionally click “Encode recipe”, save the result into a file which content can be pasted here later.

Syntax is very strict, only advanced users should risk editing here. If you are importing a recipe from an untrusted source, be sure there is nothing wrong with it (ex.: “whitelist * evil.com”)

", "description": "English: [see english message.json]" }, "scopedRecipeHeader": { "message": "Recipes", "description": "English: Recipes" }, "scopedRecipesInfo": { "message": "A “recipe” is just a set of rules encoded in a way to make it easy to backup or exchange set of rules between users. Hopefully advanced users will share their carefully crafted recipes to help novice users.", "description": "English: [see english message.json]" }, "scopedBackupRecipeButton": { "message": "Backup to file", "description": "English: Backup to file" }, "scopedRestoreRecipeButton": { "message": "Restore from file", "description": "English: Restore from file" }, "scopedDecodeRecipeButton": { "message": "Decode recipe", "description": "English: Decode recipe" }, "scopedEncodeRecipeButton": { "message": "Encode recipe", "description": "English: Encode recipe" }, "scopedImportRulesButton": { "message": "Import rules", "description": "English: Import rules" }, "scopedExportRulesButton": { "message": "Export rules", "description": "English: Export rules" }, "scopedGlobalScopeHeader": { "message": "Global scope", "description": "English: Global scope" }, "scopedBtsScopeHeader": { "message": "Behind-the-scene scope", "description": "English: Behind-the-scene scope" }, "scopedDomainScopeHeader": { "message": "Domain-level scope", "description": "English: Domain-level scope" }, "scopedSiteScopeHeader": { "message": "Site-level scope", "description": "English: Site-level scope" }, "scopedDeletionPrompt": { "message": "You are about to delete {{deleteCount}} rules.\nThis is irreversible.\nClick OK to confirm.", "description": "English: You are about to delete {{deleteCount}} rules.\nThis is irreversible.\nClick OK to confirm." }, "aboutChangelog" : { "message": "Change log", "description": "English: Change log" }, "aboutStorageUsed" : { "message": "Storage used: {{storageUsed}}%", "description": "English: Storage used: {{storageUsed}}%" }, "aboutDoc" : { "message": "Documentation", "description": "English: Documentation" }, "aboutPermissions" : { "message": "Permissions", "description": "English: Permissions" }, "aboutCode" : { "message": "Source code (GPLv3)", "description": "English: Source code (GPLv3)" }, "aboutCredits" : { "message": "Credits", "description": "English: Credits" }, "aboutUserDataHeader" : { "message": "Your data", "description": "English: Your data" }, "aboutUserDataBackupButton" : { "message": "Backup to file...", "description": "English: Backup all..." }, "aboutUserDataRestoreButton" : { "message": "Restore from file...", "description": "English: Restore all..." }, "aboutUserDataOr" : { "message": "... or ...", "description": "English: ... or ..." }, "aboutUserDataResetButton" : { "message": "Start from scratch...", "description": "English: Start from scratch..." }, "aboutUserDataRestoreConfirm" : { "message": "All your settings and rules will be overwritten\nusing data backed up on {{time}},\nand µMatrix will restart.\n\nOverwrite all existing data using backed up data?", "description": "Message asking user to confirm restore" }, "aboutExtensionDataHeader" : { "message": "Extension data", "description": "English: Extension data" }, "aboutAssetsUpdatePrompt" : { "message": "µMatrix assets can be updated here without having to wait for the next release of the extension. These assets are pulled from the project's Github repository.", "description": "Short descriptive text of the update feature" }, "aboutAssetsUpdateColPath" : { "message": "Path", "description": "Path column header" }, "aboutAssetsUpdateColStatus" : { "message": "Status", "description": "Status column header" }, "aboutAssetsUpdateGetListError" : { "message": "An error occurred. Is XHR blocked for raw2.github.com?", "description": "Successful outcome of clicking 'update' button" }, "aboutAssetsUpdateStatusAdded" : { "message": "To add", "description": "Displayed in the status column for each entry" }, "aboutAssetsUpdateStatusChanged" : { "message": "New version available", "description": "Displayed in the status column for each entry" }, "aboutAssetsUpdateStatusUnchanged" : { "message": "Up to date", "description": "Displayed in the status column for each entry" }, "aboutAssetsUpdateStatusRemoved" : { "message": "To remove", "description": "Displayed in the status column for each entry" }, "aboutAssetsUpdateButton" : { "message": "Update", "description": "Update button" }, "aboutAssetsUpdatingButton" : { "message": "Updating...", "description": "Updating..." }, "setupPagePrompt" : { "message": "

µMatrix is highly configurable: it can be set anywhere between “block everything” and “block nothing”.

The higher the security, the more likely web pages will be “broken”, i.e. will not render and/or behave as intended. Thus, higher security also means more intervention required from the user in order to “unbreak” those web pages which a user trust.

Here you can pick a profile which best matches how you plan to use µMatrix. Consider these a starting point, as you can customize at will afterward.", "description": "Appears at the top of the setup page" }, "setupBlockAllAllowExceptionally" : { "message": "Block all / allow exceptionally", "description": "English: Block all / allow exceptionally" }, "setupAllowAllBlockExceptionally" : { "message": "Allow all / block exceptionally", "description": "English: Allow all / block exceptionally" }, "setupAdBlocker" : { "message": "Ad blocker-like", "description": "English: Ad blocker-like" }, "setupNoScript" : { "message": "NoScript-like", "description": "English: NoScript-like" }, "setupRequestPolicy" : { "message": "RequestPolicy-like", "description": "English: RequestPolicy-like" }, "setupBlockNothingReportAll" : { "message": "Block nothing / report everything", "description": "English: Block nothing / report everything" }, "setupSecurity" : { "message": "Security:", "description": "English: Security:" }, "setupBreakage" : { "message": "Breakage:", "description": "English: Breakage:" }, "setupVeryHigh" : { "message": "very high", "description": "English: very high" }, "setupHigh" : { "message": "high", "description": "English: high" }, "setupMediumHigh" : { "message": "medium high", "description": "English: medium high" }, "setupMedium" : { "message": "medium", "description": "English: medium" }, "setupMediumLow" : { "message": "medium low", "description": "English: medium low" }, "setupLow" : { "message": "low", "description": "English: low" }, "setupVeryLow" : { "message": "very low", "description": "English: very low" }, "setupNone" : { "message": "none", "description": "English: none" }, "setupRestoreConfirm" : { "message": "All your settings and rules will be overwritten\nand µMatrix will restart.\n\nOverwrite all existing data?", "description": "English: All your settings and rules will be overwritten\nand µMatrix will restart.\n\nOverwrite all existing data?" }, "commandRevertAll" : { "message": "Remove all temporary changes", "description": "English: Remove all temporary changes" }, "commandWhitelistPageDomain" : { "message": "Temporarily whitelist page domain", "description": "English: Temporarily whitelist page domain" }, "commandWhitelistAll" : { "message": "Temporarily whitelist all", "description": "English: Temporarily whitelist all" }, "commandOpenDashboard" : { "message": "Open dashboard", "description": "English: Open dashboard" }, "dummy": { "message": "This entry must be the last one", "description": "so we dont need to deal with comma for last entry" } }