// ==UserScript== // @title twitter2hatena // @name twitter2hatena // @namespace http://tampermonkey.net/ // @version 0.1 // @description try to take over the world! // @author You // @match https://twitter.com/*/status/* // @grant none // ==/UserScript== var result = document.evaluate('//div[@class="ProfileTweet-actionList js-actions"]', document, null, 7, null); result.snapshotItem(0).insertAdjacentHTML('beforeend', ''); var result2 = document.evaluate('id("regist2")', document, null, 7, null); result2.snapshotItem(0).addEventListener('click', sample, false); function sample() { for (var i = 0; i < 128; i++) { if (!('tweet' + (i + 1) in localStorage)) { if (i == 127) { alert("保存できるURLの数は128までに制限しています。\nローカルストレージから登録したキーを削除してください"); break; } var cb = list_check(i + 1, location.href); if (cb != 1) { localStorage.setItem('tweet' + (i + 1), location.href); alert("登録しました"); break; } else { break; } } } //重複削除 function list_check(lp, n_name) { var flag = 0; for (var i = 0; i < lp; i++) { if (localStorage.getItem('tweet' + (i + 1)) == n_name) { alert("このツイートは既に登録されています"); flag = 1; break; } } return flag; } } //リスト表示処理 var result4 = document.evaluate('//div[@class="ProfileTweet-actionList js-actions"]', document, null, 7, null); result4.snapshotItem(0).insertAdjacentHTML('beforeend', ''); var result5 = document.evaluate('id("list2")', document, null, 7, null); result5.snapshotItem(0).addEventListener('click', sample2, false); function sample2() { localStorage.setItem("n_url", location.href); history.pushState(null, null, "/koko_nanimo_naidesuyo3"); document.body.innerHTML = ""; for (var i = 0; i < 128; i++) { if ('tweet' + (i + 1) in localStorage) { document.body.insertAdjacentHTML('beforeend', '