1 1998-04-02 NIIBE Yutaka <gniibe@mri.co.jp>
3 * egg-com.el (comm-unpack-u16-string): Call string-as-multibyte.
4 (comm-unpack-mb-string): Likewise.
6 * egg.el (set-buffer-multibyte): Function for Emacs 20.2.
8 * egg/wnn.el (wnn-open): Call set-buffer-multibyte.
9 * egg/sj3.el (sj3-open): Ditto.
10 * egg/canna.el (canna-open): Ditto.
12 1998-04-02 KATAYAMA Yoshio <kate@pfu.co.jp>
15 * egg.el (egg-mark-list, egg-suppress-marking): New Variables.
16 (egg-set-face, egg-mark-modification, egg-redraw-face): New
18 * its.el (its-buffer-ins/del-SYL): Call egg-set-face.
19 (its-setup-yanked-portion): Likewise.
20 * egg-cnv.el (egg-insert-bunsetsu): Call egg-set-face.
22 * egg.el (egg-mode): set default backend.
23 * egg-mlh.el (mlh-space-bar-backward-henkan): activate input
26 1998-04-02 NIIBE Yutaka <gniibe@mri.co.jp>
28 * egg-cnv.el (egg-decide-bunsetsu): Undo changes of 03-16.
29 (egg-abort-conversion): Call egg-end-conversion.
30 (egg-decide-before-point): Call egg-end-conversion widh ABORT=NIL.
32 1998-03-16 NIIBE Yutaka <gniibe@mri.co.jp>
35 * egg/canna.el, egg/cannarpc.el: New file.
36 * Makefile (SRCS): Added.
38 * egg-cnv.el (egg-end-conversion): Add argument ABORT.
40 * egg/wnn.el (wnn-end-conversion): Follow the change of
42 * egg/sj3.el (sj3-end-conversion): Likewise.
44 1998-03-15 NIIBE Yutaka <gniibe@mri.co.jp>
46 * Makefile: Add dependencies for its-keydef.elc.
47 * egg/sj3rpc.el (sj3-open): Don't support list of hosts.
48 * its.el (its-exit-mode, its-kick-convert-region): Bug fix. Call
49 its-input-end and its-put-cursor.
50 (its-exit-mode-off-input-method): Removed.
52 1998-03-14 KATAYAMA Yoshio <kate@pfu.co.jp>
54 * docomp.el (its-keydef): Undo the changes of 03-09. its.el
57 * egg-cnv.el (egg-current-language): New valiable.
58 (egg-bunsetsu-info): Separate bunsetsu-info and lunguage.
59 (egg-conversion-backend-other-languages
60 egg-init-other-languages
61 egg-start-conversion-other-languages
62 egg-get-bunsetsu-converted-other-languages
63 egg-get-bunsetsu-source-other-languages
64 egg-list-candidates-other-languages
65 egg-get-number-of-candidates-other-languages
66 egg-get-current-candidate-number-other-languages
67 egg-get-all-candidates-other-languages
68 egg-decide-candidate-other-languages
69 egg-change-bunsetsu-length-other-languages
70 egg-end-conversion-other-languages
71 egg-fini-other-languages): New valiable and functions for
72 handling unknown language.
73 (egg-set-current-backend): Set egg-conversion-backend-other-languages
74 when backend for specified language isn't found.
75 (egg-start-reverse-conversion): New function for reverse conversion.
76 (egg-set-conversion-backend-internal): Removed.
77 (egg-set-conversion-backend): Args are changed.
78 (egg-get-conversion-face): New function for different face for
80 (egg-convert-region): Make converting text read-only. Handle
81 unknown laguages and backend opening error. Rename its-lang to
83 (egg-separate-languages): Argument use-context is added to
84 utilize context when called by its-yank. Rename its-lang to
85 egg-lang Improve speed.
86 (egg-charset-to-language): Renamed from egg-char-to-language.
87 (egg-next-part-lang egg-next-chinese-lang): Rename its-lang to
89 (egg-conversion-map): Unbind C-\ and /. Bind C-X RET XXX to
91 (egg-insert-bunsetsu): Make conversion text read-only. Separate
92 bunsetsu-info and conversion-backend.
93 (egg-insert-bunsetsu-list): Remove redundant variables.
94 (egg-beginning-of-conversion-buffer): New function.
95 (egg-end-of-conversion-buffer): New function.
96 (egg-enlarge-bunsetsu): Handle read-only text.
97 (egg-next-candidate): Handle read-only text. Bug on no candidate
99 (egg-reconvert-bunsetsu-internal egg-reverse-convert-bunsetu
100 egg-reconvert-bunsetsu): New functions for reverse conversion and
102 (egg-decide-before-point egg-abort-conversion): Handle read-only
103 text. Bug on pinyin and zhuyin mixed conversion is fixed. Allow
105 (egg-select-candidate): Handle read-only text. Bug on no candidate
108 * egg-com.el: Change coding-system from internal to iso-2022-7bit.
110 * egg-mlh.el (mlh-space-bar-backward-henkan): Disable temporally
113 * egg.el (egg-mode): Set cureent lang to conversion backend.
114 (egg-set-mode-line-title): Renamed to its-set-mode-line-title
116 (egg-check-language): Removed.
118 * egg/sj3.el (sj3-server-port): Change from defconst to defver for
120 (sj3-open sj3-get-environment): Try opening alternate servers.
121 (sj3-start-conversion): Make second argument LANGUAGE optional.
122 (egg-activate-sj3): Parameters of egg-set-conversion-backend is
125 * egg/sj3rpc.el (sj3rpc-error-message): New constant (Not yet
127 (sj3rpc-get-error-message): Check range of errno to avoid
128 args-out-ou-range error.
130 * egg/wnn.el (wnn-jport wnn-cport wnn-tport wnn-kport): New
131 variables for user customization.
132 (wnn-server-info-list wnn-server-port): Type of fourth element
133 is changed from integer to symbol.
134 (wnn-start-reverse-conversion): New function.
135 (wnn-open wnn-get-environment): Try opening alternate servers.
136 (egg-activate-wnn): Parameters of egg-set-conversion-backend is
139 * its-keydef.el (its-current-language): Moved to its.el.
140 (its-make-select-func): Remove language check (egg-check-language).
141 Add temporally mode selection.
142 (its-do-list-make-select-func): Binding of zhuyin-tw is changed to
143 `C' because conflicting zenkaku-upcase.
145 * its.el (its-current-select-func its-previous-select-func): New
146 variables for temporally mode selection.
147 (its-keydef requiring): Use eval-when to avoid error on using
149 (its-get-fence-face): New function for different face for
151 (its-put-cursor its-setup-fence-mode): Make fence read-only.
152 (its-start): Remove force-mode-line-update calling.
153 (its-restart): Add optional argument set-prop.
154 (its-self-insert-char its-backward-SYL its-forward-SYL
155 its-delete-SYL its-delete-backward-SYL its-exit-mode
156 its-delete-backward-SYL-by-keystroke its-transpose-chars
157 its-kick-convert-region its-end-of-input-buffer): Handle read-only
159 (its-state-machine): Accept special actions to handle temporally
161 (its-buffer-ins/del-SYL its-ins/del-SYL-batch): Handle read-only
162 fence. Property its-lang is renamed to egg-lang.
163 (its-get-next-state its-make-next-state): Add type check to avoid
164 wrong-type-argument error.
165 (its-keyseq-acceptable-p): Save informations of its-map to avoid
166 confusing on temporally mode selection.
167 (its-defrule-select-mode-temporally): New macro.
168 (its-kill-line its-cancel-input): New function.
169 (its-delete-backward-within-SYL): Bind its-current-language to
170 avoid confusing when undo is done beyond language change.
171 (its-yank its-yank-pop its-setup-yanked-portion): New functions.
172 (its-exit-mode-internal): Reset temporally selected mode. Allow
174 (its-kick-convert-region-or-self-insert): New function.
175 (its-translate-region): Remove text properties completly.
176 (its-set-mode-line-title): Moved from egg.el and renamed.
177 (its-select-mode-temporally its-select-previous-mode): New functions
178 for temporally mode selection.
180 * leim-list-egg.el: Secondary argument for egg-activate-sj3/wnn
183 * its/hira.el: Remove the rule for "~" which destroies the rules
184 with its-hankaku-escape.
186 * its/pinyin.el: Implement its-pinyin-cn-enable-quanjioao-alphabet
187 and its-pinyin-tw-enable-quanjioao-alphabet.
189 * its/hangul.el: Implement its-hangul-enable-quanjioao-alphabet.
191 * its/ascii.el: New file.
192 * its/erpin.el: New file.
193 * its/hankata.el: New file.
194 * its/jeonkak.el: New file.
195 * its/kata.el: New file.
196 * its/quanjiao.el: New file.
197 * its/zenkaku.el: New file.
198 * its/zhuyin.el: New file.
200 1998-03-14 NIIBE Yutaka <gniibe@mri.co.jp>
202 * egg/sj3rpc.el (sj3rpc-close): New function.
204 * egg/sj3.el (sj3bunsetsu-[sg]et-kugiri-changed): Rename from
205 sj3bunsetsu-get-stdy-down.
206 (sj3-end-conversion): Implement CLSTDY.
207 (sj3-fini): Implemented.
209 1998-03-10 NIIBE Yutaka <gniibe@mri.co.jp>
211 * egg/sj3.el (sj3-end-conversion): Implement bunsetsu study.
214 * egg/sj3rpc.el (sj3rpc-get-bunsetsu-candidates-sub): Bug fix.
215 Always add hiragana and katakana candidates.
216 (sj3-const: CLSTDY, CLSTDY_EUC): Renamed from END and END_EUC
217 according to "sj3cmd.h" of SJ3 distribution.
218 (sj3rpc-bunsetsu-stdy, sj3rpc-kugiri-stdy): New functions.
220 * egg-com.el (comm-format-u8-vector): New substitution.
221 (comm-format): New format 'v'.
223 1998-03-09 NIIBE Yutaka <gniibe@mri.co.jp>
225 * docomp.el (its-keydef): Require its-keydef when compile.
226 Not so good. Just a work around.
227 (its-mode-map): Undo the changes of 03-04.
229 1998-03-09 KATAYAMA Yoshio <kate@pfu.co.jp>
231 * its.el (its-translate-region): Make it command.
232 (its-translate-region-internal): Make it function.
234 1998-03-04 NIIBE Yutaka <gniibe@mri.co.jp>
236 * its.el (its-define-select-keys of its-mode-map): Comment it out.
237 * its-keydef.el (its-make-select-func): Add eval-when to compile this.
239 * egg-cnv.el (egg-decide-bunsetsu): Deleted.
240 * its.el (its-restart): Call its-setup-fence-mode with no argument.
242 * its.el (its-keyseq-acceptable-p): Bug fix.
244 1998-03-03 KATAYAMA Yoshio <kate@pfu.co.jp>
246 *its.el (its-get-keyseq-syl): Compensate when DSYL has back.
247 (its-DSYL-with-back-p): New function. Return t when DSYL has back.
248 (its-concrete-DSYL-p): New function. Return t when DSYL is cons
249 form which means input is not continued after DSYL was created.
250 (its-make-concrete-DSYL): New function.
251 (its-self-insert-char): Make DSYL to ``concrete-DSYL'' if cursor
252 is t which means input is not continued.
253 (its-input): Test input key is whether acceptable or not when
254 its-barf-on-invalid-keyseq is non-nil.
255 (its-input-to-vsyl): Set cursor status, not just returning it.
256 (its-state-machine its-state-machine-keyseq): Make sure to issue
257 ``DSYL-with-back'' when syllable is decided by the rule with back.
258 ``test mode'' is added.
259 (its-keyseq-acceptable-p): New function.
260 (its-forward-SYL): The args order of put-text-property was wrong.
261 (its-delete-backward-SYL-by-keystroke): New function.
262 (its-delete-backward-within-SYL): ``delete-by-keystroke'' mode
263 did not work when syllable is decided by the rule with back.
264 Deletion limit is extended to outside of SYL (meaning of
265 ``within-SYL'' is changed to ``deletion starts within SYL).
266 (its-transpose-chars): Fixed up.
267 (its-in-fence-p): Confuse at openning fence.
269 1998-02-25 KATAYAMA Yoshio <kate@pfu.co.jp>
271 * its.el (its-put-cursor): Enable its-map change in fence mode.
273 * its-keydef.el (its-make-select-func): Same as above.
275 1998-02-25 KATAYAMA Yoshio <kate@pfu.co.jp>
277 * its.el (its-set-cursor-status): New function.
278 (its-setup-fence-mode): New function.
279 (its-insert-fence-open its-insert-fence-close): Deleted.
280 (its-start, its-restart, its-self-insert-char): Avoid fence
281 destruction on its-barf.
282 (its-input-to-vsyl, its-state-machine, its-state-machine-keyseq,
283 its-buffer-ins/del-SYL, its-ins/del-SYL-batch): Update cursor
284 status on updating syllables.
285 (its-input-error): New function to realize doc-string of
286 its-barf-on-invalid-keyseq.
288 * egg.el (egg-mode): Don't use egg-mode-line-title which cause
289 wrong-type-argument at isearch. Bind its-select-XXX to key only
290 when modefull is select.
292 * egg-mlh.el (mlh-hangul, mlh-zhongwen, mlh-zhongwen-tw): Same
295 * its-keydef.el (its-make-select-func): Same as above.
297 * leim-list-egg.el: Same as above.
299 1998-02-24 KATAYAMA Yoshio <kate@pfu.co.jp>
301 * its.el (its-state-machine-keyseq): Remove binding
302 its-barf-on-invalid-keyseq to nil.
303 (its-ins/del-SYL-batch): Avoide altering its-XXX-map.
304 (its-translate-region-internal): its-translation-result's data
305 type is changed to string.
307 * egg-cnv.el (egg-convert-region): Gather contiguous same
310 1998-02-21 KATAYAMA Yoshio <kate@pfu.co.jp>
312 * its.el (its-ins/del-SYL-batch): Set its-lang property.
313 (its-translate-region): Remove its-lang property from translated
315 (its-translate-region-internal): New function. Retain its-lang
316 property on translated text.
318 * egg-mlh.el (mlh-space-bar-backward-henkan): Force base language
321 (mlh-hangul mlh-zhongwen-tw mlh-zhongwen): New functions for
322 conversion functions.
324 1998-02-20 KATAYAMA Yoshio <kate@pfu.co.jp>
326 * its.el (its-restart): New function.
327 (its-insert-fence-open, its-insert-fence-close): New function.
328 (its-start): Rewritten. Use its-insert-fence-open and
329 its-insert-fence-close.
330 (its-exit-mode-internal): Leave its-syl property.
331 (its-exit-mode-internal): Delete the property in this case.
332 (its-keydef): Require it.
334 * its-keydef.el: Provide the feature.
336 * egg-cnv.el (egg-convert-region): Add egg-source property to save
338 (egg-conversion-map, \C-c): New keybind.
339 (egg-get-previous-bunsetsu): Bug fix.
340 (egg-decide-before-point): New implementation.
341 (egg-exit-conversion): Use gg-decide-before-point.
342 (egg-abort-conversion): New command.
344 1998-02-20 NIIBE Yutaka <gniibe@akebono>
346 * Makefile (SRCS), Egg.prj: Remove euc-china.el.
347 * egg-com.el: Include egg-china.el.
348 * egg-china.el: Removed.
350 1998-02-18 NIIBE Yutaka <gniibe@mri.co.jp>
354 * Makefile (SRCS): Rename euc-cn.el to euc-china.el
355 * egg-mlh.el (mlh-space-bar-backward-henkan): Put "Japanese"
356 language property for text.
358 1998-02-18 KATAYAMA Yoshio <kate@pfu.co.jp>
360 * euc-china.el: Rename from euc-cn.el. Update.
362 * egg.el (egg-mode): Bug fix. Call get-exit-conversion.
363 * leim-list-egg.el ("japanese-egg-wnn", "japanese-egg-sj3"):
364 Use new definition (with language argument).
365 * egg/wnn.el (egg-activate-wnn):
366 * egg/sj3.el (egg-activate-sj3):
368 1998-02-17 NIIBE Yutaka <gniibe@mri.co.jp>
370 * Makefile (SRCS): Add its/pinyin.el, its/hangul.el and
373 * egg-com.el (ccl-encode-fixed-euc-kr): Fixed the name.
375 1998-02-17 KATAYAMA Yoshio <kate@pfu.co.jp>
377 * its-keydef.el: New file.
378 * its/hangul.el, its/pinyin.el: New version.
380 * egg/wnnrpc.el (load-library "egg/wnn"): Comment it out.
381 (wnnrpc-get-error-message): Support multiple languages.
382 (wnnrpc-call-with-environment): Chinese support.
384 * egg/wnn.el (wnn-support-languages): New const.
385 (<env>): Add <server-type>, <dic-set>, and <rev-flag>.
386 (wnnenv-get-server-type, wnnenv-get-dictionary-set,
387 wnnenv-get-reverse-flag): New substs.
388 (wnnenv-get-daibunsetsu-info, wnnenv-set-daibunsetsu-info): Changed.
389 (wnn-server): Removed.
390 (wnn-jserver, wnn-cserver, wnn-tserver, wnn-kserver): New custom.
391 (wnn-server-info-list): New const.
392 (wnn-get-server-info): New function.
393 (wnn-server-locale, wnn-server-type, wnn-server-port,
394 wnn-server-stream-name, wnn-server-buffer-name,
395 wnn-server-coding-system, wnn-server-hostname): New substs.
396 (wnn-start-conversion): Add new arguments.
397 (wnn-uniq-candidates): Initialize 'n'.
398 (wnn-change-bunsetsu-length): Simplefied.
399 (wnn-change-bunsetsu-length): Call renbunsetsu-conversion,
401 (wnn-fini, wnn-comm-sentinel): back to 971009 version.
402 (wnn-jserver-port): Removed.
403 (wnn-open): Argument change. Support languages.
405 (wnn-dictionary-specification): Removed.
406 (wnn-dictionary-specification-list): New variable.
407 (wnn-get-dic-spec, wnn-dic-spec-dic-set, wnn-dic-spec-reverse,
408 wnn-dic-spec-name, wnn-dic-spec-param, wnn-dic-spec-fuzokugo,
409 wnn-dic-spec-dic-list): New substs.
410 (wnn-get-environment): Rewrite.
411 (wnn-create-environment): Rewrite.
413 (egg-activate-wnn): Support languages.
415 * egg/sj3rpc.el (load-library "egg/sj3"): Don't load it.
417 * egg/sj3.el (sj3-support-languages): New const.
418 (sj3-start-conversion, sj3-fini): Add lang.
419 (sj3-change-bunsetsu-length): Simplified.
420 (egg-activate-sj3): Support language.
422 * its/hira.el (its/hira): Packagefy. (?)
423 (its-hira-map): Add language spec. Move here the escape keys
426 * leim-list-egg.el ("chinese-gb-egg-wnn-py", "chinese-gb-egg-wnn-zy",
427 "chinese-cns-egg-wnn-py", "chinese-cns-egg-wnn-zy",
428 "korean-egg-wnn"): New input methods.
430 * its.el (its-current-language): New Local Variables.
431 <map>: Change the structure. Add <language>.
432 (its-get-language): New substitution.
433 (its-set-indicator): Removed.
434 (its-get-indicator, its-get-start-state): New implementation.
435 (its-reset-start-state): Removed.
436 (its-buffer-ins/del-SYL): Add new properties, its-map and its-lang.
437 (its-exit-mode-internal): Change for its-map and its-lang.
438 (its-in-fence-p): New function.
440 ("its-keydef.el"): Load it.
442 (its-select-map-menu): Removed.
443 (its-select-map-from-menu): Removed.
444 (its-select-hiragana, its-select-katakana, its-select-downcase,
445 its-select-upcase, its-select-zenkaku-downcase,
446 its-select-zenkaku-upcase, its-select-map, its-zenkaku-escape,
447 its-hankaku-escape): Removed.
449 (define-its-state-machine): Rewrite.
450 (define-its-compiled-map): New macro.
451 (its-define-state-machine): Removed.
453 (its-forward-SYL): Cleanup.
455 (its-beginning-of-input-buffer): Fix.
456 (its-end-of-input-buffer): Likewise.
458 * egg-com.el (egg-fixed-euc, egg-mb-euc): New Local Variables.
459 (ccl-decode-fixed-euc-kr, ccl-encode-fixed-euc-kr): New CCLs.
460 (fixed-euc-kr): New coding system.
461 (comm-format-mb-string, comm-format-u16-string): Support EUC-KR.
462 (comm-unpack-u16-string, comm-unpack-mb-string): Likewise.
464 * egg-cnv.el (egg-get-bunsetsu-info): New function.
465 (egg-conversion-backend-alist, egg-finalize-backend-alist):
467 Make egg-conversion-backend buffer local.
468 (egg-set-current-backend): New function.
469 (egg-initialize-backend): Call egg-set-current-backend.
470 (egg-start-conversion): Add new argument LANGUAGE.
471 (egg-finalize-backend): Finalize for all backend(s).
472 (egg-set-conversion-backend-internal): New Macro.
473 (egg-convert-region): Support multiple languages in the region.
474 (egg-separate-languages, egg-char-to-language, egg-next-part-lang,
475 egg-next-chinese-lang): New functions.
476 (egg-insert-bunsetsu-list): Change the meaning of last argument.
477 (egg-shrink-bunsetsu): Simplified. Just call egg-enlarge-bunsetsu.
478 (egg-enlarge-bunsetsu): Support shrink.
480 (egg-decide-bunsetsu, egg-next-candidate, egg-select-candidate):
481 Use egg-get-bunsetsu-info.
483 (egg-insert-bunsetsu): The property now includes
484 egg-conversion-backend.
486 * egg.el: Don't load its/hira and don't set its-current-map.
488 * egg.el (egg-default-language, egg-support-languages): New Variables.
489 (egg-last-method-name, egg-mode-line-title): New Local Variables.
490 (egg-set-mode-line-title, egg-check-language): New functions.
491 (egg-set-support-languages): New function.
492 (egg-mode): Final processing: call its-exit-mode, call
494 Changing the arguments, remember last input method.
496 Bug fix. Don't set its-hira-period and its-hira-comma.
498 1998-02-17 KAWABATA, Taichi
500 * menudiag.el (menudiag-mode-map): New binds for new commands.
501 (menudiag-beginning-of-items, menudiag-end-of-items): New commands.
502 (menudiag-make-menu-formatted-string): Bug fix. Use
503 menudiag-item-num-to-char.
504 (menudiag-goto-item): Rewrite. Better user interface.
505 (menudiag-char-to-item-num, menudiag-item-num-to-char): New
508 1998-02-07 MORIOKA Tomohiko <morioka@jaist.ac.jp>
510 * leim-list-egg.el: Delete autoload setting for `egg-mode'.
511 Delete input method registration for "japanese-egg".
513 * egg.el: Comment out setting for Wnn.
515 * leim-list-egg.el: Add autoload setting for
516 `egg-activate-{wnn|sj3}'.
518 * egg/sj3.el (egg-activate-sj3): Add DOC-string.
520 * egg/sj3.el (egg-activate-sj3): New function.
524 * egg/wnn.el (egg-activate-wnn): New function.
528 1998-02-07 MORIOKA Tomohiko <morioka@jaist.ac.jp>
530 * leim-list-egg.el (japanese-egg-wnn): New input method.
531 (japanese-egg-sj3): New input method.
533 1997-11-20 MORIOKA Tomohiko <morioka@jaist.ac.jp>
535 * leim-list-egg.el: Rename `egg-ja' -> `japanese-egg'.
537 1997-11-20 MORIOKA Tomohiko <morioka@jaist.ac.jp>
539 * egg/wnn.el (wnn): New group.
540 (wnn-server): Use `defcustom'.
541 (wnn-usr-dic-dir): Use `defcustom'.
543 * egg.el (egg): New group.
545 1997-11-20 MORIOKA Tomohiko <morioka@jaist.ac.jp>
547 * menudiag.el (menudiag-mode-map): Swap binding for left and
550 * egg.el (egg-toroku-region): `wnn-get-environment' requires
551 dictionary-specification.
553 * leim-list-egg.el: add autoload setting for egg-mode.
555 1997-11-03 KATAYAMA Yoshio <kate@pfu.co.jp>
557 * euc-cn.el: New file. Original name was yincoding.el.
558 Adopted by NIIBE Yutaka <gniibe@mri.co.jp>.
560 1997-11-03 NIIBE Yutaka <gniibe@mri.co.jp>
562 * its.el (its-start): Add INVISIBLE property if ITS-FENCE-FACE.
563 * egg-cnv.el (egg-decide-before-point): Ditto.
564 Based on patch by Kenichi HANDA <handa@etl.go.jp>.
566 Once, I thought that we need many environments which correspond to
567 outstanding CONVERSION buffre. However, I've learned that WNN4
568 protocol is completely independent. It's no use to maintain each
569 environment. Share the one environment.
570 * egg/wnn.el (wnn-environments): Removed.
571 (wnn-environment): New variable.
572 (wnn-comm-sentinel): Follow the change. Let users know the close.
573 (wnn-fini): Likewise.
575 <env>: Remove the member <in-use>.
576 (wnnenv-create): Follow the structure change.
577 (wnn-end-conversion): Likewise.
578 (wnnenv-get-in-use-flag, wnnenv-set-in-use-flag): Removed.
579 (wnn-find-env-not-in-use): Removed.
580 (wnn-get-environment): Use wnn-environment instead of wnn-environments.
583 * egg-cnv.el (egg-decide-before-point): Signal error on first SYL.
584 Reported by KATAYAMA Yoshio <kate@pfu.co.jp>. Changes of 1997-09-07
586 Set-marker M to NIL after PUT-TEXT-PROPERTY.
588 Because the name of identifier begins egg-*, change the file names.
589 * tamago: Rename from tamago.
590 * egg.el, egg-mlh.el, egg-com.el, egg-cnv.el: Rename from tamago-*.el
591 * Makefile: Follow the changes.
593 1997-10-05 NIIBE Yutaka <gniibe@mri.co.jp>
595 * tamago/wnn.el (wnn-uniq-candidates): Add new argument BUNSETSU.
596 Call WNN-BUNSETSU-SET-ZENKOUHO-POS, WNN-BUNSETSU-SET-ZENKOUHO in
597 this function. Handle the case where BUNSETSU is not the first
598 element of BUNSETSU-LIST.
599 (wnn-list-candidates): Use new API of WNN-UNIQ-CANDIDATES.
601 * tamago-cnv.el (egg-next-candidate): Handle the case where
602 EGG-LIST-CANDIDATES returns non zero value.
604 1997-10-04 NIIBE Yutaka <gniibe@mri.co.jp>
606 * Makefile (install): Install to SITEDIR.
608 1997-09-26 NIIBE Yutaka <gniibe@mri.co.jp>
610 * its/hira.el (its-hira-enable-zenkaku-alphabet): New variable.
611 (its-hira-map): Use it.
613 1997-09-19 NIIBE Yutaka <gniibe@mri.co.jp>
615 Arrange for LEIM. Use tamago/ subdirectory.
616 * tamago/: Rename from tamago-lib.
618 1997-09-18 NIIBE Yutaka <gniibe@mri.co.jp>
620 * tamago-cnv.el (egg-select-candidate): menu-select -->
622 * tamago.el (egg-toroku-region, egg-hinshi-select): Likewise.
624 * tamago-cnv.el (egg-exit-conversion): Run hook of
625 input-method-after-insert-chunk-hook.
626 * its.el (its-exit-mode-internal): Ditto.
628 * tamago-mlh.el (mlh-comma-period-style): Deleted.
630 * its/, tamago-lib/: New directory.
631 * its/: Move its-*.el files here.
632 * tamago-lib/: Move sj3.el, sj3rpc.el, wnn.el and wnnrpc.el here.
634 * tamago-com.el: Rename from comm.el.
635 * tamago-mlh.el: Rename from mlh.el.
636 * tamago-cnv.el: Rename from convert.el.
638 * menudiag.el: Rename from menu.el.
639 (Throughout): Rename menu-* to menudiag-*.
641 1997-09-07 NIIBE Yutaka <gniibe@mri.co.jp>
643 * egg.el (egg-insert-after-hook, egg-exit-hook): Removed.
644 (egg-sai-henkan-start, egg-sai-henkan-end, egg-old-bunsetu-suu):
647 * wnn.el (WNN-const): New macro.
648 (wnn-start-conversion, wnn-open-dictionary, wnn-open-frequency,
649 wnn-set-dictionary-sub, wnn-update-frequency): Use it.
651 * wnnrpc.el (wnn-const): New macro.
652 Throughout: Use wnn-const.
654 * convert.el (egg-decide-before-point): Bug fix. Handle the case
655 where all bunsetsu are decided.
656 Reported by KATAYAMA Yoshio <kate@pfu.co.jp>.
658 * convert.el (egg-exit-conversion): Call egg-end-conversion at end.
659 (egg-decide-before-point): Ditto.
661 * wnn.el (wnn-environments): Change the structure of enviromnents.
662 (wnn-fini): Handle errors.
663 (wnn-open): Set sentinel. Delete buffer on failure.
664 (wnn-comm-sentinel): New function.
665 (wnn-find-env-not-in-use): Return nil when not found.
667 (wnn-create-environment): Take username as argument.
668 (wnn-get-environment): Follow the change.
670 (wnnenv-create): Remove useless serial no.
671 (wnnenv-get-in-use-flag, wnnenv-set-in-use-flag): Follow the change.
672 (wnnenv-get-daibunsetsu-info, wnnenv-set-daibunsetsu-info): Likewise.
673 (wnn-create-environment, wnn-get-environment): Likewise.
675 1997-09-04 NIIBE Yutaka <gniibe@mri.co.jp>
677 * its.el (its-state-machine-keyseq): Bug fix. Handle VSYL.
679 * sj3.el, sj3rpc.el: New files.
681 * comm.el (comm-call-with-proc, comm-call-with-proc-1): New macros.
682 * wnnrpc.el (wnnrpc-call-with-proc, wnnrpc-call-with-proc-1): Deleted.
683 Throughout: Use comm-call-with-proc and comm-call-with-proc-1.
685 1997-09-03 NIIBE Yutaka <gniibe@mri.co.jp>
687 * wnnrpc.el (wnnrpc-call-with-proc-1): Bug fix. let --> progn.
689 * convert.el (egg-conversion-backend): Initail value is NIL.
691 * wnn.el (wnn-conversion-backend): New constant.
693 * comm.el (comm-format,comm-unpack): Support multibyte string.
694 (comm-format-mb-string): New substitution.
695 (comm-unpack-mb-string): New substitution.
697 * wnn.el (wnn-fini): Handle the case where wnn-environments is nil.
698 Reported by Hisashi Miyashita <himi@bird.scphys.kyoto-u.ac.jp>.
700 1997-09-03 Hiroshi Ogata <hiroshi@nereid.rim.or.jp>
702 * mlh.el (mlh-zenkaku): Use new API of Emacs-20,
703 japanese-zenkaku-region.
705 1997-09-02 NIIBE Yutaka <gniibe@mri.co.jp>
707 * egg.el (egg-toroku-region): New function.
709 * wnn.el (wnn-list-dictionaries): New function.
710 (wnnenv-get-proc): New function.
712 * wnnrpc.el (wnndic-get-id, wnndic-get-comment, wnndic-get-dictname):
714 (wnnrpc-get-writable-dictionary-id-list): Rename from
715 wnnrpc-get-writable-dictionary-list.
717 1997-09-01 NIIBE Yutaka <gniibe@mri.co.jp>
719 * convert.el (egg-decide-bunsetsu): New function.
720 (egg-decide-before-point): New command.
721 (egg-exit-conversion): Use egg-decide-bunsetsu.
723 * its.el (its-start): Divide the fence buffer into two parts and
724 make them intangible, so that point goes appropriate position.
725 (its-put-cursor): The cursor belongs to part-2.
726 (its-buffer-ins/del-SYL): The new SYL belongs to part-1.
727 (its-exit-mode-internal): Remove the property on exit.
728 (its-beginning-of-input-buffer): Make SYLs have property of "part 2".
729 (its-backward-SYL): Likewise.
730 (its-forward-SYL): Make SYLs have property of "part 1".
731 (its-end-of-input-buffer): Likewise.
733 (its-input-end): Delete useless argument.
734 (its-beginning-of-input-buffer, its-exit-mode,
735 its-exit-mode-off-input-method, its-kick-convert-region,
736 its-end-of-input-buffer, its-backward-SYL, its-forward-SYL,
737 its-delete-SYL): Follow the change.
739 1997-08-31 NIIBE Yutaka <gniibe@mri.co.jp>
741 For egg-mode, don't use minor mode, override local map instead.
742 For its-mode and egg-conversion-mode, don't use minor mode,
743 instead use local-map of text property.
745 Although overriding local map is not good, using local-map of
746 property is natural thing. Besides, point-left/point-entered
747 don't work as I expected (yet).
749 * egg.el (egg-mode: variable): Removed.
750 * egg.el (egg-modefull-map, egg-modeless-map): Make them functions.
751 Generate overriding local map.
752 * egg.el (egg-mode): use overriding local map.
754 * its.el, convert.el: Undo changes of 1997-08-28 for minor mode
755 and local map of text properties.
757 * its.el (its-exit-mode-off-input-method): New function.
759 1997-08-29 NIIBE Yutaka <gniibe@mri.co.jp>
761 Let Undo work correctly.
762 * its.el (its-self-insert-char): Delete/Insert cursor.
764 * its.el (its-put-cursor): Remove useless first argument.
765 (its-start, its-beginning-of-input-buffer, its-end-of-input-buffer,
766 its-backward-SYL, its-forward-SYL, its-delete-SYL, its-delete-SYL,
767 its-delete-backward-SYL-internal, its-delete-backward-within-SYL):
770 1997-08-28 KATAYAMA Yoshio <kate@pfu.co.jp>
772 * its-erpin.el: New file.
773 * its-pinyin.el: New file.
774 * its-zhuyin.el: New file.
776 1997-08-28 NIIBE Yutaka <gniibe@mri.co.jp>
778 * its.el (its-exit-mode-no-egg): Removed.
779 (its-exit-mode-internal): Remove first argument.
780 (its-kick-convert-region, its-delete-SYL,
781 its-delete-backward-SYL-internal, its-delete-backward-within-SYL):
784 Don't use local map of text properties, instead use minor mode.
785 * convert.el (egg-conversion-mode): New minor mode.
786 (egg-conversion-left, egg-conversion-enter): New functions.
787 (egg-insert-bunsetsu): remove local-map, add point-entered and
788 point-left properties.
789 (egg-exit-conversion): Likewise.
790 (egg-exit-conversion): Exit minor mode.
792 * its.el (its-put-cursor): remove local-map, add point-entered and
793 point-left properties.
794 (its-enter, its-left): New functions.
795 (its-mode): New variable. New minor mode.
797 1997-08-27 NIIBE Yutaka <gniibe@mri.co.jp>
799 * convert.el (egg-exit-conversion-no-egg): Removed.
800 (egg-exit-conversion): No argument, no egg-mode.
802 * convert.el (egg-convert-region): No egg-flag.
803 * its.el (its-exit-mode-internal): Follow it.
804 * mlh.el (mlh-space-bar-backward-henkan): Ditto.
806 1997-08-26 NIIBE Yutaka <gniibe@mri.co.jp>
808 * wnn.el (wnn-change-bunsetsu-length): Don't use magic #3.
810 * convert.el (egg-insert-bunsetsu-list): Add optional argument
813 1997-08-25 NIIBE Yutaka <gniibe@mri.co.jp>
815 * convert.el (egg-insert-bunsetsu): Include seperator. Add
816 intangible property to bunsetsu.
817 (egg-insert-bunsetsu-list): Follow the change.
818 (egg-backward-bunsetsu, egg-forward-bunsetsu,
819 egg-select-candidate, egg-next-candidate,
820 egg-shrink-bunsetsu, egg-enlarge-bunsetsu,
821 egg-exit-conversion): Ditto.
823 * mlh.el (mlh-space-bar-backward-henkan): Call egg-convert-region
824 with last argument t. Turn of egg-mode.
826 1997-08-24 NIIBE Yutaka <gniibe@mri.co.jp>
828 * its.el (its-exit-mode-internal): Inactivate input method.
830 * wnn.el (wnn-end-conversion): Change the interface.
831 (wnn-update-frequency): Follow the change.
832 * convert.el (egg-exit-conversion): Follow the change.
834 * wnn.el (wnn-start-conversion): Change the return value interface.
835 * convert.el (egg-convert-region): Follow the change.
837 * wnn.el (wnnenv-get-bunsetsu-pos, wnnenv-set-bunsetsu-pos): Removed.
838 (wnn-get-bunsetsu-source-afterwards): Removed.
839 (wnn-get-number-of-bunsetsu, wnn-get-bunsetsu-info): Removed.
840 (wnnenv-get-bunsetsu-list, wnnenv-set-bunsetsu-list): Removed.
841 (wnn-start-conversion): Don't call wnnenv-set-bunsetsu-list.
842 (wnn-end-conversion): Ditto.
844 1997-08-23 NIIBE Yutaka <gniibe@mri.co.jp>
846 * convert.el (egg-change-bunsetsu-length): Change the interface.
847 (egg-shrink-bunsetsu,egg-enlarge-bunsetsu): Follow it.
849 (egg-source-maxlen-from-here): Removed.
850 (egg-get-previous-bunsetsu): New function.
851 (egg-select-candidate, egg-shrink-bunsetsu, egg-enlarge-bunsetsu,
852 egg-next-candidate): Use egg-get-previous-bunsetsu.
854 1997-08-20 NIIBE Yutaka <gniibe@mri.co.jp>
856 * egg.el (minor-mode-alist): Don't show " EGG" in mode line.
857 (egg-mode): Use input method indicator instead.
859 1997-07-20 NIIBE Yutaka <gniibe@mri.co.jp>
861 * convert.el (egg-next-candidate): Rename from egg-next-conversion.
862 (egg-previous-candidate): Rename from egg-previous-conversion.
863 (egg-select-candidate): Follow the change of new interface.
864 (egg-source-maxlen-from-here): Likewise.
866 1997-07-19 NIIBE Yutaka <gniibe@mri.co.jp>
868 * wnn.el (wnn-start-conversion): Change the interface. Return ENV
869 and the list of bunsetsu. Fix the documentation string too.
870 * convert.el (egg-convert-region): Follow the change.
871 (egg-insert-converted-result): Change the argument.
872 (egg-insert-bunsetsu-list): Rename from egg-insert-converted-result.
873 (egg-insert-bunsetsu): New function.
874 (egg-get-number-of-bunsetsu,egg-get-bunsetsu-info): Removed.
875 (egg-backward-bunsetsu): Don't use bunsetsu-pos.
877 * wnn.el (wnn-get-bunsetsu-converted): Change the interface. Take
878 BUNSETSU as the argument instead of ENV and POS.
879 * convert.el (egg-get-bunsetsu-converted): Follow the change.
881 * wnn.el (wnn-bunsetsu-create): Take ENV as the first argument.
882 (wnn-list-candidates): Dont take ENV.
883 (wnn-bunsetsu-get-env): New substitution.
885 * wnnrpc.el (wnnrpc-receive-sho-bunsetsu-list-sub): Take the argument
886 for ENV, and use it for the argument of wnn-bunsetsu-create.
887 (wnnrpc-receive-sho-bunsetsu-list): Take ENV as the first argument.
888 (wnnrpc-renbunsetsu-conversion): Follow the change.
890 1997-07-17 NIIBE Yutaka <gniibe@mri.co.jp>
892 * convert.el (egg-decide-candidate): Change the interface.
893 Take the argument bunsetsu-info instead of conversion-engine.
895 * wnn.el (wnn-get-candidate): Deleted.
897 * convert.el (egg-get-all-candidates): Change the interface.
898 Take an argument bunsetsu-info instead of conversion-engine.
899 (egg-select-candidate): Follow the change.
901 * convert.el (egg-set-bunsetsu-pos,egg-get-bunsetsu-pos): Deleted.
902 (egg-list-candidates,egg-get-current-candidate-number): New stub.
903 * wnn.el (wnn-bunsetsu-create): Add new member zenkouho-pos.
904 (wnn-bunsetsu-get-zenkouho-pos,wnn-bunsetsu-set-zenkouho-pos): New
906 (wnn-list-candidates,wnn-get-current-candidate-number): New functions.
907 (wnn-set-bunsetsu-pos,wnn-get-bunsetsu-pos): Deleted.
909 * convert.el (egg-get-number-of-candidates): Change the interface.
910 Take an argument bunsetsu-info instead of conversion-engine.
911 (egg-next-conversion,egg-select-candidate): Follow the change.
912 * wnn.el (wnn-get-number-of-candidates): Follow the change.
914 * wnn.el (wnn-get-bunsetsu-source-afterwards): New function.
915 (wnn-change-bunsetsu-length): Use it.
917 * convert.el (egg-get-bunsetsu-source): Change the interface.
918 Take an argument bunsetsu-info instead of conversion-engine.
919 (egg-enlarge-bunsetsu,egg-shrink-bunsetsu,egg-source-maxlen-from-here):
921 * wnn.el (wnn-get-bunsetsu-source): Follow the change.
923 Put bunsetsu information on text property.
924 * wnn.el (wnn-get-bunsetsu-info): New function.
926 * convert.el (egg-insert-converted-result): Put it on text property.
927 (egg-conversion-backend): Add new interface
928 wnn-get-bunsetsu-info.
929 (egg-get-bunsetsu-info): New stub.
931 1997-07-17 KATAYAMA Yoshio <kate@pfu.co.jp>
933 * its.el (its-state-machine-keyseq, its-state-machine): Handle
934 end-of-input correctly when going backward.
936 1997-07-16 NIIBE Yutaka <gniibe@mri.co.jp>
938 * wnn.el (wnn-create-directory): Bug fix. Really make directory.
940 1997-07-15 NIIBE Yutaka <gniibe@mri.co.jp>
942 * its-hangul.el (its-define-hangul): Use its-defrule-otherwise.
944 1997-07-15 KATAYAMA Yoshio <kate@pfu.co.jp>
946 * its-hangul.el: Updated.
948 1997-06-19 NIIBE Yutaka <gniibe@akebono.etl.go.jp>
950 * its-hira.el: its-hira-hankaku-escape --> its-hankaku-escape.
951 its-hira-zenkaku-escape --> its-zenkaku-escape.
953 1997-06-14 NIIBE Yutaka <gniibe@mri.co.jp>
955 * its.el: Change the data structure of <expr-output-back-list> so
956 that it can encourage sharing same structure and it can use same
958 (its-ins/del-SYL-batch): Follow the change of data structure.
959 (its-define-otherwise): Change the argument.
960 (its-defrule-otherwise): New function.
961 (its-eob-keyexpr, its-eob-back, its-make-class+back,
962 its-make-otherwise): New substitutions.
964 1997-06-13 NIIBE Yutaka <gniibe@mri.co.jp>
966 * its-kana.el: New file. Taken from its/kanainput.el of Mule-2.3.
968 * its-hira.el: Use `define-its-state-machine'.
970 * its.el (its-zenkaku-escape, its-hankaku-escape): Make them
972 (define-its-state-machine, define-its-state-machine-append): New
975 1997-06-13 NIIBE Yutaka <gniibe@akebono.etl.go.jp>
977 * its-hira.el ("n'"): Added.
979 1997-06-12 NIIBE Yutaka <gniibe@akebono.etl.go.jp>
981 its-zenkaku-escape and its-hankaku-escape are also used in hangul.
982 * its.el (its-zenkaku-escape, its-hankaku-escape): Moved to here
984 * its-hira.el (its-hira-hankaku-escape, its-hira-zenkaku-escape):
987 * its.el (its-read-current-its-string): Removed. There's the
988 function `read-multilingual-string' already.
990 1997-06-12 KATAYAMA Yoshio <kate@pfu.co.jp>
992 * its-hangul.el: New file.
994 1997-06-10 NIIBE Yutaka <gniibe@mri.co.jp>
996 Miscellaneous cosmetic changes.
997 * comm.el: New file. Move communication related funcitons from
999 (comm-format-u32c, and others): Rename from wnnrpc-*.
1000 * wnnrpc.el (Throughout): Follow the rename.
1002 * wnn.el (wnnenv-get-in-use-flag): Rename from wnn-e-get-in-use.
1003 (wnnenv-set-in-use-flag): Rename from wnn-e-set-in-use.
1004 (Others): Rename from wnn-e-*.
1005 (wnn-bunsetsu-*): Rename from wnnrpc-b-*, and moved from wnnrpc.el.
1007 * convert.el (egg-exit-conversion): Call egg-do-auto-fill.
1009 * its.el (its-translate-region): Bug fix. End of input.
1010 (its-state-machine): Bug fix. Generate error if
1011 its-barf-on-invalid-keyseq.
1012 (its-exit-mode-internal): Call egg-do-auto-fill.
1014 * wnnrpc.el (ccl-decode-fixed-euc-jp): Bug fix for ASCII.
1016 * mlh.el (mlh-space-bar-backward-henkan): Call egg-do-auto-fill.
1018 * egg.el: Comment out definition of C-\ in global-map.
1020 1997-06-09 NIIBE Yutaka <gniibe@mri.co.jp>
1022 * its.el (its-kick-convert-region): Rename from its-convert-region.
1023 (its-mode-map): Follow the change.
1025 (its-make-next-state): Use list instead of cons.
1027 (its-get-kst/t): Make it substitution.
1028 (its-set-kst, its-get-keyseq, its-set-keyseq, its-kst-p,
1029 its-get-output, its-set-output, its-get-keyseq-syl): Likewise.
1030 (its-new-state, its-new-map, its-get-indicator, its-set-indicator,
1031 its-get-start-state, its-reset-start-state): Likewise.
1033 (its-get-next-state): Use assq instead of assoc.
1035 (its-goto-state): Tune up.
1037 1997-06-08 NIIBE Yutaka <gniibe@mri.co.jp>
1039 * mlh.el: Merge mlh-nihongo.el.
1040 * mlh-nihongo.el: Removed.
1042 * its-hira.el: Moved from its/hira.el. Move comments to HISTORY.
1043 (its-hira-enable-double-n, its-hira-period, its-hira-comma,
1044 its-hira-open-bracket, its-hira-close-bracket,
1045 its-hira-horizontal): New variables.
1046 Use the variables to define the state-machine.
1048 Implement non-interactive translation in ITS.
1049 * its.el (its-translate-region): New function.
1050 (its-latest-SYL): New Variable.
1051 (its-state-machine-keyseq): Use it.
1052 (its-update-latest-SYL): New function.
1053 (its-buffer-ins/del-SYL): Use it.
1054 (its-translation-result): New variable.
1055 (its-ins/del-SYL-batch): New function.
1056 (its-enable-double-n-syntax, its-use-kuten-for-period,
1057 its-use-touten-for-comma, its-zenkaku-escape, its-hankaku-escape):
1060 Use ITS, delete mlh's own implementation of automata.
1061 * mlh.el (mlh-start-state, mlh-set-of-chars, mlh-start-state-sym,
1062 mlh-set-of-chars-sym, mlh-define-automata, mlh-end-of-definition,
1063 mlh-defrule, mlh-next-state, mlh-roma-kana-backward): Removed.
1064 (mlh-cause-error-when-unknown-romaji-sequence): Removed.
1065 (mlh-atoi): Removed.
1066 (mlh-white-space, mlh-zenkaku-white): Use string-to-int.
1067 * mlh-nihongo.el (mlh-hira-start-state, mlh-hira-chars, and all
1068 rules of definition which defines the automaton): Removed.
1069 (mlh-kanji-with-henkan-region-function): Use its-translate-region.
1070 (mlh-hiragana, mlh-katakana): Likewise.
1073 * wnnrpc.el (ccl-decode-fixed-euc-jp): Bug fix for jisx0212.
1076 Speed up of unpacking.
1077 * wnnrpc.el (wnnrpc-following-char-or-wait): Tune up.
1078 (wnnrpc-following+forward-char): New function.
1079 (wnnrpc-unpack-u32c, wnnrpc-unpack-u32, wnnrpc-unpack-u16,
1080 wnnrpc-unpack-u8): Use it.
1081 (wnnrpc-accept-process-output): New function.
1082 (wnnrpc-unpack-u16-string, wnnrpc-unpack-u8-string,
1083 wnnrpc-unpack-bytes): Use it. Use search-forward.
1084 (wnnrpc-unpack-u16-string): Use decode-coding-region.
1086 1997-06-07 NIIBE Yutaka <gniibe@mri.co.jp>
1088 * wnn.el (wnn-get-all-candidates): New function.
1089 (wnn-set-bunsetsu-pos): Return 0 (instead of -1).
1091 * convert.el (egg-get-candidate): Removed.
1092 (egg-get-all-candidates): New entry function.
1093 (egg-conversion-backend): Entry for egg-get-all-candidates.
1094 (egg-select-candidate): New function.
1095 (egg-conversion-map): Bind "\M-s" and egg-select-candidate.
1097 1997-06-05 NIIBE Yutaka <gniibe@mri.co.jp>
1099 * bushu.el: Renamed from busyu.el.
1100 (bushu-break-string, etc): Renamed from busyu*.
1102 * menu.el: Completely rewritten.
1104 1997-06-03 NIIBE Yutaka <gniibe@akebono.etl.go.jp>
1106 * its.el (its-reset-start-state): Bug fix. Delete a CDR.
1108 Implement "class of key" transition.
1109 Change the structure of <state>, the last member is
1110 <key-state-table/terminal> instead of <key-state-alist/terminal>.
1111 * its.el (its-kst-p): Rename from its-ksa-p.
1112 (its-get-next-state): Follow the change of the data structure.
1113 (its-state-machine): Likewise.
1114 (its-make-next-state): Likewise.
1115 (its-set-kst): New function.
1116 (its-get-otherwise): New function.
1117 (its-otherwise-match): New function.
1118 (its-define-otherwise-terminate-here): Removed.
1119 (its-define-otherwise): New function.
1120 (its-defrule*): Use its-define-otherwise.
1122 * its/hira.el (n): Use its-define-otherwise.
1124 1997-06-02 NIIBE Yutaka <gniibe@mri.co.jp>
1126 * wnnrpc.el (wnnrpc-receive-sho-bunsetsu-list-sub,
1127 wnnrpc-receive-sho-bunsetsu-list-sub-2): Splited from
1128 wnnrpc-receive-sho-bunsetsu-list.
1129 (wnnrpc-receive-dai-bunsetsu-list): New function.
1130 (wnnrpc-daibunsetsu-conversion, wnnrpc-get-daibunsetsu-candidate):
1133 1997-06-01 NIIBE Yutaka <gniibe@mri.co.jp>
1135 * wnnrpc.el (ccl-decode-fixed-euc-jp): Clean it up.
1136 (wnnrpc-file-attribute): Rename from wnnrpc-stat-file.
1137 (wnnrpc-get-dictionary-list-with-environment): Rename from
1138 wnnrpc-get-dictionary-list-with-environment.
1141 * wnnrpc.el (wnnrpc-who, wnnrpc-get-env-list, wnnrpc-kill,
1142 wnnrpc-delete-dictionary, wnnrpc-set-flag-on-dictionary,
1143 wnnrpc-get-dictionary-list, wnnrpc-delete-word,
1144 wnnrpc-receive-word, wnnrpc-search-word,
1145 wnnrpc-search-word-in-dictionary, wnnrpc-get-word-info,
1146 wnnrpc-set-comment-on-word, wnnrpc-get-dictionary-info,
1147 wnnrpc-set-file-comment, wnnrpc-hinshi-name,
1148 wnnrpc-set-file-password, wnnrpc-set-hinshi-table): New functions.
1150 1997-05-31 NIIBE Yutaka <gniibe@mri.co.jp>
1152 * wnnrpc.el (wnnrpc-format-u32c, wnnrpc-unpack-u32c): New
1153 substitutions. Support 32-bit number represented in cons cell of
1154 a pair of 16-bit integer.
1155 (wnnrpc-format, wnnrpc-unpack): Handle u32c (U).
1157 (wnnrpc-format-bytes, wnnrpc-unpack-bytes): New substitutions.
1158 Support byte stream end with 255(-1).
1159 (wnnrpc-format, wnnrpc-unpack): Handle bytes (B).
1161 (wnnrpc-local-file-loaded): New function.
1162 (wnnrpc-call-with-proc-1): New macro. Assume the buffer is the one
1165 1997-05-29 NIIBE Yutaka <gniibe@mri.co.jp>
1167 * wnnrpc.el (wnnrpc-get-conversion-parameters, wnnrpc-file-loaded,
1168 wnnrpc-write-file, wnnrpc-get-fuzokugo-file, wnnrpc-get-file-list,
1169 wnnrpc-get-file-list-with-env, wnnrpc-stat-file,
1170 wnnrpc-get-file-info): New functions.
1171 wnnrpc-receive-file-list): New subst.
1173 1997-05-29 Kenichi Handa <handa@etl.go.jp>
1175 * wnnrpc.el (ccl-decode-fixed-euc-jp): Tune it up.
1177 1997-05-29 Hisashi Miyashita <himi@bird.scphys.kyoto-u.ac.jp>
1179 * wnnrpc.el (fixed-euc-jp, ccl-decode-fixed-euc-jp,
1180 ccl-encode-fixed-euc): New private coding system. Encode/decode
1183 1997-05-27 NIIBE Yutaka <gniibe@mri.co.jp>
1185 * wnnrpc.el (wnnrpc-tanbunsetsu-conversion): Change the argument.
1186 (wnnrpc-get-bunsetsu-candidates): Likewise.
1187 (wnnrpc-renbunsetsu-conversion): Likewise.
1189 * wnn.el (wnn-change-bunsetsu-length): Follow the change.
1190 (wnn-set-bunsetsu-pos): Likewise.
1191 (wnn-change-bunsetsu-length, wnn-start-conversion): Likewise.
1193 1997-05-25 NIIBE Yutaka <gniibe@mri.co.jp>
1195 * wnnrpc.el (wnnrpc-add-word, wnnrpc-get-dictionary-list,
1196 wnnrpc-receive-dictionary-list, wnnrpc-get-writable-dictionary-list,
1197 wnnrpc-get-hinshi-list, wnnrpc-hinshi-number): New functions.
1198 (wnnrpc-unpack-u16-string): Bug fix for the case of ASCII string.
1200 * wnn.el (wnn-dictionary-specification): Add dictionaries of
1201 gerodic and ones of WNN consortium.
1203 Implement a false path.
1204 * wnnrpc.el (wnnrpc-renbunsetsu-conversion): Generate an error on
1206 (wnnrpc-get-bunsetsu-candidates): Ditto.
1207 (wnnrpc-tanbunsetsu-conversion): Ditto.
1209 Implement a false path. Error recovery.
1210 * wnn.el (wnn-create-directory, wnn-open-dictionary,
1211 wnn-open-frequency, wnn-query-del/create-frequency): New function.
1212 (wnn-set-dictionary-sub): New function.
1214 1997-05-24 NIIBE Yutaka <gniibe@mri.co.jp>
1216 * wnnrpc.el (wnnrpc-version, wnnrpc-access, wnnrpc-mkdir,
1217 wnnrpc-create-dictionary, wnnrpc-create-frequency,
1218 wnnrpc-discard-file, wnnrpc-remove-file): New functions.
1219 (wnnrpc-test-result-and-get-error): New subst.
1221 Implement a false path from wnnrpc-set-fuzokugo-file.
1222 * wnnrpc.el (wnnrpc-set-fuzokugo-file): Return negate-encoded
1223 error code on failure.
1224 * wnn.el (wnn-create-environment): Generate an error message.
1226 Implement a false path from wnnrpc-open-file.
1227 * wnnrpc.el (wnnrpc-open-file): Change the interface. Return
1228 negate-encoded error code on failure.
1229 * wnn.el (wnn-open-file): New function.
1230 (wnn-create-environment): Handle return value, and generate
1231 an error message for wnnrpc-set-fuzokugo-file on failure.
1232 (wnn-set-dictionary): Handle return value.
1234 1997-05-17 NIIBE Yutaka <gniibe@mri.co.jp>
1236 * wnnrpc.el (wnnrpc-error-message): Error strings taken from
1237 Wnn-4.2 distribution.
1238 (wnnrpc-errono): Removed.
1240 Implement a false path from wnnrpc-open.
1241 * wnnrpc.el (wnnrpc-open): Change the interface. Return NIL on
1242 success, error code on failure.
1243 * wnn.el (wnn-open): Delete process and buffer.
1244 Generate an error on failure.
1245 (wnn-get-environment): Follow the change (none).
1246 (wnn-start-conversion): Follow the change (none).
1247 * convert.el (egg-convert-region): Follow the change. Call
1248 delete-region after egg-start-conversion.
1250 Implement a false path from wnnrpc-connect.
1251 * wnnrpc.el (wnnrpc-connect): Change the interface. Return
1252 negate-encoded error code on failure.
1253 * wnn.el (wnn-create-environment): Generate an error on failure.
1254 (wnn-get-environment): Follow the change. On failure, don't
1255 register the environment to wnn-environments.
1257 1997-05-16 NIIBE Yutaka <gniibe@akebono.etl.go.jp>
1259 Dynamically allocate environment arbitrarily.
1260 * wnn.el (wnn-create-environment): Change the structure of ENV.
1261 (wnn-e-get-in-use, wnn-e-set-in-use): New subst.
1262 (wnn-end-conversion): Call wnn-e-set-in-use.
1263 (wnn-get-environment, wnn-find-env-not-in-use): New function.
1264 (wnn-start-conversion): Call wnn-get-environment.
1266 * wnn.el (wnn-fini): Implemented.
1268 1997-05-15 NIIBE Yutaka <gniibe@mri.co.jp>
1270 * convert.el (egg-start-conversion): Change the interface.
1271 (egg-convert-region): Follow the change.
1272 (egg-open-if-not): Removed.
1273 * wnn.el (wnn-start-conversion): Follow the change.
1275 * wnn.el (wnn-environment-list): Removed.
1276 (wnn-environment-serial): Removed.
1277 (wnn-connect-and-init): Removed.
1278 (wnn-environments): New variable which holds all environments.
1280 1997-05-15 NIIBE Yutaka <gniibe@akebono.etl.go.jp>
1282 * wnn.el (wnn-change-bunsetsu-length): Bug fix. Last argument to
1283 wnnrpc-b-set-freq-down is list of bunsetsu.
1285 * mlh.el (mlh-do-spacing): Emacs 20 related changes.
1286 Use category-set-mnemonics, and char-category-set.
1287 According to suggestion by Kenichi Handa <handa@etl.go.jp>.
1289 1997-05-15 MORIOKA Tomohiko <morioka@jaist.ac.jp>
1291 * wnn.el (wnn-usr-dic-dir): New variable.
1292 (wnn-filename): Use wnn-usr-dic-dir.
1294 * its.el (its-defrule): New argument `enable-overwrite'.
1296 1997-05-14 NIIBE Yutaka <gniibe@mri.co.jp>
1298 * convert.el (egg-exit-conversion-unread-char): Use newer variable
1299 unread-command-events, as unread-command-char is obsolete.
1300 (egg-shrink-bunsetsu, egg-source-maxlen-from-here,
1301 egg-enlarge-bunsetsu, egg-next-conversion, egg-exit-conversion,
1302 egg-exit-conversion, egg-insert-converted-result): New property
1303 EGG-CONVERSION-ENGINE, which specifis backend.
1305 (egg-start-conversion, egg-get-number-of-bunsetsu,
1306 egg-get-bunsetsu-converted, egg-set-bunsetsu-pos,
1307 egg-get-bunsetsu-pos, egg-get-number-of-candidates,
1308 egg-get-candidate, egg-decide-candidate,
1309 egg-change-bunsetsu-length, egg-get-bunsetsu-source,
1310 egg-end-conversion): Change the interface, new argument c.
1311 * wnn.el (wnn-start-conversion, wnn-get-number-of-bunsetsu,
1312 wnn-get-bunsetsu-converted, wnn-set-bunsetsu-pos,
1313 wnn-get-bunsetsu-pos, wnn-get-number-of-candidates,
1314 wnn-get-candidate, wnn-decide-candidate,
1315 wnn-change-bunsetsu-length, wnn-get-bunsetsu-source,
1316 wnn-end-conversion): Likewise.
1318 * convert.el (egg-open-if-not): Change the interface. Return
1321 * wnnrpc.el (wnnrpc-following-char-or-wait, wnnrpc-unpack-u32,
1322 wnnrpc-unpack-u16, wnnrpc-unpack-u8, wnnrpc-unpack-u16-string,
1323 wnnrpc-unpack-u8-string): Change the interface to avoid
1324 compilation warnings.
1325 (wnnrpc-unpack): Use new interface.
1327 * wnn.el (wnn-open): Change the name of WNN buffer as debug has
1330 1997-05-11 NIIBE Yutaka <gniibe@mri.co.jp>
1332 * wnnrpc.el (wnnrpc-following-char-or-wait): Rename from
1333 wnn-following-char-or-wait.
1334 (wnnrpc-following-char-or-wait): Declare with DEFUN instead of
1337 1997-05-10 NIIBE Yutaka <gniibe@mri.co.jp>
1339 * Throughout: Use JUNET coding system for file format.
1341 * mlh.el: Move some comments to HISTORY.
1342 (mlh-version): Removed.
1343 Remove all autoload entries.
1344 (henkan-region-function): Removed.
1345 (member): Don't need any more.
1347 * mlh-nihongo.el: Renamed from nihongo.el.
1349 * mlh.el (mlh-space-bar-backward-henkan): call egg-convert-region
1351 (mlh-space-bar-backward-henkan): Fix for Emacs 20.
1352 Don't call egg:do-auto-fill.
1353 (mlh-backward-henkan): Use set-marker-insertion-type.
1354 (mlh-do-spacing): Char-category.
1356 * mlh.el, nihongo.el: Taken from mlh-1.002 distribution.
1358 1997-05-07 NIIBE Yutaka <gniibe@mri.co.jp>
1360 * convert.el (egg-update-frequency): Removed.
1361 (egg-conversion-backend): Remove entry for update-frequency.
1363 * wnn.el (wnn-dictionary-specification): Change parameters
1364 according to suggestion by Tomoko Yoshida in mule-jp@etl.go.jp.
1365 Original had been taken from wnn-4.2.
1367 1997-05-06 NIIBE Yutaka <gniibe@mri.co.jp>
1369 * convert.el (egg-next-conversion): Bug fix. It's max+ instead of n.
1371 1997-05-05 NIIBE Yutaka <gniibe@mri.co.jp>
1373 * wnnfns.c (Fwnn_get_bunsetsu_converted): Rename from
1374 get-converted-bunsetsu.
1375 (Fwnn_get_bunsetsu_source): Ditto.
1376 * convert.el (egg-get-bunsetsu-converted): Ditto.
1377 (egg-get-bunsetsu-source): Ditto.
1379 * wnn.el (wnn-create-environment): New file which mimics API of
1382 1997-04-29 NIIBE Yutaka <gniibe@mri.co.jp>
1384 * wnnrpc.el: New file which implements Remote Procedure Calls of WNN.
1386 1997-04-16 NIIBE Yutaka <gniibe@mri.co.jp>
1388 * its/kanainput.el (normal-pair): Use its-defrule*.
1390 * its.el (its-defrule*): Rewritten.
1392 * its/hira.el ("n"): Alternative implementation using 'otherwise'.
1394 * its.el (its-processing-map): Removed.
1395 (its-register-map): Rename from its-set-map.
1396 (its-register-map): Remove first argumet NAME.
1397 (its-defrule): Remove last optional argument END.
1398 (its-define-otherwise-terminate-here): New function.
1399 (its-goto-state): New function.
1400 (its-defrule, its-defoutput): Use its-goto-state.
1402 1997-04-12 NIIBE Yutaka <gniibe@mri.co.jp>
1404 * its.el: Enhance meaning of ITS state machine. Now, <key>
1405 includes representation of "ANY of key stroke" (-2).
1406 (its-defrule): New feature end=='otherwise.
1407 (its-defrule*): New function.
1408 (its-state-machine): Implement otherwise-terminate-before-this-key.
1410 * its/kanainput.el (its-k-zenkaku-escape, its-k-hankaku-escape,
1411 its-k-symbols-escape): Add prefix its-. Let them defconst.
1412 "W": Move the definition beginning to avoid error.
1414 1997-03-26 NIIBE Yutaka <gniibe@mri.co.jp>
1416 * convert.el (egg-next-conversion): -1 goes to end of bunsetsu.
1418 1997-03-25 NIIBE Yutaka <gniibe@mri.co.jp>
1420 * egg.el (egg-mode-on, egg-input-mode, egg-in-fence-mode): Deleted.
1421 (egg-fence-face-on, egg-fence-face-off): Deleted.
1422 (egg-region-start, egg-region-end): Deleted.
1424 1997-03-24 NIIBE Yutaka <gniibe@mri.co.jp>
1426 * its/hira.el ("n"): Add "z" and "?" for prefetch char of "n".
1428 Implement conversion mode.
1429 * convert.el: New file.
1431 1997-03-23 NIIBE Yutaka <gniibe@mri.co.jp>
1433 * its.el (its-mode-map): As "\C-g" is used in global-map, use
1434 "\C-]" instead (for its-cancel-input).
1436 1997-03-22 NIIBE Yutaka <gniibe@mri.co.jp>
1438 Introduce new scheme to specify server.
1439 * wnnfns.c (Qjserver, Qcserver, Qtserver, Qkserver): Removed.
1440 (Vwnn_server_type): Integer variable.
1441 (wnn_get_server_type): Renamed from wnn_check_server_type.
1442 (charset_wnn_server_type): Renamed from lc_wnn_server_type.
1444 Introduce new scheme to specify uniqueness.
1445 * wnnfns.c (Qwnn_no_uniq, Qwnn_uniq, Qwnn_uniq_kanji): Removed.
1446 (Vwnn_uniqueness_specifier): Integer variable. Renamed from
1449 1997-03-21 NIIBE Yutaka <gniibe@mri.co.jp>
1452 * wnnfnc.c (Throughout): Change Lisp function name to follow the
1453 format of wnn-VERB-OBJECT.
1454 Use XFASTINT instead of XINT, if appropriate.
1456 * wnnfns.c (Fwnn_fuzokugo_set): Merged with wnn-set-fuzokugo of
1459 * wnn-egg.el (wnn-set-fuzokugo): Deleted.
1461 * wnnfns.c (Fwnn_dict_add): Merged with wnn-add-dict of wnn-egg.el.
1462 * wnn-egg.el (wnn-add-dict): Deleted.
1464 * wnn-egg-msg.el (wnn-msg-get): Renamed from egg-msg-get.
1465 (wnn-message-alist): Renamed from egg-message-alist.
1468 * wnnfns.c (wnn_check_server_type): Renemed from
1469 check_wnn_server_type.
1471 * wnn-egg-msg.el (egg-error): Deleted. Not useful enough.
1472 * wnn-egg.el (Throughout): Replace egg-error by error.
1474 * egg.el (egg-sai-henkan-start, egg-sai-henkan-end,
1475 egg-old-bunsetu-suu): Moved from wnn-egg.el.
1477 * wnn-egg.el (Throughout): Change variable name and function name.
1478 Added wnn- prefix, egg- prefix.
1479 * wnn-egg.el: Delete historical defaliases. Only support
1480 wnn-set-[cjk]server-hostname.
1482 * wnn6.el: New file. Discriminate Wnn6 related functions.
1483 * eggrc-wnn6: New file. Discriminate Wnn6 related setting.
1485 * egg-fence.el: Removed.
1487 1997-03-20 NIIBE Yutaka <gniibe@mri.co.jp>
1489 Distingush continuation of egg-mode and turn off of egg-mode.
1490 * its.el (its-mode-map): Bind "\C-\\" to its-exit-mode-no-egg.
1491 (its-exit-mode-internal): New argument egg-mode-flag.
1492 (its-exit-mode-no-egg): New Function.
1494 Rethink about keymap. Once, the intention of egg-mode-map has
1495 been to override ALL of the keymap. That's so selfish, and not
1496 friendly to other parts of Emacs. This implementation intend to
1497 be more friendly with other keymaps.
1498 * its.el (its-mode-map): Remove definition of "\C-c" for
1499 its-cancel-input, as C-c has special meaning in Emacs. We should
1501 Remove definition of "\C-q" for its-select-previous-map.
1502 Remove definition of "\C-_" for egg-jis-code-input.
1503 Remove definition of "\C-w", "\C-@", [?\C-\ ] for
1504 egg-henkan-fence-region.
1506 Implement START/CURSOR/END scheme.
1507 * its.el (its-input-to-vsyl): New function.
1508 (its-beginning-of-input-buffer): New function.
1509 (its-end-of-input-buffer): New function.
1510 (its-backward-SYL): New function.
1511 (its-forward-SYL): New function.
1512 (its-delete-SYL): New function.
1513 (its-delete-backward-SYL): New function.
1514 (its-delete-backward-SYL-internal): New function.
1515 (its-delete-backward-within-SYL): New function.
1516 (its-delete-by-keystroke): New Variable.
1517 (its-exit-mode): New function.
1518 (its-exit-mode-internal): New function.
1520 * its.el (its-standard-map-list, its-find, its-next-map,
1521 its-previous-map): Deleted.
1522 (its-get-indicator): Delete duplicated definition. Leave one which
1523 takes <map> argument.
1524 (its-input): Rename from its-input-subsubsub.
1526 * egg.el (egg-mode-map): Don't include SPACE.
1529 * its.el (its-state-machine): Add new argument EMIT. Return CURSOR.
1530 (its-state-machine-keyseq): Likewise.
1531 (its-input-subsubsub): Return CURSOR.
1532 (its-input-subsub): Deleted.
1533 (its-DSYL-p): Deleted.
1534 (its-buffer-insert-SYL-list): Deleted.
1535 (its-buffer-ins/del-SYL): New function.
1536 (its-input-end): Change the argument to P of point, and return VOID.
1538 Change structure of <map>. <start-state> is normal <state>.
1539 (its-new-map): Follow the change of structure.
1540 (its-get-indicator, its-set-indicator, its-reset-start-state):
1542 (its-reset-start-state): Renamed from its-reset-start.
1544 Don't use <input-buffer>, but introduce new scheme of SYL property.
1545 (its-change-t-to-nil, its-nil-index, its-bytes-between,
1546 its-delete-between, its-move-nil--->, its-move-nil-<--,
1547 its-move-nil-<--sub, its-move-nil-to-last, its-move-nil-to-first):
1550 1997-03-19 NIIBE Yutaka <gniibe@mri.co.jp>
1552 * its.el: Change the structure of DSYL. Same as <state>.
1553 (its-input-subsub): Follow the change of structure.
1554 (its-make-DSYL): Deleted.
1555 (its-get-keyseq-cooked): New function.
1557 Swap the meaning of T/NIL of <SYL>.
1559 Delete the structure of <input-buffer>.
1560 (its-new-input-buffer): Deleted.
1561 (its-input-subsub): Remove the argument SYLP.
1562 (its-input, its-input-sub, its-init-text-properties): Deleted.
1564 Introduce START, END and CURSOR.
1566 1997-03-19 NIIBE Yutaka <gniibe@akebono.etl.go.jp>
1568 Global-map should be used, for key sequence not defined by
1569 its-mode-map and/or egg-mode-map. Don't mask other maps.
1570 * its.el (its-mode-esc-map): Deleted.
1571 (its-mode-map): Include define-key of the esc-map here.
1572 * egg.el (egg-mode-esc-map): Deleted.
1573 (egg-mode-map): Include define-key of the esc-map here.
1575 1997-03-18 NIIBE Yutaka <gniibe@mri.co.jp>
1577 * its.el (its-input): Rename from its-input-input-buffer.
1578 (its-state-machine): Handle END of input (key == -1).
1580 ITS minor mode deleted. It's implemented by local-map of text
1582 (its-mode): Remove the variable.
1583 (its-mode): Remove the function.
1585 * its.el (<input-buffer>): Change the order of <SYL> list.
1586 (car sylp) is last entry of the list.
1587 (its-input-buffer): Deleted. It's now a member of text
1589 (<map>): Change the structure. Start state should have "" for keyseq.
1590 (its-get-start-state): Follow chage of the <map> structure.
1591 (its-reset-start, its-set-indicator, its-get-indicator): Likewise.
1592 (its-new-state, its-new-map): Split from its-new-state/map.
1593 (its-make-map): Deleted.
1595 1997-03-17 NIIBE Yutaka <gniibe@mri.co.jp>
1597 * its.el (its-buffer-insert-SYL-list): Use insert-and-inherit to
1599 (its-fence-overlay): Removed. Don't use overlay, as it has no
1600 information in undo-list.
1602 1997-03-16 NIIBE Yutaka <gniibe@mri.co.jp>
1604 * its/hira.el ("n"): Use new feature END.
1605 ("ppy", "bby", "ddy", "jjy", "zzy", "ggy", "lly", "rry", "hhy",
1606 "cch", "tts", "tty", "ssh", "ssy", "kky"): its-defoutput.
1608 * its.el (its-defrule): Add argument END.
1609 (its-buffer-delete-SYL): Bug fix. Use length instead of string-width.
1611 1997-03-15 NIIBE Yutaka <gniibe@mri.co.jp>
1613 * its.el (its-input-input-buffer): Implement the case of DSYL.
1615 1997-03-14 NIIBE Yutaka <gniibe@mri.co.jp>
1617 * its.el (its-buffer-delete-SYL): Handle the case of NIL.
1619 * its/hira.el: Implement "kka" and others. Implemlement "N".
1620 (digit-characters, symbol-characters, downcase-alphabets,
1621 upcase-alphabets): Delete useless defvar-s.
1623 1997-03-14 NIIBE Yutaka <gniibe@akebono.etl.go.jp>
1625 * its/hira.el ("roma-kana"): Follow change of implementation of
1628 Correct the abuse of the word "MODE". It seems that it's direct
1629 influence of "mode" in Emacs, but it's not mode at all.
1630 * its.el (its-map-alist): Renamed from its-mode-alist.
1631 (its-get-map): Renamed from its-get-mode-map.
1632 (its-set-map): Renamed from its-set-mode-map.
1633 (its-define-state-machine): Renamed from its-define-mode.
1634 (its-select-map-menu): Renamed from its-select-mode-menu.
1635 (its-select-map-from-menu): Renamed from its-select-mode-from-menu.
1636 (its-standard-map-list): Renamed from its-standard-modes.
1637 (its-next-map): Renamed from its-next-mode.
1638 (its-previous-map): Renamed from its-previous-mode.
1639 (its-select-map): Renamed from its-select-mode.
1640 (its-get-indicator): Renamed from its-get-mode-indicator.
1642 (its-select-map-from-menu): As it's not mode, don't need offer hooks.
1643 (its-next-map): Likewise.
1644 (its-previous-map): Likewise.
1645 (its-select-map): Likewise.
1647 Change the implementation of its-mode-alist. Name is in <map> now.
1648 * its.el (its-get-mode-map): Just do assoc.
1649 (its-set-mode-map): Simplified.
1651 * its.el (its-get-indicator): Renamed from its-map-indicator.
1652 (its-set-indicator): Renamed from its-map-set-indicator.
1653 (its-get-start-state): Renamed from its-map-start.
1654 (its-new-state): Change the argunents.
1655 (its-map-set-start): Removed.
1656 (its-reset-start): New function.
1658 Remove old implemantation of translator.
1659 * its.el (its-resize, its-maps, its-actions, its-inputs,
1660 its-level, its-maxlevel, its-char-from-buff, its-interactive):
1662 (its-make-action, its-reset-maps, its-current-map,
1663 its-previous-map, its-level, its-enter-newlevel, its-reset-input,
1664 its-flush-input-before-point, its-peek-char, its-read-char):
1666 (its-push-char, its-ordinal-charp, its-delete-charp): Removed.
1667 (its-translate-region): Removed.
1668 (its-buff-s, its-buff-e): Removed.
1669 (its-state-terminalp): Removed.
1671 Remove selection of candidates in map, it's questionable to
1672 implement this feature with SYL. Might rethink in future.
1673 (its-make-menu-from-map-result, its-make-alist-from-map-result):
1675 (its-make-menu-from-map, its-make-menu-from-map*): Removed.
1676 (its-make-alist-from-map, its-make-alist-from-map*): Removed.
1677 (its-completing-read): Removed.
1678 (its-minibuffer-local-must-match-map,
1679 its-minibuffer-local-completion-map): Removed.
1680 (its-minibuffer-completion-help, car-string-lessp,
1681 its-temp-echo-area-contents): Removed.
1683 Implement SYL-based state machine.
1684 * its.el (its-input-buffer, its-barf-on-invalid-keyseq): New variables.
1685 (its-new-input-buffer): New function.
1686 (its-self-insert-char): New command.
1687 (its-initial-ISYL, its-make-DSYL, its-make-VSYL,
1688 its-input-input-buffer, its-input-input-buffer-sub,
1689 its-state-machine, its-state-machine-keyseq,
1690 its-buffer-delete-SYL, its-buffer-insert-SYL-list,
1691 its-get-next-state, its-get-ksa/b, its-get-keyseq, its-ksa-p,
1692 its-get-output): New function.
1693 (its-get-KAS): Removed.
1694 (its-get-state, its-get-action, its-set-action): Removed.
1695 (its-make-KAS, its-get-KAS): Removed.
1697 * its.el (its-defrule-sub): Merged into its-defrule.
1699 1997-03-13 NIIBE Yutaka <gniibe@akebono.etl.go.jp>
1701 * its.el: (its-define-mode): Change the arguments.
1702 * its/zhuyin.el ("zhuyin"): Follow the changes of its-define-mode.
1703 * its/zenkaku.el ("zenkaku-downcase"): Likewise.
1704 * its/pinyin.el ("PinYin"): Likewise.
1705 * its/kata.el ("roma-kata"): Likewise.
1706 * its/kanainput.el ("kanainput"): Likewise.
1707 * its/hira.el ("roma-kana"): Likewise.
1708 * its/hankaku.el ("downcase"): Likewise.
1709 * its/hangul.el ("hangul"): Likewise.
1710 * its/han-kata.el ("roma-han-kata"): Likewise.
1712 * its.el (its-action-output, its-action-next, its-get-next-map,
1713 its-set-next-map): Removed.
1714 (its-make-next-state): New function.
1715 (its-make-state): Removed.
1717 * its.el (its-defrule-sub): Renamed from `its-defrule**'.
1719 * wnnfns.h: New file. Macros for WNN6 are defined here.
1720 * wnn6fns.c: New file. Moved from wnnfns.c for WNN6 specific
1723 1997-03-12 NIIBE Yutaka <gniibe@mri.co.jp>
1725 * wnnfns.c: cosmetic changes (indentation, commenting-out-style,
1726 and compare to Qnil, etc).
1727 Get rid of "register" qualifier.
1729 1997-03-05 NIIBE Yutaka <gniibe@mri.co.jp>
1731 * its.el (its-define-mode): Change internal structure. Completely
1733 (its-make-map): Function to make map.
1734 (its-make-state): New function. Make new state.
1735 (its-make-KAS): New function. Make Key-Action-State triad.
1736 (its-state-terminalp): New function. True when the state is
1738 (its-map-indicator, its-map-set-indicator,): Changed.
1739 (its-map-terminalp, its-map-incrementalp,
1740 its-map-set-incrementalp, its-map-alist, its-map-set-alist,
1741 its-map-action, its-map-set-action): Removed.
1743 (its-defrule-verbose): Deleted. Seems debug purpose variable.
1745 (its-make-map): Removed <state>. It was useless space eater.
1746 (its-map-indicator, its-map-set-indicator, its-map-alist,
1747 its-map-set-alist, its-map-action, its-map-set-action): Follow the
1749 (its-define-mode): Likewise.
1750 (its-defrule**): Change the argument. Delete STATE.
1751 (its-defrule): Likewise.
1752 (its-map-state, its-map-set-state): Removed.
1754 <topmap>: Changed the structure. Introduce <incrementalp>, which
1755 is t on hangul-map, zhuyin-map, and kanainput-map.
1756 (its-define-mode): Change the arguments. INDICATOR and RESET is
1757 always required. Add new argument INCREMENTALP.
1758 * its/kanainput.el ("kanainput"): Use new API of its-define-mode.
1759 * its/hangul.el ("hangul"): Likewise.
1760 * its/zhuyin.el ("zhuyin"): Likewise.
1761 * its.el (its-make-terminal-state-sofar): Removed.
1762 (its-default-make-terminal-state): Removed.
1763 (its-make-terminal-state): Removed
1764 (its-make-non-terminal-state): Removed. Not used.
1765 (its-map-incrementalp, its-map-set-incrementalp): New functions.
1767 1997-03-04 NIIBE Yutaka <gniibe@mri.co.jp>
1769 * its.el (its-defrule-conditional, its-defrule-conditional*):
1770 Removed. Evaluating cond clause at runtime is stupid. Rules
1771 should be determined at compile time, not at run time.
1772 (its-get-action): Simplified. It's always standard.
1773 (its-make-terminal-state-sofar): Likewise.
1774 (its-make-action): Renamed from its-make-standard-action.
1775 (its-standard-actionp): Removed. No use.
1776 (its-translate-region): Simplified.
1778 (its-map-topmap-p): Removed. No use.
1780 (its-simple-actionp, its-collect-simple-action): Removed. No use.
1782 (its-insert-output-string, its-display-status-string): Removed.
1783 It seemd these variables is to debug ITS itself.
1784 (its-translate-region): Simplified.
1786 * its/hira.el (".", ",", "n", "nn"): Rules should be determined at
1788 * its/han-kata.el: Likewise.
1789 * its/kata.el: Likewise.
1791 * its.el (its-make-standard-action): Simplified.
1792 (its-make-standard-action): Remove alternative output.
1793 (its-standard-actionp): Simplified.
1794 (its-action-next): Simplified.
1795 (its-select-alternative-output-menu): Removed. Not used at all.
1796 (its-select-alternative-output): Ditto.
1798 * its/han-kata.el, its/zenkaku.el, its/kata.el, its/kanainput.el,
1799 its/hira.el, its/hankaku.el: Add (require cl).
1801 * its.el (its-enable-double-n-syntax, its-use-kuten-for-period,
1802 its-use-touten-for-comma, its-zenkaku-escape, its-hankaku-escape):
1803 Declare here. Add prefix `its-'. ):
1805 (its-defrule, its-defrule*): Remove MAP argument.
1806 Merged into its-defrule.
1808 1997-03-04 NIIBE Yutaka <gniibe@akebono.etl.go.jp>
1810 * its.el (its-completing-input-menu): Removed. Not used.
1811 (its-completing-input): Ditto.
1812 (its-translate-region): Remove (null action) clause. It's identical
1815 (its-map-supers): Deleted.
1816 (its-map-set-supers): Ditto.
1817 (its-get-next-map-locally): Deleted.
1819 (its-define-mode): Remove supers.
1820 (its-make-map): Likewise.
1822 (its-simulate-input): sref -> aref. add char-bytes -> +1.
1823 (its-defrule**): Likewise.
1825 (its-flush-input-before-point): Delete useless save-excursion.
1826 (its-push-char): Likewise.
1827 (its-translate-region): Likewise.
1829 * its/zhuyin.el (its-make-terminal-state):
1830 * its/kanainput.el (its-make-terminal-state):
1831 * its/hangul.el (its-make-terminal-state):
1832 Use its-make-terminal-state-sofar.
1834 * its/kanainput.el (its-make-terminal-state-kanainput): Removed.
1836 * its.el (its-make-terminal-state-sofar): Renamed.
1837 (was: its-make-terminal-state-hangul)
1839 * its/han-kata.el (its-select-hankaku-katakana): Renamed.
1840 (was: its:select-hankaku-katakana).
1842 * its.el (its-map-topmap-p, its-map-supers, its-map-set-supers,
1843 its-map-terminalp, its-map-state, its-map-set-state,
1844 its-map-indicator, its-map-set-indicator, its-map-action,
1845 its-map-set-action, its-map-alist, its-map-set-alist,
1846 its-get-action, its-action-output, its-action-next,
1847 its-get-next-map, its-get-next-map-locally, its-set-next-map,
1848 its-collect-simple-action, its-read-current-its-string,
1849 its-make-map): Add prefix 'its-'.
1851 * its.el (its-defrule-select-mode-temporally): Deleted.
1852 (its-select-mode-temporally): Deleted.
1853 (its-select-previous-mode): Deleted.
1855 * its/hira.el ("q", "Q"): Removed.
1857 * its.el (its-defrule**): Don't call coerce-internal-string.
1858 (map-state-string): Removed.
1859 (its-default-make-standard-non-terminal-state): Don't call
1862 * egg.el (characterp, coerce-internal-string, coerce-string): Removed.
1864 * its.el (its-insert-char): Deleted.
1865 (its-internal-mode-alist): Removed.
1866 (its-set-mode-map, its-define-mode): Remove internalp.
1867 (its-set-mode-indicator): Removed.
1869 * egg-fence.el (egg-fence-self-insert-command): Add prefix 'egg-'.
1871 * its.el (fence-self-insert-command): Move to egg-fence.el.
1873 * egg-fence.el (egg-exit-fence-mode): Renamed (egg-fence-exit-mode).
1874 (egg-enter-fence-mode-and-self-insert): Deleted.
1876 * egg.el (egg-quit-egg-mode): Deleted.
1878 * egg-misc.el (egg-fence-toggle-egg-mode): Add prefix 'egg-'.
1879 (egg-fence-toggle-egg-mode): beep -> ding.
1880 (global-map): bind C-\ to egg-enter-fence-mode.
1882 1997-03-02 NIIBE Yutaka <gniibe@mri.co.jp>
1884 * egg-henkan.el: New file.
1886 Use new API (egg-get-bunsetu-kanji, egg-get-bunsetu-yomi,
1887 egg-is-dai-bunsetu, bunsetu-suu, egg-hindo-update,
1888 egg-get-bunsetu-end).
1890 * wnn-egg.el: Move egg-henkan-* to egg-henkan.el.
1892 * wnn-egg.el (egg-startup-file-search-path): Remove current
1894 (egg-open-wnn): Renamed from EGG-open-wnn.
1895 (bunsetu-suu): New function.
1896 (egg-get-bunsetu-kanji, egg-get-bunsetu-yomi): New function.
1897 (egg-is-dai-bunsetu): New function.
1898 (egg-hindo-update): New function.
1899 (egg-get-bunsetu-end): New function.
1901 (egg-henkan-region, egg-gyaku-henkan-region,
1902 egg-henkan-region-internal, egg-henkan-paragraph,
1903 egg-gyaku-henkan-paragraph, egg-henkan-sentence,
1904 egg-gyaku-henkan-sentence, egg-henkan-word, egg-gyaku-henkan-word,
1905 egg-henkan-insert-kouho, egg-henkan-kakutei,
1906 egg-henkan-kakutei-first-char, egg-henkan-kakutei-before-point,
1907 egg-sai-henkan, egg-henkan-goto-bunsetu,
1908 egg-henkan-forward-bunsetu, egg-henkan-backward-bunsetu,
1909 egg-henkan-first-bunsetu, egg-henkan-last-bunsetu,
1910 egg-henkan-hiragana, egg-henkan-katakana, egg-henkan-next-kouho,
1911 egg-henkan-next-kouho-dai, egg-henkan-next-kouho-sho,
1912 egg-henkan-previous-kouho, egg-henkan-previous-kouho-dai,
1913 egg-henkan-previous-kouho-sho, egg-henkan-goto-kouho,
1914 egg-henkan-bunsetu-chijime-dai, egg-henkan-bunsetu-chijime-sho,
1915 egg-henkan-bunsetu-nobasi-dai, egg-henkan-saishou-bunsetu,
1916 egg-henkan-saichou-bunsetu, egg-bunsetu-length-henko,
1917 egg-henkan-quit, egg-henkan-select-kouho,
1918 egg-henkan-select-kouho-dai, egg-henkan-select-kouho-sho,
1919 egg-henkan-word-off, egg-henkan-kakutei-and-self-insert,
1920 egg-henkan-mode-map, egg-henkan-mode-esc-prefix,
1921 egg-henkan-help-command, egg-henkan-inspect-bunsetu):
1924 (egg-henkan-mode-in-use): Deleted.
1925 (set-egg-henkan-mode-format): Deleted. Don't need.
1927 (disconnect-wnn): Let it be normal function, instead of command.
1930 (set-jserver-host-name, set-kserver-host-name,
1931 set-cserver-host-name): Use defalias.
1933 (close-wnn): Take an argument of wnn-server-type.
1934 (wnn-egg-kill-emacs-function, set-wnn-host-name,
1935 set-cwnn-host-name, set-kwnn-host-name): Likewise.
1937 * egg.el (egg-global-map-backup): Deleted.
1938 (egg-local-map-backup): Deleted.
1939 (egg-insert-after-hook): it's global variable, nod buffer-local.
1941 * egg-fence.el (egg-henkan-fence-region, egg-enter-fence-mode,
1942 egg-fence-katakana, egg-fence-hiragana, egg-fence-hankaku,
1943 egg-fence-zenkaku, egg-fence-backward-char,
1944 egg-fence-forward-char, egg-fence-beginning-of-line,
1945 egg-fence-end-of-line, egg-fence-transpose-chars,
1946 egg-fence-delete-char, egg-fence-backward-delete-char,
1947 egg-fence-kill-line, egg-fence-exit-mode, egg-fence-cancel-input,
1948 egg-fence-mode-help-command): Add Prefix `egg-'.
1950 (egg-fence-mode-map): Remove binding to eval-expression (C-z).
1952 (egg-self-insert-non-undo-count): Removed.
1953 (egg-self-insert-command): Removed.
1955 (egg-fence-backward-char, egg-fence-forward-char,
1956 egg-fence-transpose-chars, egg-fence-delete-char,
1957 egg-fence-backward-delete-char): beep -> ding.
1958 wnn-egg.el (egg-henkan-select-kouho): Likewise.
1960 1997-02-27 NIIBE Yutaka <gniibe@mri.co.jp>
1962 * wnn-egg.el (push-end, push-end-internal): Removed.
1964 * its.el (dolist): Removed. It's in CL package.
1965 (for-each, for-each*): Removed.
1967 * egg-keymap.el: Removed. I guess noone use it.
1969 * egg-jsymbol.el (*-alist): Declare by defconst.
1971 * egg-misc.el (toggle-egg-mode): Removed.
1973 * All files: Change the identifier XXX:YYYY --> XXX-YYYY,
1976 * egg-fence.el (enter-fence-mode): Use new API for marker
1977 insertion `set-marker-insertion-type'.
1978 * its.el (its-*buff-e*): Likewise.
1980 * egg-jsymbol.el: lc-jp --> (charset-id 'japanese-jisx0208)
1981 lc-jp2 --> (charset-id 'japanese-jisx0212).
1983 1997-02-26 NIIBE Yutaka <gniibe@akebono.etl.go.jp>
1985 * egg-fence.el (egg:fence-mode-map): Renamed from fence-mode-map.
1986 (egg:fence-mode-esc-prefix): Renamed from egg:fence-mode-esc-map.
1987 (henkan-fence-region-or-single-space): Removed.
1989 * egg-misc.el (toggle-egg-mode): mc-flag
1990 -> enable-multibyte-characters.
1992 * its.el (read-current-its-string): New function. Moved from
1994 (In meny functions): beep --> ding.
1996 * egg-misc.el (read-hiragana-string): Removed.
1997 (read-kanji-string): Removed.
1998 (egg:special-symbol-input): Renamed from special-symbol-input.
1999 (egg:special-symbol-input-point): Renamed from
2000 special-symbol-input-point.
2001 (si:*global-map*): Remeved.
2002 Removed 'Changes on Global map'.
2003 (its-mode-map): Renamed from mule-keymap.
2005 * wnn-egg.el (henkan-region-internal): Use new API for undo.
2006 (henkan-kakutei): Likewise.
2007 (henkan-kakutei-first-char): Likewise.
2008 (henkan-kakutei-before-point): Likewise.
2009 (sai-henkan): Likewise.
2010 * egg.el (egg:quit-egg-mode): Likewise.
2012 * egg-fence.el (egg:*fence-open*, egg:*fence-close*,
2013 egg:*fence-face*): Let them be declared by defvar.
2014 (egg:*fence-open-in-cont*, egg:*fence-close-in-cont*,
2015 egg:*fence-face-in-cont*): Likewise.
2017 (set-egg-fence-mode-format): Removed. Useless. Don't need to be
2019 (set-egg-fence-mode-format-in-cont): Removed.
2020 (egg:*face-alist*): Removed.
2022 * wnn-egg-misc.el (its:select-mode, its:select-mode-from-menu,
2023 its:next-mode, its:previous-mode):
2024 Removed (Merged into its.el).
2026 * its.el (its:select-mode, its:select-mode-from-menu,
2027 its:next-mode, its:previous-mode): Call hook of
2028 `its:select-mode-hook'.
2030 * diced.el: Removed. This depends on wnn. Functions are moved to
2033 * wnn-egg-dict.el (remove-regexp-in-string): Removed.
2034 (toroku-region): Don't call `remove-regexp-in-string'. Removing
2035 invalid sequence (TAB?) automatically is not good idea. It should
2036 notify user. Currently, just don't remove.
2038 * busyu.el (busyu-table): defconst instead of defvar.
2039 (busyu-kaku-alist): defconst instead of defvar.
2041 * its.el (egg:member): Removed. Not used.
2043 * wnn-egg-msg.el (*egg-message-alist*): Include asking string in
2044 register-notify and remove-notify. Should also change Korean and
2047 * egg.el: Removed "Tamago Notification System".
2048 It is useless, as we have *Messages* buffer in GNU Emacs 19.
2050 * diced.el (diced-execute): Don't use `notify' but `message'.
2051 (set-dict-comment): Likewise.
2052 * its.el (its-defrule**): Likewise.
2053 * wnn-egg-dict.el (egg:toroku-word): Likewise.
2054 * wnn-egg-msg.el (egg:error): Likewise.
2055 * wnn-egg.el (set-wnn-param): Likewise.
2056 (EGG:open-wnn): Likewise.
2057 (close-wnn): Likewise.
2058 (henkan-word-off): Likewise.
2059 (henkan-inspect-bunsetu): Likewise.
2061 * diced.el (diced-execute): Don't use `notify-yes-or-no-p' but use
2062 plain `yes-or-no-p' and format.
2063 * wnn-egg-dict.el (egg:toroku-word): Likewise.
2065 * egg.el (notify-yes-or-no-p-internal): IIDESUKA is not good.
2066 it should get the message through egg:get-msg. Currently, use
2068 (notify-y-or-n-p-internal): Likewise.
2070 * wnn-egg.el: Split into wnn-egg-dict.el, wnn-egg-misc.el, and
2072 (many functions): remove commented out line of
2073 (open-wnn-if-disconnected).
2075 * egg.el: Split into egg.el, egg-fence.el, egg-misc.el,
2076 jis-input.el, and modeline.el.
2078 * wnn-egg.el (egg-default-startup-file): change to eggrc-wnn from
2080 (henkan-region-internal): Use new API for marker insertion
2081 `set-marker-insertion-type'.
2083 1997-02-13 NIIBE Yutaka <gniibe@akebono.etl.go.jp>
2085 * menu.el (menu:select-from-menu): Rewritten.