たまに18歳未満の人や心臓の弱い人にはお勧めできない情報が含まれることもあるかもしれない、甘くなくて酸っぱくてしょっぱいチラシの裏。RSSによる簡単な更新情報を利用したりすると、ハッピーになるかも知れませんしそうでないかも知れません。
の動向はもえじら組ブログで。
宣伝。日経LinuxにてLinuxの基礎?を紹介する漫画「シス管系女子」を連載させていただいています。
以下の特設サイトにて、単行本まんがでわかるLinux シス管系女子の試し読みが可能!
Firefox 2じゃなくても検索バーで普通にGoogleサジェストを使えるようにする拡張機能、GSuggest改造版の更新。リファクタリングのような、そうでないような……一応、細かい問題をいくつか直したつもりではあるんですが。
Download and Install GSuggest 0.1.6
XUL/Migemo勝手改造版に辞書の自動インスコ機能つけました。XUL/Migemoを初めて導入する人が多分真っ先に躓くであろうポイントの解消は、本家XUL/Migemoが登場したときからずっと「こうだったらいいのになあ」と思ってたことだったので、それを解決できて何となく感慨深い。
Greasemonkeyの旧版とか拡張機能マネージャのコードとかDownload Statusbarとか関係ありそな物を片っ端から調べてみたけど、結局のところnsIWebBrowserPersistを使ってダウンロードさせるのが、ダウンロードの進行状況を見たりするためには一番確実みたい。で、そうやってダウンロードした物をnsIZipReaderで展開する、という。
その辺のコードはdownloader.jsにまとめたので、もし興味のある人がいたら見てみてください。って、こんなのちょっとでもマトモにプログラミングの勉強した人にとっちゃ常識なのかな……
まあとにかくこれでXUL/Migemo導入の敷居がぐっと下がったと思うんで、今まで使ったことのない人もこれを機にぜひともMigemoの快適さを体感していただきたいところです。(←えらそう)
XUL/Migemo [Forked Edition]のページに簡単なチュートリアルを加えてみた。配布しといて何も説明無しってアレだよな……と思ったので。
追記。英訳もしてみた。
XUL/Migemoの動作の中で一番のネックになっているのは「辞書から正規表現のパターンを生成する」処理だそうで、そのために、本家XUL/Migemoでは200KB近いキャッシュファイルまで用意されていた。plus7さんの環境では一文字のパターンに対するキャッシュを生成するのに14秒もかかった(その間Mozillaはフリーズする)とまで書いてあって、他をどんなに改善してもここが足をひっぱってるんじゃあなあ、という感じだ。
んで、少しでもこれを高速化できないかな?と思って自分の分かる範囲で考えてみた。
XUL/Migemo勝手メンテ版を更新しました。次回分のOOo解説記事が案外早く仕上がって一日余裕ができた、と勝手に自分で判断して、昨日丸一日と今日も一日使って。おかげで味噌汁は腐るわまともな食事を取れないわと散々でしたが(※全部自業自得です)、腹が減るのも忘れてぶっ続けで十何時間も取り組むなんてのは久しぶりでしたので、むしろ清々しいような気もします。そんなことはどうでもいいですね。ごめんなさい。
それだけ時間を投じて何をしていたかというと、いわゆるひとつのリファクタリングです。といっても僕自身プログラミングのド素人もいいとこなんで、plus7さんのコーディングスタイルの僕に合わないところをガンガン自分流で置き換えただけという気もしていますが。
TBEをハックしてFirefox 2で動くようにしてしまった人がいるよーです。アホちゃうか! 作者ですら投げてしまった物を……(褒め言葉)
ということでDebian使いな人にお願いしてパッケージをダウンロードしてしてもらい、あわよくば変更点を取り込ませていただこうと思ってとりあえずFx 2でちゃんと動くかどうかを試してみたら、なんか、ツリーモードとかばっさり削除されてましたショボーン。やっぱり自分で作りなおすしかないのか……
僕を助けようという意図で無いにしろ、詳しい人がわかりやすく解説してくださって、大変助かりました。自分でも責任を果たしておこう。
拡張機能の「安全性」と言った場合に、それが指すものには二つのレイヤがある。
電子署名やSSLといった認証技術は、後者は保証するけれども、前者は保証しない。後者と前者は全く分断されており、どちらかが保証されていてももう一方が保証されているかどうかには何ら関係が無い。利用者は、そのことを知った上で認証技術を利用する、ということが、情報リテラシの一つとして期待されている。
ところが現実には、そうなっていない場合がある。僕も含めて、正規の情報教育を受けないまま自己流で情報リテラシに相当するものを身に着けてきた世代の人間は、あるいは、受験科目では無いからなどの理由でまともな情報教育を受けられなかった人は、後者の安全性が保証されていれば、そうでない場合に比べて、前者の安全性も高いはずである、という誤解をしている場合がある。はいごめんなさい、自分の事です。いざ自分がハンドアックスを投げつけられる立場に立つまで真面目に考えたことがありませんでした。反省しています。
日経ITproの記事にもなっている、Japanizeなる拡張機能がある。これは、日本語化されていないWebサイトのメニューなどについて、対応する言語リソースがあるかどうかをサイボウズ・ラボのサーバに問い合わせて、言語リソースを自動的に取得してWebサイトのUIを日本語化する、というものだ。
けれどもこの仕組みは、悪用すれば、「その拡張機能をインストールした人がどのWebサイトを見ているのか」を逐次追跡することも可能で、ユーザのプライバシーを丸裸にしてしまうこともできる。そのため、れっきとしたスパイウェアと名指しで批判されている(ただしリンク先にも書かれている通り、利用条件でその可能性は否定されているため、実際にはスパイウェアではない。あくまで信用の問題になるが)。
同名のWebサービスと連動してWebページに付箋を貼り付けられるようにするMyStickiesも、同じ問題を抱えていると見ることができる。
IPAのOSS活用基盤整備事業の一環として開発されているTouchUpWebもそうで、こちらはFirefoxで表示が崩れるWebサイトに対してGreasemonkeyスクリプト形式のパッチを適用することで表示を改善するというものだ。接続先のサーバを変更することもできるが、デフォルトではMozilla Japanが提供するマスターサーバと通信するように設定されている。まあ、自分でサーバを立てれば情報を握られるおそれはないので、その点ではJapanizeやMyStickiesよりはまだ安心できるのかもしれないけれど。 中の人から指摘を受けて削除。TouchUpWebの場合はユーザの要求に応じて通信するそうです。
AdBlockやNoScriptのようなブラックリスト・ホワイトリスト型の機能を持つ拡張機能は、サーバを介してデータを共有すれば利便性が高まるものの、やはり同じような疑いを持たれることだろう。Firefox 2から本体に取り込まれるアンチフィッシング機能はGoogleのサーバに接続するものだが、これも問題視しようと思えば問題視できる。
このようなサーバ連動型の機能にとって、プライバシー侵害を疑われる可能性は常に付きまとう。どうすればこの問題を回避できるのだろう? 僕にはよくわからない。とりあえず無責任に問題提起だけしておく。
XUL/Migemo更新した。0.3.9での変更点は以下の通り。
ご指摘くださったHさん、ありがとうございます。
Firefox Add-onsを眺めてたら、XPath CheckerとXPatherという拡張機能を見つけた。どちらも、選択したノード(マウスでポイントしているノード)上で右クリックして、対応するXPath式を適当に生成させることができる。
機能としてはXPatherの方が高機能っぽい。DOM InspectorにXPath式でノードを検索する機能が加わったり、ノード集合を返却するXPath式で複数のノードを取り出してから、内容が正規表現にマッチするものだけを抽出したり、といったことができる。
ただ、自動生成される式はID(XPath Checkerではid関数、XPatherではid属性の参照)と要素のローカル名だけを使ったごくごく単純なものになるので、内容の文字列を見てノードを絞り込むといったところまではできないみたい。自分で式を書いて評価させる分にはもちろんどんな式でもいけるけど。
XPathの学習用には使えるかな。
せっかくだからこのサイト内の関連コンテンツも紹介しておく。