X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2Fmule-wnnfns.c;h=e6d2a347222c2e4c688d782824e8da4485afb68c;hb=557a8105b1bfe98e9a52f16fc2d4b10107f66b19;hp=1569365aed2f381db8cf4e9930614186e584ea95;hpb=77dcef404dc78635f6ffa8f71a803d2bc7cc8921;p=chise%2Fxemacs-chise.git diff --git a/src/mule-wnnfns.c b/src/mule-wnnfns.c index 1569365..e6d2a34 100644 --- a/src/mule-wnnfns.c +++ b/src/mule-wnnfns.c @@ -1,4 +1,4 @@ -/* +/* -*- coding: iso-2022-jp -*- Copyright (C) 1995 Free Software Foundation, Inc. Copyright (C) 1995 Sun Microsystems, Inc. @@ -1066,7 +1066,6 @@ or wnn_kaikakko and the CDR contains the value. { int rc; struct wnn_param param; - Lisp_Object tail, key, val; int snum; if ((snum = check_wnn_server_type ()) == -1) return Qnil; @@ -1074,34 +1073,36 @@ or wnn_kaikakko and the CDR contains the value. rc = jl_param_get (wnnfns_buf[snum], ¶m); if (rc < 0) return Qnil; - EXTERNAL_PROPERTY_LIST_LOOP (tail, key, val, Vsetvalues_alist) - { - int setval; - CHECK_INT (val); - setval = XINT (val); - if (EQ (key, Qwnn_n)) param.n = setval; - else if (EQ (key, Qwnn_nsho)) param.nsho = setval; - else if (EQ (key, Qwnn_hindo)) param.p1 = setval; - else if (EQ (key, Qwnn_len)) param.p2 = setval; - else if (EQ (key, Qwnn_jiri)) param.p3 = setval; - else if (EQ (key, Qwnn_flag)) param.p4 = setval; - else if (EQ (key, Qwnn_jisho)) param.p5 = setval; - else if (EQ (key, Qwnn_sbn)) param.p6 = setval; - else if (EQ (key, Qwnn_dbn_len)) param.p7 = setval; - else if (EQ (key, Qwnn_sbn_cnt)) param.p8 = setval; - else if (EQ (key, Qwnn_suuji)) param.p9 = setval; - else if (EQ (key, Qwnn_kana)) param.p10 = setval; - else if (EQ (key, Qwnn_eisuu)) param.p11 = setval; - else if (EQ (key, Qwnn_kigou)) param.p12 = setval; - else if (EQ (key, Qwnn_toji_kakko)) param.p13 = setval; - else if (EQ (key, Qwnn_fuzokogo)) param.p14 = setval; - else if (EQ (key, Qwnn_kaikakko)) param.p15 = setval; - else - { - signal_simple_error ("Invalid wnn keyword", key); - return Qnil; - } - } + { + EXTERNAL_PROPERTY_LIST_LOOP_3 (key, val, Vsetvalues_alist) + { + int setval; + CHECK_INT (val); + setval = XINT (val); + if (EQ (key, Qwnn_n)) param.n = setval; + else if (EQ (key, Qwnn_nsho)) param.nsho = setval; + else if (EQ (key, Qwnn_hindo)) param.p1 = setval; + else if (EQ (key, Qwnn_len)) param.p2 = setval; + else if (EQ (key, Qwnn_jiri)) param.p3 = setval; + else if (EQ (key, Qwnn_flag)) param.p4 = setval; + else if (EQ (key, Qwnn_jisho)) param.p5 = setval; + else if (EQ (key, Qwnn_sbn)) param.p6 = setval; + else if (EQ (key, Qwnn_dbn_len)) param.p7 = setval; + else if (EQ (key, Qwnn_sbn_cnt)) param.p8 = setval; + else if (EQ (key, Qwnn_suuji)) param.p9 = setval; + else if (EQ (key, Qwnn_kana)) param.p10 = setval; + else if (EQ (key, Qwnn_eisuu)) param.p11 = setval; + else if (EQ (key, Qwnn_kigou)) param.p12 = setval; + else if (EQ (key, Qwnn_toji_kakko)) param.p13 = setval; + else if (EQ (key, Qwnn_fuzokogo)) param.p14 = setval; + else if (EQ (key, Qwnn_kaikakko)) param.p15 = setval; + else + { + signal_simple_error ("Invalid wnn keyword", key); + return Qnil; + } + } + } #if 0 printf("wnn_n = %d\n",param.n); @@ -1875,10 +1876,23 @@ syms_of_mule_wnn (void) } void -vars_of_mule_wnn (void) +reinit_vars_of_mule_wnn (void) { int i; + for (i = 0; i < NSERVER; i++) + { + wnnfns_buf[i] = (struct wnn_buf *) 0; + wnnfns_env_norm[i] = (struct wnn_env *) 0; + wnnfns_env_rev[i] = (struct wnn_env *) 0; + } +} + +void +vars_of_mule_wnn (void) +{ + reinit_vars_of_mule_wnn (); + DEFVAR_INT ("lb-sisheng", &lb_sisheng /* Leading character for Sisheng. */ ); @@ -1901,13 +1915,6 @@ Leading character for Sisheng. Vwnn_uniq_level = Qwnn_uniq; - for (i = 0; i < NSERVER; i++) - { - wnnfns_buf[i] = (struct wnn_buf *) 0; - wnnfns_env_norm[i] = (struct wnn_env *) 0; - wnnfns_env_rev[i] = (struct wnn_env *) 0; - } - Fprovide(intern("wnn")); }