formatting change
This commit is contained in:
parent
568d92b85c
commit
2f1cc2607e
48 changed files with 217 additions and 479 deletions
|
|
@ -531,8 +531,7 @@ static void fmtint(char* buffer, size_t* currlen, size_t maxlen,
|
||||||
while(place > 0)
|
while(place > 0)
|
||||||
dopr_outch(buffer, currlen, maxlen, convert[--place]);
|
dopr_outch(buffer, currlen, maxlen, convert[--place]);
|
||||||
|
|
||||||
/* Left Justified spaces */
|
/* Left Justified spaces */ while(spadlen < 0) {
|
||||||
while(spadlen < 0) {
|
|
||||||
dopr_outch(buffer, currlen, maxlen, ' ');
|
dopr_outch(buffer, currlen, maxlen, ' ');
|
||||||
++spadlen;
|
++spadlen;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -227,8 +227,7 @@ void sj_sjis2jis(unsigned char* s) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned short
|
unsigned short sj4_jis2sjis(unsigned short code) {
|
||||||
sj4_jis2sjis(unsigned short code) {
|
|
||||||
unsigned char tmp[3];
|
unsigned char tmp[3];
|
||||||
|
|
||||||
tmp[0] = (code >> 8) & 0xff;
|
tmp[0] = (code >> 8) & 0xff;
|
||||||
|
|
@ -242,8 +241,7 @@ sj4_jis2sjis(unsigned short code) {
|
||||||
return (code);
|
return (code);
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned short
|
unsigned short sj4_jis2euc(unsigned short code) {
|
||||||
sj4_jis2euc(unsigned short code) {
|
|
||||||
unsigned char tmp[3];
|
unsigned char tmp[3];
|
||||||
|
|
||||||
tmp[0] = (code >> 8) & 0xff;
|
tmp[0] = (code >> 8) & 0xff;
|
||||||
|
|
@ -255,8 +253,7 @@ sj4_jis2euc(unsigned short code) {
|
||||||
return (code);
|
return (code);
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned short
|
unsigned short sj4_sjis2jis(unsigned short code) {
|
||||||
sj4_sjis2jis(unsigned short code) {
|
|
||||||
unsigned char tmp[3];
|
unsigned char tmp[3];
|
||||||
|
|
||||||
tmp[0] = (code >> 8) & 0xff;
|
tmp[0] = (code >> 8) & 0xff;
|
||||||
|
|
@ -270,8 +267,7 @@ sj4_sjis2jis(unsigned short code) {
|
||||||
return (code);
|
return (code);
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned short
|
unsigned short sj4_euc2sjis(unsigned short code) {
|
||||||
sj4_euc2sjis(unsigned short code) {
|
|
||||||
unsigned char tmp[3];
|
unsigned char tmp[3];
|
||||||
|
|
||||||
tmp[0] = (code >> 8) & 0xff;
|
tmp[0] = (code >> 8) & 0xff;
|
||||||
|
|
@ -285,8 +281,7 @@ sj4_euc2sjis(unsigned short code) {
|
||||||
return (code);
|
return (code);
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned short
|
unsigned short sj4_sjis2euc(unsigned short code) {
|
||||||
sj4_sjis2euc(unsigned short code) {
|
|
||||||
unsigned char tmp[3];
|
unsigned char tmp[3];
|
||||||
|
|
||||||
tmp[0] = (code >> 8) & 0xff;
|
tmp[0] = (code >> 8) & 0xff;
|
||||||
|
|
|
||||||
|
|
@ -27,8 +27,7 @@
|
||||||
* will be copied. Always NUL terminates (unless siz == 0).
|
* will be copied. Always NUL terminates (unless siz == 0).
|
||||||
* Returns strlen(src); if retval >= siz, truncation occurred.
|
* Returns strlen(src); if retval >= siz, truncation occurred.
|
||||||
*/
|
*/
|
||||||
size_t
|
size_t sj4_strlcpy(char* dst, const char* src, size_t siz) {
|
||||||
sj4_strlcpy(char* dst, const char* src, size_t siz) {
|
|
||||||
char* d = dst;
|
char* d = dst;
|
||||||
const char* s = src;
|
const char* s = src;
|
||||||
size_t n = siz;
|
size_t n = siz;
|
||||||
|
|
|
||||||
|
|
@ -294,8 +294,7 @@ u_int adddic(SJ4_CONTEXT u_char* yomi, u_char* kanji, TypeGram hinsi) {
|
||||||
return AD_DONE;
|
return AD_DONE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int checksub(SJ4_CONTEXT u_char* kanji, TypeGram grm) {
|
||||||
checksub(SJ4_CONTEXT u_char* kanji, TypeGram grm) {
|
|
||||||
u_char* tagp = NULL;
|
u_char* tagp = NULL;
|
||||||
u_char* ptr;
|
u_char* ptr;
|
||||||
u_char* endp;
|
u_char* endp;
|
||||||
|
|
@ -338,8 +337,7 @@ checksub(SJ4_CONTEXT u_char* kanji, TypeGram grm) {
|
||||||
return dounum;
|
return dounum;
|
||||||
}
|
}
|
||||||
|
|
||||||
static u_int
|
static u_int checkdict(SJ4_CONTEXT u_char* kanji, TypeGram grm) {
|
||||||
checkdict(SJ4_CONTEXT u_char* kanji, TypeGram grm) {
|
|
||||||
DICTL* dp;
|
DICTL* dp;
|
||||||
int dounum = 0;
|
int dounum = 0;
|
||||||
int tmp;
|
int tmp;
|
||||||
|
|
@ -365,8 +363,7 @@ checkdict(SJ4_CONTEXT u_char* kanji, TypeGram grm) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int cal_nextym(SJ4_CONTEXT u_char* ptr) {
|
||||||
cal_nextym(SJ4_CONTEXT u_char* ptr) {
|
|
||||||
int count = 0;
|
int count = 0;
|
||||||
u_char* src;
|
u_char* src;
|
||||||
int len;
|
int len;
|
||||||
|
|
@ -387,8 +384,7 @@ cal_nextym(SJ4_CONTEXT u_char* ptr) {
|
||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int usr_freelen(SJ4_CONTEXT2) {
|
||||||
usr_freelen(SJ4_CONTEXT2) {
|
|
||||||
u_char* ptr;
|
u_char* ptr;
|
||||||
|
|
||||||
ptr = segtop();
|
ptr = segtop();
|
||||||
|
|
@ -398,8 +394,7 @@ usr_freelen(SJ4_CONTEXT2) {
|
||||||
return curdict->seglen - (ptr - dicbuf);
|
return curdict->seglen - (ptr - dicbuf);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void sprt_seg(SJ4_CONTEXT TypeDicSeg seg, TypeDicOfs ofs) {
|
||||||
sprt_seg(SJ4_CONTEXT TypeDicSeg seg, TypeDicOfs ofs) {
|
|
||||||
TypeDicSeg s;
|
TypeDicSeg s;
|
||||||
u_char* pos;
|
u_char* pos;
|
||||||
u_char* p;
|
u_char* p;
|
||||||
|
|
@ -472,8 +467,7 @@ sprt_seg(SJ4_CONTEXT TypeDicSeg seg, TypeDicOfs ofs) {
|
||||||
(*curdict->putdic)(SJ4_CONTEXT_PASS curdict, seg);
|
(*curdict->putdic)(SJ4_CONTEXT_PASS curdict, seg);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void apnd_uidx(SJ4_CONTEXT TypeDicSeg seg, u_char* yomi, int len) {
|
||||||
apnd_uidx(SJ4_CONTEXT TypeDicSeg seg, u_char* yomi, int len) {
|
|
||||||
u_char* p;
|
u_char* p;
|
||||||
u_char* q;
|
u_char* q;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -42,8 +42,7 @@ void set_size(u_char* p, int size, int plen, int nlen) {
|
||||||
*(p + 2) = (u_char)((nlen & 0x0f) | ((plen & 0x0f) << 4));
|
*(p + 2) = (u_char)((nlen & 0x0f) | ((plen & 0x0f) << 4));
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int isvyomi(u_char* yp) {
|
||||||
isvyomi(u_char* yp) {
|
|
||||||
int len;
|
int len;
|
||||||
|
|
||||||
if(!*yp) return FALSE;
|
if(!*yp) return FALSE;
|
||||||
|
|
@ -59,8 +58,7 @@ isvyomi(u_char* yp) {
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int isvknj(u_char* kanji) {
|
||||||
isvknj(u_char* kanji) {
|
|
||||||
int len;
|
int len;
|
||||||
|
|
||||||
if(!*kanji) return FALSE;
|
if(!*kanji) return FALSE;
|
||||||
|
|
@ -87,8 +85,7 @@ isvknj(u_char* kanji) {
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int isgrm(TypeGram gram) {
|
||||||
isgrm(TypeGram gram) {
|
|
||||||
int grm = gram;
|
int grm = gram;
|
||||||
|
|
||||||
if(MEISI_1 <= grm && grm <= D_MEISI_6) return TRUE;
|
if(MEISI_1 <= grm && grm <= D_MEISI_6) return TRUE;
|
||||||
|
|
@ -120,8 +117,7 @@ u_int addel_arg(SJ4_CONTEXT u_char* yp, u_char* kp, TypeGram grm, u_char* nyp, i
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void yomi2kata(u_char* src, u_char* dst) {
|
||||||
yomi2kata(u_char* src, u_char* dst) {
|
|
||||||
int first;
|
int first;
|
||||||
int second;
|
int second;
|
||||||
|
|
||||||
|
|
@ -142,8 +138,7 @@ yomi2kata(u_char* src, u_char* dst) {
|
||||||
*dst = 0;
|
*dst = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int top_strcmp(u_char* src, u_char* dst) {
|
||||||
top_strcmp(u_char* src, u_char* dst) {
|
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
for(i = 0; *src && (*src == *dst); src++, dst++) i++;
|
for(i = 0; *src && (*src == *dst); src++, dst++) i++;
|
||||||
|
|
@ -153,8 +148,7 @@ top_strcmp(u_char* src, u_char* dst) {
|
||||||
return (i > MAXYOMIASKNUMBER) ? MAXYOMIASKNUMBER : i;
|
return (i > MAXYOMIASKNUMBER) ? MAXYOMIASKNUMBER : i;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int last_strcmp(u_char* src, u_char* dst) {
|
||||||
last_strcmp(u_char* src, u_char* dst) {
|
|
||||||
int slen;
|
int slen;
|
||||||
int dlen;
|
int dlen;
|
||||||
|
|
||||||
|
|
@ -314,8 +308,7 @@ int srchkanji(u_char** dst, u_char* knj, int klen) {
|
||||||
return cnt;
|
return cnt;
|
||||||
}
|
}
|
||||||
|
|
||||||
TypeIdxOfs
|
TypeIdxOfs count_uidx(SJ4_CONTEXT2) {
|
||||||
count_uidx(SJ4_CONTEXT2) {
|
|
||||||
u_char* p;
|
u_char* p;
|
||||||
|
|
||||||
p = get_idxptr(SJ4_CONTEXT_PASS curdict->segunit - 1);
|
p = get_idxptr(SJ4_CONTEXT_PASS curdict->segunit - 1);
|
||||||
|
|
|
||||||
|
|
@ -76,8 +76,7 @@ void free_jrec(SJ4_CONTEXT JREC* p) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CLREC*
|
CLREC* alloc_clrec(SJ4_CONTEXT2) {
|
||||||
alloc_clrec(SJ4_CONTEXT2) {
|
|
||||||
CLREC* p;
|
CLREC* p;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -111,8 +111,7 @@ int nextcl(SJ4_CONTEXT u_char* kouho, int mode) {
|
||||||
return hzstrlen(inputyomi, (int)clt1st->cllen);
|
return hzstrlen(inputyomi, (int)clt1st->cllen);
|
||||||
}
|
}
|
||||||
|
|
||||||
static CLREC*
|
static CLREC* nextrecblk(SJ4_CONTEXT2) {
|
||||||
nextrecblk(SJ4_CONTEXT2) {
|
|
||||||
CLREC* clptr;
|
CLREC* clptr;
|
||||||
int keeplen;
|
int keeplen;
|
||||||
|
|
||||||
|
|
@ -151,8 +150,7 @@ int prevcl(SJ4_CONTEXT u_char* kouho, int mode) {
|
||||||
return hzstrlen(inputyomi, (int)clt1st->cllen);
|
return hzstrlen(inputyomi, (int)clt1st->cllen);
|
||||||
}
|
}
|
||||||
|
|
||||||
static CLREC*
|
static CLREC* prevrecblk(SJ4_CONTEXT2) {
|
||||||
prevrecblk(SJ4_CONTEXT2) {
|
|
||||||
CLREC* clptr;
|
CLREC* clptr;
|
||||||
CLREC* keepptr;
|
CLREC* keepptr;
|
||||||
int keeplen;
|
int keeplen;
|
||||||
|
|
@ -175,8 +173,7 @@ prevrecblk(SJ4_CONTEXT2) {
|
||||||
return keepptr;
|
return keepptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void initkbuf(SJ4_CONTEXT u_char* kouho) {
|
||||||
initkbuf(SJ4_CONTEXT u_char* kouho) {
|
|
||||||
kanjitmp = kouho;
|
kanjitmp = kouho;
|
||||||
memset(kanjitmp, 0, sizeof(STDYOUT) + 1);
|
memset(kanjitmp, 0, sizeof(STDYOUT) + 1);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -99,8 +99,7 @@ int clstudy(SJ4_CONTEXT u_char* yomi1, u_char* yomi2, STDYOUT* stdy) {
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static u_char*
|
static u_char* delcldata(SJ4_CONTEXT u_char* ycode) {
|
||||||
delcldata(SJ4_CONTEXT u_char* ycode) {
|
|
||||||
u_char* tagptr;
|
u_char* tagptr;
|
||||||
u_char* ptr1;
|
u_char* ptr1;
|
||||||
u_char* ptr2;
|
u_char* ptr2;
|
||||||
|
|
@ -157,8 +156,7 @@ void delclsub(SJ4_CONTEXT u_char* target) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int delclold(SJ4_CONTEXT2) {
|
||||||
delclold(SJ4_CONTEXT2) {
|
|
||||||
u_char* tagptr;
|
u_char* tagptr;
|
||||||
u_char* target;
|
u_char* target;
|
||||||
int num;
|
int num;
|
||||||
|
|
@ -187,8 +185,7 @@ delclold(SJ4_CONTEXT2) {
|
||||||
return num;
|
return num;
|
||||||
}
|
}
|
||||||
|
|
||||||
static u_char*
|
static u_char* srchclpos(SJ4_CONTEXT u_char* ycode) {
|
||||||
srchclpos(SJ4_CONTEXT u_char* ycode) {
|
|
||||||
u_char* tagptr;
|
u_char* tagptr;
|
||||||
u_char* target;
|
u_char* target;
|
||||||
u_char* ptr1;
|
u_char* ptr1;
|
||||||
|
|
|
||||||
|
|
@ -56,9 +56,7 @@ void cvtdict(SJ4_CONTEXT KHREC* krec, CLREC* clrec, int flg) {
|
||||||
if(i == SETTOU_KIGOU) {
|
if(i == SETTOU_KIGOU) {
|
||||||
sttlen = 1;
|
sttlen = 1;
|
||||||
fptr = yptr;
|
fptr = yptr;
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
fptr = Settou_ptr(i);
|
fptr = Settou_ptr(i);
|
||||||
sttlen = SttYomiLen(fptr);
|
sttlen = SttYomiLen(fptr);
|
||||||
fptr++;
|
fptr++;
|
||||||
|
|
@ -69,9 +67,7 @@ void cvtdict(SJ4_CONTEXT KHREC* krec, CLREC* clrec, int flg) {
|
||||||
*kanjitmp++ = *fptr++;
|
*kanjitmp++ = *fptr++;
|
||||||
jlen -= sttlen;
|
jlen -= sttlen;
|
||||||
yptr += sttlen * 2;
|
yptr += sttlen * 2;
|
||||||
}
|
} else
|
||||||
|
|
||||||
else
|
|
||||||
sttlen = 0;
|
sttlen = 0;
|
||||||
|
|
||||||
if(flg) {
|
if(flg) {
|
||||||
|
|
@ -88,15 +84,11 @@ void cvtdict(SJ4_CONTEXT KHREC* krec, CLREC* clrec, int flg) {
|
||||||
}
|
}
|
||||||
|
|
||||||
stblen = 0;
|
stblen = 0;
|
||||||
}
|
} else if((i = jrec->stbofs) && (fptr = getstb(jrec->hinsi))) {
|
||||||
|
|
||||||
else if((i = jrec->stbofs) && (fptr = getstb(jrec->hinsi))) {
|
|
||||||
fptr += i - 1;
|
fptr += i - 1;
|
||||||
stblen = StbYomiLen(fptr);
|
stblen = StbYomiLen(fptr);
|
||||||
jlen -= stblen;
|
jlen -= stblen;
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
stblen = 0;
|
stblen = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -141,9 +133,7 @@ void cvtminasi(SJ4_CONTEXT int len) {
|
||||||
if(isknj1(*ptr)) {
|
if(isknj1(*ptr)) {
|
||||||
*kanjitmp++ = *ptr++;
|
*kanjitmp++ = *ptr++;
|
||||||
*kanjitmp++ = *ptr++;
|
*kanjitmp++ = *ptr++;
|
||||||
}
|
} else if(*ptr == SS3) {
|
||||||
|
|
||||||
else if(*ptr == SS3) {
|
|
||||||
*kanjitmp++ = *ptr++;
|
*kanjitmp++ = *ptr++;
|
||||||
*kanjitmp++ = *ptr++;
|
*kanjitmp++ = *ptr++;
|
||||||
*kanjitmp++ = *ptr++;
|
*kanjitmp++ = *ptr++;
|
||||||
|
|
@ -193,9 +183,7 @@ void cvtwakachi(SJ4_CONTEXT CLREC* clrec) {
|
||||||
if(isknj1(*ym)) {
|
if(isknj1(*ym)) {
|
||||||
*kanjitmp++ = *ym++;
|
*kanjitmp++ = *ym++;
|
||||||
*kanjitmp++ = *ym++;
|
*kanjitmp++ = *ym++;
|
||||||
}
|
} else if(*ym == SS3) {
|
||||||
|
|
||||||
else if(*ym == SS3) {
|
|
||||||
*kanjitmp++ = *ym++;
|
*kanjitmp++ = *ym++;
|
||||||
*kanjitmp++ = *ym++;
|
*kanjitmp++ = *ym++;
|
||||||
*kanjitmp++ = *ym++;
|
*kanjitmp++ = *ym++;
|
||||||
|
|
|
||||||
|
|
@ -140,9 +140,7 @@ void setstyrec(SJ4_CONTEXT KHREC* krec) {
|
||||||
stdy.stdy1.styno = kptr->styno;
|
stdy.stdy1.styno = kptr->styno;
|
||||||
stdy.stdy1.dicid = kptr->clrec->jnode->dicid;
|
stdy.stdy1.dicid = kptr->clrec->jnode->dicid;
|
||||||
stdy.stdy1.nmflg = 1;
|
stdy.stdy1.nmflg = 1;
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
stdy.stdy1.offset = krec->offs;
|
stdy.stdy1.offset = krec->offs;
|
||||||
stdy.stdy1.seg = jrec->jseg;
|
stdy.stdy1.seg = jrec->jseg;
|
||||||
stdy.stdy1.styno = krec->styno;
|
stdy.stdy1.styno = krec->styno;
|
||||||
|
|
|
||||||
|
|
@ -109,8 +109,7 @@ u_int deldic(SJ4_CONTEXT u_char* yomi, u_char* kanji, TypeGram hinsi) {
|
||||||
return AD_DONE;
|
return AD_DONE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int del_douon(SJ4_CONTEXT TypeDicSeg seg, u_char* ptr, TypeDicOfs ofs) {
|
||||||
del_douon(SJ4_CONTEXT TypeDicSeg seg, u_char* ptr, TypeDicOfs ofs) {
|
|
||||||
u_char *nxt, *p1, *p2;
|
u_char *nxt, *p1, *p2;
|
||||||
int size;
|
int size;
|
||||||
int nlen, plen, len;
|
int nlen, plen, len;
|
||||||
|
|
@ -155,8 +154,7 @@ del_douon(SJ4_CONTEXT TypeDicSeg seg, u_char* ptr, TypeDicOfs ofs) {
|
||||||
return AD_DONE;
|
return AD_DONE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int del_segment(SJ4_CONTEXT TypeDicSeg seg) {
|
||||||
del_segment(SJ4_CONTEXT TypeDicSeg seg) {
|
|
||||||
int i;
|
int i;
|
||||||
STDYIN* styp;
|
STDYIN* styp;
|
||||||
TypeDicID dicid;
|
TypeDicID dicid;
|
||||||
|
|
@ -208,8 +206,7 @@ del_segment(SJ4_CONTEXT TypeDicSeg seg) {
|
||||||
return AD_DONE;
|
return AD_DONE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void del_uidx(SJ4_CONTEXT TypeDicSeg seg) {
|
||||||
del_uidx(SJ4_CONTEXT TypeDicSeg seg) {
|
|
||||||
u_char *p, *q;
|
u_char *p, *q;
|
||||||
int len;
|
int len;
|
||||||
|
|
||||||
|
|
@ -226,8 +223,7 @@ del_uidx(SJ4_CONTEXT TypeDicSeg seg) {
|
||||||
mkidxtbl(SJ4_CONTEXT_PASS curdict);
|
mkidxtbl(SJ4_CONTEXT_PASS curdict);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void del_stdy(SJ4_CONTEXT TypeDicSeg seg, TypeDicOfs ofs, int size) {
|
||||||
del_stdy(SJ4_CONTEXT TypeDicSeg seg, TypeDicOfs ofs, int size) {
|
|
||||||
int i;
|
int i;
|
||||||
TypeStyNum stdynum;
|
TypeStyNum stdynum;
|
||||||
STDYIN* stdy;
|
STDYIN* stdy;
|
||||||
|
|
|
||||||
|
|
@ -76,8 +76,7 @@ int seldict(SJ4_CONTEXT TypeDicID id) {
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
u_char*
|
u_char* get_idxptr(SJ4_CONTEXT TypeDicSeg seg) {
|
||||||
get_idxptr(SJ4_CONTEXT TypeDicSeg seg) {
|
|
||||||
(*curdict->getofs)(SJ4_CONTEXT_PASS curdict);
|
(*curdict->getofs)(SJ4_CONTEXT_PASS curdict);
|
||||||
(*curdict->getidx)(SJ4_CONTEXT_PASS curdict);
|
(*curdict->getidx)(SJ4_CONTEXT_PASS curdict);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -34,8 +34,7 @@
|
||||||
|
|
||||||
#include "sj_kanakan.h"
|
#include "sj_kanakan.h"
|
||||||
|
|
||||||
static int
|
static int fzkstrcmp(u_char* yptr, u_char* fzkp, int* saml) {
|
||||||
fzkstrcmp(u_char* yptr, u_char* fzkp, int* saml) {
|
|
||||||
int asklen, nkrlen;
|
int asklen, nkrlen;
|
||||||
|
|
||||||
asklen = FzkAskLen(fzkp);
|
asklen = FzkAskLen(fzkp);
|
||||||
|
|
@ -56,9 +55,7 @@ fzkstrcmp(u_char* yptr, u_char* fzkp, int* saml) {
|
||||||
else if(*yptr < *fzkp) {
|
else if(*yptr < *fzkp) {
|
||||||
if(!*yptr) return PARTLY;
|
if(!*yptr) return PARTLY;
|
||||||
return OVER;
|
return OVER;
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
yptr++;
|
yptr++;
|
||||||
fzkp++;
|
fzkp++;
|
||||||
(*saml)++;
|
(*saml)++;
|
||||||
|
|
@ -90,15 +87,12 @@ void setclrec(SJ4_CONTEXT JREC* jrec, u_char* yptr, TypeCnct right) {
|
||||||
if(hinsi >= DO_SAHEN && hinsi <= SP_KA_ONB)
|
if(hinsi >= DO_SAHEN && hinsi <= SP_KA_ONB)
|
||||||
new->kubun = K_DOUSHI;
|
new->kubun = K_DOUSHI;
|
||||||
|
|
||||||
else if((hinsi >= KEIYOUSI_1 && hinsi <= KE_DOUSI_9) ||
|
else if((hinsi >= KEIYOUSI_1 && hinsi <= KE_DOUSI_9) || (hinsi == SP_KEIYOUSI)) {
|
||||||
(hinsi == SP_KEIYOUSI)) {
|
|
||||||
if(right == R_FZKMEISI)
|
if(right == R_FZKMEISI)
|
||||||
new->kubun = K_TAIGEN;
|
new->kubun = K_TAIGEN;
|
||||||
else
|
else
|
||||||
new->kubun = K_YOUGEN;
|
new->kubun = K_YOUGEN;
|
||||||
}
|
} else if(hinsi == RENTAISI)
|
||||||
|
|
||||||
else if(hinsi == RENTAISI)
|
|
||||||
new->kubun = K_RENTAISI;
|
new->kubun = K_RENTAISI;
|
||||||
|
|
||||||
else if((hinsi >= FUKUSI_1 && hinsi <= FUKUSI_9) ||
|
else if((hinsi >= FUKUSI_1 && hinsi <= FUKUSI_9) ||
|
||||||
|
|
@ -144,8 +138,7 @@ void setclrec(SJ4_CONTEXT JREC* jrec, u_char* yptr, TypeCnct right) {
|
||||||
new->kubun = K_TAIGEN;
|
new->kubun = K_TAIGEN;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int fzkcnct(TypeCnct right, TypeCnct left) {
|
||||||
fzkcnct(TypeCnct right, TypeCnct left) {
|
|
||||||
u_char* cncttbl;
|
u_char* cncttbl;
|
||||||
|
|
||||||
if(right && left) {
|
if(right && left) {
|
||||||
|
|
@ -158,8 +151,7 @@ fzkcnct(TypeCnct right, TypeCnct left) {
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
RECURS
|
RECURS void srchfzk(SJ4_CONTEXT JREC* jrec, u_char* yptr, TypeCnct right, int level) {
|
||||||
void srchfzk(SJ4_CONTEXT JREC* jrec, u_char* yptr, TypeCnct right, int level) {
|
|
||||||
u_char* fzk;
|
u_char* fzk;
|
||||||
int len = 0;
|
int len = 0;
|
||||||
int cmp;
|
int cmp;
|
||||||
|
|
|
||||||
|
|
@ -34,13 +34,11 @@
|
||||||
|
|
||||||
static u_char* code2kanji(SJ4_CONTEXT u_char* s, u_char* d, u_char* ym, int yl, int flg);
|
static u_char* code2kanji(SJ4_CONTEXT u_char* s, u_char* d, u_char* ym, int yl, int flg);
|
||||||
|
|
||||||
u_char*
|
u_char* getkan_none(u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
||||||
getkan_none(u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
|
||||||
return d;
|
return d;
|
||||||
}
|
}
|
||||||
|
|
||||||
u_char*
|
u_char* getkan_hira(u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
||||||
getkan_hira(u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
|
||||||
int cnt, csize;
|
int cnt, csize;
|
||||||
|
|
||||||
csize = codesize(*s);
|
csize = codesize(*s);
|
||||||
|
|
@ -55,8 +53,7 @@ getkan_hira(u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
||||||
return d;
|
return d;
|
||||||
}
|
}
|
||||||
|
|
||||||
u_char*
|
u_char* getkan_kata(u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
||||||
getkan_kata(u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
|
||||||
int cnt, csize;
|
int cnt, csize;
|
||||||
u_char ch;
|
u_char ch;
|
||||||
|
|
||||||
|
|
@ -85,19 +82,16 @@ getkan_kata(u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
||||||
return d;
|
return d;
|
||||||
}
|
}
|
||||||
|
|
||||||
u_char*
|
u_char* getkan_knj(SJ4_CONTEXT u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
||||||
getkan_knj(SJ4_CONTEXT u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
|
||||||
return code2kanji(SJ4_CONTEXT_PASS askknj[*s & KNJASSYUKUMASK], d, ym, yl, flg);
|
return code2kanji(SJ4_CONTEXT_PASS askknj[*s & KNJASSYUKUMASK], d, ym, yl, flg);
|
||||||
}
|
}
|
||||||
|
|
||||||
u_char*
|
u_char* getkan_ofs(SJ4_CONTEXT u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
||||||
getkan_ofs(SJ4_CONTEXT u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
|
||||||
return code2kanji(SJ4_CONTEXT_PASS dicbuf + ((*s & KANJICODEMASK) << 8) + *(s + 1),
|
return code2kanji(SJ4_CONTEXT_PASS dicbuf + ((*s & KANJICODEMASK) << 8) + *(s + 1),
|
||||||
d, ym, yl, flg);
|
d, ym, yl, flg);
|
||||||
}
|
}
|
||||||
|
|
||||||
u_char*
|
u_char* getkan_norm(u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
||||||
getkan_norm(u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
|
||||||
u_char c;
|
u_char c;
|
||||||
|
|
||||||
if(*s != 0) {
|
if(*s != 0) {
|
||||||
|
|
@ -112,8 +106,7 @@ getkan_norm(u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
||||||
return d;
|
return d;
|
||||||
}
|
}
|
||||||
|
|
||||||
u_char*
|
u_char* getkan_ascii(u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
||||||
getkan_ascii(u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
|
||||||
u_char c;
|
u_char c;
|
||||||
|
|
||||||
c = s[1];
|
c = s[1];
|
||||||
|
|
@ -124,8 +117,7 @@ getkan_ascii(u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
||||||
return d;
|
return d;
|
||||||
}
|
}
|
||||||
|
|
||||||
static u_char*
|
static u_char* code2kanji(SJ4_CONTEXT u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
||||||
code2kanji(SJ4_CONTEXT u_char* s, u_char* d, u_char* ym, int yl, int flg) {
|
|
||||||
int csize;
|
int csize;
|
||||||
|
|
||||||
for(;;) {
|
for(;;) {
|
||||||
|
|
|
||||||
|
|
@ -42,8 +42,7 @@ void getrank(SJ4_CONTEXT2) {
|
||||||
regetrank(SJ4_CONTEXT_PASS2);
|
regetrank(SJ4_CONTEXT_PASS2);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void setstynum(SJ4_CONTEXT2) {
|
||||||
setstynum(SJ4_CONTEXT2) {
|
|
||||||
KHREC* kptr;
|
KHREC* kptr;
|
||||||
STDYIN* sptr;
|
STDYIN* sptr;
|
||||||
int count;
|
int count;
|
||||||
|
|
@ -59,8 +58,7 @@ setstynum(SJ4_CONTEXT2) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void setnspr(SJ4_CONTEXT KHREC* kptr, STDYIN* sptr) {
|
||||||
setnspr(SJ4_CONTEXT KHREC* kptr, STDYIN* sptr) {
|
|
||||||
KHREC* ptr;
|
KHREC* ptr;
|
||||||
int keepnm;
|
int keepnm;
|
||||||
TypeStyNum styno;
|
TypeStyNum styno;
|
||||||
|
|
@ -76,28 +74,21 @@ setnspr(SJ4_CONTEXT KHREC* kptr, STDYIN* sptr) {
|
||||||
ptr->rank++;
|
ptr->rank++;
|
||||||
|
|
||||||
keepnm--;
|
keepnm--;
|
||||||
}
|
} else if(styno == ptr->styno) {
|
||||||
|
|
||||||
else if(styno == ptr->styno) {
|
|
||||||
|
|
||||||
if(kptr->sttfg && kptr->ka_fg) {
|
if(kptr->sttfg && kptr->ka_fg) {
|
||||||
|
|
||||||
if((sptr->sttkj == kptr->sttkj) &&
|
if((sptr->sttkj == kptr->sttkj) && (sptr->ka_kj == kptr->ka_kj)) {
|
||||||
(sptr->ka_kj == kptr->ka_kj)) {
|
|
||||||
ptr->rank++;
|
ptr->rank++;
|
||||||
keepnm--;
|
keepnm--;
|
||||||
}
|
}
|
||||||
}
|
} else if(kptr->sttfg) {
|
||||||
|
|
||||||
else if(kptr->sttfg) {
|
|
||||||
|
|
||||||
if(sptr->sttkj == kptr->sttkj) {
|
if(sptr->sttkj == kptr->sttkj) {
|
||||||
ptr->rank++;
|
ptr->rank++;
|
||||||
keepnm--;
|
keepnm--;
|
||||||
}
|
}
|
||||||
}
|
} else if(kptr->ka_fg) {
|
||||||
|
|
||||||
else if(kptr->ka_fg) {
|
|
||||||
|
|
||||||
if(sptr->ka_kj == kptr->ka_kj) {
|
if(sptr->ka_kj == kptr->ka_kj) {
|
||||||
ptr->rank++;
|
ptr->rank++;
|
||||||
|
|
@ -115,8 +106,7 @@ setnspr(SJ4_CONTEXT KHREC* kptr, STDYIN* sptr) {
|
||||||
if(sptr->nmflg && (nrank > keepnm)) nrank = keepnm;
|
if(sptr->nmflg && (nrank > keepnm)) nrank = keepnm;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void regetrank(SJ4_CONTEXT2) {
|
||||||
regetrank(SJ4_CONTEXT2) {
|
|
||||||
KHREC* kptr;
|
KHREC* kptr;
|
||||||
int count;
|
int count;
|
||||||
int tmp;
|
int tmp;
|
||||||
|
|
@ -126,9 +116,7 @@ regetrank(SJ4_CONTEXT2) {
|
||||||
tmp = nrank;
|
tmp = nrank;
|
||||||
|
|
||||||
trank += nkhcount;
|
trank += nkhcount;
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
nkhcount = tmp = 0;
|
nkhcount = tmp = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -138,9 +126,7 @@ regetrank(SJ4_CONTEXT2) {
|
||||||
if(tmp && kptr->mode && !(kptr->offs)) {
|
if(tmp && kptr->mode && !(kptr->offs)) {
|
||||||
kptr->rank = (u_char)tmp++;
|
kptr->rank = (u_char)tmp++;
|
||||||
}
|
}
|
||||||
}
|
} else if((short)kptr->rank >= nrank)
|
||||||
|
|
||||||
else if((short)kptr->rank >= nrank)
|
|
||||||
kptr->rank += (u_char)nkhcount;
|
kptr->rank += (u_char)nkhcount;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -48,9 +48,7 @@ JREC* free_jlst(SJ4_CONTEXT JREC* p) {
|
||||||
else
|
else
|
||||||
jpk = p;
|
jpk = p;
|
||||||
jp = p;
|
jp = p;
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
free_jrec(SJ4_CONTEXT_PASS p);
|
free_jrec(SJ4_CONTEXT_PASS p);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -60,8 +58,7 @@ JREC* free_jlst(SJ4_CONTEXT JREC* p) {
|
||||||
return jpk;
|
return jpk;
|
||||||
}
|
}
|
||||||
|
|
||||||
CLREC*
|
CLREC* free_clst(SJ4_CONTEXT CLREC* p, int l) {
|
||||||
free_clst(SJ4_CONTEXT CLREC* p, int l) {
|
|
||||||
CLREC* cpk;
|
CLREC* cpk;
|
||||||
CLREC* cp;
|
CLREC* cp;
|
||||||
CLREC* cn;
|
CLREC* cn;
|
||||||
|
|
@ -86,9 +83,7 @@ free_clst(SJ4_CONTEXT CLREC* p, int l) {
|
||||||
cpk = p;
|
cpk = p;
|
||||||
cp = p;
|
cp = p;
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
(p->jnode->count)--;
|
(p->jnode->count)--;
|
||||||
|
|
||||||
free_clrec(SJ4_CONTEXT_PASS p);
|
free_clrec(SJ4_CONTEXT_PASS p);
|
||||||
|
|
|
||||||
|
|
@ -131,9 +131,7 @@ void mk2claus(SJ4_CONTEXT2) {
|
||||||
;
|
;
|
||||||
else if(prty <= maxprty)
|
else if(prty <= maxprty)
|
||||||
continue;
|
continue;
|
||||||
}
|
} else if(prty <= maxprty)
|
||||||
|
|
||||||
else if(prty <= maxprty)
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -65,9 +65,7 @@ void mkbunsetu(SJ4_CONTEXT2) {
|
||||||
}
|
}
|
||||||
|
|
||||||
srchfzk(SJ4_CONTEXT_PASS jrec, next, right, 0);
|
srchfzk(SJ4_CONTEXT_PASS jrec, next, right, 0);
|
||||||
}
|
} else if((count = setconj(SJ4_CONTEXT_PASS hinsi, jrec, crec))) {
|
||||||
|
|
||||||
else if((count = setconj(SJ4_CONTEXT_PASS hinsi, jrec, crec))) {
|
|
||||||
|
|
||||||
for(i = count; i-- > 0;) {
|
for(i = count; i-- > 0;) {
|
||||||
|
|
||||||
|
|
@ -88,8 +86,7 @@ void mkbunsetu(SJ4_CONTEXT2) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CLREC*
|
CLREC* argclrec(SJ4_CONTEXT int len) {
|
||||||
argclrec(SJ4_CONTEXT int len) {
|
|
||||||
CLREC* ptr;
|
CLREC* ptr;
|
||||||
CLREC* rec;
|
CLREC* rec;
|
||||||
CLREC* child;
|
CLREC* child;
|
||||||
|
|
@ -128,8 +125,7 @@ argclrec(SJ4_CONTEXT int len) {
|
||||||
ptr = maxclptr;
|
ptr = maxclptr;
|
||||||
|
|
||||||
if(((int)ptr->cllen < len) ||
|
if(((int)ptr->cllen < len) ||
|
||||||
(((int)ptr->cllen == len) &&
|
(((int)ptr->cllen == len) && (ptr->jnode->hinsi == TANKANJI))) {
|
||||||
(ptr->jnode->hinsi == TANKANJI))) {
|
|
||||||
rec->clsort = maxclptr;
|
rec->clsort = maxclptr;
|
||||||
maxclptr = rec;
|
maxclptr = rec;
|
||||||
return rec;
|
return rec;
|
||||||
|
|
|
||||||
|
|
@ -78,8 +78,7 @@ void mkjiritu(SJ4_CONTEXT int mode) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void dic_mu(SJ4_CONTEXT int mode) {
|
||||||
dic_mu(SJ4_CONTEXT int mode) {
|
|
||||||
u_char* tagp = NULL;
|
u_char* tagp = NULL;
|
||||||
DICTL* dp;
|
DICTL* dp;
|
||||||
|
|
||||||
|
|
@ -151,8 +150,7 @@ JREC* argjrec(SJ4_CONTEXT int len, JREC* rec) {
|
||||||
return jrec;
|
return jrec;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void dic_cl(SJ4_CONTEXT2) {
|
||||||
dic_cl(SJ4_CONTEXT2) {
|
|
||||||
u_char* p;
|
u_char* p;
|
||||||
u_short pos;
|
u_short pos;
|
||||||
int len;
|
int len;
|
||||||
|
|
@ -170,9 +168,7 @@ dic_cl(SJ4_CONTEXT2) {
|
||||||
if(!isdpnd(*(cnvstart + len))) {
|
if(!isdpnd(*(cnvstart + len))) {
|
||||||
setcrec(SJ4_CONTEXT_PASS p);
|
setcrec(SJ4_CONTEXT_PASS p);
|
||||||
}
|
}
|
||||||
}
|
} else if(cmp == OVER)
|
||||||
|
|
||||||
else if(cmp == OVER)
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -62,8 +62,7 @@ void mkkouho(SJ4_CONTEXT2) {
|
||||||
} while(clrec && (keeplen == clrec->cllen));
|
} while(clrec && (keeplen == clrec->cllen));
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void getkhtbl(SJ4_CONTEXT CLREC* clrec, u_char kcache[][MAXWDKANJILEN], int* kvalid) {
|
||||||
getkhtbl(SJ4_CONTEXT CLREC* clrec, u_char kcache[][MAXWDKANJILEN], int* kvalid) {
|
|
||||||
JREC* jrec;
|
JREC* jrec;
|
||||||
|
|
||||||
jrec = clrec->jnode;
|
jrec = clrec->jnode;
|
||||||
|
|
@ -93,8 +92,7 @@ getkhtbl(SJ4_CONTEXT CLREC* clrec, u_char kcache[][MAXWDKANJILEN], int* kvalid)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void cl_kanji(SJ4_CONTEXT JREC* jrec, CLREC* clrec, u_char kcache[][MAXWDKANJILEN], int* kvalid) {
|
||||||
cl_kanji(SJ4_CONTEXT JREC* jrec, CLREC* clrec, u_char kcache[][MAXWDKANJILEN], int* kvalid) {
|
|
||||||
u_char* ptr;
|
u_char* ptr;
|
||||||
int kcount = khcount;
|
int kcount = khcount;
|
||||||
|
|
||||||
|
|
@ -115,13 +113,11 @@ cl_kanji(SJ4_CONTEXT JREC* jrec, CLREC* clrec, u_char kcache[][MAXWDKANJILEN], i
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
u_char*
|
u_char* makekan_none(SJ4_CONTEXT u_char* s, u_char* d, int flg) {
|
||||||
makekan_none(SJ4_CONTEXT u_char* s, u_char* d, int flg) {
|
|
||||||
return d;
|
return d;
|
||||||
}
|
}
|
||||||
|
|
||||||
u_char*
|
u_char* makekan_1byte(SJ4_CONTEXT u_char* s, u_char* d, int flg) {
|
||||||
makekan_1byte(SJ4_CONTEXT u_char* s, u_char* d, int flg) {
|
|
||||||
if((*s & KANJIMODEMASK) == ZENHIRAASSYUKU)
|
if((*s & KANJIMODEMASK) == ZENHIRAASSYUKU)
|
||||||
*d++ = 0x10 | (*s & KNJASSYUKUMASK);
|
*d++ = 0x10 | (*s & KNJASSYUKUMASK);
|
||||||
else
|
else
|
||||||
|
|
@ -131,8 +127,7 @@ makekan_1byte(SJ4_CONTEXT u_char* s, u_char* d, int flg) {
|
||||||
return d;
|
return d;
|
||||||
}
|
}
|
||||||
|
|
||||||
u_char*
|
u_char* makekan_knj(SJ4_CONTEXT u_char* s, u_char* d, int flg) {
|
||||||
makekan_knj(SJ4_CONTEXT u_char* s, u_char* d, int flg) {
|
|
||||||
return makekan(SJ4_CONTEXT_PASS askknj[*s & KNJASSYUKUMASK], d, flg);
|
return makekan(SJ4_CONTEXT_PASS askknj[*s & KNJASSYUKUMASK], d, flg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -141,8 +136,7 @@ u_char* makekan_ofs(SJ4_CONTEXT u_char* s, u_char* d, int flg) {
|
||||||
d, flg);
|
d, flg);
|
||||||
}
|
}
|
||||||
|
|
||||||
u_char*
|
u_char* makekan_norm(SJ4_CONTEXT u_char* s, u_char* d, int flg) {
|
||||||
makekan_norm(SJ4_CONTEXT u_char* s, u_char* d, int flg) {
|
|
||||||
u_char c;
|
u_char c;
|
||||||
|
|
||||||
if(*s != 0) {
|
if(*s != 0) {
|
||||||
|
|
@ -158,8 +152,7 @@ makekan_norm(SJ4_CONTEXT u_char* s, u_char* d, int flg) {
|
||||||
return d;
|
return d;
|
||||||
}
|
}
|
||||||
|
|
||||||
u_char*
|
u_char* makekan_ascii(SJ4_CONTEXT u_char* s, u_char* d, int flg) {
|
||||||
makekan_ascii(SJ4_CONTEXT u_char* s, u_char* d, int flg) {
|
|
||||||
u_char c;
|
u_char c;
|
||||||
|
|
||||||
c = s[1];
|
c = s[1];
|
||||||
|
|
@ -172,8 +165,7 @@ makekan_ascii(SJ4_CONTEXT u_char* s, u_char* d, int flg) {
|
||||||
return d;
|
return d;
|
||||||
}
|
}
|
||||||
|
|
||||||
static u_char*
|
static u_char* makekan(SJ4_CONTEXT u_char* s, u_char* d, int flg) {
|
||||||
makekan(SJ4_CONTEXT u_char* s, u_char* d, int flg) {
|
|
||||||
int csize;
|
int csize;
|
||||||
|
|
||||||
for(;;) {
|
for(;;) {
|
||||||
|
|
@ -247,8 +239,7 @@ makekan(SJ4_CONTEXT u_char* s, u_char* d, int flg) {
|
||||||
|
|
||||||
#define PEND 2
|
#define PEND 2
|
||||||
#define QEND 1
|
#define QEND 1
|
||||||
static int
|
static int sameknj(u_char* p, u_char plen, u_char* q, u_char qlen) {
|
||||||
sameknj(u_char* p, u_char plen, u_char* q, u_char qlen) {
|
|
||||||
int i;
|
int i;
|
||||||
int j;
|
int j;
|
||||||
int endf = 0;
|
int endf = 0;
|
||||||
|
|
@ -305,8 +296,7 @@ sameknj(u_char* p, u_char plen, u_char* q, u_char qlen) {
|
||||||
#undef PEND
|
#undef PEND
|
||||||
#undef QEND
|
#undef QEND
|
||||||
|
|
||||||
static int
|
static int diffknj(SJ4_CONTEXT JREC* jrec, u_char* ptr, int num, u_char kcache[][MAXWDKANJILEN], int* kvalid) {
|
||||||
diffknj(SJ4_CONTEXT JREC* jrec, u_char* ptr, int num, u_char kcache[][MAXWDKANJILEN], int* kvalid) {
|
|
||||||
KHREC* kptr;
|
KHREC* kptr;
|
||||||
JREC* jptr;
|
JREC* jptr;
|
||||||
int i;
|
int i;
|
||||||
|
|
@ -348,8 +338,7 @@ diffknj(SJ4_CONTEXT JREC* jrec, u_char* ptr, int num, u_char kcache[][MAXWDKANJI
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int chrck_numtbl(u_short flg, u_short cond) {
|
||||||
chrck_numtbl(u_short flg, u_short cond) {
|
|
||||||
u_short must;
|
u_short must;
|
||||||
|
|
||||||
if((cond = SelNumCond(cond))) {
|
if((cond = SelNumCond(cond))) {
|
||||||
|
|
@ -395,8 +384,7 @@ int sel_sjmode(JREC* jrec) {
|
||||||
return SelNumFunc(i);
|
return SelNumFunc(i);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void cl_numcmn(SJ4_CONTEXT JREC* jrec, CLREC* clrec) {
|
||||||
cl_numcmn(SJ4_CONTEXT JREC* jrec, CLREC* clrec) {
|
|
||||||
u_char* p;
|
u_char* p;
|
||||||
int i;
|
int i;
|
||||||
u_short j;
|
u_short j;
|
||||||
|
|
|
||||||
|
|
@ -33,8 +33,7 @@
|
||||||
|
|
||||||
#include "sj_kanakan.h"
|
#include "sj_kanakan.h"
|
||||||
|
|
||||||
static int
|
static int word2char(SJ4_CONTEXT u_short wd, u_char* tbl, int keta, int flg) {
|
||||||
word2char(SJ4_CONTEXT u_short wd, u_char* tbl, int keta, int flg) {
|
|
||||||
int mask;
|
int mask;
|
||||||
int num;
|
int num;
|
||||||
u_char* src;
|
u_char* src;
|
||||||
|
|
@ -65,8 +64,7 @@ word2char(SJ4_CONTEXT u_short wd, u_char* tbl, int keta, int flg) {
|
||||||
return flg;
|
return flg;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void words2num(SJ4_CONTEXT u_short* wd, u_char* tbl, int flgc) {
|
||||||
words2num(SJ4_CONTEXT u_short* wd, u_char* tbl, int flgc) {
|
|
||||||
int i;
|
int i;
|
||||||
int keta;
|
int keta;
|
||||||
int flg;
|
int flg;
|
||||||
|
|
@ -155,8 +153,7 @@ void num_type07(SJ4_CONTEXT u_char* s1, u_char* s2, JREC* jrec) {
|
||||||
words2num(SJ4_CONTEXT_PASS num, Num3tbl, FALSE);
|
words2num(SJ4_CONTEXT_PASS num, Num3tbl, FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void kan_num(SJ4_CONTEXT u_short* wd, u_char* tbl1, u_char* tbl2) {
|
||||||
kan_num(SJ4_CONTEXT u_short* wd, u_char* tbl1, u_char* tbl2) {
|
|
||||||
int ii;
|
int ii;
|
||||||
u_short tmp;
|
u_short tmp;
|
||||||
int mask;
|
int mask;
|
||||||
|
|
@ -274,8 +271,7 @@ void num_type12(SJ4_CONTEXT u_char* s1, u_char* s2, JREC* jrec) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void num_kurai(SJ4_CONTEXT u_char* p, int len, u_char* tbl) {
|
||||||
num_kurai(SJ4_CONTEXT u_char* p, int len, u_char* tbl) {
|
|
||||||
int i;
|
int i;
|
||||||
int j;
|
int j;
|
||||||
u_char tmp;
|
u_char tmp;
|
||||||
|
|
|
||||||
|
|
@ -97,8 +97,7 @@ int prevusr(SJ4_CONTEXT u_char* buf) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void set_kanji(SJ4_CONTEXT2) {
|
||||||
set_kanji(SJ4_CONTEXT2) {
|
|
||||||
int len;
|
int len;
|
||||||
|
|
||||||
len = getkanji(SJ4_CONTEXT_PASS peepyomi, getnlen(peepdptr) + getplen(peepdptr),
|
len = getkanji(SJ4_CONTEXT_PASS peepyomi, getnlen(peepdptr) + getplen(peepdptr),
|
||||||
|
|
@ -106,8 +105,7 @@ set_kanji(SJ4_CONTEXT2) {
|
||||||
*(peepknj + len) = 0;
|
*(peepknj + len) = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void set_buf(SJ4_CONTEXT u_char* buf) {
|
||||||
set_buf(SJ4_CONTEXT u_char* buf) {
|
|
||||||
u_char* p;
|
u_char* p;
|
||||||
int i, csize;
|
int i, csize;
|
||||||
|
|
||||||
|
|
@ -124,8 +122,7 @@ set_buf(SJ4_CONTEXT u_char* buf) {
|
||||||
*buf++ = 0;
|
*buf++ = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int prev_kanji(SJ4_CONTEXT2) {
|
||||||
prev_kanji(SJ4_CONTEXT2) {
|
|
||||||
u_char* p1;
|
u_char* p1;
|
||||||
u_char* p2;
|
u_char* p2;
|
||||||
|
|
||||||
|
|
@ -141,8 +138,7 @@ prev_kanji(SJ4_CONTEXT2) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int prev_hinsi(SJ4_CONTEXT2) {
|
||||||
prev_hinsi(SJ4_CONTEXT2) {
|
|
||||||
u_char* p1;
|
u_char* p1;
|
||||||
u_char* p2;
|
u_char* p2;
|
||||||
int nlen;
|
int nlen;
|
||||||
|
|
@ -170,8 +166,7 @@ prev_hinsi(SJ4_CONTEXT2) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int prev_douon(SJ4_CONTEXT2) {
|
||||||
prev_douon(SJ4_CONTEXT2) {
|
|
||||||
u_char* p1;
|
u_char* p1;
|
||||||
u_char* p2;
|
u_char* p2;
|
||||||
int nlen;
|
int nlen;
|
||||||
|
|
@ -227,8 +222,7 @@ prev_douon(SJ4_CONTEXT2) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int next_kanji(SJ4_CONTEXT2) {
|
||||||
next_kanji(SJ4_CONTEXT2) {
|
|
||||||
u_char* p1;
|
u_char* p1;
|
||||||
|
|
||||||
p1 = skipkstr(peepkptr);
|
p1 = skipkstr(peepkptr);
|
||||||
|
|
@ -240,8 +234,7 @@ next_kanji(SJ4_CONTEXT2) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int next_hinsi(SJ4_CONTEXT2) {
|
||||||
next_hinsi(SJ4_CONTEXT2) {
|
|
||||||
u_char* p1;
|
u_char* p1;
|
||||||
|
|
||||||
p1 = skiphblk(peephptr);
|
p1 = skiphblk(peephptr);
|
||||||
|
|
@ -257,8 +250,7 @@ next_hinsi(SJ4_CONTEXT2) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int next_douon(SJ4_CONTEXT2) {
|
||||||
next_douon(SJ4_CONTEXT2) {
|
|
||||||
u_char* p1;
|
u_char* p1;
|
||||||
int nlen;
|
int nlen;
|
||||||
|
|
||||||
|
|
@ -289,8 +281,7 @@ next_douon(SJ4_CONTEXT2) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void set_idxyomi(SJ4_CONTEXT2) {
|
||||||
set_idxyomi(SJ4_CONTEXT2) {
|
|
||||||
u_char *p1, *p2;
|
u_char *p1, *p2;
|
||||||
|
|
||||||
if((p2 = get_idxptr(SJ4_CONTEXT_PASS peepidx))) {
|
if((p2 = get_idxptr(SJ4_CONTEXT_PASS peepidx))) {
|
||||||
|
|
@ -303,8 +294,7 @@ set_idxyomi(SJ4_CONTEXT2) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void add_yomi(SJ4_CONTEXT2) {
|
||||||
add_yomi(SJ4_CONTEXT2) {
|
|
||||||
int nlen;
|
int nlen;
|
||||||
u_char *p1, *p2;
|
u_char *p1, *p2;
|
||||||
|
|
||||||
|
|
@ -322,8 +312,7 @@ add_yomi(SJ4_CONTEXT2) {
|
||||||
*p1 = 0;
|
*p1 = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void cd2sjh_chr(u_char ch, u_char* dst) {
|
||||||
cd2sjh_chr(u_char ch, u_char* dst) {
|
|
||||||
if(ch == _TYOUON) {
|
if(ch == _TYOUON) {
|
||||||
*dst++ = 0xa1;
|
*dst++ = 0xa1;
|
||||||
*dst++ = 0xbc;
|
*dst++ = 0xbc;
|
||||||
|
|
|
||||||
|
|
@ -31,8 +31,7 @@
|
||||||
|
|
||||||
#include "sj_kanakan.h"
|
#include "sj_kanakan.h"
|
||||||
|
|
||||||
static void
|
static void ph_setsty(SJ4_CONTEXT CLREC* clrec) {
|
||||||
ph_setsty(SJ4_CONTEXT CLREC* clrec) {
|
|
||||||
JREC* jrec;
|
JREC* jrec;
|
||||||
TypeDicOfs offset;
|
TypeDicOfs offset;
|
||||||
u_char* ptr;
|
u_char* ptr;
|
||||||
|
|
@ -62,9 +61,7 @@ ph_setsty(SJ4_CONTEXT CLREC* clrec) {
|
||||||
|
|
||||||
if(sptr->styno < kouhotbl[0].styno) {
|
if(sptr->styno < kouhotbl[0].styno) {
|
||||||
ph_setkouho(SJ4_CONTEXT_PASS clrec, offset, sptr);
|
ph_setkouho(SJ4_CONTEXT_PASS clrec, offset, sptr);
|
||||||
}
|
} else if(sptr->styno == kouhotbl->styno) {
|
||||||
|
|
||||||
else if(sptr->styno == kouhotbl->styno) {
|
|
||||||
if(!(kouhotbl[0].ka_fg &&
|
if(!(kouhotbl[0].ka_fg &&
|
||||||
sptr->ka_kj == kouhotbl[0].ka_kj)) {
|
sptr->ka_kj == kouhotbl[0].ka_kj)) {
|
||||||
ph_setkouho(SJ4_CONTEXT_PASS clrec, offset, sptr);
|
ph_setkouho(SJ4_CONTEXT_PASS clrec, offset, sptr);
|
||||||
|
|
|
||||||
|
|
@ -34,8 +34,7 @@
|
||||||
|
|
||||||
#include "sj_kanakan.h"
|
#include "sj_kanakan.h"
|
||||||
|
|
||||||
static int
|
static int isfukusi(TypeGram hinsi) {
|
||||||
isfukusi(TypeGram hinsi) {
|
|
||||||
if(FUKUSI_1 <= hinsi && hinsi <= FUKUSI_7)
|
if(FUKUSI_1 <= hinsi && hinsi <= FUKUSI_7)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
else if(hinsi == MEISI_11 || hinsi == D_MEISI_6)
|
else if(hinsi == MEISI_11 || hinsi == D_MEISI_6)
|
||||||
|
|
@ -43,8 +42,7 @@ isfukusi(TypeGram hinsi) {
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int istaigen(TypeCnct right) {
|
||||||
istaigen(TypeCnct right) {
|
|
||||||
if(right == R_MEISI || right == R_DMEISI || right == R_SMEISI1)
|
if(right == R_MEISI || right == R_DMEISI || right == R_SMEISI1)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
if(right == R_WO_MEISI || right == R_DAIMEISI || right == R_JOSUUSI)
|
if(right == R_WO_MEISI || right == R_DAIMEISI || right == R_JOSUUSI)
|
||||||
|
|
@ -54,8 +52,7 @@ istaigen(TypeCnct right) {
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int taicnt(TypeGram hinsi1, TypeGram hinsi2) {
|
||||||
taicnt(TypeGram hinsi1, TypeGram hinsi2) {
|
|
||||||
if(hinsi2 == TANKANJI) return 0;
|
if(hinsi2 == TANKANJI) return 0;
|
||||||
|
|
||||||
if(MYOUJI <= hinsi1 && hinsi1 <= KEN_KU) {
|
if(MYOUJI <= hinsi1 && hinsi1 <= KEN_KU) {
|
||||||
|
|
@ -69,9 +66,7 @@ taicnt(TypeGram hinsi1, TypeGram hinsi2) {
|
||||||
return Taipri(5, hinsi2);
|
return Taipri(5, hinsi2);
|
||||||
} else
|
} else
|
||||||
return 5;
|
return 5;
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
if(MEISI_1 <= hinsi2 && hinsi2 <= SETUBI_9)
|
if(MEISI_1 <= hinsi2 && hinsi2 <= SETUBI_9)
|
||||||
return Taipri(6, hinsi2);
|
return Taipri(6, hinsi2);
|
||||||
else
|
else
|
||||||
|
|
@ -79,8 +74,7 @@ taicnt(TypeGram hinsi1, TypeGram hinsi2) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int sttcnt(TypeGram hinsi1, TypeGram hinsi2) {
|
||||||
sttcnt(TypeGram hinsi1, TypeGram hinsi2) {
|
|
||||||
if(SETTOU_1 <= hinsi1 && hinsi1 <= SETTOU_5) {
|
if(SETTOU_1 <= hinsi1 && hinsi1 <= SETTOU_5) {
|
||||||
if(MEISI_1 <= hinsi2 && hinsi2 <= SUUSI)
|
if(MEISI_1 <= hinsi2 && hinsi2 <= SUUSI)
|
||||||
return Sttpri(hinsi1 - SETTOU_1, hinsi2);
|
return Sttpri(hinsi1 - SETTOU_1, hinsi2);
|
||||||
|
|
@ -109,18 +103,14 @@ int priority(SJ4_CONTEXT CLREC* clrec) {
|
||||||
prevclrow == R_NI1 || prevclrow == R_DRENYOU2) {
|
prevclrow == R_NI1 || prevclrow == R_DRENYOU2) {
|
||||||
if(clrec->kubun == K_DOUSHI || isfukusi(hinsi1))
|
if(clrec->kubun == K_DOUSHI || isfukusi(hinsi1))
|
||||||
prev = 5;
|
prev = 5;
|
||||||
}
|
} else if(istaigen(prevclrow)) {
|
||||||
|
|
||||||
else if(istaigen(prevclrow)) {
|
|
||||||
|
|
||||||
if(clrec->kubun == K_TAIGEN)
|
if(clrec->kubun == K_TAIGEN)
|
||||||
prev = taicnt(prevclgrm, hinsi1);
|
prev = taicnt(prevclgrm, hinsi1);
|
||||||
|
|
||||||
else
|
else
|
||||||
prev = 0;
|
prev = 0;
|
||||||
}
|
} else if(prevclrow == R_SETTOU) {
|
||||||
|
|
||||||
else if(prevclrow == R_SETTOU) {
|
|
||||||
if(clrec->jnode->sttofs)
|
if(clrec->jnode->sttofs)
|
||||||
prty = 2;
|
prty = 2;
|
||||||
else
|
else
|
||||||
|
|
@ -144,9 +134,7 @@ int priority(SJ4_CONTEXT CLREC* clrec) {
|
||||||
}
|
}
|
||||||
cl2rec = cl2rec->clsort;
|
cl2rec = cl2rec->clsort;
|
||||||
}
|
}
|
||||||
}
|
} else if(clrec->right == R_SETTOU) {
|
||||||
|
|
||||||
else if(clrec->right == R_SETTOU) {
|
|
||||||
prty = 0;
|
prty = 0;
|
||||||
while(cl2rec && (int)cl2rec->cllen == keeplen) {
|
while(cl2rec && (int)cl2rec->cllen == keeplen) {
|
||||||
if(cl2rec->jnode->sttofs)
|
if(cl2rec->jnode->sttofs)
|
||||||
|
|
@ -159,9 +147,7 @@ int priority(SJ4_CONTEXT CLREC* clrec) {
|
||||||
cl2rec = cl2rec->clsort;
|
cl2rec = cl2rec->clsort;
|
||||||
}
|
}
|
||||||
goto finish;
|
goto finish;
|
||||||
}
|
} else if(istaigen(clrec->right)) {
|
||||||
|
|
||||||
else if(istaigen(clrec->right)) {
|
|
||||||
prty = 0;
|
prty = 0;
|
||||||
while(cl2rec && (int)cl2rec->cllen == keeplen) {
|
while(cl2rec && (int)cl2rec->cllen == keeplen) {
|
||||||
i = taicnt(hinsi1, cl2rec->jnode->hinsi);
|
i = taicnt(hinsi1, cl2rec->jnode->hinsi);
|
||||||
|
|
@ -186,14 +172,11 @@ int priority(SJ4_CONTEXT CLREC* clrec) {
|
||||||
cl2rec = cl2rec->clsort;
|
cl2rec = cl2rec->clsort;
|
||||||
}
|
}
|
||||||
prty = 4;
|
prty = 4;
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
prty &= GETPRI;
|
prty &= GETPRI;
|
||||||
|
|
||||||
if(prty == P_RENYOU_J || prty == P_RENYOU_M) {
|
if(prty == P_RENYOU_J || prty == P_RENYOU_M) {
|
||||||
while(clrec->cllen != 1 && cl2rec &&
|
while(clrec->cllen != 1 && cl2rec && (int)cl2rec->cllen == keeplen) {
|
||||||
(int)cl2rec->cllen == keeplen) {
|
|
||||||
if(cl2rec->kubun == K_DOUSHI) {
|
if(cl2rec->kubun == K_DOUSHI) {
|
||||||
prty = 6;
|
prty = 6;
|
||||||
goto finish;
|
goto finish;
|
||||||
|
|
@ -215,8 +198,7 @@ finish:
|
||||||
|
|
||||||
if(cl2rec->jnode->hinsi == SUUSI) prty -= 3;
|
if(cl2rec->jnode->hinsi == SUUSI) prty -= 3;
|
||||||
|
|
||||||
if(cl2rec->jnode->jclass == C_DICT &&
|
if(cl2rec->jnode->jclass == C_DICT && cl2rec->jnode->jlen == 1 && (cl2rec->kubun != K_DOUSHI)) {
|
||||||
cl2rec->jnode->jlen == 1 && (cl2rec->kubun != K_DOUSHI)) {
|
|
||||||
prty -= 2;
|
prty -= 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -245,9 +227,7 @@ void pritiny(SJ4_CONTEXT2) {
|
||||||
}
|
}
|
||||||
clrec = clrec->clsort;
|
clrec = clrec->clsort;
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
|
|
||||||
while(clrec && (int)clrec->cllen == keeplen) {
|
while(clrec && (int)clrec->cllen == keeplen) {
|
||||||
if(clrec->jnode->hinsi >= MYOUJI &&
|
if(clrec->jnode->hinsi >= MYOUJI &&
|
||||||
|
|
|
||||||
|
|
@ -58,8 +58,7 @@ StdyFile* stdylink = NULL;
|
||||||
#define stdylink ctx->stdylink
|
#define stdylink ctx->stdylink
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static long
|
static long get4byte(u_char* p) {
|
||||||
get4byte(u_char* p) {
|
|
||||||
long i;
|
long i;
|
||||||
|
|
||||||
i = *p;
|
i = *p;
|
||||||
|
|
@ -67,8 +66,7 @@ get4byte(u_char* p) {
|
||||||
i = (i << 8) + *++p;
|
i = (i << 8) + *++p;
|
||||||
return ((i << 8) + *++p);
|
return ((i << 8) + *++p);
|
||||||
}
|
}
|
||||||
static void
|
static void Put4byte(u_char* p, long n) {
|
||||||
Put4byte(u_char* p, long n) {
|
|
||||||
p += 3;
|
p += 3;
|
||||||
*p-- = n;
|
*p-- = n;
|
||||||
n >>= 8;
|
n >>= 8;
|
||||||
|
|
@ -80,8 +78,7 @@ Put4byte(u_char* p, long n) {
|
||||||
}
|
}
|
||||||
#define put4byte(p, n) Put4byte((p), (long)(n))
|
#define put4byte(p, n) Put4byte((p), (long)(n))
|
||||||
|
|
||||||
static int
|
static int fgetfile(VFile* vfp, FILE* fp, long pos, long len, u_char* p) {
|
||||||
fgetfile(VFile* vfp, FILE* fp, long pos, long len, u_char* p) {
|
|
||||||
if(vfp != NULL && vfp->buffer != NULL) {
|
if(vfp != NULL && vfp->buffer != NULL) {
|
||||||
if(pos >= vfp->size) {
|
if(pos >= vfp->size) {
|
||||||
serv_errno = SJ4_FileSeekError;
|
serv_errno = SJ4_FileSeekError;
|
||||||
|
|
@ -107,8 +104,7 @@ fgetfile(VFile* vfp, FILE* fp, long pos, long len, u_char* p) {
|
||||||
}
|
}
|
||||||
return SJ4_NormalEnd;
|
return SJ4_NormalEnd;
|
||||||
}
|
}
|
||||||
static int
|
static int fputfile(FILE* fp, long pos, int len, u_char* p) {
|
||||||
fputfile(FILE* fp, long pos, int len, u_char* p) {
|
|
||||||
if(fseek(fp, pos, 0) == ERROR) {
|
if(fseek(fp, pos, 0) == ERROR) {
|
||||||
serv_errno = SJ4_FileSeekError;
|
serv_errno = SJ4_FileSeekError;
|
||||||
return ERROR;
|
return ERROR;
|
||||||
|
|
@ -120,23 +116,19 @@ fputfile(FILE* fp, long pos, int len, u_char* p) {
|
||||||
return SJ4_NormalEnd;
|
return SJ4_NormalEnd;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int check_passwd(u_char* buf, char* passwd) {
|
||||||
check_passwd(u_char* buf, char* passwd) {
|
|
||||||
buf += PASSWDPOS;
|
buf += PASSWDPOS;
|
||||||
return (*buf && strncmp(passwd, (char*)buf, PASSWDLEN)) ? FALSE : TRUE;
|
return (*buf && strncmp(passwd, (char*)buf, PASSWDLEN)) ? FALSE : TRUE;
|
||||||
}
|
}
|
||||||
static void
|
static void set_passwd(u_char* buf, char* passwd) {
|
||||||
set_passwd(u_char* buf, char* passwd) {
|
|
||||||
strncpy((char*)buf + PASSWDPOS, passwd, PASSWDLEN);
|
strncpy((char*)buf + PASSWDPOS, passwd, PASSWDLEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int check_dictfile(u_char* buf) {
|
||||||
check_dictfile(u_char* buf) {
|
|
||||||
return (DICTVERSION != get4byte(buf + VERSIONPOS)) ? FALSE : TRUE;
|
return (DICTVERSION != get4byte(buf + VERSIONPOS)) ? FALSE : TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static DictFile*
|
static DictFile* search_same_dict(SJ4_CONTEXT ino_t ino) {
|
||||||
search_same_dict(SJ4_CONTEXT ino_t ino) {
|
|
||||||
DictFile* p;
|
DictFile* p;
|
||||||
|
|
||||||
for(p = dictlink; p != NULL; p = p->link)
|
for(p = dictlink; p != NULL; p = p->link)
|
||||||
|
|
@ -145,28 +137,23 @@ search_same_dict(SJ4_CONTEXT ino_t ino) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int getofs(SJ4_CONTEXT DictFile* dp) {
|
||||||
getofs(SJ4_CONTEXT DictFile* dp) {
|
|
||||||
idxofs = dp->ofsptr;
|
idxofs = dp->ofsptr;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
static int
|
static int getidx(SJ4_CONTEXT DictFile* dp) {
|
||||||
getidx(SJ4_CONTEXT DictFile* dp) {
|
|
||||||
idxbuf = dp->buffer + dp->idxstrt;
|
idxbuf = dp->buffer + dp->idxstrt;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
static int
|
static int getdic(SJ4_CONTEXT DictFile* dp, TypeDicSeg seg) {
|
||||||
getdic(SJ4_CONTEXT DictFile* dp, TypeDicSeg seg) {
|
|
||||||
if(seg >= dp->dict.segunit) return -1;
|
if(seg >= dp->dict.segunit) return -1;
|
||||||
dicbuf = dp->buffer + dp->segstrt + dp->dict.seglen * seg;
|
dicbuf = dp->buffer + dp->segstrt + dp->dict.seglen * seg;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
static int
|
static int putidx(SJ4_CONTEXT DictFile* dp, short dummy) {
|
||||||
putidx(SJ4_CONTEXT DictFile* dp, short dummy) {
|
|
||||||
return fputfile(dp->fp, dp->idxstrt, dp->dict.idxlen, idxbuf);
|
return fputfile(dp->fp, dp->idxstrt, dp->dict.idxlen, idxbuf);
|
||||||
}
|
}
|
||||||
static int
|
static int putdic(SJ4_CONTEXT DictFile* dp, TypeDicSeg seg) {
|
||||||
putdic(SJ4_CONTEXT DictFile* dp, TypeDicSeg seg) {
|
|
||||||
u_char* p;
|
u_char* p;
|
||||||
long i, j;
|
long i, j;
|
||||||
|
|
||||||
|
|
@ -192,8 +179,7 @@ putdic(SJ4_CONTEXT DictFile* dp, TypeDicSeg seg) {
|
||||||
|
|
||||||
return fputfile(dp->fp, i, dp->dict.seglen, p);
|
return fputfile(dp->fp, i, dp->dict.seglen, p);
|
||||||
}
|
}
|
||||||
static int
|
static int rszdic(SJ4_CONTEXT DictFile* dp, TypeDicSeg seg) {
|
||||||
rszdic(SJ4_CONTEXT DictFile* dp, TypeDicSeg seg) {
|
|
||||||
long i;
|
long i;
|
||||||
u_char* p;
|
u_char* p;
|
||||||
|
|
||||||
|
|
@ -216,15 +202,13 @@ rszdic(SJ4_CONTEXT DictFile* dp, TypeDicSeg seg) {
|
||||||
put4byte(dp->buffer + DICTSEGNUM, seg);
|
put4byte(dp->buffer + DICTSEGNUM, seg);
|
||||||
return fputfile(dp->fp, 0, HEADERLENGTH, dp->buffer);
|
return fputfile(dp->fp, 0, HEADERLENGTH, dp->buffer);
|
||||||
}
|
}
|
||||||
static void
|
static void freedicskip(DictFile* dp) {
|
||||||
freedicskip(DictFile* dp) {
|
|
||||||
free((char*)dp->skipent);
|
free((char*)dp->skipent);
|
||||||
free((char*)dp->skipseg);
|
free((char*)dp->skipseg);
|
||||||
dp->skipent = NULL;
|
dp->skipent = NULL;
|
||||||
dp->skipseg = NULL;
|
dp->skipseg = NULL;
|
||||||
}
|
}
|
||||||
static void
|
static void mkdicskip(DictFile* dp) {
|
||||||
mkdicskip(DictFile* dp) {
|
|
||||||
DictSkipSeg* segs;
|
DictSkipSeg* segs;
|
||||||
DictSkipEnt* ents;
|
DictSkipEnt* ents;
|
||||||
u_short* stack;
|
u_short* stack;
|
||||||
|
|
@ -284,8 +268,7 @@ mkdicskip(DictFile* dp) {
|
||||||
dp->skipent = ents;
|
dp->skipent = ents;
|
||||||
}
|
}
|
||||||
|
|
||||||
static u_char*
|
static u_char* skipdic(SJ4_CONTEXT u_char* tagp, TypeDicSeg seg) {
|
||||||
skipdic(SJ4_CONTEXT u_char* tagp, TypeDicSeg seg) {
|
|
||||||
DictFile* dp = (DictFile*)curdict;
|
DictFile* dp = (DictFile*)curdict;
|
||||||
DictSkipSeg* s;
|
DictSkipSeg* s;
|
||||||
TypeDicOfs offset;
|
TypeDicOfs offset;
|
||||||
|
|
@ -323,8 +306,7 @@ skipdic(SJ4_CONTEXT u_char* tagp, TypeDicSeg seg) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
DictFile*
|
DictFile* opendict(SJ4_CONTEXT char* name, char* passwd) {
|
||||||
opendict(SJ4_CONTEXT char* name, char* passwd) {
|
|
||||||
FILE* fp = NULL;
|
FILE* fp = NULL;
|
||||||
struct stat sbuf;
|
struct stat sbuf;
|
||||||
DictFile* dfp;
|
DictFile* dfp;
|
||||||
|
|
@ -462,13 +444,11 @@ int closedict(SJ4_CONTEXT DictFile* dfp) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int check_stdyfile(u_char* buf) {
|
||||||
check_stdyfile(u_char* buf) {
|
|
||||||
return (STDYVERSION != get4byte(buf + VERSIONPOS)) ? FALSE : TRUE;
|
return (STDYVERSION != get4byte(buf + VERSIONPOS)) ? FALSE : TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static StdyFile*
|
static StdyFile* search_same_stdy(SJ4_CONTEXT ino_t ino) {
|
||||||
search_same_stdy(SJ4_CONTEXT ino_t ino) {
|
|
||||||
StdyFile* p;
|
StdyFile* p;
|
||||||
|
|
||||||
for(p = stdylink; p != NULL; p = p->link)
|
for(p = stdylink; p != NULL; p = p->link)
|
||||||
|
|
@ -477,8 +457,7 @@ search_same_stdy(SJ4_CONTEXT ino_t ino) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
StdyFile*
|
StdyFile* openstdy(SJ4_CONTEXT char* name, char* passwd) {
|
||||||
openstdy(SJ4_CONTEXT char* name, char* passwd) {
|
|
||||||
FILE* fp;
|
FILE* fp;
|
||||||
struct stat sbuf;
|
struct stat sbuf;
|
||||||
StdyFile* sfp;
|
StdyFile* sfp;
|
||||||
|
|
@ -811,8 +790,7 @@ int set_stdypass(SJ4_CONTEXT char* pass) {
|
||||||
return fputfile(sp->fp, 0, HEADERLENGTH + COMMENTLENGTH, sp->header);
|
return fputfile(sp->fp, 0, HEADERLENGTH + COMMENTLENGTH, sp->header);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void set_comment(u_char* buf, char* comment) {
|
||||||
set_comment(u_char* buf, char* comment) {
|
|
||||||
sj4_strlcpy((char*)buf + HEADERLENGTH, comment, COMMENTLENGTH);
|
sj4_strlcpy((char*)buf + HEADERLENGTH, comment, COMMENTLENGTH);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -58,9 +58,7 @@ void selclrec(SJ4_CONTEXT2) {
|
||||||
if(len == rec->cllen) {
|
if(len == rec->cllen) {
|
||||||
selcl = rec;
|
selcl = rec;
|
||||||
break;
|
break;
|
||||||
}
|
} else if(len > (unsigned int)rec->cllen) {
|
||||||
|
|
||||||
else if(len > (unsigned int)rec->cllen) {
|
|
||||||
rec = NULL;
|
rec = NULL;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -34,8 +34,7 @@
|
||||||
|
|
||||||
#include "sj_kanakan.h"
|
#include "sj_kanakan.h"
|
||||||
|
|
||||||
static int
|
static int cnjstrcmp(u_char* yptr, u_char* cnjp, int* saml) {
|
||||||
cnjstrcmp(u_char* yptr, u_char* cnjp, int* saml) {
|
|
||||||
int asklen;
|
int asklen;
|
||||||
int nkrlen;
|
int nkrlen;
|
||||||
|
|
||||||
|
|
@ -57,9 +56,7 @@ cnjstrcmp(u_char* yptr, u_char* cnjp, int* saml) {
|
||||||
else if(*yptr < *cnjp) {
|
else if(*yptr < *cnjp) {
|
||||||
if(!*yptr) return PARTLY;
|
if(!*yptr) return PARTLY;
|
||||||
return OVER;
|
return OVER;
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
yptr++;
|
yptr++;
|
||||||
cnjp++;
|
cnjp++;
|
||||||
(*saml)++;
|
(*saml)++;
|
||||||
|
|
@ -69,8 +66,7 @@ cnjstrcmp(u_char* yptr, u_char* cnjp, int* saml) {
|
||||||
return MATCH;
|
return MATCH;
|
||||||
}
|
}
|
||||||
|
|
||||||
static TypeCnct
|
static TypeCnct cnvrow(JREC* rec, TypeCnct row) {
|
||||||
cnvrow(JREC* rec, TypeCnct row) {
|
|
||||||
TypeGram hinsi;
|
TypeGram hinsi;
|
||||||
int stt;
|
int stt;
|
||||||
|
|
||||||
|
|
@ -90,9 +86,7 @@ cnvrow(JREC* rec, TypeCnct row) {
|
||||||
|
|
||||||
else
|
else
|
||||||
row = 0;
|
row = 0;
|
||||||
}
|
} else if(stt == SETTOU_GO) {
|
||||||
|
|
||||||
else if(stt == SETTOU_GO) {
|
|
||||||
|
|
||||||
if(hinsi == MEISI_7 && row == R_SMEISI1)
|
if(hinsi == MEISI_7 && row == R_SMEISI1)
|
||||||
row++;
|
row++;
|
||||||
|
|
|
||||||
|
|
@ -152,9 +152,7 @@ chkhead(SJ4_CONTEXT TypeGram gram) {
|
||||||
if(headcode == SETTOU_DAI) {
|
if(headcode == SETTOU_DAI) {
|
||||||
|
|
||||||
if(gram == SUUSI) return TRUE;
|
if(gram == SUUSI) return TRUE;
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
gram--;
|
gram--;
|
||||||
if((Scncttbl(headcode - 1, gram >> 3) << (gram & 0x07)) & 0x80) {
|
if((Scncttbl(headcode - 1, gram >> 3) << (gram & 0x07)) & 0x80) {
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
|
||||||
|
|
@ -152,8 +152,7 @@ void ph_setkouho(SJ4_CONTEXT CLREC* clrec, TypeDicOfs offs, STDYIN* sptr) {
|
||||||
khcount = 1;
|
khcount = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int hiraknj(SJ4_CONTEXT u_char* p) {
|
||||||
hiraknj(SJ4_CONTEXT u_char* p) {
|
|
||||||
char flg = TRUE;
|
char flg = TRUE;
|
||||||
int i;
|
int i;
|
||||||
int result;
|
int result;
|
||||||
|
|
|
||||||
|
|
@ -32,8 +32,7 @@
|
||||||
|
|
||||||
#include "sj_kanakan.h"
|
#include "sj_kanakan.h"
|
||||||
|
|
||||||
u_char*
|
u_char* getstb(TypeGram hinsi) {
|
||||||
getstb(TypeGram hinsi) {
|
|
||||||
if(hinsi < MEISI_1 || hinsi > TIMEI) return NULL;
|
if(hinsi < MEISI_1 || hinsi > TIMEI) return NULL;
|
||||||
|
|
||||||
return Stbadr(hinsi);
|
return Stbadr(hinsi);
|
||||||
|
|
|
||||||
|
|
@ -33,8 +33,7 @@
|
||||||
|
|
||||||
#include "sj_kanakan.h"
|
#include "sj_kanakan.h"
|
||||||
|
|
||||||
u_char*
|
u_char* skiphblk(u_char* ptr) {
|
||||||
skiphblk(u_char* ptr) {
|
|
||||||
ptr++;
|
ptr++;
|
||||||
|
|
||||||
while(*ptr != HINSIBLKTERM) ptr = skipkstr(ptr);
|
while(*ptr != HINSIBLKTERM) ptr = skipkstr(ptr);
|
||||||
|
|
|
||||||
|
|
@ -36,8 +36,7 @@
|
||||||
|
|
||||||
#include "sj_kanakan.h"
|
#include "sj_kanakan.h"
|
||||||
|
|
||||||
u_char*
|
u_char* skipkstr(u_char* ptr) {
|
||||||
skipkstr(u_char* ptr) {
|
|
||||||
int contf = TRUE, csize;
|
int contf = TRUE, csize;
|
||||||
|
|
||||||
do {
|
do {
|
||||||
|
|
|
||||||
|
|
@ -47,9 +47,7 @@ int yomicmp(SJ4_CONTEXT u_char* ptr1, u_char* ptr2, u_char* saml) {
|
||||||
if(*ptr1++ != *ptr2++) return OVER;
|
if(*ptr1++ != *ptr2++) return OVER;
|
||||||
|
|
||||||
j = sstrlen(ptr2);
|
j = sstrlen(ptr2);
|
||||||
}
|
} else if(i > same)
|
||||||
|
|
||||||
else if(i > same)
|
|
||||||
return CONT;
|
return CONT;
|
||||||
|
|
||||||
else {
|
else {
|
||||||
|
|
@ -88,9 +86,7 @@ static __inline int yomicmp_seg(SJ4_CONTEXT u_char* ptr1, u_char* ptr2, u_char*
|
||||||
if(*ptr1++ != *ptr2++) return OVER;
|
if(*ptr1++ != *ptr2++) return OVER;
|
||||||
|
|
||||||
j = segidxlen;
|
j = segidxlen;
|
||||||
}
|
} else if(i > same)
|
||||||
|
|
||||||
else if(i > same)
|
|
||||||
return CONT;
|
return CONT;
|
||||||
|
|
||||||
else {
|
else {
|
||||||
|
|
@ -113,8 +109,7 @@ static __inline int yomicmp_seg(SJ4_CONTEXT u_char* ptr1, u_char* ptr2, u_char*
|
||||||
return MATCH;
|
return MATCH;
|
||||||
}
|
}
|
||||||
|
|
||||||
static __inline TypeDicSeg
|
static __inline TypeDicSeg srchidx_loaded(SJ4_CONTEXT TypeDicSeg low, int len) {
|
||||||
srchidx_loaded(SJ4_CONTEXT TypeDicSeg low, int len) {
|
|
||||||
TypeDicSeg high;
|
TypeDicSeg high;
|
||||||
TypeDicSeg mid;
|
TypeDicSeg mid;
|
||||||
int cmp;
|
int cmp;
|
||||||
|
|
@ -134,13 +129,9 @@ srchidx_loaded(SJ4_CONTEXT TypeDicSeg low, int len) {
|
||||||
|
|
||||||
if(cmp == OVER) {
|
if(cmp == OVER) {
|
||||||
high = mid - 1;
|
high = mid - 1;
|
||||||
}
|
} else if(cmp != MATCH) {
|
||||||
|
|
||||||
else if(cmp != MATCH) {
|
|
||||||
low = mid + 1;
|
low = mid + 1;
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
return mid;
|
return mid;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -148,8 +139,7 @@ srchidx_loaded(SJ4_CONTEXT TypeDicSeg low, int len) {
|
||||||
return (cmp == OVER && mid != DICSEGBASE) ? mid - 1 : mid;
|
return (cmp == OVER && mid != DICSEGBASE) ? mid - 1 : mid;
|
||||||
}
|
}
|
||||||
|
|
||||||
u_char*
|
u_char* srchdict(SJ4_CONTEXT u_char* tagp) {
|
||||||
srchdict(SJ4_CONTEXT u_char* tagp) {
|
|
||||||
TypeDicSeg segno;
|
TypeDicSeg segno;
|
||||||
int cmp;
|
int cmp;
|
||||||
int maxlen;
|
int maxlen;
|
||||||
|
|
@ -177,9 +167,7 @@ srchdict(SJ4_CONTEXT u_char* tagp) {
|
||||||
segidxlen = sstrlen(segidx);
|
segidxlen = sstrlen(segidx);
|
||||||
|
|
||||||
tagp = dicbuf;
|
tagp = dicbuf;
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
|
|
||||||
tagp = getntag(tagp);
|
tagp = getntag(tagp);
|
||||||
|
|
||||||
|
|
@ -214,16 +202,12 @@ srchdict(SJ4_CONTEXT u_char* tagp) {
|
||||||
|
|
||||||
if(isdpnd(*(cnvstart + dicsaml))) {
|
if(isdpnd(*(cnvstart + dicsaml))) {
|
||||||
break;
|
break;
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
dicinl = dicsaml + 1;
|
dicinl = dicsaml + 1;
|
||||||
if(askbase != dicbuf) get_askknj(SJ4_CONTEXT_PASS2);
|
if(askbase != dicbuf) get_askknj(SJ4_CONTEXT_PASS2);
|
||||||
return tagp;
|
return tagp;
|
||||||
}
|
}
|
||||||
}
|
} else if(cmp == CONT && getnlen(tagp) != 0 && getplen(tagp) > dicsaml && curdict->skipdic != NULL) {
|
||||||
|
|
||||||
else if(cmp == CONT && getnlen(tagp) != 0 && getplen(tagp) > dicsaml && curdict->skipdic != NULL) {
|
|
||||||
u_char* next = (*curdict->skipdic)(SJ4_CONTEXT_PASS tagp, segno);
|
u_char* next = (*curdict->skipdic)(SJ4_CONTEXT_PASS tagp, segno);
|
||||||
|
|
||||||
if(next != NULL) {
|
if(next != NULL) {
|
||||||
|
|
|
||||||
|
|
@ -37,15 +37,11 @@ int srchhead(SJ4_CONTEXT2) {
|
||||||
headcode = SETTOU_O;
|
headcode = SETTOU_O;
|
||||||
headlen = 1;
|
headlen = 1;
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
} else if(*cnvstart == _GO) {
|
||||||
|
|
||||||
else if(*cnvstart == _GO) {
|
|
||||||
headcode = SETTOU_GO;
|
headcode = SETTOU_GO;
|
||||||
headlen = 1;
|
headlen = 1;
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
} else if((*cnvstart == _DA) && (*(cnvstart + 1) == _I)) {
|
||||||
|
|
||||||
else if((*cnvstart == _DA) && (*(cnvstart + 1) == _I)) {
|
|
||||||
headcode = SETTOU_DAI;
|
headcode = SETTOU_DAI;
|
||||||
headlen = 2;
|
headlen = 2;
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
|
||||||
|
|
@ -31,8 +31,7 @@
|
||||||
|
|
||||||
#include "sj_kanakan.h"
|
#include "sj_kanakan.h"
|
||||||
|
|
||||||
TypeDicSeg
|
TypeDicSeg srchidx(SJ4_CONTEXT TypeDicSeg low, int len) {
|
||||||
srchidx(SJ4_CONTEXT TypeDicSeg low, int len) {
|
|
||||||
TypeDicSeg high;
|
TypeDicSeg high;
|
||||||
TypeDicSeg mid;
|
TypeDicSeg mid;
|
||||||
int cmp;
|
int cmp;
|
||||||
|
|
@ -52,13 +51,9 @@ srchidx(SJ4_CONTEXT TypeDicSeg low, int len) {
|
||||||
|
|
||||||
if(cmp == OVER) {
|
if(cmp == OVER) {
|
||||||
high = mid - 1;
|
high = mid - 1;
|
||||||
}
|
} else if(cmp != MATCH) {
|
||||||
|
|
||||||
else if(cmp != MATCH) {
|
|
||||||
low = mid + 1;
|
low = mid + 1;
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
return mid;
|
return mid;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -37,8 +37,7 @@
|
||||||
|
|
||||||
static void srch_kurai1(SJ4_CONTEXT u_char*, u_char*), srch_kurai2(SJ4_CONTEXT u_char*, u_char*);
|
static void srch_kurai1(SJ4_CONTEXT u_char*, u_char*), srch_kurai2(SJ4_CONTEXT u_char*, u_char*);
|
||||||
|
|
||||||
static void
|
static void srch_josuu_sub(SJ4_CONTEXT JREC* jrec, TypeGram gram) {
|
||||||
srch_josuu_sub(SJ4_CONTEXT JREC* jrec, TypeGram gram) {
|
|
||||||
u_char* tagp;
|
u_char* tagp;
|
||||||
DICTL* dp;
|
DICTL* dp;
|
||||||
|
|
||||||
|
|
@ -51,8 +50,7 @@ srch_josuu_sub(SJ4_CONTEXT JREC* jrec, TypeGram gram) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void srch_josuu(SJ4_CONTEXT JREC* jrec) {
|
||||||
srch_josuu(SJ4_CONTEXT JREC* jrec) {
|
|
||||||
u_char* kp;
|
u_char* kp;
|
||||||
int klen;
|
int klen;
|
||||||
int len;
|
int len;
|
||||||
|
|
@ -73,8 +71,7 @@ srch_josuu(SJ4_CONTEXT JREC* jrec) {
|
||||||
cnvlen = klen;
|
cnvlen = klen;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void setnrec_sub(SJ4_CONTEXT u_char* p, u_short flag, int stb) {
|
||||||
setnrec_sub(SJ4_CONTEXT u_char* p, u_short flag, int stb) {
|
|
||||||
JREC* rec;
|
JREC* rec;
|
||||||
int len1;
|
int len1;
|
||||||
int len2;
|
int len2;
|
||||||
|
|
@ -107,8 +104,7 @@ setnrec_sub(SJ4_CONTEXT u_char* p, u_short flag, int stb) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void setnrec(SJ4_CONTEXT u_char* p, u_short flag) {
|
||||||
setnrec(SJ4_CONTEXT u_char* p, u_short flag) {
|
|
||||||
setnrec_sub(SJ4_CONTEXT_PASS p, flag, 0);
|
setnrec_sub(SJ4_CONTEXT_PASS p, flag, 0);
|
||||||
|
|
||||||
if(!headcode && (*p == Y_S_KIGOU2)) {
|
if(!headcode && (*p == Y_S_KIGOU2)) {
|
||||||
|
|
@ -116,8 +112,7 @@ setnrec(SJ4_CONTEXT u_char* p, u_short flag) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static u_char*
|
static u_char* srchtbl(u_char ch, u_char* tbl, int rec, int n) {
|
||||||
srchtbl(u_char ch, u_char* tbl, int rec, int n) {
|
|
||||||
int high, low, mid;
|
int high, low, mid;
|
||||||
u_char* p;
|
u_char* p;
|
||||||
|
|
||||||
|
|
@ -147,13 +142,11 @@ srchtbl(u_char ch, u_char* tbl, int rec, int n) {
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int isconnect(u_char* cnct, int num) {
|
||||||
isconnect(u_char* cnct, int num) {
|
|
||||||
return (cnct[num / 8] & (0x80 >> (num % 8)));
|
return (cnct[num / 8] & (0x80 >> (num % 8)));
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int string_cmp(u_char* s, int l, u_char* d) {
|
||||||
string_cmp(u_char* s, int l, u_char* d) {
|
|
||||||
u_char* p;
|
u_char* p;
|
||||||
|
|
||||||
p = s;
|
p = s;
|
||||||
|
|
@ -167,8 +160,7 @@ string_cmp(u_char* s, int l, u_char* d) {
|
||||||
return (s - p);
|
return (s - p);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int check_num(SJ4_CONTEXT u_char* ptr) {
|
||||||
check_num(SJ4_CONTEXT u_char* ptr) {
|
|
||||||
int i;
|
int i;
|
||||||
int j;
|
int j;
|
||||||
int k;
|
int k;
|
||||||
|
|
@ -255,8 +247,7 @@ check_num(SJ4_CONTEXT u_char* ptr) {
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void srch_number1(SJ4_CONTEXT u_char* ptr) {
|
||||||
srch_number1(SJ4_CONTEXT u_char* ptr) {
|
|
||||||
u_char ch;
|
u_char ch;
|
||||||
u_char mode;
|
u_char mode;
|
||||||
u_char* p;
|
u_char* p;
|
||||||
|
|
@ -351,8 +342,7 @@ srch_number1(SJ4_CONTEXT u_char* ptr) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void srch_kurai1(SJ4_CONTEXT u_char* ptr, u_char* cnct) {
|
||||||
srch_kurai1(SJ4_CONTEXT u_char* ptr, u_char* cnct) {
|
|
||||||
u_char ch;
|
u_char ch;
|
||||||
u_char* p;
|
u_char* p;
|
||||||
int l;
|
int l;
|
||||||
|
|
@ -408,8 +398,7 @@ srch_kurai1(SJ4_CONTEXT u_char* ptr, u_char* cnct) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void srch_kurai2(SJ4_CONTEXT u_char* ptr, u_char* cnct) {
|
||||||
srch_kurai2(SJ4_CONTEXT u_char* ptr, u_char* cnct) {
|
|
||||||
u_char ch;
|
u_char ch;
|
||||||
u_char* p;
|
u_char* p;
|
||||||
int l;
|
int l;
|
||||||
|
|
@ -465,8 +454,7 @@ srch_kurai2(SJ4_CONTEXT u_char* ptr, u_char* cnct) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void srch_number2(SJ4_CONTEXT u_char* p) {
|
||||||
srch_number2(SJ4_CONTEXT u_char* p) {
|
|
||||||
u_char ch;
|
u_char ch;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
|
@ -514,8 +502,7 @@ srch_number2(SJ4_CONTEXT u_char* p) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void srchnum_sub(SJ4_CONTEXT u_char* p) {
|
||||||
srchnum_sub(SJ4_CONTEXT u_char* p) {
|
|
||||||
suuji_yptr = p;
|
suuji_yptr = p;
|
||||||
|
|
||||||
suuji_comma = suuji_keta = 0;
|
suuji_comma = suuji_keta = 0;
|
||||||
|
|
|
||||||
|
|
@ -126,8 +126,7 @@ int study(SJ4_CONTEXT STDYOUT* stdy) {
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
STDYIN*
|
STDYIN* srchstdy(SJ4_CONTEXT TypeDicSeg seg, TypeDicOfs ofs, TypeDicID dicid) {
|
||||||
srchstdy(SJ4_CONTEXT TypeDicSeg seg, TypeDicOfs ofs, TypeDicID dicid) {
|
|
||||||
int high;
|
int high;
|
||||||
int mid;
|
int mid;
|
||||||
int low;
|
int low;
|
||||||
|
|
|
||||||
|
|
@ -67,9 +67,7 @@ void wakachi(SJ4_CONTEXT2) {
|
||||||
|
|
||||||
if(Chrtbl[*(next - 1)] & TAI_KGU)
|
if(Chrtbl[*(next - 1)] & TAI_KGU)
|
||||||
srchfzk(SJ4_CONTEXT_PASS jrec, next, R_DAIMEISI, 0);
|
srchfzk(SJ4_CONTEXT_PASS jrec, next, R_DAIMEISI, 0);
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
|
|
||||||
if(!(jrec = argjrec(SJ4_CONTEXT_PASS 0, (JREC*)NULL))) return;
|
if(!(jrec = argjrec(SJ4_CONTEXT_PASS 0, (JREC*)NULL))) return;
|
||||||
jrec->jclass = C_WAKACHI;
|
jrec->jclass = C_WAKACHI;
|
||||||
|
|
|
||||||
|
|
@ -726,8 +726,7 @@ int kstradd(wchar16_t** cp, wchar16_t* kstr, int len) {
|
||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
|
|
||||||
RkTablW16*
|
RkTablW16* mktable(wchar16_t* key, int len) {
|
||||||
mktable(wchar16_t* key, int len) {
|
|
||||||
int i;
|
int i;
|
||||||
RkTablW16 *nrktp, *orktp;
|
RkTablW16 *nrktp, *orktp;
|
||||||
RkTablW16* rktp;
|
RkTablW16* rktp;
|
||||||
|
|
|
||||||
|
|
@ -217,11 +217,9 @@ int sj_addten(u_short prefix, u_short c) {
|
||||||
u_short c1, cc;
|
u_short c1, cc;
|
||||||
|
|
||||||
cc = 0;
|
cc = 0;
|
||||||
if((c == ZEN_DTEN || c == ZEN_HDTEN) &&
|
if((c == ZEN_DTEN || c == ZEN_HDTEN) && (sj_ishira(prefix) || sj_iskata(prefix))) {
|
||||||
(sj_ishira(prefix) || sj_iskata(prefix))) {
|
|
||||||
c1 = sj_zen2han(prefix);
|
c1 = sj_zen2han(prefix);
|
||||||
if((c1 >= KANA_KA && c1 < KANA_NA) ||
|
if((c1 >= KANA_KA && c1 < KANA_NA) || (c1 >= KANA_HA && c1 < KANA_MA)) {
|
||||||
(c1 >= KANA_HA && c1 < KANA_MA)) {
|
|
||||||
if(c == ZEN_DTEN)
|
if(c == ZEN_DTEN)
|
||||||
cc = prefix + 1;
|
cc = prefix + 1;
|
||||||
else if(c == ZEN_HDTEN && c1 >= KANA_HA)
|
else if(c == ZEN_HDTEN && c1 >= KANA_HA)
|
||||||
|
|
|
||||||
|
|
@ -120,8 +120,7 @@ int sj4_wsncmp16(wchar16_t* ws1, wchar16_t* ws2, int n) {
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
wchar16_t*
|
wchar16_t* sj4_wscpy16(wchar16_t* ws1, wchar16_t* ws2) {
|
||||||
sj4_wscpy16(wchar16_t* ws1, wchar16_t* ws2) {
|
|
||||||
wchar16_t* ws;
|
wchar16_t* ws;
|
||||||
|
|
||||||
if(!ws2) return NULL;
|
if(!ws2) return NULL;
|
||||||
|
|
@ -134,8 +133,7 @@ sj4_wscpy16(wchar16_t* ws1, wchar16_t* ws2) {
|
||||||
return ws1;
|
return ws1;
|
||||||
}
|
}
|
||||||
|
|
||||||
wchar16_t*
|
wchar16_t* sj4_wsncpy16(wchar16_t* ws1, wchar16_t* ws2, int n) {
|
||||||
sj4_wsncpy16(wchar16_t* ws1, wchar16_t* ws2, int n) {
|
|
||||||
wchar16_t* ws;
|
wchar16_t* ws;
|
||||||
int i = 0;
|
int i = 0;
|
||||||
|
|
||||||
|
|
@ -150,8 +148,7 @@ sj4_wsncpy16(wchar16_t* ws1, wchar16_t* ws2, int n) {
|
||||||
return ws1;
|
return ws1;
|
||||||
}
|
}
|
||||||
|
|
||||||
wchar16_t*
|
wchar16_t* sj4_wscat16(wchar16_t* ws1, wchar16_t* ws2) {
|
||||||
sj4_wscat16(wchar16_t* ws1, wchar16_t* ws2) {
|
|
||||||
wchar16_t* ws;
|
wchar16_t* ws;
|
||||||
|
|
||||||
if(!ws1) return NULL;
|
if(!ws1) return NULL;
|
||||||
|
|
@ -168,8 +165,7 @@ sj4_wscat16(wchar16_t* ws1, wchar16_t* ws2) {
|
||||||
return ws1;
|
return ws1;
|
||||||
}
|
}
|
||||||
|
|
||||||
wchar16_t
|
wchar16_t sj4_euc2wc16(unsigned int code) {
|
||||||
sj4_euc2wc16(unsigned int code) {
|
|
||||||
wchar16_t wc = 0;
|
wchar16_t wc = 0;
|
||||||
|
|
||||||
if(((code >> 16) & 0xff) == SS3) {
|
if(((code >> 16) & 0xff) == SS3) {
|
||||||
|
|
@ -183,8 +179,7 @@ sj4_euc2wc16(unsigned int code) {
|
||||||
return wc;
|
return wc;
|
||||||
}
|
}
|
||||||
|
|
||||||
wchar16_t
|
wchar16_t sj4_sjis2wc16(unsigned int code) {
|
||||||
sj4_sjis2wc16(unsigned int code) {
|
|
||||||
unsigned short ch;
|
unsigned short ch;
|
||||||
|
|
||||||
if((code >> 8) & 0xff) {
|
if((code >> 8) & 0xff) {
|
||||||
|
|
@ -197,8 +192,7 @@ sj4_sjis2wc16(unsigned int code) {
|
||||||
return (sj4_euc2wc16(ch));
|
return (sj4_euc2wc16(ch));
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned int
|
unsigned int sj4_wc2euc16(wchar16_t wc) {
|
||||||
sj4_wc2euc16(wchar16_t wc) {
|
|
||||||
unsigned int code = 0;
|
unsigned int code = 0;
|
||||||
unsigned char tmp;
|
unsigned char tmp;
|
||||||
|
|
||||||
|
|
@ -220,8 +214,7 @@ sj4_wc2euc16(wchar16_t wc) {
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned int
|
unsigned int sj4_wc2sjis16(wchar16_t wc) {
|
||||||
sj4_wc2sjis16(wchar16_t wc) {
|
|
||||||
unsigned int ch;
|
unsigned int ch;
|
||||||
|
|
||||||
ch = sj4_wc2euc16(wc);
|
ch = sj4_wc2euc16(wc);
|
||||||
|
|
|
||||||
|
|
@ -89,13 +89,9 @@ int cnvhinsi(u_char* buf) {
|
||||||
|
|
||||||
if(i < 0) {
|
if(i < 0) {
|
||||||
max = mid - 1;
|
max = mid - 1;
|
||||||
}
|
} else if(i > 0) {
|
||||||
|
|
||||||
else if(i > 0) {
|
|
||||||
min = mid + 1;
|
min = mid + 1;
|
||||||
}
|
} else {
|
||||||
|
|
||||||
else {
|
|
||||||
return (gramtbl[mid].code);
|
return (gramtbl[mid].code);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -37,8 +37,7 @@ typedef struct filelist {
|
||||||
|
|
||||||
static FileList* flist = NULL;
|
static FileList* flist = NULL;
|
||||||
|
|
||||||
static char*
|
static char* get_fname(FILE* fp) {
|
||||||
get_fname(FILE* fp) {
|
|
||||||
FileList* p;
|
FileList* p;
|
||||||
|
|
||||||
for(p = flist; p; p = p->next)
|
for(p = flist; p; p = p->next)
|
||||||
|
|
@ -109,8 +108,7 @@ long Fsize(char* filename) {
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
size_t
|
size_t Fread(char* p, int s, int n, FILE* fp) {
|
||||||
Fread(char* p, int s, int n, FILE* fp) {
|
|
||||||
if(fread(p, s, n, fp) == n) return n;
|
if(fread(p, s, n, fp) == n) return n;
|
||||||
|
|
||||||
printf("!\n");
|
printf("!\n");
|
||||||
|
|
@ -119,8 +117,7 @@ Fread(char* p, int s, int n, FILE* fp) {
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
size_t
|
size_t Fwrite(char* p, int s, int n, FILE* fp) {
|
||||||
Fwrite(char* p, int s, int n, FILE* fp) {
|
|
||||||
if(fwrite(p, s, n, fp) == n) return n;
|
if(fwrite(p, s, n, fp) == n) return n;
|
||||||
|
|
||||||
fprintf(stderr, "Write error in %s\n", get_fname(fp));
|
fprintf(stderr, "Write error in %s\n", get_fname(fp));
|
||||||
|
|
|
||||||
|
|
@ -54,8 +54,7 @@ int check_hindo(u_char* ptr, int len) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static AssyukuRec*
|
static AssyukuRec* makeassyuku(int num) {
|
||||||
makeassyuku(int num) {
|
|
||||||
AssyukuRec* arec;
|
AssyukuRec* arec;
|
||||||
|
|
||||||
arec = (AssyukuRec*)Malloc(sizeof(AssyukuRec));
|
arec = (AssyukuRec*)Malloc(sizeof(AssyukuRec));
|
||||||
|
|
@ -71,15 +70,13 @@ makeassyuku(int num) {
|
||||||
return arec;
|
return arec;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int assyuku_len(HindoRec* hrec) {
|
||||||
assyuku_len(HindoRec* hrec) {
|
|
||||||
int org;
|
int org;
|
||||||
int old;
|
int old;
|
||||||
int new;
|
int new;
|
||||||
OffsetRec* p;
|
OffsetRec* p;
|
||||||
|
|
||||||
if(((*(hrec->kptr) & KANJIMODEMASK) == OFFSETASSYUKU) &&
|
if(((*(hrec->kptr) & KANJIMODEMASK) == OFFSETASSYUKU) && (hrec->klen == 2)) {
|
||||||
(hrec->klen == 2)) {
|
|
||||||
p = real_ofsrec(hrec->kptr);
|
p = real_ofsrec(hrec->kptr);
|
||||||
org = check_hindo(p->kptr, p->klen);
|
org = check_hindo(p->kptr, p->klen);
|
||||||
old = p->klen * org + 2 * (hrec->exist + hrec->hindo);
|
old = p->klen * org + 2 * (hrec->exist + hrec->hindo);
|
||||||
|
|
@ -91,8 +88,7 @@ assyuku_len(HindoRec* hrec) {
|
||||||
return (old - new);
|
return (old - new);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void set_assyuku(HindoRec* hrec) {
|
||||||
set_assyuku(HindoRec* hrec) {
|
|
||||||
AssyukuRec* arec;
|
AssyukuRec* arec;
|
||||||
AssyukuRec* aprev;
|
AssyukuRec* aprev;
|
||||||
int len;
|
int len;
|
||||||
|
|
@ -131,8 +127,7 @@ set_assyuku(HindoRec* hrec) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void reset_assyuku(HindoRec* hrec) {
|
||||||
reset_assyuku(HindoRec* hrec) {
|
|
||||||
AssyukuRec* arec;
|
AssyukuRec* arec;
|
||||||
AssyukuRec* aptr;
|
AssyukuRec* aptr;
|
||||||
AssyukuRec* aprev;
|
AssyukuRec* aprev;
|
||||||
|
|
@ -187,8 +182,7 @@ reset_assyuku(HindoRec* hrec) {
|
||||||
hrec->anext = NULL;
|
hrec->anext = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static HindoRec*
|
static HindoRec* makehindo(u_char* ptr, int len, int alen) {
|
||||||
makehindo(u_char* ptr, int len, int alen) {
|
|
||||||
HindoRec* hrec;
|
HindoRec* hrec;
|
||||||
u_char* p;
|
u_char* p;
|
||||||
|
|
||||||
|
|
@ -220,8 +214,7 @@ makehindo(u_char* ptr, int len, int alen) {
|
||||||
return hrec;
|
return hrec;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void set_hindo(u_char* ptr, int len, int alen) {
|
||||||
set_hindo(u_char* ptr, int len, int alen) {
|
|
||||||
HindoRec* hrec;
|
HindoRec* hrec;
|
||||||
int low, high, mid;
|
int low, high, mid;
|
||||||
int i;
|
int i;
|
||||||
|
|
@ -278,8 +271,7 @@ set_hindo(u_char* ptr, int len, int alen) {
|
||||||
set_assyuku(hrec);
|
set_assyuku(hrec);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void reset_hindo(u_char* p, int l) {
|
||||||
reset_hindo(u_char* p, int l) {
|
|
||||||
HindoRec* hrec;
|
HindoRec* hrec;
|
||||||
int low, high, mid;
|
int low, high, mid;
|
||||||
int i;
|
int i;
|
||||||
|
|
@ -376,8 +368,7 @@ void knjhnd_reset(u_char* p, int l) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int check_assyuku(HindoRec* p, HindoRec* q) {
|
||||||
check_assyuku(HindoRec* p, HindoRec* q) {
|
|
||||||
u_char ptmp[128], qtmp[128];
|
u_char ptmp[128], qtmp[128];
|
||||||
int plen;
|
int plen;
|
||||||
int qlen;
|
int qlen;
|
||||||
|
|
|
||||||
|
|
@ -38,8 +38,7 @@ typedef struct div_list {
|
||||||
struct div_list* child;
|
struct div_list* child;
|
||||||
} DivList;
|
} DivList;
|
||||||
|
|
||||||
static void
|
static void free_divlist(DivList* p) {
|
||||||
free_divlist(DivList* p) {
|
|
||||||
DivList* q;
|
DivList* q;
|
||||||
|
|
||||||
while(p) {
|
while(p) {
|
||||||
|
|
@ -63,8 +62,7 @@ make_divrec() {
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int make_divlist(DivList* parent, u_char* knj, int len) {
|
||||||
make_divlist(DivList* parent, u_char* knj, int len) {
|
|
||||||
int i, j;
|
int i, j;
|
||||||
int num;
|
int num;
|
||||||
int minlen = 0;
|
int minlen = 0;
|
||||||
|
|
@ -140,8 +138,7 @@ make_divlist(DivList* parent, u_char* knj, int len) {
|
||||||
return minlen;
|
return minlen;
|
||||||
}
|
}
|
||||||
|
|
||||||
u_char*
|
u_char* knjofscvt(u_char* ptr, int len, int* ret) {
|
||||||
knjofscvt(u_char* ptr, int len, int* ret) {
|
|
||||||
int i;
|
int i;
|
||||||
u_char *p, *q;
|
u_char *p, *q;
|
||||||
DivList parent, *dl;
|
DivList parent, *dl;
|
||||||
|
|
@ -172,8 +169,7 @@ knjofscvt(u_char* ptr, int len, int* ret) {
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
u_char*
|
u_char* knjcvt(u_char* ptr, int len, int* ret) {
|
||||||
knjcvt(u_char* ptr, int len, int* ret) {
|
|
||||||
int i;
|
int i;
|
||||||
u_char *p, *q;
|
u_char *p, *q;
|
||||||
DivList parent, *dl;
|
DivList parent, *dl;
|
||||||
|
|
|
||||||
|
|
@ -38,8 +38,7 @@
|
||||||
|
|
||||||
static DouonRec* drectmp = NULL;
|
static DouonRec* drectmp = NULL;
|
||||||
|
|
||||||
static void
|
static void clearklist(KanjiRec* krec) {
|
||||||
clearklist(KanjiRec* krec) {
|
|
||||||
KanjiRec* p;
|
KanjiRec* p;
|
||||||
|
|
||||||
while(krec) {
|
while(krec) {
|
||||||
|
|
@ -53,8 +52,7 @@ clearklist(KanjiRec* krec) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void clearhlist(HinsiRec* hrec) {
|
||||||
clearhlist(HinsiRec* hrec) {
|
|
||||||
HinsiRec* p;
|
HinsiRec* p;
|
||||||
|
|
||||||
while(hrec) {
|
while(hrec) {
|
||||||
|
|
@ -85,8 +83,7 @@ void clear_list() {
|
||||||
douon_ptr = NULL;
|
douon_ptr = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static u_char*
|
static u_char* makekanji(int* yomi, int* kanji, int* atr, int* len) {
|
||||||
makekanji(int* yomi, int* kanji, int* atr, int* len) {
|
|
||||||
int kana[MAXYOMILENGTH + 1];
|
int kana[MAXYOMILENGTH + 1];
|
||||||
u_char ktmp[MAXKANJILENGTH * 3 + MAXATRNUMBER * 2 + 1];
|
u_char ktmp[MAXKANJILENGTH * 3 + MAXATRNUMBER * 2 + 1];
|
||||||
int i;
|
int i;
|
||||||
|
|
@ -163,8 +160,7 @@ makekanji(int* yomi, int* kanji, int* atr, int* len) {
|
||||||
return q;
|
return q;
|
||||||
}
|
}
|
||||||
|
|
||||||
static u_char*
|
static u_char* makeyomi(int* yomi) {
|
||||||
makeyomi(int* yomi) {
|
|
||||||
u_char tmp[MAXYOMILENGTH + 1];
|
u_char tmp[MAXYOMILENGTH + 1];
|
||||||
int i;
|
int i;
|
||||||
int j;
|
int j;
|
||||||
|
|
@ -199,8 +195,7 @@ makeyomi(int* yomi) {
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
static KanjiRec*
|
static KanjiRec* make_krec(u_char* kcode, int klen) {
|
||||||
make_krec(u_char* kcode, int klen) {
|
|
||||||
KanjiRec* krec;
|
KanjiRec* krec;
|
||||||
|
|
||||||
krec = (KanjiRec*)Malloc(sizeof(KanjiRec));
|
krec = (KanjiRec*)Malloc(sizeof(KanjiRec));
|
||||||
|
|
@ -218,8 +213,7 @@ make_krec(u_char* kcode, int klen) {
|
||||||
return krec;
|
return krec;
|
||||||
}
|
}
|
||||||
|
|
||||||
static HinsiRec*
|
static HinsiRec* make_hrec(int hinsi) {
|
||||||
make_hrec(int hinsi) {
|
|
||||||
HinsiRec* hrec;
|
HinsiRec* hrec;
|
||||||
|
|
||||||
hrec = (HinsiRec*)Malloc(sizeof(HinsiRec));
|
hrec = (HinsiRec*)Malloc(sizeof(HinsiRec));
|
||||||
|
|
@ -235,8 +229,7 @@ make_hrec(int hinsi) {
|
||||||
return hrec;
|
return hrec;
|
||||||
}
|
}
|
||||||
|
|
||||||
static DouonRec*
|
static DouonRec* make_drec(u_char* ycode) {
|
||||||
make_drec(u_char* ycode) {
|
|
||||||
DouonRec* drec;
|
DouonRec* drec;
|
||||||
|
|
||||||
drec = (DouonRec*)Malloc(sizeof(DouonRec));
|
drec = (DouonRec*)Malloc(sizeof(DouonRec));
|
||||||
|
|
@ -253,8 +246,7 @@ make_drec(u_char* ycode) {
|
||||||
return drec;
|
return drec;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int diff_ylen(DouonRec* drec) {
|
||||||
diff_ylen(DouonRec* drec) {
|
|
||||||
DouonRec* dptr;
|
DouonRec* dptr;
|
||||||
DouonRec* dprev;
|
DouonRec* dprev;
|
||||||
u_char* p1;
|
u_char* p1;
|
||||||
|
|
@ -301,8 +293,7 @@ diff_ylen(DouonRec* drec) {
|
||||||
return ylen;
|
return ylen;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int douon_knj(DouonRec* drec) {
|
||||||
douon_knj(DouonRec* drec) {
|
|
||||||
int i;
|
int i;
|
||||||
int len = 0;
|
int len = 0;
|
||||||
u_char* p;
|
u_char* p;
|
||||||
|
|
@ -328,8 +319,7 @@ douon_knj(DouonRec* drec) {
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void make_d_list(DouonRec* drec) {
|
||||||
make_d_list(DouonRec* drec) {
|
|
||||||
DouonRec *dptr, *dprev;
|
DouonRec *dptr, *dprev;
|
||||||
HinsiRec* hptr;
|
HinsiRec* hptr;
|
||||||
KanjiRec* kptr;
|
KanjiRec* kptr;
|
||||||
|
|
@ -485,8 +475,7 @@ void makelist(int* yomi, int* kanji, int hinsi, int* atr) {
|
||||||
|
|
||||||
if(hrec->hinsi == hinsi) {
|
if(hrec->hinsi == hinsi) {
|
||||||
for(krec = hrec->krec; krec; krec = krec->knext) {
|
for(krec = hrec->krec; krec; krec = krec->knext) {
|
||||||
if((krec->klen == klen) &&
|
if((krec->klen == klen) && !memcmp(krec->kptr, kcode, klen)) {
|
||||||
!memcmp(krec->kptr, kcode, klen)) {
|
|
||||||
fprintf(stderr, DUPECOMBINEDWORD);
|
fprintf(stderr, DUPECOMBINEDWORD);
|
||||||
fprintf(stderr, DUPECOMBINEDWORDREAD);
|
fprintf(stderr, DUPECOMBINEDWORDREAD);
|
||||||
output_int(stderr, yomi);
|
output_int(stderr, yomi);
|
||||||
|
|
|
||||||
|
|
@ -36,8 +36,7 @@ static u_char mindex[MAININDEXLENGTH];
|
||||||
static int idxpos = 0;
|
static int idxpos = 0;
|
||||||
static int idxnum = 0;
|
static int idxnum = 0;
|
||||||
|
|
||||||
static u_char*
|
static u_char* set_ofsask(u_char* src, u_char* dst) {
|
||||||
set_ofsask(u_char* src, u_char* dst) {
|
|
||||||
int len;
|
int len;
|
||||||
u_char* ptr;
|
u_char* ptr;
|
||||||
OffsetRec* ofsrec;
|
OffsetRec* ofsrec;
|
||||||
|
|
|
||||||
|
|
@ -32,8 +32,7 @@
|
||||||
|
|
||||||
#include "sj4mkdic.h"
|
#include "sj4mkdic.h"
|
||||||
|
|
||||||
static OffsetRec*
|
static OffsetRec* makeoffset(u_char* ptr, int len, int ofs) {
|
||||||
makeoffset(u_char* ptr, int len, int ofs) {
|
|
||||||
OffsetRec* orec;
|
OffsetRec* orec;
|
||||||
u_char* p;
|
u_char* p;
|
||||||
|
|
||||||
|
|
@ -125,8 +124,7 @@ void clear_ofsrec() {
|
||||||
ofsrec_num = 0;
|
ofsrec_num = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
OffsetRec*
|
OffsetRec* real_ofsrec(u_char* ptr) {
|
||||||
real_ofsrec(u_char* ptr) {
|
|
||||||
int ofs;
|
int ofs;
|
||||||
int i;
|
int i;
|
||||||
OffsetRec** p;
|
OffsetRec** p;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue