Entries from 2007-11-01 to 1 month

google code searchでサービス名を検索する

tumblr - Google Code Search そのサービスをなんかするコードがヒットする。何かを探すときには便利かも。

vim paste

ペーストしたとき自動的に :set paste するハック が素晴らしい - PBD - subtechset paste:set paste すると snippetsEmu.vim が動かない < 43HR:a!今知った。

10 Semantic Apps to Watch読んだ

10 Semantic Apps to WatchFreebaseからはじまるのでデータ付けしたりするやつを期待して読んだら半分くらい自然言語サーチエンジンだった。TripItはサービスとしてよさげだった。航空機の予約ほんとむかつく。ウェブで見たところで結局電話したらないとかな…

GM GM_xmlhttpRequestでリダイレクトされたかどうかがわかんない

GM_xmlhttpRequestが昔のFirefoxでのセキュリティを考慮してるんだろうけどnsIXMLHttpRequestのもってるメンバのほんの一部しか渡してくれないので、リクエストがリダイレクトされたかどうかとかどうがんばってもわかんない。ふつうのXMLHttpRequestだとchan…

values, keys / firebug

var a = {a: 1, b:2}; values ( a ) // [1,2] keys ( a ) // [a,b] firebugでこういうことができるのいましった。調べたら FireBugのCommand Line API にふつうにのってた。どうでもいいけどfirebugはキーワードになっててfirefoxはなんでキーワードになって…

window.crypto / Firefox

JavaScript crypto - MDCこんなのあるって。window.cryptoでなんかアクセスできる。ぱっとみでなににつかうかがわかった window.crypto.random(10) window.crypto.disableRightClick() やってみたらどっちもNOT_IMPLEMENTEDだった。 Interface Reference - n…

ツールを自分で作る

F's Garage:予算5万円でモバツイッター用MySQLサーバを追加 現appleの増井さんへのインタビューで、確か橋本大也さんによるインタビューだったような気がするんですが、「自分で使うツールは自分で作っている」みたいな話を見かけて 前にも書いた気がする。…

setTimeoutの最小時間を調べたときのメモ(断片)

デスクトップの整理でファイルを廃棄するのでこっちにいれとく。 while (!mShutdown) { if (mTimers.Count() > 0) { timer = static_cast<nsTimerImpl*>(mTimers[0]); if (!TIMER_LESS_THAN(now, timer->mTimeout + mTimeoutAdjustment)) { next: timer->PostTimerEvent();</nstimerimpl*>…

特権間通信

GreasemonkeyスクリプトからDOM Storageを使う - 実用を見て、まえにGMとchrome間で通信するのにはprefをobserveするといいよっていうのを思い出した。そしたらGM側で変更したやつはそのタイミングでobserverがよんでもらえる。chrome側で変更したやつはポー…

String#replace 第二引数

Core JavaScript 1.5 Reference:Global Objects:String:replace - MDC関数を取れるのを今知りました.... "-_-".replace(/\W/g, function (c) { return c.charCodeAt(0)}); 45_45 に。

flickr String#replace

どうでもいいけどflickrで "".replace.toString() すると "function (B, Z) { return this.split(B).join(Z); }" になってる。 意味がわかんない。

throw

throwってはじめてつかった。アセンブラの、もう忘れたけど@0だったかなんだったか直前のラベルにジャンプするのに似てる。

userscripts

userscripts.org新しくなると古いバージョンのやつ無くなっちゃうから互換性チェックするのとか不可能。したくもないけど。 ここでPM_*でチェック&インストールか!?きっちりかっちりつくってgmに入れてもらえるようにpatch送るのが王道そうだけどスクリプト…

メモリリーク

自分バリバリC育ちなのでjsでメモリリークとか相手してらんない。循環参照で漏れたりするのをそんなの相手しないといけないんだったらはじめからmalloc/freeしたい。あー、あっち側はあっち側で間違ってfreeしたのを参照して落ちたりする世界なのを今思い出…

shift to fx3

けっきょくgoogle toolbarが対応してなくて、あれがないとweb historyが取れないのでやめた。pagerankのリクエストだけ送ればいいとも書いてあったけどパス。jsactionsが一番のネックになる気がする。 あとはなくてもいいや。

js apply

try{ var args = [/\w/, "."]; "*_*".replace.apply(this, args); } catch(e) { console.log(e) } これを実行すると例外が出て [.bject Window] が出力される。なんだこれ。callでも同じ。 nativeの関数ってapplyで呼べないの? 追記 malaさんにコメントいた…

アフィリエイト

www.download-firefox3.comよーく読むとfirefox3とか全然関係なくて、ただのアフィリエイトページ。 よくできてる。

GM unsafeWindow

よく考えたらunsafeWindowいじって危ないのって、ページに悪意あるjsが書かれているときにXHRで認証かかってるほかのページを読み込まれて別のところに送信されたりするからで、どういうときに悪意あるjsが入っているかといったら サービス運営者が信頼でき…

GM+Fx3

fx3から。 Twitter / SATOH, Hiroh: いつのまにか Fx3 に完全に移行完了してた。Styl...みて移行しようとしてみたけどぜんぜん無理そう。http://groups.google.com/group/greasemonkey-dev/msg/943fa992af60ecc2 読んだら次のGMは@importがつくよって書いて…

日本語

googleを日本語で使う設定にしてるとちょっと弱いプロダクトになるとどうでもいいような日本語のページがトップに出てきて困る。 javascript:window.location+=%22&hl=en%22 っていうブックマークレットで英語に切り替えるのを使ってる(誰かがもっとちゃんと…

map,forEachの2つめ以降の引数

Twitter / snj14: forEachとかmapって第3引数まであるのか!今知った!今知ったー。ふたつめがindexでみっつめがもとの配列。 var a = [10,20,30] a.map( function (x,y,z) { console.log(x,y,z); }); 10 0 [10, 20, 30] 20 1 [10, 20, 30] 30 2 [10, 20, 30…

XPCNativeWrapper

ふつうのwindowのコンテキストでもXPCNativeWrapper呼べるんだー。 追記20071128 呼べるけど、ラッパーは作成されない。 スクリプトがオブジェクトにアクセスした際に起こることは ?の 保護されない 信頼できない のパターン。

mozJSHTTP

// This file tests the download manager backend do_import_script("netwerk/test/httpserver/httpd.js"); downloadManagerのテストコードにも発見。 テストのときにjsで、というか、テストを記述している言語でhttpdというかサーバ側の挙動も記述できると…

gears+gm

追記 作法に従って書けばぜんぜん落ちないです。 作法に従って書いてないと落ちるっていうだけでした。 以下旧文 ページの中のテキストを取り出してngramでstoreして検索、みたいなのをためしに書こうとしたらcreateWorkerしたときにfxが落ちる。 そのうえWi…

GearsMonkey

はてなブックマーク - miyagawaのブックマーク / 2007年11月22日より。google gearsとgreasemonkeyをセットで使うと、どんなアプリケーションでも無理矢理offline対応にできたりして楽しいよというはなし。それきがつかなかったー。オフライン機能ばっかりと…

アカウント名

tiwtterもtumblrも1文字でアカウントが作れる。

getSelection()でHTMLを取り出す

Extended Copy Menu :: Firefox Add-onsより。 var objFocusedWnd = document.commandDispatcher.focusedWindow; var objSelection = objFocusedWnd.getSelection(); var objRange = objSelection.getRangeAt(0); var objClone = objRange.cloneContents(); …

FEBE

febeProfDir = Components.classes["@mozilla.org/file/directory_service;1"] .getService(Components.interfaces.nsIProperties) .get("ProfD", Components.interfaces.nsIFile); var extDir = febeProfDir.clone(); extDir.append("extensions"); var ent…

flock

TechCrunch Japanese アーカイブ » Firefox 3 Beta 1: メモリ使用が全てを物語っている 「TechCrunch 40」でデモを見てから、Flock 1.0ベータをダウンロードし、それ以来問題なくウェブサーフィンをしている。Flockは、Firefoxエンジンに内在するメモリ関連…

computing power

コピーしてはいけないとか、無断リンクしてはいけない、というはなしは、キカイが圧倒的な力でもって吹き飛ばしている。コピーされたもの、無断リンクされたものを見つけ出して取り除く作業は、少なくとも今の時点では最後の消す作業のところで人間がやるこ…