您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
many things for github PRs
// ==UserScript== // @name PR page improvements // @namespace http://tampermonkey.net/ // @version 1.5 // @description many things for github PRs // @author Me // @match https://github.com/ebuzzing/*/pull/* // @icon https://www.google.com/s2/favicons?sz=64&domain=github.com // @grant none // ==/UserScript== (function() { 'use strict'; let lastUrl = location.href; // -------- // -------- PR jobs no scroll, infinite height // -------- // Add style to the document const style = document.createElement('style'); style.textContent = '.branch-action-item.open>.merge-status-list.hide-closed-list { max-height: 1000vh !important; }'; document.head.appendChild(style); // Create a MutationObserver to monitor the DOM for changes const observer = new MutationObserver(mutations => { mutations.forEach(mutation => { if (mutation.addedNodes.length > 0) { // Check if any of the added nodes contain the elements we are interested in // -------- // -------- PR jobs links target blank // -------- document.querySelectorAll('a.status-actions').forEach(e => { e.setAttribute('target', '_blank'); }); // -------- // -------- All sonarcloud links target blank // -------- [...document.querySelectorAll('a')].filter(e => e.getAttribute('href').includes("http")).forEach(link => link.setAttribute('target', '_blank')); // -------- // -------- For Marine highlight buttons in red in PRs that do not belong to you // -------- if (document.querySelector("#partial-discussion-header > div.d-flex.flex-items-center.flex-wrap.mt-0.gh-header-meta > div.flex-auto.min-width-0.mb-2 > a").innerText !== "github-louis-yvelin") Array.from(document.querySelectorAll("div.merge-message button")).forEach((e) => e.setAttribute('style', "background-color: red")); } lastUrl = location.href; }); }); // Configure the observer to watch for additions to the child list of the target node const config = { childList: true, subtree: true }; // Start observing the document body for changes observer.observe(document.body, config); // -------- // -------- Add hide whitespace by default // -------- const goToFilesElement = document.querySelector("#repo-content-pjax-container > div > div.clearfix.js-issues-results > div.px-3.px-md-0.ml-n3.mr-n3.mx-md-0.tabnav > nav > a:nth-child(4)"); goToFilesElement&& goToFilesElement.setAttribute('href', goToFilesElement.getAttribute('href') + '?w=1'); })();