Set a specified URL as new tab page on Google Chrome.
// ==UserScript== // @id chrome-newtab@loucypher // @name Google Chrome - Set New Tab // @namespace https://github.com/LouCypher/userscripts // @description Set a specified URL as new tab page on Google Chrome. // @version 2.1 // @author LouCypher // @license MIT License // @contributionURL http://loucypher.github.io/userscripts/donate.html?Google+Chrome+-+Set+New+Tab // @homepageURL https://greasyfork.org/scripts/217 // @supportURL https://greasyfork.org/scripts/217/feedback // @resource CHANGELOG https://raw.github.com/LouCypher/userscripts/master/tampermonkey/set-new-tab/CHANGELOG.txt // @resource LICENSE https://raw.github.com/LouCypher/userscripts/master/tampermonkey/set-new-tab/LICENSE.txt // @match http://*/* // @match https://*/* // @run-at document-start // @grant GM_getValue // @grant GM_setValue // @grant GM_registerMenuCommand // ==/UserScript== const REGEXP = /^https?:\/\/www.google.[a-z.]+\/\_\/chrome\/newtab.*/; var isDefaultNewTab = REGEXP.test(top.location.href); function setNewTabURL(aURL, aMsg) { var message = "Enter URL as new tab.\n" + "Enter 'about:blank' to use a blank page.\n" + "Enter empty string to use browser default."; if (aMsg) message = aMsg + "\nor\n" + message; if (isDefaultNewTab) aURL = ""; var newTabURL = prompt(message, aURL); if (newTabURL || newTabURL === "") GM_setValue("newTabURL", newTabURL); } if (isDefaultNewTab) { // If default new tab var newTabURL = GM_getValue("newTabURL", ""); if (newTabURL) { stop(); // in the name of love document.documentElement.innerHTML = "<head></head><body></body>"; location.replace(newTabURL); // Redirect to a specified new tab } } GM_registerMenuCommand("New Tab: set a new location", function() { setNewTabURL(GM_getValue("newTabURL", "")); }); if (!isDefaultNewTab) { GM_registerMenuCommand("New Tab: use current page", function() { setNewTabURL(top.location.href, "Press 'OK' to use current page"); }); }