// ==UserScript== // @name Return Pagination to Google // @description Makes Google searches break down into separate pages, rather than displaying as one continuous page. (Quick & Dirty) // @namespace Violentmonkey Scripts // @match https://www.google.com/search // @grant none // @version 1.0 // @author Jupiter Liar // @license Attribution CC BY // @description 6/10/2023, 6:48 AM // @downloadURL none // ==/UserScript== // Check if the page has the required conditions if (document.getElementById('botstuff') && !document.querySelector('table.AaVjTc')) { // Create the table element var table = document.createElement('table'); table.className = 'AaVjTc'; table.style.margin = 'auto'; table.style.marginBottom = '32px'; // Create a variable to store the page number var pageNumber; // Extract the page number from the URL var startParam = "&start="; var startIndex = window.location.href.indexOf(startParam); if (startIndex === -1) { pageNumber = 1; } else { var startValue = parseInt(window.location.href.substring(startIndex + startParam.length)); pageNumber = Math.floor(startValue / 10) + 1; } // Create the table columns for (var i = 0; i < 11; i++) { var column = document.createElement('td'); column.style.textAlign = 'center'; column.style.verticalAlign = 'baseline'; column.style.minWidth = '20px'; column.style.fontSize = '16pt'; // Add padding to middle columns if (i > 0 && i < 10) { column.style.padding = '0 8pt'; } // Add padding to previous and next columns if (i === 0 || i === 10) { column.style.padding = '0 24pt'; } // Add content to the columns if (i === 0) { if (pageNumber !== 1) { var previousLink = document.createElement('a'); previousLink.href = window.location.href.replace(startParam + startValue, startParam + (startValue - 10)); previousLink.innerText = '< Previous'; column.appendChild(previousLink); } } else if (i === 10) { var nextLink = document.createElement('a'); nextLink.href = window.location.href.replace(startParam + startValue, startParam + (startValue + 10)); nextLink.innerText = 'Next >'; column.appendChild(nextLink); } else { // Calculate the page number for the column var columnNumber; if (pageNumber < 5) { columnNumber = i; } else if (pageNumber >= 5) { columnNumber = pageNumber - 5 + i; } if (columnNumber === pageNumber) { // Add page number without link column.innerText = columnNumber; } else { // Add page number with link var newStartValue = (columnNumber - 1) * 10; if (newStartValue === 0) { newStartValue = "0"; } if (startIndex === -1) { column.innerHTML = `${columnNumber}`; } else { column.innerHTML = `${columnNumber}`; } } } // Append the column to the table table.appendChild(column); } // Append the table to the 'botstuff' div var botstuffDiv = document.getElementById('botstuff'); botstuffDiv.appendChild(table); }