とりあえず、書きました。
書いたと言っても、ただ、関数を上書きして、再度 script を実行しているだけですが。
ソースコード
ご自由にご利用、改造、配布してください。
// ==UserScript== // @name DiaryBackup // @namespace http://d.hatena.ne.jp/ // @include http://d.hatena.ne.jp/*/edit // @include http://d.hatena.ne.jp/*/edit?date=* // ==/UserScript== with (unsafeWindow) { var nativeDocWrite = document.write; var script = $A(document.getElementsByTagName('script')).last(); var writeBuffer = []; document.write = function(html) { writeBuffer.push(html); }; try { LocalStorage.getFlashVersion = function() { return navigator.plugins["Shockwave Flash"].description.match(/\d+/)[0]; }; document.write('\ <div\ id="storageswf-container"\ style="background-color:#DDDDDD; border:2px solid #999999; padding:5;">\ <div\ style="text-align:left; width:215; font-weight:bold; font-size:11pt">\ <img\ id="backup-setting-close"\ src="/images/admin/backup-close.gif"\ style="float:right; cursor:pointer" />\ \u30c0\u30a4\u30a2\u30ea\u30fc\u4fdd\u5b58\u5bb9\u91cf\u8a2d\u5b9a\ </div>\ '); LocalStorage.writeFlashTag('storageswf', '/tools/storage.swf'); document.write('\ <div\ class="note"\ style="width:215; font-size:10pt; text-align:left">\ \u3053\u306e\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u306b\u4fdd\u5b58\u3059\u308b\u30c7\u30fc\u30bf\u306e\u6700\u5927\u5bb9\u91cf\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002\ <br />\ \u53e4\u3044\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u30c7\u30fc\u30bf\u306f\u81ea\u52d5\u7684\u306b\u524a\u9664\u3055\u308c\u307e\u3059\u304c\u3001\ \u983b\u7e41\u306b\u5bb9\u91cf\u304c\u4e0d\u8db3\u3059\u308b\u5834\u5408\u306f\u6700\u5927\u5bb9\u91cf\u3092\u5897\u3084\u3057\u3066\u304f\u3060\u3055\u3044\u3002\ </div>\ </div>\ '); } catch(e) { alert(e); } finally { var dummy = document.createElement('div'); dummy.innerHTML = writeBuffer.join(''); document.body.insertBefore(dummy, script); document.write = nativeDocWrite; } }