wiki:KAKASI

KAKASIメモ

kanjiio.c:getkanji()

	} else {
	    if (c1 < 0xa0) { /* C1 */
		getc1(c, c1);
	    } else if (c1 < 0xff) { /* GR */
		c->type = input_G[input_GR];
		switch(c->type) {
		  case JIS78:
		    c->c1 = c1; c->c2 = get1byte()|0x80;
		    exc78_83(c);
		  case JIS83: // <-このあたりに0xf5-0xfe, 0x8fの処理を追加すればよい
		    c->c1 = c1; c->c2 = get1byte()|0x80;
		    break;
		  default:
		    c->c1 = c1 & 0x7f;
		}
		if (c->c2 == 0xff) /* get1byte() == EOF */
		    c->type = OTHER;
	    } else if (c1 == 0xff) { /* C1 */
		c->type = OTHER; c->c1 = c1;
	    }
	}
Last modified 5 years ago Last modified on Apr 11, 2014, 4:56:44 PM