// ==UserScript== // @name Reddit search on Google // @version 1.3 // @description Adds a button to search Reddit posts with Google // @author Mario O.M. // @namespace https://github.com/marioortizmanero/reddit-search-on-google/ // @include http*://www.google.*/search* // @include http*://google.*/search* // @run-at document-end // @downloadURL none // ==/UserScript== // Change this to false if you don't want an icon const useIcon = true; // Change this to true if you want to add the button to the right of the 'Tools' button const appendRight = false; const queryRegex = /q=[^&]+/g; const siteRegex = /\+site(?:%3A|\:).+\.[^&+]+/g; const redditUrl = "+site%3Areddit.com"; const redditIcon = ''; (function() { // Creating the element var el = document.createElement('div'); el.className = 'hdtb-mitem'; var link = document.createElement('a'); // Adding the svg icon if (useIcon) { var span = document.createElement('span'); span.className = 'bmaJhd iJddsb'; span.innerHTML += redditIcon; link.appendChild(span); } // Hyperlink to add 'site:reddit.com' to the query link.appendChild(document.createTextNode('Reddit')); link.href = window.location.href.replace(queryRegex, (match) => { // Replaces the existing `site` flags return match.search(siteRegex) >= 0 ? match.replace(siteRegex, redditUrl) : match + redditUrl; }); el.appendChild(link); // Inserting the element into Google search if (appendRight) { var toolsBtn = document.getElementById('hdtb-tls'); toolsBtn.parentNode.insertBefore(el, toolsBtn.nextSibling); } else { var button = document.getElementById('hdtb-msb-vis'); button.appendChild(el); } })();