add `git clone` prefix

a simple script to `add git clone` prefix when copying ssh repo link

目前為 2023-12-06 提交的版本,檢視 最新版本

// ==UserScript==
// @name            add `git clone` prefix
// @description     a simple script to `add git clone` prefix when copying ssh repo link
// @update          2023/11/30 09:50:00
// @namespace       add-git-clone
// @match           *://*/*
// @grant           none
// @version         1.2
// @author          Viki <[email protected]>
// @feedback-url    https://github.com/vikiboss/add-git-clone/issues
// @github          https://github.com/vikiboss/add-git-clone
// @license         MIT
// ==/UserScript==


(function() {
    'use strict';
  
    function shouldPrefix(text) {
        return text.startsWith('git@');
    }

    if (navigator.clipboard) {
        const originalWriteText = navigator.clipboard.writeText;
        navigator.clipboard.writeText = function(data) {
            if (shouldPrefix(data)) {
                data = 'git clone ' + data;
            }
            return originalWriteText.call(navigator.clipboard, data);
        }; 
    }

    document.addEventListener('copy', function(e) {
        let selection = window.getSelection().toString();
        if (shouldPrefix(selection)) {
            e.clipboardData.setData('text/plain', 'git clone ' + selection);
            e.preventDefault();
        }
    });
})();