I was browsing through the Terms of Service and noticed that some parts are hard to read because they solely consist of capital letters. I can imagine there must be a US law stating that certain parts of a Terms of Service must be emphasized, but since we're on the Internet, please don't shout. If those paragraphs do need to be emphasized, use italic or bold formatting and/or place a border around them.


Since impatience is a virtue, I decided to write a userscript which does this:

// ==UserScript==
// @name        Stack Exchange Terms of Service Normalizer
// @namespace   https://github.com/Glorfindel83/
// @description Removes excessive capitalization from Stack Exchange's Terms of Service.
// @match       *://*.stackexchange.com/legal/terms-of-service
// @match       *://*.stackoverflow.com/legal/terms-of-service
// @match       *://*.superuser.com/legal/terms-of-service
// @match       *://*.serverfault.com/legal/terms-of-service
// @match       *://*.askubuntu.com/legal/terms-of-service
// @match       *://*.stackapps.com/legal/terms-of-service
// @match       *://*.mathoverflow.net/legal/terms-of-service
// @grant       none
// ==/UserScript==

(function () {
  "use strict";

  let regex = /[A-Z][^a-z]{16,}?\.(\s|$)/g;  
  $("p").each(function() {
    this.innerHTML = this.innerHTML.replace(regex, function(match) {
      return "<b>" + match.charAt(0) + match.substring(1).toLowerCase() + "</b>";

It decapitalizes proper nouns like Stack Exchange (you can expect that when using regular expressions), but otherwise it reads much better than the original:

enter image description here

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .