Alex Taylor
alex****@altsa*****
2018年 4月 8日 (日) 11:36:09 JST
On Fri, 6 Apr 2018 19:46:17 +0900 ishikawa wrote: >> I'm trying to create a client for OS/2. This platform doesn't use >> X11 so I assume porting kinput2 would be difficult... > > How interesting. Before I switched to linux (Debian distribution) > on then main PC, I used OS/2 for 4-5 years (I started to use it > before the release of Win98). > > It is true that converting kinput2 for OS/2 may be difficult (but > maybe with clever usage of macros?). I remember there was a > POSIX-like environment that runs on top of OS/2 that was offered by > a few daemons and a linked library. I think there was even a port > of X11 server. I am not sure if it is still available, though. > (Well, I was not even sure of the availability of OS/2, but found a > reference to ArcaOS 5.0 Blue Lion.) I am afraid that I threw away > all the print copies and CDROMs of OS/2 magazine (in Japanese) a few > years ago. So I can't even figure out what the software was called. > But there was a guide about porting X11 applications to this > environment. I remember writing my own implementation of getenv() > so that I could port a program from Linux to OS/2. getenv() was > missing although fork/spawn was somehow supported (I think by means > of a clever macro, etc.) Sorry that I could not help on this aspect > of porting. > > I hope kinput2 source code gives you better samples of using Wnn > library functions. Yes, the following (based on simplified logic from kinput2) seems to work to connect and setup the environment+dictionaries: /* Connect to the server. */ bdata = jl_open_lang(user, server, NULL, NULL, hnd_err, hnd_msg, 0); if ((bdata == NULL) || (jl_isconnect(bdata) == 0)) { printf("Failed to establish session with server %s.\n", server); return 1; } if (jl_fuzokugo_get(bdata, fzk) == -1) { /* Environment isn't active on server, so initialize it now. */ wnnenv = jl_env_get(bdata); jl_set_env_wnnrc(wnnenv, "wnnenvrc", WNN_CREATE, NULL); } Now I can play around with conversion. Thanks again for the tip! By the way, I'm having trouble understanding the difference between "convert large clause" and "convert small clause" (for example in the description of jl_tan_conv). Is there a glossary somewhere that can explain these terms? Thanks, -- Alex Taylor <alex****@altsa*****> http://www.altsan.org