Sleipnirのタブを共有
さっき、書きかけの日記が消えたので省略モード。
たいそうなタイトルですが、たいした内容じゃないです。
複数台のWindowsマシンでLANを構築してるときに
Aのマシンで開いてるのをBのマシンでも見たいってときないです?
僕はB5ノートで見ていたWEBを家ではデスクトップマシン(17型モニタ)
で広々と見たいってなるんです。
ってことで、タブに展開しているページのURLをクリップボードに格納して
クリップボードLAN共有ソフト(NetClipなど)を使って
別マシンで展開するスクリプトを作ってみました。
クリップボードLAN共有ソフトと連携して動く訳ではありません。
クリップボードLAN共有ソフトは手動で操作してください。m(。−_−。)m
/**********************************************************
「全タブのURLをクリップボードに送る」ver1.00 2006/07/19
Written by Stewie
<簡単な説明>
開いているタブのURLを改行(\n)区切りでクリップボードに送る。
「クリップボードにあるURLを新規タブで開く」スクリプトとの併用を
想定しています。
もちろん、メモに貼り付けたりもいいかも。
<version情報>
ver 1.00 とりあえず完成。
**********************************************************/
var window;
var pnir;
var document;
var id;
var nid;
pnir = new ActiveXObject("Sleipnir.API");
id = pnir.GetDocumentID(pnir.ActiveIndex);
document = pnir.GetDocumentObject(id);
window = pnir.GetWindowObject(id);
var tab_len = pnir.GetCount;
//誤動作防止のためにクリップボードを空にする
window.clipboardData.clearData("Text");
// 選択文字列をクリップボードに取得するための前処理
window.clipboardData.setData("Text", "");
copiedtext = window.clipboardData.getData("text");
//全タブのURLを格納
for(i=0;i<tab_len;i++){
id = pnir.GetDocumentID(i);
document = pnir.GetDocumentObject(id);
window = pnir.GetWindowObject(id);
copiedtext += document.location.href + "\n" //document.title + "\n" +
}
//クリップボードにセット
window.clipboardData.setData("Text", copiedtext);
window.alert("done");
document = null;
pnir = null;
window = null;
/**********************************************************
「クリップボードにあるURLを新規タブで開く」ver1.00 2006/07/19
Written by Stewie
<簡単な説明>
クリップボード(コピーバッファ)にあるURLを新規タブに展開する。
「全タブのURLをクリップボードに送る」スクリプトを実行した後に
このスクリプトを実行することを想定しています。
<version情報>
ver 1.00 とりあえず完成。
**********************************************************/
var window;
var pnir;
var document;
var id;
var nid;
pnir = new ActiveXObject("Sleipnir.API");
id = pnir.GetDocumentID(pnir.ActiveIndex);
document = pnir.GetDocumentObject(id);
window = pnir.GetWindowObject(id);
var copiedtext;
//クリップボードのデータをcopiedtext変数に格納
copiedtext = window.clipboardData.getData("text");
//改行(\n)で各URLが区切られているものを各個配列に。
var URLArray = copiedtext.split("\n");
//配列の各要素を新規タブで展開。
for(i=0; i<URLArray.length;i++ ){
pnir.NewWindow(URLArray[i], true);
}
window.alert("done");
document = null;
pnir = null;
window = null;
2006-07-16 - griffin-stewieの日記
のひとりごとにも書いてたコードの
はてなダイアリーへの記載方法が
さっきやっとわかりました。
恥ずかしい〜