您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
设置浏览 CTAN 文件时使用一个固定的镜像。
// ==UserScript== // @name Set CTAN Mirror // @name:zh 设置 CTAN 默认镜像 // @name:zh-CN 设置 CTAN 默认镜像 // @namespace https://github.com/rnicrosoft-studio/ // @version 0.3 // @description Set to use a fixed mirror when browsing CTAN files. // @description:zh 设置浏览 CTAN 文件时使用一个固定的镜像。 // @description:zh-CN 设置浏览 CTAN 文件时使用一个固定的镜像。 // @author rnicrosoft // @supportURL https://github.com/rnicrosoft-studio/tampermonkey-scripts // @match *://www.ctan.org/* // @match *://ctan.org/* // @icon https://www.ctan.org/assets/favicon/favicon-32x32.png // @run-at document-end // @grant GM_setValue // @grant GM_getValue // @grant GM_xmlhttpRequest // ==/UserScript== (function() { 'use strict'; // First, set the endpoint of your preferred mirror host here. // Check <https://ctan.org/mirrors/mirmon> for the latest active CTAN mirrors list. var mirrorEndpoint = 'mirrors.sjtug.sjtu.edu.cn/ctan'; document.querySelectorAll('a[href^="http://mirrors.ctan.org"], a[href^="https://mirrors.ctan.org"]').forEach(function(item) { //console.log(item.getAttribute('href')) item.setAttribute('href', item.getAttribute('href').replace('mirrors.ctan.org', mirrorEndpoint)) }) })();