たまに18歳未満の人や心臓の弱い人にはお勧めできない情報が含まれることもあるかもしれない、甘くなくて酸っぱくてしょっぱいチラシの裏。RSSによる簡単な更新情報を利用したりすると、ハッピーになるかも知れませんしそうでないかも知れません。
の動向はもえじら組ブログで。
宣伝。日経LinuxにてLinuxの基礎?を紹介する漫画「シス管系女子」を連載させていただいています。
以下の特設サイトにて、単行本まんがでわかるLinux シス管系女子の試し読みが可能!
もう先週のことになってしまったけど、Shibuya.js第1回テクニカルトークに参加した。
皆さんワロける素晴らしいプレゼンばかりで、僕チン大いに焦りましたよ。受付に座りながら必死こいて少しでもウケを狙えるように内容を書き直したりとかしてた。でも基本的にセンスがないから、大いに寒い結果になってしまったように思う。うあぁぁぁそればかりが心残りだ(←それが感想なのか)。
CPANならぬJSAN、PAUSEならぬJAUSEとか、JavaScript高速化のテクニックとかの実践的な物から、DOM3 XPathのようなとんがった物まで、色々盛りだくさんの内容だったと思う。実のところJavaScript/Ajaxな話題には疎い僕には新鮮に感じる情報も多かった。ライブラリとか、prototype.jsくらいしか使ったことないし。それもまともに使いこなせてなんてないし。
これからもオモロくなってってくれたらいいなあ。
YAPC::Asiaで行われたプレゼンテーションの資料一覧に、拡張子「.xul」のものがちらほら……っていうか高橋メソッド in XUL由来のやつが明らかに多いYO!
数えてみると、6/17で35%という物凄いシェア。独自に改良されたもの(本文が英語で、日本語字幕を同時に表示できるものとか)もあって、実装を書いた者としては、なんか嬉しい。
……ということで、クラス名を指定して自分で好きな装飾を定義できる機能を取り込んでみた。
Mozilla Japan第2回セミナーのプレゼン資料を公開しました。内容は要するに「かくちょうきのうのつくりかた」です。
説明不足なところは構成案メモと照らし合わせながらどうぞ。
まじめな報告?はよそで書いたので、こっちではふざけた話ばかり書いてみますよ。
スクロールボックスまわりで行き詰まってた件だけど、なんやかやしとるうちに解決できてしまいました。
scrollbox要素は内容を勝手にクリッピング表示しやがるという仕様なのだとばかり思ってたんだけど、xul.cssでの基本的なスタイル定義を見てみると、overflow: hidden;
と書いてある……えぇぇぇぇぇええ、要素の仕様でそうなってるんじゃなくって単にCSSの指定でそうなってただけなのォォォォオオ!? 今の今まで気付いてなかった僕はアホすぎですね。
つうことはですよ。scrollbox要素の中にスクロールバーが表示されないのはoverflow: hidden;
が指定されていたからでしかなく、overflow: auto;
等にすれば他の要素と同じようにスクロールバーが表示されるってことですか? ンでもって、scrollbox.boxObject.QueryInterface( Components.interfaces.nsIScrollBoxObject )
の各種メソッドを使えばスクロールバーを表示しながら同時にスクリプトでscrollboxの内容のスクロール状態を制御できるってことですか? nsIScrollBoxObjectの機能はoverflowで溢れた内容を制御するための物で、この機能を使える唯一の要素型がscrollboxだ、だから制御可能なスクロール領域を作るにはscrollboxとoverflowを組み合わせれ、という話だったんですか?
……ということにやっと思い至ったので、バインディングを使ってタブバーの中にscrollboxを組み込む形にコードを書き直してみた。テストしてみたらやはり予想通りに上手く動いてくれたので、SeaMonkeyでテストを繰り返しながら細かいバグを取り除いて、これで完成としておく。
ああ疲れた……
XUL PlanetのXUL要素リファレンスのscrollboxの解説見たら、「内容をスクロールできるようにする機能を持つボックス。スクロールバーは表示されない。スクロールバーが使いたければCSSのoverflow:auto
を使え。(大意)」とある。
しかしoverflow:auto
の効果でスクロール可能になったボックスについては、内容をスクリプトでスクロールさせるためのインターフェースが用意されていない。裏技的なテクニックで実現は可能だけれども、これはどう見てもバッドノウハウの塊なので、動作が保証できない。事実、SeaMonkey 1.0ではもうこの方法が使えなくなってしまっている。
どうすりゃいいんだYO! やっぱアレですか、scrollbarとscrollboxを組み合わせて双方の連携を取れるよう自力で実装するしかないですか。なんてこったい。
Mozilla Japan第2回セミナーで1時間の枠を貰いましたので、なんかしゃべりに行きます。宜しければおいで下さいませ。
SeaMonkeyでの障害報告を受けてちょっと試してみてたんだけど、XULのドキュメント化されていない細々した仕様が色々変わっているようで、バッドノウハウの塊なTBEでトラブル続発ですよ。
とりあえず気付いたのは以下の点。
visibility: collapse;
の状態のscrollbarは初期化されず、curpos/maxpos属性を使ったスクロール制御ができない。まだまだ他にもあるんだろうなあ……
XUL Runnerを使うと、FirefoxやThunderbird等に依存しないXULアプリケーションを作れるってことで、そのうち構造化エディタの構造化テキスト形式を扱える簡易エディタでも作ってみようかなー。StedSidebarはあくまで拡張機能だし。
まあ、思ってるだけで具体的なアクションは何も起こしてないんだけど。
Firefox 2.0に向けて、Trunkでネイティブのタブブラウズ機能が強化されたそうで。
変更点を見てみると、かなり広範囲に渡って改変が加えられてる。別に変えなくても良さそうな……というか、美学や分かりやすさ的には変えたり統一したりした方がいいんだけど過去との互換性のためにそのまま置いとかれてたような部分にも。
ここまで来ちゃうと、1.x系向けと2.x系向けを両立できるようなものを一つの拡張機能で実現するというのはかなり厳しくなってくるなあ。ていうかTBEは確実にブランチせざるを得ない。しかし僕の場合、行動原理が「その環境を常用するのに必要だと思ったものを片っ端から入れてったらこうなった、せっかくだからそれを公開してしまおう」というものなので、今の常用環境でない環境のために頑張る気にはなかなかなれない。困った。