Home > Latest topics

Latest topics 近況報告

たまに18歳未満の人や心臓の弱い人にはお勧めできない情報が含まれることもあるかもしれない、甘くなくて酸っぱくてしょっぱいチラシの裏。RSSによる簡単な更新情報を利用したりすると、ハッピーになるかも知れませんしそうでないかも知れません。

萌えるふぉくす子さんだば子本制作プロジェクトの動向はもえじら組ブログで。

宣伝。日経LinuxにてLinuxの基礎?を紹介する漫画「シス管系女子」を連載させていただいています。 以下の特設サイトにて、単行本まんがでわかるLinux シス管系女子の試し読みが可能! シス管系女子って何!? - 「シス管系女子」特設サイト

Page 4/244: « 1 2 3 4 5 6 7 8 »

MozillaがWindows Mobile上で動いてる様子のデモ - Jan 08, 2009

弊社の足永さんが、Windows Mobile(エミュレータ)上でMozillaが動作している様子のデモ動画を公開してくださいました。YouTubeを見てみた所、Windows XP上で動くFennecの動画はいくつかあるみたいですが、Windows Mobile上での物の動画となるとこれが一番乗りっぽい?

インターンシップ募集開始のお知らせ - Dec 26, 2008

僕も在籍しております株式会社クリアコードの2009年度インターンシップ参加者の募集が始まりました。詳細はリンク先をご覧ください。

具体的にどんな事をやるの?というのは、実施時(2009年8月頃)の状況にもよりますが、基本的には会社紹介(PDF)の3ページ目の「サービス」や「対応分野」の内容に沿った物になる予定です。とはいえ、ここに挙がってないものでも相談次第ではありかもです。

会社の規模が規模ですので、募集枠は1名となっておりますが、フリーソフトウェアとかオープンソースとかの開発に興味のある学生さんがいらっしゃいましたら是非ご応募下さい。GNU信者歓迎みたいです。

UnitTest.XUL 0.5.0 - Oct 30, 2008

会社サイトのブログの方で解説を書くつもりですが、UxU新バージョン(0.5.0)を公開しました。日本時間10月30日の昼下がり、太平洋標準時で29日の肉の日リリースです。変更点はMozilla Add-onsのバージョン詳細の方を見てください。

自分自身がサーバソケットの方を使ってなかったのでMozRepl互換のサーバ機能の方がだいぶ長らく死亡してたみたいなんですが、今回プロファイルを指定してテストを実行する機能を作るにあたり、新たに起動された子プロセスと親プロセス側でテストの実行結果や中止の命令とかを通信しあうために、UxUサーバで使われていた機能をブラッシュアップして流用するようにしたため、ぶっ壊れていた所がだいぶ直りました。今後はサーバ周りの実装も気をつけて見るようになると思いますので、ぶっ壊れっぱなしのまま放置ということは減るんじゃないかと思います。多分。

ところで、子プロセス起動してうんたらかんたらということができるようになったということは、FirefoxやThunderbirdの上で動かすことにこだわらなくてもいいようになった(必要に応じてそれらを呼び出せば済む)という事で、やる気次第ではXULRunnerアプリケーション化という道もあり得るかもしれませんね。

XUL/Migemoで使ってる機能についてFirefox 3.1で色々変わってた事の調査結果 - Sep 03, 2008

前のエントリの追記が多くなったので分ける。

「すべて強調表示」の強調箇所がspan要素ではなくnsISelectionになった件については、nsISelectionControllerの選択範囲の型の中にSELECTION_FINDというのが増えていて、ユーザの選択範囲や検索で現在フォーカスがあたってる箇所を表すSELECTION_NORMALとは別に管理されていることが分かった(nsISelectionControllerのメソッドを使うとこれらの型別に選択範囲の一覧を取ることができる)。ということで、「どっちも同じ選択範囲だったらどうやってフォーカス箇所を取ればいいんだ!」という問題は杞憂だったと判明した。

あとはパッチと実際の新しい実装を見ながらFirefox 3.1用のコードを書いて、Safari風強調表示を有効にしてる時だけFirefox 3.0までと同様のspan要素を使うハックを復活させるようにしたところ、アニメーション効果も無事動くようになった。元々、XUL/Migemoでは正規表現にマッチする箇所をまとめて強調しないといけない関係上、span要素を使うハックの処理のほとんどを自前で再実装してたので、思った程には大規模の改修はしなくて済んだ。

一個だけ躓いた所として、XPCOMコンポーネントの新しいメソッドをIDL定義に追加して引数にnsISelectionController型のオブジェクトを渡すようにしていた所、XPIDLでのコンパイルは通るんだけど実際に使う時にNS_ERROR_XPC_CANT_GET_PARAM_IFACE_INFOというエラーが出てにっちもさっちもいかなくなってしまった。ダメ元で、引数の型をnsISupportsにして受け取り側でQueryInterfaceするようにしてみたところ、ちゃんと動いてくれた。一体何だったんだろうこれは。

textbox要素のsearch型については、パッチを見た限りでは今の所サイドバーの「ブックマーク」と「履歴」でだけ利用されていて、XUL/Migemoのやってるハックには影響しないようだった。

ロケーションバーの方もテストしてみようと思ったらこれが全然動かなくなってて、調べてみたらmozIStorageServiceのopenDatabase()メソッドでplaces.sqliteを指定して開く所で「ファイルがロックされてるぞゴラァ」と怒られていた。ななななななんてこった!!! SQLite Managerで見ようとしてもやっぱりロックされてて見れないと言われる。どうも不用意な書き換えでデータベースが破壊されないようにロックがかかるようになったようだ。これはやばい。PlacesデータベースにSQLでアクセスできなくなったらXUL/Migemoのロケーションバーまわりの実装の苦労が全て水の泡になる上に、Firefox 3 Hacksで物凄いページ数使って書いた内容がまるっきり無駄になるじゃないか。マジで一瞬気が遠くなった。

精神的に半泣きになりながらmozilla-centralでスマートロケーションバーまわりのコードを調べていたら、いくつかの箇所でDBConnectionとかStorageConnectionとかそういう文字列が登場していて、それをキーに調べてみたらnsPIPlacesDatabaseというインターフェースDBConnectionプロパティからPlacesデータベースへのコネクションオブジェクトにアクセスすることができるらしいということが分かった。このインターフェースはPlaces API関係のサービスが実装していて、以下のようにすればアクセスできるという事も分かった。

var dbConnection;
if ('nsPIPlacesDatabase' in Ci) { // Firefox 3.1 の場合
  dbConnection = Cc['@mozilla.org/browser/nav-history-service;1']
                  .getService(Ci.nsINavHistoryService)
                  .QueryInterface(Ci.nsPIPlacesDatabase)
                  .DBConnection;
}
else { // Firefox 3.0.x の場合
  const DirectoryService = Cc['@mozilla.org/file/directory_service;1']
                            .getService(Ci.nsIProperties);
  var file = DirectoryService.get('ProfD', Ci.nsIFile);
  file.append('places.sqlite');
  if (file.exists()) {
    const StorageService = Cc['@mozilla.org/storage/service;1']
                            .getService(Ci.mozIStorageService);
    dbConnection = StorageService.openDatabase(file);
  }
}

ホント焦った……4日のトークセッションで土下座せなあかんかと思ったよ。

ちなみにその4日のトークセッションですが引き続き参加者の方絶讃募集中です。9月4日19:00から池袋ジュンク堂にて開催。参加費1000円ワンドリンク制(多分)で定員40名、電話か店頭で申し込む必要があります、としつこく宣伝しておきます。どうかよろしくお願いします!!!!

Firefox 3 NITE参加者絶賛募集中 - Aug 28, 2008

池袋ジュンク堂にでかフォクすけぬいぐるみが行ってるそうです。9月4日のイベント当日までここにいるそうな。

以下しつこいですが宣伝。Firefox 3 NITEと称して、9月4日19:00から池袋ジュンク堂にてFirefox 3 Hacksの出版記念トークイベントが開催されます。参加費1000円ワンドリンク制で定員40名、電話か店頭で申し込む必要があるとの事です。詳しくはジュンク堂のサイトのイベント案内をご覧下さい。また既報の通り、小サイズのフォクすけぬいぐるみ3体が抽選用景品として提供されたそうなので、ぬいぐるみが欲しい人もおいでませ。

ていうかトークイベントとはいっても何を話題にすればいいのかさっぱりなので、ネタの方も絶賛募集中です。

FirefoxNITEとFirefox 3 NITE - Aug 28, 2008

昨日のFirefoxNITEで言われたこと色々。

  • 夏コミのレポートまだー?→気力が……
  • Dan Kogai氏が萌え系でもいいんじゃねと言ってるんだからほんとにそれでやってもよかったんじゃね?→あり得ません。仮に仕事として萌え絵の挿絵やら何やらを描くことを依頼されても断ります。オフィシャルが絡む物で萌え系は(特に日本では)タブーという空気なのでそこんとこ空気読みましょう。
  • 大阪人なのにタコ焼き焼けないのか→大阪人がみんなタコ焼き焼けるとは限らないよ!
  • 9月4日の池袋ジュンク堂どうすんの?→何を話せば良いのやら……

店長さんが前よりさらにいかつい容姿になられていたのでまた余計にビビってしまった今日この頃です。

Firefox 3 Hacksもうそろそろ発売みたいですね - Aug 25, 2008

Firefox 3 Hacks Mozillaテクノロジ徹底活用テクニック
江村 秀之 池田 譲治 下田 洋志 松澤 太郎 dynamis
オライリージャパン
売り上げランキング: 566

なんか気がついたらDan Kogai氏が書評書かれてた。内容には触れてないけど。このエントリからのトラフィックでAmazon.co.jpのランキングが結構上がったらしいです。すごいね。

内容の中で僕がピンと来る物は、以下のような感じです。

  • FUEL解説
  • Placesデータベースのテーブルの内容解説
  • MozStorageによるPlacesデータベースへのアクセス
  • Places APIの解説(といっても触れてないところも多いけど……)
  • place: URI(スマートブックマークの正体)の解説
  • JavaScriptコードモジュールの書き方と使い方
  • JavaScript製XPCOMコンポーネントの書き方
  • 安全な自動更新の提供方法
  • Firefoxの独自ビルドの作り方

他はまだちゃんと見てない(ひどい)。

関連イベントのお知らせ。

FirefoxNITE:Ustream使ってダラダラやってたアレの新装開店リニューアルオープンついでのスペシャル開催みたいです。8月27日20:00から渋谷bartubeにて開催、参加費3800円。参加登録が必要なので宴会君からどうぞ。

Firefox 3 Hacks NITE:本書発売記念のトークセッション、だそうです。bartubeのソレとは全然無関係に、9月4日19:00から池袋ジュンク堂にて開催。参加費1000円ワンドリンク制(多分)で定員40名、電話か店頭で申し込む必要があるとの事です。

誰も来なくて関係者だけで反省会、というのは怖いので、物申したい方の多くのご参加と喧々囂々丁々発止のリアルモヒカンバトルに期待しております。

Firefox拡張機能開発チュートリアル PDF公開 - Jul 24, 2008

すっかり時機を逸してしまった感がありますが、Firefox拡張機能開発チュートリアルのPDFを公開しましたことをここに告知いたします。このサイトかもじら組のFTPサーバからダウンロードできます。Creative Commonsなので一定の条件下で自由に転載、改変、再配布可能です(誰かMDCに転載してHTML版作ってくれないかなあ……と、誰ともなしに無茶振りしておきます)。

内容は、Software Design誌2007年4月号第2特集「Firefox拡張機能開発チュートリアル」として掲載された記事をFirefox Developers Conference Summer 2007でテキストとして頒布するために再録したもの(この度の公開にあたって既知の間違いは修正してあります)で、XULやXPCOMの紹介から、実際のアドオンの作り方、オープンソースなライセンスの紹介まで一通り扱っています。Firefox 2を前提に書かれていますが、Firefox 3やThunderbirdでも基本的にはそのまま利用できます。

8月発売予定のオライリーのFirefox 3 Hacksに書いた内容は、アドオン作るの初めてという人は完全置いてけぼりなので、まずはこちらで予習される事をお勧めします。

なお、このFirefox拡張機能開発チュートリアルでチュートリアルの章を執筆されているGomitaさんが、技術評論社WebサイトにてFirefox 3でのアドオン開発記事を連載されています。御託はいいからとりあえず作らせれ! Firefox 3の機能もソッコー使いたいんだ! という場合はこっちからご覧になるのがよいかもしれません。

クレジットには名前が挙がっていませんが、PDFにしてもらう際にほとんどの作業をご担当いただいたNさん、訂正箇所の反映作業を行っていただいたMozilla Japan吉野さんに感謝です。

やっと一般公開、長かった…mal_blue@tumblr)ごめんなさいほんとごめんなさい。実は、2007年のDevConでテキストとして再編集して配りたいという話になった時点で、Creative Commonsにして公開したいという話も同時に出ていたと記憶しているのですが、イベント直前での判断だったのでCCにする場合のメリット・デメリットをきちんと検討できる余裕がなく、イベント終わってからに先送りされて、それっきり忘れ去られてた時間がずっとあって、今年4月のOSC長岡の頃にDevConで刷った冊子がなくなりそうだから誤字を直して増刷しようとなった時にやっとその話がまた動き出して、誤字訂正のついでにライセンスの検討と関係者各位にライセンス変更の確認(CC-BY-SA+MITライセンス)を行って、その時増刷された物の時点でもうこのライセンスになってたから実はスキャンするなり手打ちするなりして再配布されても全然OKな状態だったし、PDFもできあがってたんですが、何故かズルズルと公開が遅れてしまっていました。まあ、先日のFirefox 3 Hacks校正会の時についでに僕の担当箇所のミスを2カ所修正してもらった(nsIConverterInputStreamとnsIConverterOutputStreamを使う所でバッファサイズを決め打ちにしてしまっていたせいで、サンプルをそのまま使うと読み込む内容や書き出す内容が1024バイトでちょん切られる問題があった)ので、公開が遅くなったのが全く無意味だったというわけでもないと言いたいところなんですが。

ダウンロード前に内容が分かるように、目次を付けました

Firefox 3 Hacks校正おわり - Jul 22, 2008

昨日は丸一日、朝から晩までFirefox 3 Hacksの校正を著者全員(+オライリーのM氏)でやっていました。僕は自分の担当部分だけでイッパイイッパイだったので他の方の担当章までは全然見れてないですが。

8月発売予定です。

Firefox 3 Hacks - Jul 17, 2008

萌えキャラをという話もありましたが、年齢層の高い複数関係者の反対でボツになりましたというのを見て「ま た P i r o か」とあらぬ疑いをかける人がいそうなので先に言っておきますが、僕は関係者の中では一番最初に反対を表明しましたよ。

あと江村さんに倣って自分も担当章の見出しを晒してみます。

  • 3章 Firefox 3向けの拡張機能開発テクニック
  • #19. 拡張機能開発の基礎
  • #20. 標準ライブラリ「FUEL」を活用する
  • #21. MozStorageでSQLiteデータベースを操作する
  • #22. 履歴とブックマークのデータベース「Places」の正体を知る
  • #23. APIを通じて履歴とブックマークを操作する
  • #24. Placesデータベースへの問い合わせ命令
  • #25. Placesデータベースへの問い合わせ結果を利用する
  • #26. JavaScriptコードモジュール
  • #27. Firefoxに含まれているJavaScriptコードモジュールを使う
  • #28. JavaScript製XPCOMコンポーネントで特殊な処理を実現する
  • #29. 拡張機能を安全に自動更新できるようにする

見出しの数だけ見ると大したことないんですが、ゲラ刷りの目次によると、この章だけで100ページ超えてるみたいです。この見出しの下に大量の小見出しがあるので読みにくさ抜群ですね。校正したくないよう……

Page 4/244: « 1 2 3 4 5 6 7 8 »

Powered by blosxom 2.0 + starter kit
Home

カテゴリ一覧

過去の記事

1999.2~2005.8

最近のつぶやき