[aquaskk-dev 40] dictionary-renovation 2.2 リリース

Back to archive index

Tomotaka SUWA t-suw****@users*****
2006年 3月 25日 (土) 01:13:48 JST


諏訪です。

AquaSKK BETA dictionary-renovation 2.2 をリリースしました。

▽不具合修正
・Rosetta を必要とするアプリケーションで正しく動作するように修正

■ 修正内容について

問題の原因は、ppc(Rosetta) なクライアントと i386 な辞書サーバーが通信す
る時の Endian が異なることでした。そこで、通信経路上では基本的に Big
Endian に統一することにしました。

よって、クライアントでは Host Endian → Big Endian 変換をしてメッセージ
を送信し、サーバーでは受信したメッセージに対してその逆の変換を行なう必
要があります。

ただし、見出し語や変換候補などの Unicode 文字列については Big Endian に
統一していません。

そのかわりに、CppCFString の中で、CFStringCreateExternalRepresentation
と CFStringCreateFromExternalRepresentation を使うようにしました。

リファレンスを見てもらえばわかると思うのですが、簡単に言うと、バイトオー
ダーを判別するための余分なデータを付加した形式でデータをやり取りします。

この結果、同一 Endian 上ではデータの変換が発生しないため、若干効率が良
くなります。

				- * -

Rosetta がらみのバグがまだ埋まっているかもしれませんが、intel 移行につ
いては、ひとまずこれで落ち着くと思います。

よろしくお願いします。

-- Tomotaka SUWA



aquaskk-dev メーリングリストの案内
Back to archive index