2006-01-01から1年間の記事一覧
ひ日誌 11/03 の「addRubyMethod_withType の構文糖」に反応。リンク先での主題ではないけれど、型エンコードを使うのって、そもそもどうなんだろう。今は裏道的な扱いだけれど、オープンにガンガン使うには型エンコードってわかりにくいと思うのだ。たとえ…
今週の木曜に開催される木下さんの「Cocoaセミナー」に行く予定だったのだけれど、先週アタマに肺炎になって仕事を休みすぎてしまったため、どうにもスケジュールの都合がつかない。キャンセルの連絡先が見つからなかったので、ダメもとで案内のメールに返信…
しました。svn update 後、sudo port -n upgrade rb-rabbit でアップデートできるはず。ruby-gnome 0.15.0 は % rabbit rabbit.rd dyld: NSLinkModule() error dyld: Symbol not found: _GLIST2ARY2F Referenced from: /opt/local/lib/ruby/vendor_ruby/1.8/…
Rabbit の Portfile は簡単にできたので、さっそく試してみると require "gtk2"のところでエラー。そんなとこ、ありえないっつーの! % port contents rb-gnome | grep gtk2 %うむ、ホントにないや。もう一度 -d -v 付けてインストールし直しして、出力を確…
いくつかのアプリケーションで、Dock のアプリケーションアイコンにアプリの状況を表示するものがある。仕組みとしては、NSApplication の delegate メソッド applicationDockMenu: を使うのだけろうけど、いちいちアイコンのグラフィックを合成してつくるの…
Rabbit 0.5.0 がリリースされたので、手元の Portfile を修正して port upgrade していたら、またカーネルごと落ちた。どうもファイルシステムが壊れているらしい。これで4回目くらいだ。今まで / - HFS+ システム用 Users - HFS+ fstab で Users にマウント…
既知の問題はすべて退治したと思うので、サンプルを動かしてみた。せっかくなので、試した項目をメモ。HelloWorld.rb % ruby HelloWorld.rb "Hello!" ボタンを押すと、コンソールに "Hello again, world!" と出力される "Goodbye!" ボタンを押すと、終了する…
と、rubycocoa-devel で Laurent に言われた。そういや Mac ではこの2つの文字は別のコードなんだよね、忘れてた。自分の環境では、JTerminal の環境設定で「円マークをバックスラッシュに置き換える」にチェックをつけていて、端末上では全部"¥"にしている…
macosxhints の Compile universal binaries by default という記事で、オプションなしでユニバーサルバイナリをつくることのできる cc が紹介されていた。おもしろそうと思って見てみたが、本当にオプションを追加して execv しているだけだった。うーん、…
automatic ns_overrides がちゃんと動かないケースに対処 ふじもとさんが「RubyRaiseMan でファイルを開くと落ちる」と言っていた件。完全なるイージーミスで恥ずかしい…(さらに修正も1回デタラメな間違いしたし)
プレースホルダの問題を修正 (r1196) Laurent が既に apple-unstable で修正していたらしい([rubycocoa-dev:387])。でも、その修正だとクラッシュはしなくなるけど、メモリリークが起きてしまう問題が残るはずなので([rubycocoa-devel:431])、別のアプロ…
RubyTypingTutor がクラッシュする件。[rubycocoa-devel:428]ocm_retain_result_if_necessary() での alloc 時の振る舞いを変更すればクラッシュしなくなるってことは、Ruby 側からの alloc 呼び出しに関連した部分なんだろう。BigLetterView.rb での alloc …
スライド内容じゃなくって、アプリの操作の話な。MOSA Software Meeting 2006 のセッションで、スライド操作でいくつかもたもたしてしまった。最近は Rabbit ばかり使っていたというのがあるかもしれないけれど、反省を込めて、Keynote (現在 v3.0.2) でスラ…
そろそろ原稿に手をつけ始めないといけないかなあ。今回は、今年の4月にやった「iTunes のような NSBrowser をつくる」をベースに、NSPredicate とコレクション演算子の機能で集合データを取り扱う方法について書くつもり。発表のときは、コントロールクラス…
[rubycocoa-devel:427] の話。まずひとつやっつけた。RubyCocoa では、Ruby 用に 1 だけ retainCount を確保するようになっている。で、Cocoa のオブジェクトが Ruby 世界にあらわれたときに、この処理をするようにしている。ただし、alloc 直後など、オーナ…
[rubycocoa-devel:425] の話。NSZombieEnabled アリガトウ という話?今の RubyCocoa trunk では、以下の問題が見つかっている。 sample/RubyTypingTutor で、ドラッグやコピー操作中にクラッシュする 藤本さんの MSM2006 の tutorial_1 で、特定の処理を評…
いくつかのサンプルが動作しない問題が確認されたため、0.5.0 のリリース作業は中断しています。開発チームで調査を続けていますが、現在のところ原因の特定にいたっていないため、解決には時間がかかるかもしれません。とりあえず、お知らせまで。個人的に…
ダメだった…。3度目の正直なるかっ!?ええと、0.4.3d2 は大丈夫だったんだよな。じゃあそれの setup 時の出力と比較してみよう。てきとうに省略。 (0.4.3d2) CompileC .o .m DynamicLibrary.LinkUsingFileList /Users/kimuraw/proj/rubycocoa/src/rubycocoa…
[rubycocoa-devel:402] の話。ふつうにスクリプトでつくった RubyCocoa のユニバーサルバイナリのパッケージがどうもうまく動かないようだ。0.4.3d2 のときはちゃんと動いてたんだから、その後の変更があやしいよな。というわけで、まずは setup 時の出力を…
なんだか自意識を差し引いても、検索にひっかからなさすぎると思ったのでトップページのソースをみてみたら、head に <meta name="robots" content="noindex,nofollow" />とかはいってやんの。調べてみたら、ココログの設定で「更新通知」を「いいえ」に設定するとそうなるらしい。ヘルプの説明だと、ココログ</meta>…
NSArray#to_a.each をボクメツ RCArrayAttachment のおかげで、0.4.3d2 から NSArray#each が使えるようになっていたので、それを利用するように変更。ちょっとコードがすっきりに。コミット前に update (svk pull) しなかったおかげで藤本さんとコンフリク…
Web 上のレポートをチェック mputの日記 Nick Sieger 藤本さんの OSM の記事でも思ったけど、RubyOSA はかなりおもしろそう。Automator アクションも書けるはずだし、AppleScript であるがゆえに敬遠していた層を取りこめれば、RubyCocoa 以上に普及しそうな…
ドキュメントの更新やら細かい修正やらが終わった。あとは開発メンバーで簡単な確認をしたらリリースするつもり。リリース前に試してみたいひとは、現在の svn trunk をチェックアウトしてください。知らなかったんだけど、Info.plist を Cプリプロセッサに…
RubyCocoa の Application と Document base Application のプロジェクトテンプレートが Project Builder のまんまだったので、Universal Binary がつくりにくいというので変換した。はじめは Xcode 2.0 にしようと Tiger の DVD 引っ張り出したんだけど、こ…
MSM2006での宿題 1/2。メソッドキャッシュなのかなあと思って検証。 require 'osx/cocoa' class Foo < OSX::NSObject def foo(sender) 111 end end obj = Foo.ocm_send(:alloc).ocm_send(:init) p obj.ocm_send(:foo, nil).to_i class Foo < OSX::NSObject d…
lib/ruby 側の osx/appkit.rb と osx/foundation.rb が修正されてなかったのを修正 obj.objc_methods にも 引数を追加。false が渡されたときはスーパークラスを見ないように。(ruby 1.8 の methods と同じ仕様に。objc_class_methods と objc_instance_met…
例によって資料を置いておく。スライドのみ。ちょっと時間足りなかったところは反省。どうせ質問がでるだろうとスキをつくっておいたけど聞かれなかったので、資料に載せなかった個人的な見解。 Q. OpenDoc とか「発行と引用」の歴史があるんだけど大丈夫? …
経験的にそうであることは知っていたけど、ドキュメントには書いてないからねえ、と思っていたのだけど、webkitsdk-dev ML で Apple の人がそう言っていたから仕様だと思っていいのかな。SandTrip はそうであることを利用して file: スキームの特定の URL を…
0.5.0 のリリース準備。 今年になってから追加されたサンプル(from rubycocoa.com) の中に ns_overrides があったので削除。 ドキュメント類の最低限の更新(まだ途中) 勢いさえつけば作業はできるのだ、と改めて実感。できるだけ早くリリースできるよう努…
OmniDazzle のエフェクトが Keynote 上で描画されない。ウインドウレベルの関係かなあとおもっていたら、ふつうにヘルプに書いてあった。 Keynote の環境設定で「Expose や Dashboard などによる画面の使用を許可」 にチェックをつけたまえユニバーサルアク…