ArxivRedirector

An Arxiv Redirector for China Mainland

  1. // ==UserScript==
  2. // @name ArxivRedirector
  3. // @namespace https://github.com/tao-shen/ArxivRedirector
  4. // @homepage https://github.com/tao-shen/ArxivRedirector
  5. // @version 1.2
  6. // @author tao.shen
  7. // @description An Arxiv Redirector for China Mainland
  8. // @include /^https?://(.*\.)?arxiv\.org/.*/
  9. // @include http://xxx.itp.ac.cn/*
  10. // @run-at document-start
  11. // ==/UserScript==
  12.  
  13. window.onload=function() {
  14. 'use strict';
  15. if (location.href.search('xxx.itp.ac.cn') == -1){
  16. function incompletePDF(url){ return url.includes('/pdf') && !url.endsWith('pdf') }
  17. function abstractURL(url){ return url.includes('/abs') }
  18. let mirrors = {
  19. 'China':'xxx.itp.ac.cn',
  20. }
  21. let mirror='China'
  22. let url = location.href.replace(location.hostname,mirrors[mirror]).replace('https','http')
  23. url = incompletePDF(url) ? url+'.pdf' : url
  24. console.log(mirror+':'+url)
  25. location.replace(url,'xxx.itp.ac.cn')}
  26. }