2002-05-17 (Fri) 写真
▲ So You Want to Write a Book?
ほえ〜。O'Reillyの出版ポリシー。よくわかるな。
▲ java-mode-style
引数が多いとき改行してもインデントが深くなりすぎるのでarglist-intro と arglist-close を変更。
(defconst my-java-style '((c-basic-offset . 4) (c-comment-only-line-offset . (0 . 0)) ;; the following preserves Javadoc starter lines (c-hanging-comment-starter-p . nil) (c-offsets-alist . ((inline-open . 0) (topmost-intro-cont . +) (statement-block-intro . +) (knr-argdecl-intro . 5) (substatement-open . +) (label . 0) (statement-case-open . +) (statement-cont . +) (arglist-intro . +) (arglist-close . 0) (access-label . 0) (inher-cont . c-lineup-java-inher) (func-decl-cont . c-lineup-java-throws))) (c-hanging-braces-alist . ((brace-list-open) (brace-entry-open) (class-open after) (inline-open after) (substatement-open after) (block-close . c-snug-do-while) (extern-lang-open after) (inexpr-class-open after) (inexpr-class-close before))) ) "My Java Programming Style")
▲ 効果的にバグを報告するには
BTS開発にあたって。
▲ Reviewed Software Tools for Oracle developers and DBAs
FreeのDB設計ツールもいくつかあるね。
2007-05-17 (Thu)
▲ NKF moduleを実装
JRubyのNKF moduleは、定数だけを定義したダミーのビルトインモジュールが含まれていて、本来 あるべきモジュールメソッドがひとつも呼び出せなかった。
そこでビルトインモジュールは削除して捨ててしまい、NKF module相当を動くように実装してみた。 しかし今更Pure JavaでNKFを再実装するのも不毛チックにも思われたので、 今回はkconvがそこそこ満足に動く範囲にとどめて実装している。
- [JRUBY-934]: Unsupported NKF module
無事に取り込まれ*1、先ごろ出たJRuby 1.0.0RC2には含まれている模様*2。
- guessで自動判別できるエンコーディングはiso-2022-jp/Shift_JIS/EUC-JPの三つ。x-JISAutoDetectを使うため。
- 特に指定が無いときは入力エンコーディングを自動判別(x-JISAutoDetect)する。
- $KCODEが指定されていたら、$KCODEで指定されたエンコードが入力されることを期待する。(これはMRIと仕様が違ってくるので変えるかも)
- Shift_JISはWindows-31J(cp932)が指定されたものとして振舞う。
ただし今のNKFではMIME encode/decodeをまったくサポートしていないので、 いずれ追加しようと思ってる。単純に作るとJavaMail APIを使うのが楽チンだが、 mail.jarの追加が可能か交渉しないといけないな。
ということで今度のJRubyではnkf呼び出しを削除するパッチを当てなくても、 Praggerが動くんじゃなかろうか。動くといいな...
実は二番目の問題のほうが根が深くてinstance_evalへの第2引数に 文字列以外のオブジェクトを渡したときに発生するJRubyのバグでした。
以下のIssueでパッチ&報告済み。
- [JRUBY-942]: ClassCastException occurs when Object#instance_eval is invoked
こちらは1.0.0RC2には間に合わなかったみたいだが、次のリリースあたりでは直るんじゃないかな。試したいときは上記パッチをtrunkに当ててください。
2008-05-17 (Sat)
▲ Re: Appleマイティマウスを分解しないで掃除する。
でも、 Synergy で隣りの Windows に行った時に「右クリック」できないと不便。 Windows で 「右クリック」の代替えのショートカットってないのかなあ。 (本末転倒か? これ)
Shift+F10
2010-05-17 (Mon)
▲ 「JRuby on Rails実践開発ガイド」が発売されます
Ola Bini著、1590598814の邦訳として4798116904を出します。
原著は2007年に刊行された少し古い本です。
中身の濃さと翻訳チームのHPとMPの少なさで大変な時間がかかってしまいました。
Railsを題材にJRubyを使ってRubyとJavaの連携について解説する本です。
JRubyの魅力のひとつにJavaとの柔軟なインテグレーション機能にあります。 たとえばJRubyは、Javaオブジェクトを可能な限りRubyオブジェクトとして扱えるように様々な工夫が凝らしてあります。 また、自分のJavaプログラムにRubyを組み込むにあたっても 原田洋子さんのRedBregdeプロジェクトの成果で非常に簡単な手順で統合できるのです。 そういったJRubyの核となる魅力を、サンプルアプリケーション開発を通して一通り紹介しています。
原著と日本語版の違いをまとめます。
- インストール、セットアップは最近のライブラリに合わせて更新
- 各プロジェクトのリポジトリを最新へ追従
- JRubyの内部の動きについて言及ある部分は、可能なかぎり最新のソースに合わせるか訳註をいれました
- Rails 1.2.0対応からRails 2.3.5対応しました。具体的にはScaffoldの出力コード、ERBの書き方、細かいAPIの使い方でより良い手法へ(named_routeの利用など)
- Rails 2.x系ではプラグインになった機能についても追従しています(pagenateなど)
- Rails 1.2系とRails 2.x系の違いを付録Dにつけました。
- 配備についてのChapter 11は含まれません。代わりに最近の配備についての情報を付録Cにまとめました。GAE/JRubyに少しだけ触れています
- 付録A 「JavaプログラマのためのRubyガイド」でRubyの仕様の記述に曖昧な部分があったためYuguiさんの助言により、より適切な表現にしました。Yuguiさんありがとうございます!
本書の刊行に当たって多くの方々の協力がありました。
今回も(いつも)公私に渡り苦労をかけた大場寧子さん。まさに愛が無いとできない仕事でした。 田中祐樹さんとは前の本以来5年ぶりで、またいっしょに仕事ができてよかった。 締め切り目前にお願いしたにも拘わらず、素晴らしい前書きを寄せてくれた原著者のOla Biniさま。 長いあいだ辛抱強く待っていてくれた翔泳社さま。 査読協力してくれた万葉の皆さん。 お祝いに大きな花束をくれた嫁実家の人々。 本当にありがとうございます。
皆様もよかったら手にとってみてください。よろしくお願いします。
# kose [じゃあ、Apple Wireless Keyboardを使っているのですが、IME ON/OFFのショートカットって..]
# ko [IME ON/OFFは、設定でON/OFFできるキーを追加してもなんかダメですね。Synergyより前にIMEがとっ..]