[Squeak-ja: 3367] 3.9-8VM用のSqueakImmX11Pluginパッチ

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

[Squeak-ja: 3367] 3.9-8VM用のSqueakImmX11Pluginパッチ

Takeshi MUTOH
むとう@おうちです。

3.9-7VMから3.9-8VMの間でALSAサポートとか大いに変わっていて、焦っている
今日この頃です。
# なんか、OSS回りのconfigure回りの変更がおかしいような…

3.9-7VMまでは、SqueakImmX11Plugin3a.tar.gzが使えたのですが、3.9-8VMで
は若干変更しないと使えないようです。

で、手元でちょっと試してみたものを
        http://squeak.610t.org/patches/test/SqueakImmX11Plugin3.9-8.tar.gz
として置いてあります。
パッチ部分(ImmX11.patch)しか手を入れてませんが、手元の私家版FreeBSD
portsでは動いているようです。

他の環境でもお試しいただいて、ご意見いただければうれしいです。

では。
--
武藤 武士@「あおによし」自宅より
 E-mail:[hidden email] URL:http://qml.610T.org/
 ・水面の泡のように、フラフラ揺れたり、沈んだり浮かんだり
 ・「責任を持てないうちは責任のある地位にならないのが責任のある態度」
Reply | Threaded
Open this post in threaded view
|

[Squeak-ja: 3372] Re: 3.9-8VM用のSqueakImmX11Pluginパッチ

Hideo Kawamura
川村です。

遅れましたが、Linux(Ubuntu 6.10)でビルド実行しました。残念ながら、わたし
の環境ではキー入力した段階でSegmentation faultとなってしまいました。
環境は次の通りです。
Linux(Ubuntu 6.10),Kernel 2.6.17,gcc version 4.1.2,XIM(SCIM+Anthy),UTF-8
です。EUC-jpなら動くかもしれません。後ほど試してみます。

それでは。

gdbでおちたところで'where':
#0 x2sqKeyInput (xevt=0xbfcd363c)
at
/home/kawa90/work/squeak/vm/Squeak-3.9-8/platforms/unix/vm-display-X11/sqUnixX11.c:1450
#1 0xb7c9f5c6 in handleEvent (evt=0xbfcd363c)
at
/home/kawa90/work/squeak/vm/Squeak-3.9-8/platforms/unix/vm-display-X11/sqUnixX11.c:1884
#2 0xb7c9fbeb in handleEvents ()
at
/home/kawa90/work/squeak/vm/Squeak-3.9-8/platforms/unix/vm-display-X11/sqUnixX11.c:2060
#3 0xb7c9fd54 in xHandler (fd=6, data=0x0, flags=2)
at
/home/kawa90/work/squeak/vm/Squeak-3.9-8/platforms/unix/vm-display-X11/sqUnixX11.c:2068
#4 0x0807255c in aioPoll (microSeconds=0)
at /home/kawa90/work/squeak/vm/Squeak-3.9-8/platforms/unix/vm/aio.c:262
#5 0x08072642 in aioSleep (microSeconds=0)
at /home/kawa90/work/squeak/vm/Squeak-3.9-8/platforms/unix/vm/aio.c:286
#6 0xb7c9fd2e in display_ioRelinquishProcessorForMicroseconds (
microSeconds=1000)
at
/home/kawa90/work/squeak/vm/Squeak-3.9-8/platforms/unix/vm-display-X11/sqUnixX11.c:2883
#7 0x0805aa83 in ioRelinquishProcessorForMicroseconds (us=1000)
at
/home/kawa90/work/squeak/vm/Squeak-3.9-8/platforms/unix/vm/sqUnixMain.c:471


Takeshi MUTOH wrote:

> むとう@おうちです。
>
> 3.9-7VMから3.9-8VMの間でALSAサポートとか大いに変わっていて、焦っている
> 今日この頃です。
> # なんか、OSS回りのconfigure回りの変更がおかしいような…
>
> 3.9-7VMまでは、SqueakImmX11Plugin3a.tar.gzが使えたのですが、3.9-8VMで
> は若干変更しないと使えないようです。
>
> で、手元でちょっと試してみたものを
> http://squeak.610t.org/patches/test/SqueakImmX11Plugin3.9-8.tar.gz
> として置いてあります。
> パッチ部分(ImmX11.patch)しか手を入れてませんが、手元の私家版FreeBSD
> portsでは動いているようです。
>
> 他の環境でもお試しいただいて、ご意見いただければうれしいです。
>
> では。
>  

--------------------------------------
Start Yahoo! Auction now! Check out the cool campaign
http://pr.mail.yahoo.co.jp/auction/

Reply | Threaded
Open this post in threaded view
|

[Squeak-ja: 3373] Re: 3.9-8VM用のSqueakImmX11Pluginパッチ

Hideo Kawamura
川村です。
euc-jpで実行してみました。落ちることはなかったが、日本語入力ができなかった。
コンソールに、XOpenIM() failed となっていました。ちなみにeuc-jpでは以前
の日本語パッチがあたったVMも、同じ現象でした。ちなみに使用したイメージは
SqueakPlugin-dev-527.image です。

わたしの環境が悪いのかも...

# Squeakでは日本語入力をあきらめていたりする...

それでは

Hideo Kawamura wrote:

> 川村です。
>
> 遅れましたが、Linux(Ubuntu 6.10)でビルド実行しました。残念ながら、わたし
> の環境ではキー入力した段階でSegmentation faultとなってしまいました。
> 環境は次の通りです。
> Linux(Ubuntu 6.10),Kernel 2.6.17,gcc version 4.1.2,XIM(SCIM+Anthy),UTF-8
> です。EUC-jpなら動くかもしれません。後ほど試してみます。
>
> それでは。
>
> gdbでおちたところで'where':
> #0 x2sqKeyInput (xevt=0xbfcd363c)
> at
> /home/kawa90/work/squeak/vm/Squeak-3.9-8/platforms/unix/vm-display-X11/sqUnixX11.c:1450
> #1 0xb7c9f5c6 in handleEvent (evt=0xbfcd363c)
> at
> /home/kawa90/work/squeak/vm/Squeak-3.9-8/platforms/unix/vm-display-X11/sqUnixX11.c:1884
> #2 0xb7c9fbeb in handleEvents ()
> at
> /home/kawa90/work/squeak/vm/Squeak-3.9-8/platforms/unix/vm-display-X11/sqUnixX11.c:2060
> #3 0xb7c9fd54 in xHandler (fd=6, data=0x0, flags=2)
> at
> /home/kawa90/work/squeak/vm/Squeak-3.9-8/platforms/unix/vm-display-X11/sqUnixX11.c:2068
> #4 0x0807255c in aioPoll (microSeconds=0)
> at /home/kawa90/work/squeak/vm/Squeak-3.9-8/platforms/unix/vm/aio.c:262
> #5 0x08072642 in aioSleep (microSeconds=0)
> at /home/kawa90/work/squeak/vm/Squeak-3.9-8/platforms/unix/vm/aio.c:286
> #6 0xb7c9fd2e in display_ioRelinquishProcessorForMicroseconds (
> microSeconds=1000)
> at
> /home/kawa90/work/squeak/vm/Squeak-3.9-8/platforms/unix/vm-display-X11/sqUnixX11.c:2883
> #7 0x0805aa83 in ioRelinquishProcessorForMicroseconds (us=1000)
> at
> /home/kawa90/work/squeak/vm/Squeak-3.9-8/platforms/unix/vm/sqUnixMain.c:471
>
>
> Takeshi MUTOH wrote:
>  
>> むとう@おうちです。
>>
>> 3.9-7VMから3.9-8VMの間でALSAサポートとか大いに変わっていて、焦っている
>> 今日この頃です。
>> # なんか、OSS回りのconfigure回りの変更がおかしいような…
>>
>> 3.9-7VMまでは、SqueakImmX11Plugin3a.tar.gzが使えたのですが、3.9-8VMで
>> は若干変更しないと使えないようです。
>>
>> で、手元でちょっと試してみたものを
>> http://squeak.610t.org/patches/test/SqueakImmX11Plugin3.9-8.tar.gz
>> として置いてあります。
>> パッチ部分(ImmX11.patch)しか手を入れてませんが、手元の私家版FreeBSD
>> portsでは動いているようです。
>>
>> 他の環境でもお試しいただいて、ご意見いただければうれしいです。
>>
>> では。
>>  
>>    
>
> --------------------------------------
> Start Yahoo! Auction now! Check out the cool campaign
> http://pr.mail.yahoo.co.jp/auction/
>
>
>  

--------------------------------------
Start Yahoo! Auction now! Check out the cool campaign
http://pr.mail.yahoo.co.jp/auction/

Reply | Threaded
Open this post in threaded view
|

[Squeak-ja: 3378] Re: 3.9-8VM用のSqueakImmX11Pluginパッチ

Takeshi MUTOH
むとう@おうちです。

Squeak BoFもそろそろ終わりころと思われるC5に参加しているので、反応が遅
くて申し訳ありません。

At Wed, 24 Jan 2007 22:30:58 +0900,
Hideo Kawamura <[hidden email]> wrote:
> euc-jpで実行してみました。落ちることはなかったが、日本語入力ができなかった。
> コンソールに、XOpenIM() failed となっていました。ちなみにeuc-jpでは以前
> の日本語パッチがあたったVMも、同じ現象でした。ちなみに使用したイメージは

すいません、手元のSLAXで一度コンパイルから試してみます。
少しお待ちを。
# もし、buildログがありましたら、いただけると何か分かるかもしれません。

あと、日本語入力には何をお使いになられてますでしょうか?

> SqueakPlugin-dev-527.image です。
>
> わたしの環境が悪いのかも...

このイメージを良く知らないのですが、XIM関連のコードが入ったものなんで
すかね?

> # Squeakでは日本語入力をあきらめていたりする...

そんな悲しいこといわないでくださいよぉ(;-;)
--
武藤 武士@「あおによし」自宅より
 E-mail:[hidden email] URL:http://qml.610T.org/
 ・水面の泡のように、フラフラ揺れたり、沈んだり浮かんだり
 ・「責任を持てないうちは責任のある地位にならないのが責任のある態度」
Reply | Threaded
Open this post in threaded view
|

[Squeak-ja: 3379] Re: 3.9-8VM用のSqueakImmX11Pluginパッチ

Hideo Kawamura
川村です。

むとうさま、パッチお待ちしております。
> # もし、buildログがありましたら、いただけると何か分かるかもしれません。
>  
消してしまったり。。。あとでもう一度ビルドしてみます。
> あと、日本語入力には何をお使いになられてますでしょうか?
>  
Ubuntu 6.10標準のSCIM+Anthyです。あんまりXIMと相性がよくないという話も
あったりします。

>> # Squeakでは日本語入力をあきらめていたりする...
>>    
>
> そんな悲しいこといわないでくださいよぉ(;-;)
今はemacsで書いてファイル経由か、自作のanthy-agentを使ったものでしのいで
ます。
あと今のSqueakディスプレイドライバをXlibベースからgtk+ベースにしようかなぁ。

それでは。
--------------------------------------
Start Yahoo! Auction now! Check out the cool campaign
http://pr.mail.yahoo.co.jp/auction/

Reply | Threaded
Open this post in threaded view
|

[Squeak-ja: 3383] Re: 3.9-8VM用のSqueakImmX11Pluginパッチ

Hideo Kawamura
In reply to this post by Takeshi MUTOH
川村です。
むとうさま、
http://homepage3.nifty.com/rio_i/lab/xlib/012xim.htm
にあるサンプルプログラム  012xim_root.c をコンパイル・実行してみました。
■UTF-8
問題なく動きました。
関係しそうな環境変数を以下に示します。
XMODIFIERS=@im=SCIM
LANG=ja_JP.UTF-8
GDM_LANG=ja_JP.UTF-8
LANGUAGE=ja_JP.UTF-8
GTK_IM_MODULE=scim

■EUC-jp
プログラムは"Couldn't open input method."と言うメッセージで異常終了しま
した。
関係しそうな環境変数を以下に示します。
XMODIFIERS=@im=SCIM
LANG=ja_JP.eucJP
GDM_LANG=ja_JP.eucJP
LANGUAGE=ja_JP.eucJP
GTK_IM_MODULE=scim

それでは。

Takeshi MUTOH wrote:

> むとう@おうちです。
>
> Squeak BoFもそろそろ終わりころと思われるC5に参加しているので、反応が遅
> くて申し訳ありません。
>
> At Wed, 24 Jan 2007 22:30:58 +0900,
> Hideo Kawamura <[hidden email]> wrote:
>  
>> euc-jpで実行してみました。落ちることはなかったが、日本語入力ができなかった。
>> コンソールに、XOpenIM() failed となっていました。ちなみにeuc-jpでは以前
>> の日本語パッチがあたったVMも、同じ現象でした。ちなみに使用したイメージは
>>    
>
> すいません、手元のSLAXで一度コンパイルから試してみます。
> 少しお待ちを。
> # もし、buildログがありましたら、いただけると何か分かるかもしれません。
>
> あと、日本語入力には何をお使いになられてますでしょうか?
>
>  
>> SqueakPlugin-dev-527.image です。
>>
>> わたしの環境が悪いのかも...
>>    
>
> このイメージを良く知らないのですが、XIM関連のコードが入ったものなんで
> すかね?
>
>  
>> # Squeakでは日本語入力をあきらめていたりする...
>>    
>
> そんな悲しいこといわないでくださいよぉ(;-;)
>  

--------------------------------------
Start Yahoo! Auction now! Check out the cool campaign
http://pr.mail.yahoo.co.jp/auction/

Reply | Threaded
Open this post in threaded view
|

Re: 3.9-8VM用のSqueakImmX11Pluginパッチ

Tsutomu Hiroshima
In reply to this post by Hideo Kawamura
廣島です.

> 川村です。
>
> 遅れましたが、Linux(Ubuntu 6.10)でビルド実行しました。残念ながら、わたし
> の環境ではキー入力した段階でSegmentation faultとなってしまいました。
> 環境は次の通りです。
> Linux(Ubuntu 6.10),Kernel 2.6.17,gcc version 4.1.2,XIM(SCIM+Anthy),UTF-8
> です。EUC-jpなら動くかもしれません。後ほど試してみます。
>
> それでは。
>
> gdbでおちたところで'where':
> #0 x2sqKeyInput (xevt=0xbfcd363c)
> at
> /home/kawa90/work/squeak/vm/Squeak-3.9-8/platforms/unix/vm-display-X11/sqUnixX11.c:1450

落ちたところのソースから推測すると,
XCreateFontSet か XExtentsOfFontSet の返値が NULL なのかもしれません.
XIM用のフォントは

#define FONTNAME      "-*-*-medium-r-normal--14-*"

とハードコードしてありますが,これがいけないのかも.
次の調査用プログラムをコンパイル(gcc -lX11)して,
引数に "-*-*-medium-r-normal--14-*" を与えて起動してみてください.
もし Fail したなら,引数を "-*-*-medium-r-normal--*" 等,
いろいろ変えてみて Fail しないパターンをお教え下さい.
策を考えます.
ただ,すぐに返事は書けないと思いますので,気長に待って下さい.
====
廣島 勉

/* 調査用プログラムソースここから */
#include <stdio.h>
#include <string.h>
#include <X11/Xlib.h>
#include <X11/Xlocale.h>
int
main(int argc, char *argv[])
{
  char **fname, *def;
  int num, i;
  Display *d;
  XFontSet fs;
  XFontStruct **fstr;

  if (argv[1])
  {
    printf("pattern: %s\n", argv[1]);
    setlocale(LC_ALL, "");
    d = XOpenDisplay(NULL);

    fs = XCreateFontSet(d, argv[1], &fname, &num, &def);

    printf("default: %s\n", def);
    for (i = 0; i < num; ++ i)
    {
      printf("missing: %s\n", fname[i]);
    }

    if (fs != NULL)
    {
      printf("found: ");
      num = XFontsOfFontSet(fs, &fstr, &fname);
      if (num > 0)
      {
        printf("%s", fname[0]);
        for (i = 1; i < num; ++ i)
        {
          printf(",%s", fname[i]);
        }
        printf("\n");
      }
      if (XExtentsOfFontSet(fs) == NULL)
      {
        printf("Failed XExtentsOfFontSet\n");
      }

      XFreeFontSet(d, fs);
    }
    else
    {
      printf("Failed XCreateFontSet\n");
    }

    XCloseDisplay(d);
  }
  return 0;
}
/* ソースここまで */





Reply | Threaded
Open this post in threaded view
|

[Squeak-ja: 3405] Re: 3.9-8VM用のSqueakImmX11Pluginパッチ

Hideo Kawamura
廣島さん、はじめまして川村です。

結果を送ります。
"-*-*-medium-r-normal--14-*"

"-*-Fixed-Medium-R-Normal--14-*-ISO8859-1"
の結果を送ります。

以上

desktop:~$ ./a.out "-*-*-medium-r-normal--14-*"
pattern: -*-*-medium-r-normal--14-*
default: \
missing: ISO8859-1
missing: ISO8859-1
missing: JISX0208.1983-0
missing: KSC5601.1987-0
missing: GB2312.1980-0
missing: JISX0201.1976-0
missing: ISO10646-1
Failed XCreateFontSet
desktop:~$ ./a.out "-*-Fixed-Medium-R-Normal--14-*-ISO8859-1"
pattern: -*-Fixed-Medium-R-Normal--14-*-ISO8859-1
default:
missing: JISX0208.1983-0
missing: KSC5601.1987-0
missing: GB2312.1980-0
missing: JISX0201.1976-0
missing: ISO10646-1
found: -misc-fixed-medium-r-normal--14-110-100-100-c-70-iso8859-1,-misc-fixed-medium-r-normal--14-110-100-100-c-70-iso8859-1


--------------------------------------
Start Yahoo! Auction now! Check out the cool campaign
http://pr.mail.yahoo.co.jp/auction/

Reply | Threaded
Open this post in threaded view
|

[Squeak-ja: 3408] Re: 3.9-8VM用のSqueakImmX11Pluginパッチ

Tsutomu Hiroshima
廣島です.

> 結果を送ります。
> "-*-*-medium-r-normal--14-*"
> と
> "-*-Fixed-Medium-R-Normal--14-*-ISO8859-1"
> の結果を送ります。

> found: -misc-fixed-medium-r-normal--14-110-100-100-c-70-iso8859-1,-misc-fixed-medium-r-normal--14-110-100-100-c-70-iso8859-1

2番めで見つかったフォントは最初のパターンにもマッチするはずなのに,
Fail するのは変ですね.何故でしょう?
文字集合(iso8859-1)を指定しないと Fail するのでしょうか?
この指定だと日本語文字を含まないフォントセットが出来てしまいます.
ただ,IM がフォント指定を無視するかもしれないので,
問題は起こらないのかもしれません.

http://opinion.nucba.ac.jp/~tsutomu/squeak/SqueakImmX11Plugin4b.tar.gz

を置きました.

1. ハードコードのフォント指定を緩め
"-*-*-medium-r-normal--*" にしたのですが,
上のような状況では,これだけではダメかも.
2. XCreateFontSet に失敗したときは,
国際化入力を無効にするようにしました.
"-*-*-medium-r-normal--14-*" にマッチするフォントが
必ずあるものと思っていたので,返値をチェックしていませんでした.
3. リソース squeak*fontSet を設定することで
問題のフォントを指定できるようにしました.
~/.Xresources か ~/.Xdefaults に,

squeak*fontSet: -*-*-misc-fixed-*

等,記述していろいろ試してください.なお,記述した直後には
xrdb -merge ~/.Xresources
することをお忘れなく.一時的に試したいときは
xrdb -merge
で標準入力にリソースを打ち込む手もあります.

=======
廣島 勉
Reply | Threaded
Open this post in threaded view
|

[Squeak-ja: 3409] Re: 3.9-8VM用のSqueakImmX11Pluginパッチ

Tsutomu Hiroshima
廣島です.もう少し情報を下さい.

>> "-*-*-medium-r-normal--14-*"
>> と
>> "-*-Fixed-Medium-R-Normal--14-*-ISO8859-1"
>> の結果を送ります。
>
>> found: -misc-fixed-medium-r-normal--14-110-100-100-c-70-iso8859-1,-misc-fixed-medium-r-normal--14-110-100-100-c-70-iso8859-1
>
> 2番めで見つかったフォントは最初のパターンにもマッチするはずなのに,
> Fail するのは変ですね.何故でしょう?
> 文字集合(iso8859-1)を指定しないと Fail するのでしょうか?

調査用プログラムで
"*"(全てのフォントにマッチする)
を指定したらどうなりますか?

X のフォントユーティリティ xlsfonts, xfd 等で,
パターン "-*-*-medium-r-normal--*"
を指定したらどうなりますか?
=======
廣島 勉