找到Github的初始提交

这将帮助用户获得一个按钮,以点击到Github提交页面的末尾

目前为 2025-04-08 提交的版本。查看 最新版本

// ==UserScript==
// @name         Find the initial Github commit
// @description  This will help users get a button to click to end of the github commits page.
// @name:ar      العثور على الالتزام الأولي في Github
// @description:ar سيساعد هذا المستخدمين في الحصول على زر للنقر للوصول إلى نهاية صفحة التزامات Github
// @name:bg      Намери първоначалния Github коментар
// @description:bg Това ще помогне на потребителите да получат бутон за кликване до края на страницата с коментари в Github
// @name:cs      Najít počáteční Github commit
// @description:cs Toto pomůže uživatelům získat tlačítko pro kliknutí na konec stránky s commity v Githubu
// @name:da      Find den oprindelige Github commit
// @description:da Dette vil hjælpe brugerne med at få en knap til at klikke til slutningen af Github commits-siden
// @name:de      Finde den ursprünglichen Github-Commit
// @description:de Dies hilft Benutzern, einen Button zu erhalten, um zum Ende der Github-Commits-Seite zu gelangen
// @name:el      Βρες την αρχική δέσμευση Github
// @description:el Αυτό θα βοηθήσει τους χρήστες να αποκτήσουν ένα κουμπί για να κάνουν κλικ στο τέλος της σελίδας δεσμεύσεων Github
// @name:en      Find the initial Github commit
// @description:en This will help users get a button to click to end of the github commits page
// @name:eo      Trovi la komencan Github-komiton
// @description:eo Ĉi tio helpos uzantojn akiri butonon por alklaki ĝis la fino de la Github-komitpaĝo
// @name:es      Encuentra el commit inicial de Github
// @description:es Esto ayudará a los usuarios a obtener un botón para hacer clic hasta el final de la página de commits de Github
// @name:fi      Löydä alkuperäinen Github-commit
// @description:fi Tämä auttaa käyttäjiä saamaan painikkeen, jota klikkaamalla pääsee Github-committien sivun loppuun
// @name:fr      Trouver le commit initial de Github
// @description:fr Cela aidera les utilisateurs à obtenir un bouton pour cliquer jusqu'à la fin de la page des commits Github
// @name:fr-CA   Trouver le commit initial de Github
// @description:fr-CA Ceci aidera les utilisateurs à obtenir un bouton pour cliquer jusqu’à la fin de la page des commits Github
// @name:he      מצא את ההתחייבות הראשונית של Github
// @description:he זה יעזור למשתמשים לקבל כפתור ללחוץ עליו עד סוף דף ההתחייבויות של Github
// @name:hr      Pronađi početni Github commit
// @description:hr Ovo će pomoći korisnicima da dobiju gumb za klik do kraja stranice s Github commitima
// @name:hu      Keresd meg az eredeti Github commitot
// @description:hu Ez segít a felhasználóknak egy gombot szerezni, amellyel a Github commitok oldalának végére kattinthatnak
// @name:id      Temukan komit awal Github
// @description:id Ini akan membantu pengguna mendapatkan tombol untuk diklik hingga akhir halaman komit Github
// @name:it      Trova il commit iniziale di Github
// @description:it Questo aiuterà gli utenti a ottenere un pulsante da cliccare fino alla fine della pagina dei commit di Github
// @name:ja      Githubの初期コミットを見つける
// @description:ja これはユーザーがGithubコミットページの最後にクリックするためのボタンを取得するのに役立ちます
// @name:ka      იპოვე Github-ის საწყისი კომიტი
// @description:ka ეს დაეხმარება მომხმარებლებს მიიღონ ღილაკი Github-ის კომიტების გვერდის ბოლომდე დასაკლიკებლად
// @name:ko      Github 초기 커밋 찾기
// @description:ko 이는 사용자가 Github 커밋 페이지 끝까지 클릭할 버튼을 얻는 데 도움이 될 것입니다
// @name:nb      Finn den opprinnelige Github-commiten
// @description:nb Dette vil hjelpe brukere med å få en knapp å klikke på til slutten av Github-commitsiden
// @name:nl      Vind de initiële Github-commit
// @description:nl Dit zal gebruikers helpen een knop te krijgen om te klikken naar het einde van de Github-commits-pagina
// @name:pl      Znajdź początkowy commit Githuba
// @description:pl To pomoże użytkownikom zdobyć przycisk do kliknięcia na koniec strony commitów Githuba
// @name:pt-BR   Encontre o commit inicial do Github
// @description:pt-BR Isso ajudará os usuários a obter um botão para clicar até o final da página de commits do Github
// @name:ro      Găsește comitul inițial Github
// @description:ro Acest lucru va ajuta utilizatorii să obțină un buton pe care să dea clic până la sfârșitul paginii de commituri Github
// @name:ru      Найти начальный коммит Github
// @description:ru Это поможет пользователям получить кнопку для перехода к концу страницы коммитов Github
// @name:sk      Nájdi počiatočný Github commit
// @description:sk Toto pomôže používateľom získať tlačidlo na kliknutie na koniec stránky s commitmi Github
// @name:sr      Pronađi početni Github komit
// @description:sr Ovo će pomoći korisnicima da dobiju dugme za klik do kraja stranice sa Github komitima
// @name:sv      Hitta den ursprungliga Github-committen
// @description:sv Detta kommer att hjälpa användare att få en knapp att klicka på till slutet av Github-commit-sidan
// @name:th      ค้นหาคอมมิตแรกเริ่มของ Github
// @description:th นี้จะช่วยให้ผู้ใช้ได้รับปุ่มให้คลิกไปยังท้ายหน้าคอมมิตของ Github
// @name:tr      Github'un ilk commit'ini bul
// @description:tr Bu, kullanıcıların Github commitler sayfasının sonuna kadar tıklamaları için bir düğme almasına yardımcı olacak
// @name:ug      Github نىڭ دەسلەپكى تەستىقلىمىسىنى تېپىش
// @description:ug بۇ ئىشلەتكۈچىلەرنىڭ Github تەستىقلىما بېتىنىڭ ئاخىرىغا بېسىش ئۈچۈن بىر كۇنۇپكا ئېلىشىغا ياردەم بېرىدۇ
// @name:uk      Знайти початковий коміт Github
// @description:uk Це допоможе користувачам отримати кнопку для переходу до кінця сторінки комітів Github
// @name:vi      Tìm commit ban đầu của Github
// @description:vi Điều này sẽ giúp người dùng có được một nút để nhấp đến cuối trang commit của Github
// @name:zh      找到Github的初始提交
// @description:zh 这将帮助用户获得一个按钮,以点击到Github提交页面的末尾
// @name:zh-CN   找到Github的初始提交
// @description:zh-CN 这将帮助用户获得一个按钮,以点击到Github提交页面的末尾
// @name:zh-HK   搵到Github嘅最初提交
// @description:zh-HK 呢個將會幫用戶攞到一個掣,畀佢哋點擊到Github提交頁面嘅尾部
// @name:zh-SG   找到Github的初始提交
// @description:zh-SG 这将帮助用户获得一个按钮,以点击到Github提交页面的末尾
// @name:zh-TW   找到Github的初始提交
// @description:zh-TW 這將幫助用戶獲得一個按鈕,以點擊到Github提交頁面的末尾
// @namespace    http://tampermonkey.net/
// @version      0.2.1.1
// @author       Mutu,aspen138
// @match        https://github.com/*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=github.com
// @grant        none
// @license      MIT
// ==/UserScript==

(function() {
    'use strict';
    let reg = new RegExp("\/commits\/")
    var isInsert = false
    var timer = setInterval(() => {
        if (isInsert) {
            if (reg.test(window.location.pathname)) {
            } else {
                getCommits()
                isInsert = false
            }
        } else {
            if (reg.test(window.location.pathname)) {
                insertBtn()
                isInsert = true
            } else {
                getCommits()
            }
        }
    }, 1000);

    function getCommits() {
        // Attempt to find the span that displays the commit count
        let commitSpan = document.querySelector("span.fgColor-default.custom-highlight");
        if (commitSpan) {
            // Example innerText might be "90 Commits", so remove "Commits" and trim extra space
            let commitText = commitSpan.innerText.replace("Commits", "").trim();
            //let commitNumber = parseInt(commitText, 10);

            // Store just the numeric portion in sessionStorage
            sessionStorage.setItem("commits", commitText);
        }
    }

    function insertBtn() {
        // Get the total commit count from sessionStorage
        let commitsStr = sessionStorage.getItem("commits");
        let commitsNum = parseInt(commitsStr.replace(/,/, ""), 10);
        console.log("commitsNum=",commitsNum);
        // Select the container that holds the pagination buttons
        let btnGroup = document.querySelector(".Box-sc-g0xbh4-0.prc-ButtonGroup-ButtonGroup-vcMeG");
        if (!btnGroup) return; // Guard clause if the container isn't found

        // Select the "Next" pagination link
        let btnToNext = document.querySelector("[data-testid='pagination-next-button']");
        if (!btnToNext) return; // Guard clause if there's no "Next" button

        // Create the wrapper div
        let newDiv = document.createElement("div");

        // Create the new "Click To End" anchor
        let btnToEnd = document.createElement("a");
        btnToEnd.type = "button";
        btnToEnd.tabIndex = 0;
        btnToEnd.setAttribute("data-testid", "pagination-last-button");
        btnToEnd.className = "prc-Button-ButtonBase-c50BI fgColor-accent text-normal";
        btnToEnd.setAttribute("data-loading", "false");
        btnToEnd.setAttribute("data-size", "medium");
        btnToEnd.setAttribute("data-variant", "invisible");
        btnToEnd.href = btnToNext.href.replace(/\+\d+/g, `+${commitsNum-4}`);

        // Construct the inner span structure to match the new button style
        let spanContent = document.createElement("span");
        spanContent.setAttribute("data-component", "buttonContent");
        spanContent.className = "prc-Button-ButtonContent-HKbr-";

        let spanText = document.createElement("span");
        spanText.setAttribute("data-component", "text");
        spanText.className = "prc-Button-Label-pTQ3x";
        spanText.innerText = "Click To End";

        // Assemble all parts
        spanContent.appendChild(spanText);
        btnToEnd.appendChild(spanContent);
        newDiv.appendChild(btnToEnd);
        console.log("newDiv=",newDiv);
        btnGroup.appendChild(newDiv);
        console.log("btnGroup=", btnGroup);
    }
})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址