🎉 欢迎访问GreasyFork.Org 镜像站!本镜像站由公众号【爱吃馍】搭建,用于分享脚本。联系邮箱📮

Greasy fork 爱吃馍镜像

Github Pull Request From Link

Make pull request branches linkable

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

You will need to install an extension such as Tampermonkey to install this script.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

🚀 安装遇到问题?关注公众号获取帮助

公众号二维码

扫码关注【爱吃馍】

回复【脚本】获取最新教程和防失联地址

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

🚀 安装遇到问题?关注公众号获取帮助

公众号二维码

扫码关注【爱吃馍】

回复【脚本】获取最新教程和防失联地址

// ==UserScript==
// @name             Github Pull Request From Link
// @namespace        https://github.com/jerone/UserScripts/
// @description      Make pull request branches linkable
// @author           jerone
// @copyright        2014+, jerone (https://github.com/jerone)
// @license          CC-BY-NC-SA-4.0; https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode
// @license          GPL-3.0-or-later; http://www.gnu.org/licenses/gpl-3.0.txt
// @homepage         https://github.com/jerone/UserScripts/tree/master/Github_Pull_Request_From
// @homepageURL      https://github.com/jerone/UserScripts/tree/master/Github_Pull_Request_From
// @supportURL       https://github.com/jerone/UserScripts/issues
// @contributionURL  https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=VCYMHWQ7ZMBKW
// @icon             https://github.githubassets.com/pinned-octocat.svg
// @version          20.1
// @grant            none
// @include          https://github.com/*/pull/*
// @exclude          https://github.com/*/*.diff
// @exclude          https://github.com/*/*.patch
// ==/UserScript==

/* eslint security/detect-object-injection: "off" */

(function () {
	String.format = function (string) {
		var args = Array.prototype.slice.call(arguments, 1, arguments.length);
		return string.replace(/{(\d+)}/g, function (match, number) {
			return typeof args[number] !== "undefined" ? args[number] : match;
		});
	};

	function init() {
		Array.prototype.filter
			.call(
				document.querySelectorAll(
					".commit-ref[title], .base-ref[title], .head-ref[title]",
				),
				function (treeSpan) {
					return !treeSpan.querySelector(".unknown-repo");
				},
			)
			.forEach(function (treeSpan) {
				const [repo, branch] = treeSpan.title.split(":");
				var treeParts = treeSpan.querySelectorAll(
					".css-truncate-target",
				);
				var treeLink = document.createElement("a");

				// Show underline on hover.
				Array.prototype.forEach.call(treeParts, function (part) {
					part.style.display = "inline";
				});

				treeLink.setAttribute(
					"href",
					String.format("/{0}/tree/{1}", repo, branch),
				);
				treeLink.innerHTML = treeSpan.innerHTML;
				treeSpan.innerHTML = "";
				treeSpan.appendChild(treeLink);
			});
	}

	// Page load.
	init();

	// On pjax.
	document.addEventListener("pjax:end", init);
})();