uso reader Fork

    @@ -5,7 +5,6 @@ * @inclide https://* * @license MIT http://opensource.org/licenses/MIT * @javascript_url - * @private WIP */ // e.g. show my uso
    @@ -50,7 +49,7 @@ toMirror(link); }); - // TBD click binding + // TBD debounce or click binding document.body.addEventListener('DOMNodeInserted', function (evt) { toMirror(evt.target); });
  • /*
     * @title uso reader
     * @description replace Userscripts.org to readonly-mirror
     * @inclide http://*
     * @inclide https://*
     * @license MIT http://opensource.org/licenses/MIT
     * @javascript_url
     */
    
    // e.g. show my uso
    // http://noromanba.flavors.me
    // https://userscripts.org/users/436459/scripts
    // http://userscripts.org:8080/users/436459/scripts
    
    // c.f. smilar script
    // https://greasyfork.org/scripts/2222-uso-mirror/code
    
    // for readonly use; script install are unsafe
    (function () {
        var HOST = [
            'userscripts-mirror.org',
            'www.webextender.net'
        ].shift();
    
        // TODO debouncing w/ queue
        //      https://gist.github.com/noromanba/2669793
        /*
        var debounce = function (func, threshould) {
            var timer,
                slice = Array.prototype.slice;
            return function () {
                var context = this, args = slice.call(arguments);
                clearTimeout(timer);
                timer = setTimeout(function () {
                    func.apply(context, args);
                }, threshould || 10);
            };
        };
        //*/
    
        var toMirror = function (link) {
            link.protocol = 'http';
            link.hostname = HOST;
            link.port = 80;  // readonly mode when uso killing; "http://userscript.org:8080/..."
        };
    
        // TBD avoid cache sites; e.g. wayback, archive.today et al.
        Array.prototype.forEach.call(document.querySelectorAll('a[href*="://userscripts.org"]'), function (link) {
                toMirror(link);
        });
    
        // TBD debounce or click binding
        document.body.addEventListener('DOMNodeInserted', function (evt) {
            toMirror(evt.target);
        });
    })();
  • Permalink
    このページへの個別リンクです。
    RAW
    書かれたコードへの直接のリンクです。
    Packed
    文字列が圧縮された書かれたコードへのリンクです。
    Userscript
    Greasemonkey 等で利用する場合の .user.js へのリンクです。
    Loader
    @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
    Metadata
    コード中にコメントで @xxx と書かれたメタデータの JSON です。

History

  1. 2014/11/03 22:15:15 - 2014-11-03
  2. 2014/10/18 16:29:15 - 2014-10-18
  3. 2014/10/18 16:23:31 - 2014-10-18
  4. 2014/10/18 16:19:41 - 2014-10-18
  5. 2014/10/18 16:17:26 - 2014-10-18
  6. 2014/10/18 14:36:18 - 2014-10-18
  7. 2014/10/16 21:08:47 - 2014-10-16
  8. 2014/10/16 20:55:16 - 2014-10-16
  9. 2014/10/16 20:51:31 - 2014-10-16