[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: imkaze.so
やないです。
<397B2887B4.1054.BXQ04723@nifty.ne.jp>の記事で
Nakamura Akifumiさんはこう書かれたそうです。
>MGL(2?)の漢字入力IMの一つとして、「風」っぽい imkaze.so 作りました。
>http://member.nifty.ne.jp/guion/SOFT/INDEX.HTM#imkaze
>こんなもんでいいんでしょうか?
>色々いい加減な部分もあるかと思いますが…
imkaze 使ってみました。これ面白い・楽しいです。
慣れてくるとたしかに、速く打てそうです。
# どことなく和文タイプみたい。
でも、 MGL2 の mgterm ならば問題ないのですが、 mglsvrcons だ
と imkaze の表示がミニアプリ領域に隠れてしまうです。
imcanna.c にならって、 im_view_point() 使うようにするとよさそ
うでした。
---- ここから ----
--- imkaze.c.orig Tue Jul 25 01:44:51 2000
+++ imkaze.c Tue Jul 25 13:26:23 2000
@@ -20,7 +20,7 @@
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
-#include "config.h"
+/* #include "config.h" */
#include "mgl2.h"
/*辞書ファイルのinstall先…?*/
@@ -52,6 +52,12 @@
#define K2KANJI_STAT_DONE (255) /*変換確定。こいつは文字コードじゃない*/
#define K2KANJI_STAT_CANCEL (27) /*仮名入力に戻りたい。コードはescape*/
+#ifdef USE_MGL2
+ #define IM_SCREEN_SX 100
+#else
+ #define IM_SCREEN_SX 480
+#endif
+
/*文字列の後ろの改行とかのcontrol codeを削除する*/
static void trim(char *s) {
int i=strlen(s)-1;
@@ -314,19 +320,27 @@
/*a2kanaのconstructor*/
a2kana_t *a2kana_create(){
int i=0;
+ int x, y;
a2kana_t *self=NULL;
self=malloc(sizeof(a2kana_t));
if (self==NULL) return NULL;
memset(self, 0, sizeof(a2kana_t));
- self->t_a=create_textscreen(NULL, 480-8, 0,
+ x=IM_SCREEN_SX-8;
+ y=0;
+
+#ifdef USE_MGL2
+ im_view_point(IM_FONTSIZE*10, (IM_FONTSIZE+4*2)*2, &x, &y);
+#endif
+
+ self->t_a=create_textscreen(NULL, x, y,
IM_FONTSIZE*10, IM_FONTSIZE+4*2,
TS_SAVE | TS_BORDER | TS_BLINE);
ts_set_bgcolor(self->t_a, COLOR_WHITE);
ts_clear(self->t_a);
- self->t_k=create_textscreen(NULL, 480-8, IM_FONTSIZE+4*2,
+ self->t_k=create_textscreen(NULL, x, y+IM_FONTSIZE+4*2,
IM_FONTSIZE*10, IM_FONTSIZE+4*2,
TS_SAVE | TS_BORDER | TS_BLINE);
ts_set_bgcolor(self->t_k, COLOR_WHITE);
@@ -709,9 +723,18 @@
}
void k2kanji_getkey(k2kanji_t *self, char* yomi){
+ int x, y;
+
self->status=K2KANJI_STAT_CANCEL;
- self->t=create_textscreen(NULL, 480-8, (IM_FONTSIZE+4)*3,
+ x=IM_SCREEN_SX-8;
+ y=(IM_FONTSIZE+4)*3;
+
+#ifdef USE_MGL2
+ im_view_point(IM_FONTSIZE*(10)+4*2, IM_FONTSIZE*4+4*2, &x, &y);
+#endif
+
+ self->t=create_textscreen(NULL, x, y,
IM_FONTSIZE*(10)+4*2, IM_FONTSIZE*4+4*2,
TS_SAVE | TS_BORDER | TS_BLINE);
ts_set_bgcolor(self->t, COLOR_WHITE);
---- ここまで ----
P.S.
MGL2 の pkgsrc、 imcanna だけ別 package にしようかと思ったりする、きょ
うこのごろです。
imcanna、 imkaze、 imskkfep と別個に揃えよう...かと。
--
柳井 裕之(やないひろゆき) Hiroyuki Yanai
fk200329@fsinet.or.jp
- References:
- imkaze.so
- From: Nakamura Akifumi <BXQ04723@nifty.ne.jp>