Function: kkc-update-conversion
kkc-update-conversion is a byte-compiled function defined in
kkc.el.gz.
Signature
(kkc-update-conversion &optional ALL)
Source Code
;; Defined in /usr/src/emacs/lisp/international/kkc.el.gz
;; Update the conversion area with the latest conversion selected.
;; ALL if non-nil means to update the whole area, else update only
;; inside quail-overlay-head.
(defun kkc-update-conversion (&optional all)
(goto-char (overlay-start kkc-overlay-head))
(cond ((= (car kkc-current-conversions) 0) ; Hiragana
(let ((i 0))
(while (< i kkc-length-converted)
(insert (aref kkc-current-key i))
(setq i (1+ i)))))
((= (car kkc-current-conversions) -1) ; Katakana
(let ((i 0))
(while (< i kkc-length-converted)
(insert (japanese-katakana (aref kkc-current-key i)))
(setq i (1+ i)))))
(t
(insert (nth (car kkc-current-conversions) kkc-current-conversions))))
(delete-region (point) (overlay-start kkc-overlay-tail))
(if all
(let ((len (length kkc-current-key))
(i kkc-length-converted))
(delete-region (overlay-start kkc-overlay-tail)
(overlay-end kkc-overlay-head))
(while (< i kkc-length-head)
(if (= (car kkc-current-conversions) -1)
(insert (japanese-katakana (aref kkc-current-key i)))
(insert (aref kkc-current-key i)))
(setq i (1+ i)))
(let ((pos (point)))
(while (< i len)
(insert (aref kkc-current-key i))
(setq i (1+ i)))
(move-overlay kkc-overlay-head
(overlay-start kkc-overlay-head) pos)
(delete-region (point) (overlay-end kkc-overlay-tail)))))
(unwind-protect
(run-hook-with-args 'kkc-after-update-conversion-functions
(overlay-start kkc-overlay-head)
(overlay-end kkc-overlay-head))
(goto-char (overlay-end kkc-overlay-tail))))