[Squeak-ja: 3862] Re: OLPC-VM ImmX11 パッチ

Yoshiki Ohshima yoshiki @ vpri.org
2008年 4月 16日 (水) 05:15:17 JST


  廣島さん

> trunk のコード(rev 1853)を見ました.
> 互換性のため仕方がないことでしょうが,
> x2sqKeyInput が以前のバージョンとなり,
> デフォルトでこれが使われるというのは残念です.
> 堅牢な入力処理が開発されるまでの過渡的な処置であることを願います.

  今回はちょっとした時間制約もあってこのようになってしまいました。

> 以降,本来 UNIX-VM 開発の ML に英語で投げるべき内容です.ご容赦下さい.
> 
> Tcl/Tk の日本語化をされた SRA の ひらの さんは,かつてある掲示板で,
> 「SingleByte 環境の開発者では何十年たっても国際化入力はできない」
> のような意の発言をなさってました.
> かく言う私もかつて Perl/Tk(UNIX) の日本語化パッチをネットに流したことがあり
> ます.
> 現在では UTF-8 化されて,日本語表示には問題はなくなりましたが,
> 今もパッチを当てないと日本語入力は出来ません.

  これは私も同意します。Squeakの多言語化も自分でやるしかなかったです。

> 要するに,x2sqKeyInput は,
> SingleByte 環境では x2sqKeyPlain と動作が変わらず,
> MultiByte 環境では害になるので,
> これを使う意味は無いはずなのです.

  dead-keyがあるとXmbLookupStringがcomposeした結果を返すのですが、そこ
でかなりてこずっています。setxkbmap -layout esとして言語を切り替えて動
かすと少なくともちゃんと動作しないという問題があったので、いまのところ
こういう状況になりました。

  ありがとうございます。

  ところで、今のsqUnixX11.cの2484行目は

     if (evt->xfocus.mode == NotifyNormal)

となっていますが、Gnome上でAlt-Tabを使ってSqueakからフォーカスを切り替
えた後もう一度Alt-Tabして戻ってきたときに文字入力が有効になりません。

     if (evt->xfocus.mode == NotifyNormal || evt->xfocus.mode == NotifyUngrab)

のように変えるのがよいのかなとも思うのですが、window manager依存のとこ
ろもありそうで「正しい」かどうかはっきりしないでいます。どうでしょう?

-- Yoshiki


Squeak-ja メーリングリストの案内