Merge egg-980316.
[elisp/egg.git] / egg / wnnrpc.el
index ee35e72..723453a 100644 (file)
     "Macro for WNN constants."
     (cond ((eq c 'JS_VERSION)             0)
          ((eq c 'JS_OPEN)                1)
-         ((eq c 'JS_CLOSE)               3)
-         ((eq c 'JS_CONNECT)             5)
-         ((eq c 'JS_DISCONNECT)          6)
-         ((eq c 'JS_ENV_EXIST)           7)
-         ((eq c 'JS_ENV_STICKY)          8)
-         ((eq c 'JS_ENV_UNSTICKY)        9)
-         ((eq c 'JS_KANREN)             17)
-         ((eq c 'JS_KANTAN_SHO)         18)
-         ((eq c 'JS_KANZEN_SHO)         19)
-         ((eq c 'JS_KANTAN_DAI)         20)
-         ((eq c 'JS_KANZEN_DAI)         21)
-         ((eq c 'JS_HINDO_SET)          24)
-         ((eq c 'JS_DIC_ADD)            33)
-         ((eq c 'JS_DIC_DELETE)         34)
-         ((eq c 'JS_DIC_USE)            35)
-         ((eq c 'JS_DIC_LIST)           36)
-         ((eq c 'JS_DIC_INFO)           37)
-         ((eq c 'JS_FUZOKUGO_SET)       41)
-         ((eq c 'JS_FUZOKUGO_GET)       48)
-         ((eq c 'JS_WORD_ADD)           49)
-         ((eq c 'JS_WORD_DELETE)        50)
-         ((eq c 'JS_WORD_SEARCH)        51)
-         ((eq c 'JS_WORD_SEARCH_BY_ENV) 52)
-         ((eq c 'JS_WORD_INFO)          53)
-         ((eq c 'JS_WORD_COMMENT_SET)   54)
-         ((eq c 'JS_PARAM_SET)          65)
-         ((eq c 'JS_PARAM_GET)          66)
-         ((eq c 'JS_MKDIR)              81)
-         ((eq c 'JS_ACCESS)             82)
-         ((eq c 'JS_WHO)                83)
-         ((eq c 'JS_ENV_LIST)           85)
-         ((eq c 'JS_FILE_LIST_ALL)      86)
-         ((eq c 'JS_DIC_LIST_ALL)       87)
-         ((eq c 'JS_FILE_READ)          97)
-         ((eq c 'JS_FILE_WRITE)         98)
-         ((eq c 'JS_FILE_SEND)          99)
-         ((eq c 'JS_FILE_RECEIVE)      100)
-         ((eq c 'JS_HINDO_FILE_CREATE) 101)
-         ((eq c 'JS_DIC_FILE_CREATE)   102)
-         ((eq c 'JS_FILE_REMOVE)       103)
-         ((eq c 'JS_FILE_LIST)         104)
-         ((eq c 'JS_FILE_INFO)         105)
-         ((eq c 'JS_FILE_LOADED)       106)
-         ((eq c 'JS_FILE_LOADED_LOCAL) 107)
-         ((eq c 'JS_FILE_DISCARD)      108)
-         ((eq c 'JS_FILE_COMMENT_SET)  109)
-         ((eq c 'JS_FILE_PASSWORD)     110)
-         ((eq c 'JS_FILE_STAT)         111)
-         ((eq c 'JS_KILL)              112)
-         ((eq c 'JS_HINSI_LIST)        114)
-         ((eq c 'JS_HINSI_NAME)        115)
-         ((eq c 'JS_HINSI_NUMBER)      116)
-         ((eq c 'JS_HINSI_DICTS)       117)
-         ((eq c 'JS_HINSI_TABLE_SET)   118)
+          ((eq c 'JS_CLOSE)               3)
+          ((eq c 'JS_CONNECT)             5)
+          ((eq c 'JS_DISCONNECT)          6)
+          ((eq c 'JS_ENV_EXIST)           7)
+          ((eq c 'JS_ENV_STICKY)          8)
+          ((eq c 'JS_ENV_UNSTICKY)        9)
+          ((eq c 'JS_KANREN)             17)
+          ((eq c 'JS_KANTAN_SHO)         18)
+          ((eq c 'JS_KANZEN_SHO)         19)
+          ((eq c 'JS_KANTAN_DAI)         20)
+          ((eq c 'JS_KANZEN_DAI)         21)
+          ((eq c 'JS_HINDO_SET)          24)
+          ((eq c 'JS_DIC_ADD)            33)
+          ((eq c 'JS_DIC_DELETE)         34)
+          ((eq c 'JS_DIC_USE)            35)
+          ((eq c 'JS_DIC_LIST)           36)
+          ((eq c 'JS_DIC_INFO)           37)
+          ((eq c 'JS_FUZOKUGO_SET)       41)
+          ((eq c 'JS_FUZOKUGO_GET)       48)
+          ((eq c 'JS_WORD_ADD)           49)
+          ((eq c 'JS_WORD_DELETE)        50)
+          ((eq c 'JS_WORD_SEARCH)        51)
+          ((eq c 'JS_WORD_SEARCH_BY_ENV) 52)
+          ((eq c 'JS_WORD_INFO)          53)
+          ((eq c 'JS_WORD_COMMENT_SET)   54)
+          ((eq c 'JS_PARAM_SET)          65)
+          ((eq c 'JS_PARAM_GET)          66)
+          ((eq c 'JS_MKDIR)              81)
+          ((eq c 'JS_ACCESS)             82)
+          ((eq c 'JS_WHO)                83)
+          ((eq c 'JS_ENV_LIST)           85)
+          ((eq c 'JS_FILE_LIST_ALL)      86)
+          ((eq c 'JS_DIC_LIST_ALL)       87)
+          ((eq c 'JS_FILE_READ)          97)
+          ((eq c 'JS_FILE_WRITE)         98)
+          ((eq c 'JS_FILE_SEND)          99)
+          ((eq c 'JS_FILE_RECEIVE)      100)
+          ((eq c 'JS_HINDO_FILE_CREATE) 101)
+          ((eq c 'JS_DIC_FILE_CREATE)   102)
+          ((eq c 'JS_FILE_REMOVE)       103)
+          ((eq c 'JS_FILE_LIST)         104)
+          ((eq c 'JS_FILE_INFO)         105)
+          ((eq c 'JS_FILE_LOADED)       106)
+          ((eq c 'JS_FILE_LOADED_LOCAL) 107)
+          ((eq c 'JS_FILE_DISCARD)      108)
+          ((eq c 'JS_FILE_COMMENT_SET)  109)
+          ((eq c 'JS_FILE_PASSWORD)     110)
+          ((eq c 'JS_FILE_STAT)         111)
+          ((eq c 'JS_KILL)              112)
+          ((eq c 'JS_HINSI_LIST)        114)
+          ((eq c 'JS_HINSI_NAME)        115)
+          ((eq c 'JS_HINSI_NUMBER)      116)
+          ((eq c 'JS_HINSI_DICTS)       117)
+          ((eq c 'JS_HINSI_TABLE_SET)   118)
 
          ((eq c 'JLIB_VERSION) 16387)  ; 0x4003
 
          ((eq c 'WNN_MAX_FILE_OF_AN_ENV)  60))))
 
 (defconst wnnrpc-error-message
-  '((Japanese .
+  '(("Japanese" .
      [
       nil
       "\e$B%U%!%$%k$,B8:_$7$^$;$s\e(B"
       "\e$B<-=q$KIQEY%U%!%$%k$,$D$$$F$$$^$;$s\e(B"
       "\e$B%Q%9%o!<%I$N%U%!%$%k$,:n@.=PMh$^$;$s\e(B"
       ])
-    (Chinese-GB .
+    ("Chinese-GB" .
      [
       nil
       "\e$AND<~2;4fTZ\e(B"
       "\e$AWV5d5DF56HND<~C;SP\e(B"
       "password\e$A5DND<~C;SP44=(3v@4\e(B"
       ])
-    (Chinese-CNS .
+    ("Chinese-CNS" .
      [
       nil
       "\e$(GEFG5DbGtGc\e(B"
       "\e$(GGsL(N{s"PyEFG5JtH4\e(B"
       "password\e$(GN{EFG5JtH4^6PzExKt\e(B"
       ])
-    (Korean .
+    ("Korean" .
      [
       nil
       "\e$(CH-@O@L\e(B \e$(CA8@gGOAv\e(B \e$(C>J=@4O4Y\e(B"
 
 (defun wnnrpc-get-error-message (errno)
   "Return error message string specified by ERRNO."
-  (let ((msg (cdr (or (assoc egg-default-language wnnrpc-error-message)
-                     (assoc its-current-language wnnrpc-error-message)
-                     (assoc 'Japanese wnnrpc-error-message)))))
-    (or (and (< errno (length msg)) (aref msg errno))
-       (format "#%d" errno))))
+  (let ((msg (or (assoc egg-default-language wnnrpc-error-message)
+                (assoc its-current-language wnnrpc-error-message)
+                (assoc "Japanese" wnnrpc-error-message))))
+    (or (aref (cdr msg) errno) (format "#%d" errno))))
 
 (defmacro wnnrpc-call-with-environment (e vlist send-expr &rest receive-exprs)
   (let ((v (append
@@ -1354,7 +1353,7 @@ HINSHI and FUZOKU are information of preceding bunsetsu."
            (concat (system-name)
                    "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0") 0 16)))
       (comm-call-with-proc proc (result)
-       (comm-format (u U U U s) (wnn-const JS_FILE_LOADED_LOCAL)
+        (comm-format (u U U U s) (wnn-const JS_FILE_LOADED_LOCAL)
                     time dev inode padded-hostname)
        (comm-unpack (u) result)
        result))))