たまに18歳未満の人や心臓の弱い人にはお勧めできない情報が含まれることもあるかもしれない、甘くなくて酸っぱくてしょっぱいチラシの裏。RSSによる簡単な更新情報を利用したりすると、ハッピーになるかも知れませんしそうでないかも知れません。
の動向はもえじら組ブログで。
宣伝。日経LinuxにてLinuxの基礎?を紹介する漫画「シス管系女子」を連載させていただいています。 以下の特設サイトにて、単行本まんがでわかるLinux シス管系女子の試し読みが可能!
XPConnectも使えるコマンドラインのJavaScript実行環境で、xpcshellという物がある。XULRunnerをダウンロードするとおまけでついてくる。
xpcshell内ではWindowオブジェクトが無いので、当然だけどWindow.setTimeout()
やWindow.setInterval()
等を使った遅延処理は書けない。でもXPConnectは使えるので、nsITimerの機能を使えば似たようなことはできるはず。
という事で以下のようなスクリプトを書いて-fオプションで読み込ませてみたけど、実はこのままでは期待通りに動いてくれない。
var Cc = Components.classes;
var Ci = Components.interfaces;
function Timeout(aCallback, aDelay) {
this.finished = false;
this.callback = aCallback;
this.init(aDelay);
}
Timeout.prototype = {
init : function(aDelay) {
this.timer = Cc['@mozilla.org/timer;1']
.createInstance(Ci.nsITimer);
this.timer.init(this, aDelay, Ci.nsITimer.TYPE_ONE_SHOT);
},
cancel : function() {
if (!this.timer) return;
delete this.timer;
delete this.callback;
this.finished = true;
},
observe : function(aSubject, aTopic, aData) {
if (aTopic != 'timer-callback') return;
if (typeof this.callback == 'function')
this.callback();
else
eval(this.callback);
this.cancel();
}
};
print('START');
var timeout = new Timeout(
function() {
print('3 SEC AFTER');
},
3000
);
これを実行しても、「START」と出てすぐに終わってしまう。何故かというと、xpcshellはメインスレッドの処理が終わったらその時点でxpcshell自体を終了させてしまうからなのだそうだ。
UxU 0.7.6でも使ってるGecko 1.9以降のスレッド関係の機能を使うと、この問題を解消できる。さっきのスクリプトの末尾に以下を加えて実行すると、今度は「START」と出た3秒後に「3 SEC AFTER」「END」と出てからxpcshellが終了するようになる。
var thread = Cc['@mozilla.org/thread-manager;1']
.getService()
.mainThread;
while (!timeout.finished) {
thread.processNextEvent(true);
}
print('END');
多分nsITimerのタイマー機能以外でも、これ(フラグが立つまでwhileでループ回してメインスレッドを止める)でうまくいくんじゃないかと思う。
XMLHttpRequestも試してみた。
var Cc = Components.classes;
var Ci = Components.interfaces;
var request = Cc['@mozilla.org/xmlextras/xmlhttprequest;1']
.createInstance(Ci.nsIXMLHttpRequest)
.QueryInterface(Ci.nsIDOMEventTarget);
var loaded = false;
request.open('GET', 'http://piro.sakura.ne.jp/', true);
request.addEventListener('load', function() {
print(request.responseText);
loaded = true;
}, false);
request.send(null);
print('REQUESTING...');
var thread = Cc['@mozilla.org/thread-manager;1']
.getService()
.mainThread;
while (!loaded) {
thread.processNextEvent(true);
}
print('END');
これも、ちゃんとレスポンスが帰ってきてから終了した。
McCoyの改造を試みるために、XULRunnerアプリでもアドオンを使えるのかどうかという実験をしてみた。
これだけでいける。逆に、アドオンをアンインストールしたい時は、アドオンのID名が付いたフォルダをプロファイル内の「extensions」フォルダから削除する。
amachangさんはアプリやアドオンそのものの中身をガリガリ書き換えるやり方を紹介されてるけど、僕はこういうやり方はしない方がいいと思ってる。理由は以下の通り。
なので、これらの問題を回避するために、teramakoさんのようにそれ用のアドオンを作って使うか、userChrome.jsを使うかする方がいいと僕は思う。今回McCoy用の改造をアドオンという手法で行うことを試みているのも、そういう理由からだ。
CNETに掲載されたマイク・シェーバーへのインタビュー記事での発言について、無明氏が辛辣な意見を述べておいでだけれども、僕も全面的に同意だなあ。
AIRやSilverlightの方が、だって、僕の目には全然健全に見えますよ。新しい物ガンガン採り入れて、開発者が楽できるようなしくみを着実に整えてて、利用者もストレスなく楽しんで使えるような高性能を持っていて、みんなが期待しているAIRやSilverlightと、同じ機能をずっと不完全な状態でしかまだ実現できていなくて、その進歩も革新的なスピードで進んでいるわけではなく、cairoグラフィックライブラリのポリシーとやらに足を引っ張られていまだにCSS2(CSS3)のtext-shadowを実装できない・今後も実装できそうにない、そんなわけでだんだんみんなの関心が薄れつつあるMozillaとを比べたら、Mozillaの方が不健全としか思えない。
CNETに掲載されたマイク・シェーバーへのインタビュー記事での発言について、無明氏が辛辣な意見を述べておいでだけれども、僕も全面的に同意だなあ。
AIRやSilverlightの方が、だって、僕の目には全然健全に見えますよ。新しい物ガンガン採り入れて、開発者が楽できるようなしくみを着実に整えてて、利用者もストレスなく楽しんで使えるような高性能を持っていて、みんなが期待しているAIRやSilverlightと、同じ機能をずっと不完全な状態でしかまだ実現できていなくて、その進歩も革新的なスピードで進んでいるわけではなく、cairoグラフィックライブラリのポリシーとやらに足を引っ張られていまだにCSS2(CSS3)のtext-shadowを実装できない・今後も実装できそうにない、そんなわけでだんだんみんなの関心が薄れつつあるMozillaとを比べたら、Mozillaの方が不健全としか思えない。
CNETに掲載されたマイク・シェーバーへのインタビュー記事での発言について、無明氏が辛辣な意見を述べておいでだけれども、僕も全面的に同意だなあ。
AIRやSilverlightの方が、だって、僕の目には全然健全に見えますよ。新しい物ガンガン採り入れて、開発者が楽できるようなしくみを着実に整えてて、利用者もストレスなく楽しんで使えるような高性能を持っていて、みんなが期待しているAIRやSilverlightと、同じ機能をずっと不完全な状態でしかまだ実現できていなくて、その進歩も革新的なスピードで進んでいるわけではなく、cairoグラフィックライブラリのポリシーとやらに足を引っ張られていまだにCSS2(CSS3)のtext-shadowを実装できない・今後も実装できそうにない、そんなわけでだんだんみんなの関心が薄れつつあるMozillaとを比べたら、Mozillaの方が不健全としか思えない。
CNETに掲載されたマイク・シェーバーへのインタビュー記事での発言について、無明氏が辛辣な意見を述べておいでだけれども、僕も全面的に同意だなあ。
AIRやSilverlightの方が、だって、僕の目には全然健全に見えますよ。新しい物ガンガン採り入れて、開発者が楽できるようなしくみを着実に整えてて、利用者もストレスなく楽しんで使えるような高性能を持っていて、みんなが期待しているAIRやSilverlightと、同じ機能をずっと不完全な状態でしかまだ実現できていなくて、その進歩も革新的なスピードで進んでいるわけではなく、cairoグラフィックライブラリのポリシーとやらに足を引っ張られていまだにCSS2(CSS3)のtext-shadowを実装できない・今後も実装できそうにない、そんなわけでだんだんみんなの関心が薄れつつあるMozillaとを比べたら、Mozillaの方が不健全としか思えない。
CNETに掲載されたマイク・シェーバーへのインタビュー記事での発言について、無明氏が辛辣な意見を述べておいでだけれども、僕も全面的に同意だなあ。
AIRやSilverlightの方が、だって、僕の目には全然健全に見えますよ。新しい物ガンガン採り入れて、開発者が楽できるようなしくみを着実に整えてて、利用者もストレスなく楽しんで使えるような高性能を持っていて、みんなが期待しているAIRやSilverlightと、同じ機能をずっと不完全な状態でしかまだ実現できていなくて、その進歩も革新的なスピードで進んでいるわけではなく、cairoグラフィックライブラリのポリシーとやらに足を引っ張られていまだにCSS2(CSS3)のtext-shadowを実装できない・今後も実装できそうにない、そんなわけでだんだんみんなの関心が薄れつつあるMozillaとを比べたら、Mozillaの方が不健全としか思えない。
CNETに掲載されたマイク・シェーバーへのインタビュー記事での発言について、無明氏が辛辣な意見を述べておいでだけれども、僕も全面的に同意だなあ。
AIRやSilverlightの方が、だって、僕の目には全然健全に見えますよ。新しい物ガンガン採り入れて、開発者が楽できるようなしくみを着実に整えてて、利用者もストレスなく楽しんで使えるような高性能を持っていて、みんなが期待しているAIRやSilverlightと、同じ機能をずっと不完全な状態でしかまだ実現できていなくて、その進歩も革新的なスピードで進んでいるわけではなく、cairoグラフィックライブラリのポリシーとやらに足を引っ張られていまだにCSS2(CSS3)のtext-shadowを実装できない・今後も実装できそうにない、そんなわけでだんだんみんなの関心が薄れつつあるMozillaとを比べたら、Mozillaの方が不健全としか思えない。
CNETに掲載されたマイク・シェーバーへのインタビュー記事での発言について、無明氏が辛辣な意見を述べておいでだけれども、僕も全面的に同意だなあ。
AIRやSilverlightの方が、だって、僕の目には全然健全に見えますよ。新しい物ガンガン採り入れて、開発者が楽できるようなしくみを着実に整えてて、利用者もストレスなく楽しんで使えるような高性能を持っていて、みんなが期待しているAIRやSilverlightと、同じ機能をずっと不完全な状態でしかまだ実現できていなくて、その進歩も革新的なスピードで進んでいるわけではなく、cairoグラフィックライブラリのポリシーとやらに足を引っ張られていまだにCSS2(CSS3)のtext-shadowを実装できない・今後も実装できそうにない、そんなわけでだんだんみんなの関心が薄れつつあるMozillaとを比べたら、Mozillaの方が不健全としか思えない。
CNETに掲載されたマイク・シェーバーへのインタビュー記事での発言について、無明氏が辛辣な意見を述べておいでだけれども、僕も全面的に同意だなあ。
AIRやSilverlightの方が、だって、僕の目には全然健全に見えますよ。新しい物ガンガン採り入れて、開発者が楽できるようなしくみを着実に整えてて、利用者もストレスなく楽しんで使えるような高性能を持っていて、みんなが期待しているAIRやSilverlightと、同じ機能をずっと不完全な状態でしかまだ実現できていなくて、その進歩も革新的なスピードで進んでいるわけではなく、cairoグラフィックライブラリのポリシーとやらに足を引っ張られていまだにCSS2(CSS3)のtext-shadowを実装できない・今後も実装できそうにない、そんなわけでだんだんみんなの関心が薄れつつあるMozillaとを比べたら、Mozillaの方が不健全としか思えない。