ヤクルト470ml版みたいな代物。むっちに教えてもらって、駅前のサンクスで購入。たしかに飲み口はピルクルよりもヤクルト近い。
November 25, 2008
November 14, 2008
How to enable underscore on VMware Server 2
Underscore with jp106 keyboard worked on VMware Server 1.0.x after adding:
But it doesn't on VMware Server 2. $HOME/.vmware/preferences still seems to be alive to do something - just found a symbol in binaries. I don't know what it's for.
After some investigation, it could be enabled again with $HOME/.vmware/config, by adding same thing.
Enjoy,
xkeymap.keycode.211 = 0x073
But it doesn't on VMware Server 2. $HOME/.vmware/preferences still seems to be alive to do something - just found a symbol in binaries. I don't know what it's for.
After some investigation, it could be enabled again with $HOME/.vmware/config, by adding same thing.
Enjoy,
November 11, 2008
クリスマスツリー
September 13, 2008
XIMプロトコルの闇
XIMプロトコルにはトリガーキーをライブラリ側へあらかじめ通知することできる。最近の実装ではこれらのイベントフローを使わずに常にキーイベントをすべてXIMサーバ側にforwardさせ、然るべきキーを受け取ったらpreedit開始/終了などのようにやっているようだけれど。
このトリガーキーを通知するイベント、XIM_REGISTER_TRIGGERKEYSというイベントなのだけど、次のように解説される:
input-method IDってXIM_OPEN_REPLYで初めて通知される。つまり先にこっちを送ると宛先が不明になる。実際このような挙動をする実装のパケットを除いてみるとinput-method IDは0となっている。まあ0以外送りようがないわな。
ちなみに、リファレンス実装に近いkinput2のソースコードには興味深いコメントがある:
[Update: 2008-11-05] しばらく更新してないのでお茶濁しに。XIM_SET_EVENT_MASKの説明にこんな記述がある。
まあXIM_REGISTER_TRIGGERKEYSも同様に、ってことなんだろう。にしても0しか送りようがないんだからだったら初めからいらんだろう、ってのが正直な感想だけど。
このトリガーキーを通知するイベント、XIM_REGISTER_TRIGGERKEYSというイベントなのだけど、次のように解説される:
Using the Dynamic Event Flow model, an IM Server sendsまあここまではへえそうなんだ、で済むのだけれど、問題はそのフォーマット:
XIM_REGISTER_TRIGGERKEYS message to the IM library before
sending XIM_OPEN_REPLY message. Or the IM library may sup-
pose that the IM Server uses the Static Event Flow model.
XIM_REGISTER_TRIGGERKEYS (IM Server -> IM library)
2 CARD16 input-method-ID
2 unused
4 n byte length of on-keys
n LISTofXIMTRIGGERKEY on-keys list
4 m byte length of off-keys
m LISTofXIMTRIGGERKEY off-keys list
input-method IDってXIM_OPEN_REPLYで初めて通知される。つまり先にこっちを送ると宛先が不明になる。実際このような挙動をする実装のパケットを除いてみるとinput-method IDは0となっている。まあ0以外送りようがないわな。
ちなみに、リファレンス実装に近いkinput2のソースコードには興味深いコメントがある:
/*どの実装ならあの仕様は動くんだろう?
* Notify conversion trigger keys.
*
* Note:
* The spec says that XIM_REGISTER_TRIGGERKEYS message should
* be sent to the client bofore XIM_OPEN_REPLY message, in
* order to use dynamic event flow model. However, this
* does not work with current Xlib implementation. So we
* send XIM_REGISTER_TRIGGERKEYS just after XIM_OPEN_REPLY,
* which works fine.
*/
[Update: 2008-11-05] しばらく更新してないのでお茶濁しに。XIM_SET_EVENT_MASKの説明にこんな記述がある。
If input-context-ID
is set to zero, the default value of the input-method-ID
will be changed to the event masks specified in the request.
まあXIM_REGISTER_TRIGGERKEYSも同様に、ってことなんだろう。にしても0しか送りようがないんだからだったら初めからいらんだろう、ってのが正直な感想だけど。
August 23, 2008
libgxim
GObjectベースのXIMプロトコルライブラリです。
http://code.google.com/p/libgxim/
コアな部分はだいたいできていますが、これ使ってサーバないし、アプリケーション側で何かをするにはまだ実装が足りてません。当面の目的はimsettingsのXIM部分の切り替えに使うために書いてます。ただの垂れ流しだと切り替えた瞬間にアプリがフリーズとかあったんで。
Google Groupsにグループを作成したので、宣伝も兼ねてblogに書いてみました。
XIMプロトコルのproxy?部分のコードに興味のある人はこちらからどうぞ。
http://code.google.com/p/libgxim/
コアな部分はだいたいできていますが、これ使ってサーバないし、アプリケーション側で何かをするにはまだ実装が足りてません。当面の目的はimsettingsのXIM部分の切り替えに使うために書いてます。ただの垂れ流しだと切り替えた瞬間にアプリがフリーズとかあったんで。
Google Groupsにグループを作成したので、宣伝も兼ねてblogに書いてみました。
XIMプロトコルのproxy?部分のコードに興味のある人はこちらからどうぞ。
Subscribe to:
Posts (Atom)