// ==UserScript== // @name XKCD Text Replacer // @version 1.0 // @description Replaces text (mostly) according to http://xkcd.com/1288/ // @match http://*/* // @require http://code.jquery.com/jquery-latest.js // @namespace https://greasyfork.org/users/1858 // @downloadURL https://update.greasyfork.icu/scripts/1322/XKCD%20Text%20Replacer.user.js // @updateURL https://update.greasyfork.icu/scripts/1322/XKCD%20Text%20Replacer.meta.js // ==/UserScript== GM_addStyle(".xkcd_replaced:hover { text-decoration:underline; }"); var array = { "witnesses": "dudes I know", "allegedly": "kinda probably", "new study": "Tumblr post", "rebuild": "avenge", "space": "spaaace", "Google Glass": "Virtual Boy", "smartphone": "Pokédex", "electric": "atomic", "senator": "elf-lord", "car": "cat", "election": "eating contest", "congressional leaders": "river spirits", "Homeland Security": "Homestar Runner", "could not be reached for comment": "is guilty and everyone knows it" }; $(function(){ $("body") .find("*") .contents() .filter(function() { return this.nodeType === 3; //Node.TEXT_NODE }) .each(function(){ var text = $(this).text(); for (var val in array){ text = text.replace(new RegExp("\\b" + val + "\\b", "gi"), "" + array[val] + ""); } $(this).replaceWith(text); }); });