たまに18歳未満の人や心臓の弱い人にはお勧めできない情報が含まれることもあるかもしれない、甘くなくて酸っぱくてしょっぱいチラシの裏。RSSによる簡単な更新情報を利用したりすると、ハッピーになるかも知れませんしそうでないかも知れません。
の動向はもえじら組ブログで。
宣伝。日経LinuxにてLinuxの基礎?を紹介する漫画「シス管系女子」を連載させていただいています。
以下の特設サイトにて、単行本まんがでわかるLinux シス管系女子の試し読みが可能!
ログインできると思ってなかったから見てなかったけど、ログインできるのね。というわけで見てみた。
僕の奴はクリップボード監視がサンドボックス内に置かれた以外は全部公開みたいです。ああよかった。
Tab EffectはDirectX8以降が必須=Windowsのみ対応ということなので、環境に依存せず動く物をHTML Canvasを使って作れないかなーと思ってやってみた。
結論。こりゃとても実用にはならんわ…… 行列変換とかやったら死ぬのが目に見えてる(そもそもやり方分からんけど)ので簡単な伸縮だけのエフェクトにしてても、重すぎて重すぎて実用に耐えません。しかも時々ウィンドウの描画に失敗して真っ白になるし。何故?
タブという概念は普通の人(コンピュータの中で何が起こってるのか頭の中で想像することに長けていない人)には分かりにくくて、Tab Effectのようにそれを視覚的に表現する物はユーザビリティの向上において結構役立ちそうな気がするんだけど、ジョークとしか思われなかったりするのが切ないところですね。
追記。Takenさんにアドバイスをもらって、HTML Canvasに描画した物をtoDataURL()
で画像としてキャッシュして処理するようにしてみたところ少しだけ軽くなったので、調子に乗ってもうちょっと3Dっぽい効果を加えてみた。
軽くなったとはいえ、さすがに台形に画像を拡縮すると重すぎるんで、あくまで「それっぽいニセモノの効果」でしかないですが。
韓国ではActiveXを使えないブラウザは全然使われてないらしいのにもかかわらず、Split BrowserのKorean Language Packを作って送ってきてくれるという奇特な人がいた。박찬규(sushizang)さん、頑張りすぎです。
ところでKorean Localeって日本語にする時どう表記するべきか悩みますね。北の楽園もとい朝鮮民主主義人民共和国でも使われてる言語だから「韓国語」って言い切っちゃうのも何か変だし、かといってハングルってのはひらがなやカタカナと同じく文字の種類でしかないし。考えるのがめんどいからこのエントリでは「Korean」にしちゃいましたよ。
MozLabに含まれてる単体テストツールのMozUnitの使いかたが分からない、っていうか真面目にプログラミング勉強したことないから単体テストっていうのがどういう物なのかすらわかってない。説明が全然ないし、普通に他のテスト用のツールを使い慣れた人でないと使えないとかそういう物なのだろうか?
とりあえず試しに動かしてみたけど、何が嬉しいのかいまいち分からない。隠し設定使えば普通にJSコンソールにエラーがリアルタイムで表示されるし、エラー表示だけじゃどこがいけないのか分からないとかいっても結局の所JSデバッガで一行ずつ見ていかないと分からない所だってあるし……自動制御で動かすのも、userChrome.jsとかで自分でスクリプト書いてやるのとの違いが分からない。特に、ブラウザの読み込みが完了したタイミングでのテストとか。
日曜プログラマもどきみたいなのが手を出していい物じゃあないんじゃないのか、これは。
追記。MozUnitのソースコード見てああでもないこうでもないと頭の中で検証してやっと使い方が理解できた。
動画で紹介されてるのは非同期処理の例なんだけど、これで例えばブラウザの読み込みを待ってからテストを実行するとかそういうのをやろうとすると、全然うまくいかない。
こういう場合はコールバック関数とかイベントリスナとかを使って、テストしたい状態になるのを待ってからテストしてやらなきゃいかんのだけど、その方法が全然分からなかった。MozUnitのページには、何やらオプションを指定すると非同期でない(変な日本語だ……)テストができるとか書いてあるんだけど、英語だし略語と技術的専門用語との区別がつかんしで、ちんぷんかんぷんだった。
結論から言うと、async型のテストを作る場合は「setUp」メソッドに渡されるコールバック関数を使うというのが鍵だった。このコールバック関数を実行しないと、処理が一歩も進まない。
Rabbitの須藤さんの協力により、このサイトで公開してる拡張機能をSubversionでバージョン管理できるようになりました。まるっとうぷったので今後は自宅でも会社でも旅行先でも支障なく開発が進むようになるかもしれませんし、そうでないかもしれません。
チェックアウトだけだったら誰でもできるんでしたっけ?
サーバの領域を貸していただいただけでなく、Subversionの使い方も教わりました。Windowsだとシェル拡張として機能するTortoiseSVNが色々便利っぽいです。Ubuntuだとさすがにシェル拡張というわけにはいかないようですが、RapidSVNを使えばGUIで操作できてイイ感じでした。Ubuntuならapt-get install rapidsvnで一発ですし。
RapidSVN用の日本語ロケールはパッケージに含まれてないみたいだけど、0.9.0用、0.9.3用、0.9.4用などが独自に作成されているのでこれを導入しておくとよい。rapidsvn.moを/usr/share/locale/ja/に置けば勝手に読み込んでくれる。
あとついでにXPIパッケージを作るのに使ってるバッチファイルのリポジトリなんかも作ってみました。おもっきしパスがうちの環境に依存してますが、まあ、もしよければ参考にしてください(誰ともなく)。ちなみにCygwinのchmodとzipコマンド、それからLZH形式のファイルの作成用にunlha.exeを使ってます。
また新しい拡張機能作ってみました。Split Browser。
スクリーンショット見ると分かるとおり、ブラウザウィンドウを分割するという物です。コンテントホルダーをFirefox 2向けに更新しようと思って手を入れ始めたら、いつのまにかこんなんなっちゃいました。互換性はないし拡張機能のIDも変わっちゃってますが、一応コンテントホルダーの後継です。
特徴として、分割の方向や個数を好きなように変えられる……と言うよりは、好きな方向に好きなだけ分割できるように設計してあります。メモリと画面の広さが許す限り、いくらでも無限に分割可能です。心おきなく割りまくってください。
昨日書いたこと(ツリーを普通に二つに分ける)をそのままコードに反映してみた。最強に眠まった状態でコードいじってたんで、余計なミスしてまた時間食ってしまった。
基本的にやっつけ仕事なのは変わらないけど、トリッキーでないごくごくシンプルな構造になったので、ドラッグ&ドロップとかの場面でFirefoxの元々のコードがそのまま動くようになって、だいぶまともになったと思う。
まあ元から極めてやっつけ仕事なシロモノだったんですが、Fx 2でちゃんとテストしてなかったんで改めて試してみたら、下のペインでコンテキストメニューが出なかったりドラッグ&ドロップがバグバグだったりで、これはちょっとやばいなと思って。
そんなわけで一晩頑張ってみたけどドラッグ&ドロップの問題はどうにもならなかった。バインディングで内部的に二つのツリーがあるのを、一つのツリーであるかのように既存のメソッドに対して見せかけているという、無駄にトリッキーな実装なのが根本的な原因。いやだってフォルダの展開とか全部実装し直すなんてやってらんないし。でもこうなったら、普通にツリー二つに分けた方が早いかもわからんね。
Second Searchをさらに更新した。
今回の大きな変更は、スマートキーワードを検索エンジンとして認識する機能の追加。スマートキーワードと検索バーとで機能が別れてる意味が分からない、という憤りと、Firefox 1.5ではOpenSearchが使えないからOpenSearchFoxで何でも検索バーに追加という事ができない、という不満から、ついカッとなってやってしまいました。反省はしていません。
今の所、Placesビルドではこの機能は使えません。getElementsByAttribute('value', '*')
で「値は何でもいいからvalue属性が設定されているもの」を収集できますが、そんな感じでキーワードを持ってる項目だけを抽出するやり方がさっぱり分からんので。
通常ビルドでは馬鹿正直に全部のブックマークリソースを見てます。これもどうにかしたいところなんだけど。苦肉の策として、せめて収集結果はキャッシュするようにしましたが……
何となく勢いで新しい拡張機能作ってみました。Web検索バーで文字を入力したり「↑」キーを押したりするとポップアップが出て、入力中の文字列を、好きな検索エンジンでダイレクトに検索できるようになります。
使い方としては、普段はGoogleだけ使ってるんだけど、たまーにYahoo!も使うことがあって、でも利用頻度はGoogleの方が圧倒的に高くて、時々使うYahooのためだけにいちいちGoogleからYahooに切り替えてまたGoogleに戻す、という風な切り替えをするのは面倒だ、という場合に、普通にEnterしたらGoogle検索、上キーで「Yahoo!で検索」を選んでEnterしたらYahooで検索、という風に検索エンジンを使い分ける、てな感じの用途を想定しております。検索バーの検索エンジン設定自体はGoogleのままでYahooの検索結果が開かれる、というところがミソです。
ダウンロードはSecond Searchのページからどうぞ。