Home : Support

StopTheMadness for Chrome Support

Help Topics:

Supported Web Browsers:
The StopTheMadness Chrome extension supports Google Chrome and all Chromium-based web browsers such as Brave, Microsoft Edge, Opera, and Vivaldi. If you have multiple Chromium browsers on your Mac, then you need to install StopTheMadness separately in each browser.

Manifest version 2:
If you see an Errors button on the Chrome Extensions page, don't worry, this is actually just a warning about the deprecated Chrome extension manifest version 2. StopTheMadness continues to work, and it will adopt the newer Chrome extension manifest version 3 before the deadline.

Chrome extension Errors

Chrome manifest version 2

Privacy:
According to Google Chrome, StopTheMadness has permissions to "Read and change all your data on the websites you visit". However, this is just boilerplate text from Google shown for every Chrome extension that can modify webpages. StopTheMadness does not read, change, or share your personal data. The privacy policy has more details about StopTheMadness privacy.

If you've already set up Chrome to sync with your Google account, then your StopTheMadness Website Options will also be synced. This sync process is controlled by Google Chrome. The only data from StopTheMadness that would be synced is what you see in the StopTheMadness Website Options.

Website Options:
You can selectively enable and disable StopTheMadness features. Your custom options can be configured to apply to every web page or just to web sites that you specify. To change the options, open the StopTheMadness popup in the toolbar of a Chrome window. You can also open the Extensions window in Google Chrome, click the Details button under StopTheMadness, and then click "Extension options" on the Details page.

StopTheMadness Website Options

Video Options:

YouTube Options:

New Tab Behavior:

(External links are cross-site, with a different domain than the current web site.)

Dangerous Options (Site Breakage):

The features labeled "Dangerous Options" are intended to be used sparingly, only on specific sites where you know you need them, because otherwise they can cause a large number of incompatibilities on other sites.

When you change the website options in StopTheMadness, those changes apply immediately to the active Chrome tab, and will apply to all web pages loaded thereafter in any tab. If you already had a web page open in a background tab before you changed the website options, and you want the changes to apply immediately to that web page, you need to switch to the tab and reload the page.

How to Add Website Options:
The Default options for all websites apply to every web page in Chrome, unless you have custom options for a particular site. To create custom options for a website, press the New Customized Website button. There are two ways to specify websites: domain or URL. Examples of domains are "apple.com" and "google.com". If you specify a domain, then subdomains of that domain are automatically covered too. For example, "google.com" also covers "www.google.com", "mail.google.com", etc. If you want a subdomain to have different options than its domain, create a separate item for the subdomain. The longest match always wins, so if you have items for both "google.com" and "mail.google.com", then your "mail.google.com" options will apply when you load the page "https://mail.google.com/". If you want options to apply only to subdomains but not to the domain, put a dot at the beginning: ".google.com" applies to "https://www.google.com/", etc., but not to "https://google.com/".

You may want to apply custom options only to certain paths of a website, in which case you need to specify the website as a full URL. For example, if you enter "https://www.google.com/maps", then the custom options will only apply to Google Maps and not to Google Search at "https://www.google.com/". Subpaths are automatically covered too: "https://www.google.com/maps" would also cover "https://www.google.com/maps/search/apple+park". You can customize subpath options by creating a separate item for the subpath. As with domains, the longest match among URLs always wins. And a URL setting that includes a domain will override a domain setting for the same domain, since the URL is longer. So "https://www.google.com/maps" takes precedence over "www.google.com".

Video Highlight:
When you press the Video Highlight button, everything on the current web page becomes hidden except videos. (If there are no videos, the page will be blank.) Pressing the button again toggles page visibility back on. Video Highlight is temporary and gets reset when you navigate to a new page in the current tab.

Video Highlight is great for accessing all of the native video controls. The website option "Show video controls" works on the majority of videos, but there are some exceptions, and in those cases Video Highlight should work. Or if you prefer, you can use Video Highlight instead of "Show video controls".

When the "Hover shortcuts" website option is enabled, the keyboard shortcut option-command-v triggers the video highlight feature.

Custom <style> element and Custom <script> element:
If you enter text into this area, StopTheMadness will create a custom HTML <style> or <script> element on the web page. The text you enter will become the element's inline CSS or JavaScript. If the text area is empty, then no custom element is created on the web page. StopTheMadness doesn't check your syntax, so you'll probably want to copy the CSS and JS from elsewhere and paste it into StopTheMadness, for example from userscript sites such as Greasy Fork.

You can enable "Also use Default options for all websites" to make the selected website inherit any custom CSS or JS that you've defined in the Default options. This allows you to use your custom CSS or JS on every website, including websites with customized options.

Technical notes: Custom elements are loaded into all frames on the web page. The custom <script> element is created after the DOMContentLoaded event, and you can check if (window === window.top) in JavaScript for the top frame.

Font Replacements:
You can replace one font with a different font on websites by creating a font replacement rule. The replacement can be either a local font from your Mac or a web font from a URL. The font URL can be absolute (https://) or a path relative to the URL of the website.

When you create a font replacement rule, StopTheMadness automatically adds the appropriate @font-face CSS rules to the page. One limitation is that the font-family in the rule can't use use a generic name like serif, sans-serif, or monospace. However, you can customize the default fonts on the page chrome://settings/fonts in Chrome's Preferences.

Use the Style popup if you need fine-grained control over font replacement for particular styles such as bold or italic.

StopTheMadness Font replacements

You can enable "Also use Default options for all websites" to make the selected website inherit any font replacement rules that you've defined in the Default options. This allows you to use your font replacement rules on every website, including websites with customized options.

Redirects:
StopTheMadness can automatically redirect URLs so that when you open a link to one web site, your web browser loads a different site of your choosing. For example, you can redirect new Reddit to old Reddit if you prefer the old user interface. Or you can use privacy-preserving alternatives to popular web sites such as Nitter for Twitter and Invidious for YouTube.

StopTheMadness Redirects

StopTheMadness uses the JavaScript function String.replace() to redirect URLs. To create a redirect, you need a URL matching pattern and a replacement for that pattern. The matching pattern can be either a substring of the URL or a regex expression enclosed in "/" characters. The replacement is always a substring, though there are some special characters you can use in the replacement, as explained by the String.replace() documentation. Examples:

URL matching pattern:
https://www.reddit.com/
Replacement:
https://old.reddit.com/

URL matching pattern:
https://twitter.com/
Replacement:
https://nitter.net/

URL matching pattern:
/^https://en\.wikipedia\.org/([^?#]+)([^?]*)$/
Replacement:
https://en.wikipedia.org/$1?useskin=vector$2

URL matching pattern:
/^mailto:/
Replacement:
https://mail.google.com/mail/?view=cm&fs=1&to=

URL matching pattern:
/^http:/
Replacement:
https:

The redirect rules are matched in the order they appear in StopTheMadness, though the order usually shouldn't matter if the rules are for different domains. If needed, you can use the up arrow buttons to change the order. You can also use the checkboxes to temporarily disable a rule.

Temporarily disable the extension:
If you need to quickly disable the Chrome extension temporarily, just uncheck "Extension enabled" at the top of the popup. The toolbar icon will be badged with "OFF". The extension remains disabled until you check "Extension enabled" again.

Extension disabled

Known Website Compatibility Issues:
In these cases you may want to create custom website options and disable the specific feature.

Home : Support