(byte_table_same_value_p): Use `internal_equal' instead of `EQ'.
[chise/xemacs-chise.git-] / src / mule-canna.c
index 839ab98..3803c9d 100644 (file)
@@ -718,7 +718,8 @@ byteLen (int bun, int len)
 }
 
 DEFUN ("canna-henkan-begin", Fcanna_henkan_begin, 1, 1, 0, /*
-¤«¤Ê´Á»úÊÑ´¹¤·¤¿·ë²Ì¤òÊÖ´Ô¤¹¤ë¡£Ê¸ÀáÀڤ꤬¤·¤Æ¤¢¤ë¡£
+Return the result of kana-to-kanji conversion.
+Clause separator is set.
 */
        (yomi))
 {
@@ -773,7 +774,7 @@ kanjiYomiList (int context, int nbun)
 }
 
 DEFUN ("canna-henkan-next", Fcanna_henkan_next, 1, 1, 0, /*
-¸õÊä°ìÍ÷¤òµá¤á¤ë¡£
+Return the list of candidates.
 */
        (bunsetsu))
 {
@@ -798,7 +799,7 @@ DEFUN ("canna-henkan-next", Fcanna_henkan_next, 1, 1, 0, /*
        }
       else
        {
-         endp = XCDR (endp) = Fcons (make_string (p, slen), Qnil);
+         endp = XCDR (res) = Fcons (make_string (p, slen), Qnil);
        }
       p += slen + 1;
     }
@@ -806,7 +807,7 @@ DEFUN ("canna-henkan-next", Fcanna_henkan_next, 1, 1, 0, /*
 }
 
 DEFUN ("canna-bunsetu-henkou", Fcanna_bunsetu_henkou, 2, 2, 0, /*
-ʸÀá¤ÎŤµ¤ò»ØÄꤹ¤ë¡£
+Specify the length of a clause.
 */
        (bunsetsu, bunlen))
 {
@@ -826,7 +827,7 @@ DEFUN ("canna-bunsetu-henkou", Fcanna_bunsetu_henkou, 2, 2, 0, /*
 }
 
 DEFUN ("canna-henkan-kakutei", Fcanna_henkan_kakutei, 2, 2, 0, /*
-¸õÊäÁªÂò¡£
+Select a candidate.
 */
        (bun, kouho))
 {
@@ -845,7 +846,7 @@ DEFUN ("canna-henkan-kakutei", Fcanna_henkan_kakutei, 2, 2, 0, /*
 }
 
 DEFUN ("canna-henkan-end", Fcanna_henkan_end, 0, 0, 0, /*
-ÊÑ´¹½ªÎ»¡£
+End conversion.
 */
        ())
 {
@@ -858,7 +859,7 @@ DEFUN ("canna-henkan-end", Fcanna_henkan_end, 0, 0, 0, /*
 }
 
 DEFUN ("canna-henkan-quit", Fcanna_henkan_quit, 0, 0, 0, /*
-ÊÑ´¹½ªÎ»¡£
+Quit conversion.
 */
        ())
 {
@@ -1776,12 +1777,12 @@ For canna
 
 /* EUC multibyte string to MULE internal string */
 
-#ifdef UTF2000
 static void
 c2mu (unsigned char *cp, int l, unsigned char *mp)
 {
-  Emchar chr;
   unsigned char        ch, *ep = cp+l;
+#ifdef UTF2000
+  Emchar chr;
 
   while ((cp < ep) && (ch = *cp++))
     {
@@ -1791,8 +1792,9 @@ c2mu (unsigned char *cp, int l, unsigned char *mp)
        }
       else if (ch == ISO_CODE_SS3)
        {
+         ch = *cp++;
          chr = MAKE_CHAR (Vcharset_japanese_jisx0212,
-                          (*cp++) & 0x7f, (*cp++) & 0x7f);
+                          ch & 0x7f, (*cp++) & 0x7f);
        }
       else if (ch & 0x80)
        {
@@ -1843,14 +1845,7 @@ c2mu (unsigned char *cp, int l, unsigned char *mp)
          *mp++ =  (chr        & 0x3f) | 0x80;
        }
     }
-  *mp = 0;
-}
 #else
-static void
-c2mu (char *cp, int l, char *mp)
-{
-  char ch, *ep = cp+l;
-
   while ((cp < ep) && (ch = *cp))
     {
       if ((unsigned char) ch == ISO_CODE_SS2)
@@ -1871,9 +1866,9 @@ c2mu (char *cp, int l, char *mp)
        }
       *mp++ = *cp++;
     }
+#endif
   *mp = 0;
 }
-#endif
 
 /* MULE internal string to EUC multibyte string */