[Freewnn-users 306] FreeWnn のクライアントを作成のもんだい

Back to archive index

Alex Taylor alex****@altsa*****
2018年 4月 4日 (水) 22:51:53 JST


皆さん、こんにちは。

(まず、私が書いている不成功な日本語、申し訳ございません。それで、English  
follows below.)

私は FreeWnn (jserver) につながる IME  
プログラムを作成したいです。しかし、少し迷っています...

私が書いていたテストプログラムは jl_open()  
でサーバーにつながることができますが、それから環境に辞書を設定することでどうするか分かりません。

他のセションから uum でつながている場合、作動します  
(辞書がすべてちゃんと設定したからです)。でも、uum  
がつながっていない時は、私が書いていたテストプログラムは辞書を何も使えません。はっきりに何かすることが必要なんですが、何か分かりません。

このコードに対して
     dics = jl_dic_list( bdata, &pdics );
uum が他のセションからつながっている時、 dics == 12  
(そして変更のファンクションが当たります)。

しかし uum とかがつながっていない時、その結果は dics == 0。

この形:
     jl_dic_add( bdata, "pubdic/kihon.dic", "usr/alex/kihon.h", 0, 5, 0, 1,  
NULL, NULL, WNN_CREATE, hnd_msg );
を使ってみましたが、NG です。:(

jserver のログに:
Apr/03/2018:17:00:08 client=root: JS_ENV_EXIST(7): cur_clp = 0
Apr/03/2018:17:00:08 client=root: JS_CONNECT(5): cur_clp = 0
Apr/03/2018:17:00:08 client=root: new_env: Created , alex env_id=0
Apr/03/2018:17:00:08 client=root: JS_DIC_LIST(36): cur_clp = 0
Apr/03/2018:17:00:08 client=root: JS_ACCESS(82): cur_clp = 0
Apr/03/2018:17:00:08 client=root: JS_FILE_READ(97): cur_clp = 0
Apr/03/2018:17:00:08 client=root: JS_ACCESS(82): cur_clp = 0
Apr/03/2018:17:00:08 client=root: JS_FILE_READ(97): cur_clp = 0
Apr/03/2018:17:00:08 client=root: JS_DIC_ADD(33): cur_clp = 0
Apr/03/2018:17:00:08 client=root: dic_add: eid=0,fid=1,hfid=13
Apr/03/2018:17:00:08 client=root: Error パスワードが間違っています。(94):  
cur_clp = 0

上紀のエラーは、頻度ファイルもう存在の時です。ファイルが無い場合、メッセージ200または203がクライアントセションに出ますが、ファイルは作成されません。

...ともかくに、これは学習用ないで難しいと思います。FreeWnn  
のクライアントを作成する方法の説明が、どこか書いてありますか?  
サンプルプログラムとかもありますか? (実は uum  
が勉強するために複雑すぎます...)

参照目的で:
Main C file:  http://altsan.org/programming/testwnn.c
Full source:  http://altsan.org/programming/testwnn1.zip
(Tested on both Linux Mint x86 (Cinnamon) and OS/2 v4.5.)


I'll repeat in English because my Japanese ability is poor... 

Hello everyone,

I'm hoping to write an IME program using FreeWnn (jserver).  Unfortunately,  
I find myself a bit lost.

I've written a test program which can connect to the server using  
jl_open().  However, I'm not sure what to do next with regard to setting up  
dictionaries for the environment.

Now, if I connect to the same server with uum in another session, my test  
program works fine (because all the dictionaries are set up already).  
However, when uum is not running, my test program has no dictionaries  
available.  Obviously, there is something I need to do in order to set up  
the dictionaries in the environment, but I don't know what.

With this code:
     dics = jl_dic_list( bdata, &pdics );
when uum is running simultaneously, 'dics' is 12 (and doing a conversion  
subsequently works fine).

However, if uum is not also running, the result is that 'dics' equals 0.

Trying to use code like:
     jl_dic_add( bdata, "pubdic/kihon.dic", "usr/alex/kihon.h", 0, 5, 0, 1,  
NULL, NULL, WNN_CREATE, hnd_msg );
is also no good.  :(  I get error messages about passwords or other things  
if the frequency files exist (see the jserver log excerpt I posted above);  
if the files don't yet exist, nothing happens except a lot of messages 200  
and 203.

Overall, I think that this project is going to be very difficult without  
any tutorial. Is there some kind of guide or explanation about writing a  
FreeWnn client?  Are there any good sample programs for learning from?  (To  
be honest, uum is much too complicated and difficult to follow for  
practical learning material.) 

I have the function reference man pages from 2.libwnn (although my Japanese  
reading ability is not great), but they don't provide context or  
explanations about how things fit together...

よろしくお願いします。
Thanks,

-- 
Alex Taylor <alex****@altsa*****>
http://www.altsan.org




freewnn-users メーリングリストの案内
Back to archive index