快速将 GitHub 项目下载到本地,并支持选择 VSCode 或 VSCode Insiders
当前为
// ==UserScript==
// @name Open With VSCode
// @name:en Open With VSCode
// @version 1.1.1
// @description 快速将 GitHub 项目下载到本地,并支持选择 VSCode 或 VSCode Insiders
// @description:en Quickly download GitHub project to local and choose VSCode or VSCode Insiders
// @author hoorn
// @icon https://code.visualstudio.com/favicon.ico
// @license MIT
// @compatible chrome Latest
// @compatible firefox Latest
// @compatible edge Latest
// @noframes
// @grant window.onurlchange
// @match https://github.com/*
// @namespace https://greasyfork.org/users/1276388
// ==/UserScript==
(() => {
"use strict";
const $ = document.querySelector.bind(document);
function openWithVSCode() {
const actions = $('.pagehead-actions');
if (!actions || $('#openwithvscode-button')) return;
const btnHTML = `
<li>
<div class="BtnGroup">
<a id="openwithvscode-button" class="btn btn-sm BtnGroup-item">Open with VSCode</a>
<a id="openwithvscodeinsiders-button" class="btn btn-sm BtnGroup-item">Open with VSCode Insiders</a>
</div>
</li>`;
actions.insertAdjacentHTML('afterBegin', btnHTML);
const projectUrl = window.location.href + ".git";
document.getElementById('openwithvscode-button').addEventListener('click', function (e) {
e.preventDefault();
window.location.href = `vscode://vscode.git/clone?url=${projectUrl}`;
});
document.getElementById('openwithvscodeinsiders-button').addEventListener('click', function (e) {
e.preventDefault();
window.location.href = `vscode-insiders://vscode.git/clone?url=${projectUrl}`;
});
}
openWithVSCode();
})();