/ / 最新

swk's log - (再改版) bloglines のアイテムをまとめて ChangeLog メモに変換する bookmarklet

2006-10-08

* (再改版) bloglines のアイテムをまとめて ChangeLog メモに変換する bookmarklet [logging][firefox][bl2clog][bloglines] 2 users

ついで [2006-10-08-2] に bloglines アイテムをクリップボードにコピー する方も改版.こちらは bloglines の変更じゃなくて,Firefox の変更に 対する対応になっていると思う.変更箇所は

  • setClipboard が,やっぱりフレームの有るページでは動かなくなっているっぽい.以前入れた対策 [2006-04-22-1] を戻した (ていうか今までのも,ソース表示では省略していただけで実は残していた)
  • 単に a.firstChild.nodeValue とするだけではタイトルを取りこぼすようになった.以前 [2006-07-05-2] 書いた extractText() を使うことにした.

というわけで以下を bookmark してください.

javascript:(function(){
/*
 setClipboard for Firefox
 LastModified : 2006-01-10
 http://la.ma.la/misc/js/setclipboard.txt
*/
function setClipboard(text){
        var url = [
                'data:text/html;charset=utf-8;base64,PGJvZHk+PC9ib2',
                'R5PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KKGZ1',
                'bmN0aW9uKGVuY29kZWQpe3ZhciBzd2ZfZGF0YSA9IFsKICdkYX',
                'RhOmFwcGxpY2F0aW9uL3gtc2hvY2t3YXZlLWZsYXNoO2Jhc2U2',
                'NCxRMWRUQjJ3JywKICdBQUFCNG5EUGdZbGpBd01qSTRNejAlMk',
                'YlMkY5JTJGZTJaZkJnYUdhV3dNRE1uNUthJywKICdrTU10TjRH',
                'ZGdaZ1NJTXdaWEZKYW01UUFFJTJCQm9iaTFCTG5uTXlDcFB6RW',
                '9oU0dJJywKICdQRnAlMkZBeHNEREJRa3BGWkRGUUZGQ2d1eVM4',
                'QXlqSTRBRVVCaXkwVndBJTNEJTNEJwpdLmpvaW4oIiIpOwpkb2',
                'N1bWVudC5ib2R5LmlubmVySFRNTCA9IFsKICc8ZW1iZWQgc3Jj',
                'PSInLHN3Zl9kYXRhLCciICcsCiAnRmxhc2hWYXJzPSJjb2RlPS',
                'csZW5jb2RlZCwnIj4nLAogJzwvZW1iZWQ+JwpdLmpvaW4oIiIp',
                'Owp9KSgi',btoa(encodeURIComponent(text)+'")</'+'script>')
        ].join("");
        var tmp = document.createElement("div");
        tmp.innerHTML = '<iframe src="'+url+'" width="0" height="0"></iframe>';
        with(tmp.style){
      	  position ="absolute";
      	  left = "-10px";
      	  top  = "-10px";
      	  visibility = "hidden";
        };
        
        var b;
        try { /* modified by swk */
            b = top.frames[0].document.body;
        } catch (e) { 
            b = document.body;
        }
        b.appendChild(tmp);
        setTimeout(function(){b.removeChild(tmp)},1000);
}
function extractText(node) {
    var text = '';
    if (node.nodeType == 3) { /* TEXT_NODE */
        text = node.nodeValue;
    } else if (node.hasChildNodes()) {
        var n = node.childNodes.length;
        for (var i = 0; i < n; i++) {
            text = text + extractText(node.childNodes[i]);
        }
    }
    return text;
}
function fmt(title, href) {
    return '\r\n\t* ' + title + ':\r\n\t- ' + href + '\r\n';
}
var clog = '';
var h3s = top.basefrm.document.getElementsByTagName("h3");
for (var i = 0; i < h3s.length; i++) {
    var a = h3s[i].getElementsByTagName("a")[0];
    clog = clog + fmt(extractText(a), a.href);
}
setClipboard(clog);
})();

しかしこう bloglines や Firefox に仕様変更がある度に振り回されるのは 何とかならんものか.何か根本的に方針を間違っている気がしないでもない なあ.

関連記事:
[2006-07-08-1] bloglines の keep new をまとめて解除する bookmarklet
[2006-04-22-1] (改版) bloglines のアイテムをまとめて ChangeLog メモに変換する bookmarklet
[2006-02-11-1] bloglines のアイテムをまとめて ChangeLog メモに変換する bookmarklet
[ コメントを全部見る / コメントを書く] [ TrackBack ( )] [固定リンク]

* [hghajenjql] Hello! Good Site! Thanks you! <a href... (2008-03-26 10:27:46)

* [xrerxwzuqy] NEW DELHI: Investigators believe an e ma... (2007-11-26 08:48:20)

* [dafbefnmkn] 1 quarterback before suffering a knee in... (2007-11-25 12:50:40)

* [xexongxogy] Dick\'s Sporting Goods said Tuesday that... (2007-11-24 12:01:07)

* [jqbplsmjfo] Citroen\'s Sebastien Loeb concluded the ... (2007-11-22 15:16:22)

* ...

最終更新時間: 2007-08-20 03:32


Shingo W. Kagami - swk(at)kagami.org