Skip to content

Instantly share code, notes, and snippets.

@iqiancheng
Last active January 10, 2024 05:38
Show Gist options
  • Save iqiancheng/275ce996648ba4a186f51a8d85a2d3b7 to your computer and use it in GitHub Desktop.
Save iqiancheng/275ce996648ba4a186f51a8d85a2d3b7 to your computer and use it in GitHub Desktop.
Arxiv Assistants: HTML version of arxiv & AI chat for arxiv
// ==UserScript==
// @name Arxiv Assistants
// @namespace http://tampermonkey.net/
// @version 0.3.10
// @description HTML version of arxiv & AI chat for arxiv
// @author @iqiancheng
// @match https://arxiv.org/abs/*
// @icon https://www.google.com/s2/favicons?sz=64&domain=arxiv.org
// @grant none
// @license MIT
// ==/UserScript==
// inspired by barret.china@gmail.com
(function() {
'use strict';
const createLink = function(name, url) {
const link = document.createElement('a');
link.style.cssText = `display: inline-block; border-left: 2px solid #fff; padding-left: 10px; margin-left: 10px;`;
link.target = '_blank';
link.href = url;
link.textContent = name;
return link;
};
const href = window.location.href;
const htmlVersionEntry = createLink('HTML(ar5iv)', href.replace('arxiv.org', 'ar5iv.org'));
const htmlVersionFromVanity = createLink('HTML(vanity)', href.replace('arxiv.org', 'www.arxiv-vanity.com').replace('/abs/', '/papers/').replace('/pdf/', '/papers/').replace('.pdf', '/'));
const aiChatEntry = createLink('AI Chat', href.replace('arxiv.org', 'arxiw.org'));
const ydChatEntry = createLink('en-CN Translate', `https://fanyi.youdao.com/trans/#/home?keyfrom=fanyiweb&url=${href}&type=undefined`);
const target = document.querySelector('.header-breadcrumbs');
target.appendChild(document.createElement('a'));
target.appendChild(htmlVersionFromVanity);
target.appendChild(htmlVersionEntry);
target.appendChild(aiChatEntry);
target.appendChild(ydChatEntry);
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment