Function: hangul2-input-method-jaum
hangul2-input-method-jaum is a byte-compiled function defined in
hangul.el.gz.
Signature
(hangul2-input-method-jaum CHAR)
Documentation
Store Hangul Jamo indice CHAR in hangul-queue.
It is a Hangul 2-Bulsik Jaum.
This function processes a Hangul 2-Bulsik Jaum.
The Hangul 2-Bulsik is composed of a Jaum and a Moum.
The Jaum can be located in a Choseong position and a Jongseong position.
Unless the function inserts CHAR to hangul-queue,
commit current hangul-queue and then set a new hangul-queue,
and insert CHAR to new hangul-queue.
Source Code
;; Defined in /usr/src/emacs/lisp/leim/quail/hangul.el.gz
(defsubst hangul2-input-method-jaum (char)
"Store Hangul Jamo indice CHAR in `hangul-queue'.
It is a Hangul 2-Bulsik Jaum.
This function processes a Hangul 2-Bulsik Jaum.
The Hangul 2-Bulsik is composed of a Jaum and a Moum.
The Jaum can be located in a Choseong position and a Jongseong position.
Unless the function inserts CHAR to `hangul-queue',
commit current `hangul-queue' and then set a new `hangul-queue',
and insert CHAR to new `hangul-queue'."
(if (cond ((zerop (aref hangul-queue 0))
(aset hangul-queue 0 char))
((and (zerop (aref hangul-queue 1))
(zerop (aref hangul-queue 2))
(not (zerop (hangul-djamo 'cho (aref hangul-queue 0) char))))
(aset hangul-queue 1 char))
((and (zerop (aref hangul-queue 4))
(not (zerop (aref hangul-queue 2)))
(/= char 8)
(/= char 19)
(/= char 25)
(numberp
(hangul-character
(+ (aref hangul-queue 0)
(hangul-djamo
'cho
(aref hangul-queue 0)
(aref hangul-queue 1)))
(+ (aref hangul-queue 2)
(hangul-djamo
'jung
(aref hangul-queue 2)
(aref hangul-queue 3)))
char)))
(aset hangul-queue 4 char))
((and (zerop (aref hangul-queue 5))
(not (zerop (hangul-djamo 'jong (aref hangul-queue 4) char)))
(numberp
(hangul-character
(+ (aref hangul-queue 0)
(hangul-djamo
'cho
(aref hangul-queue 0)
(aref hangul-queue 1)))
(+ (aref hangul-queue 2)
(hangul-djamo
'jung
(aref hangul-queue 2)
(aref hangul-queue 3)))
(+ (aref hangul-queue 4)
(hangul-djamo
'jong
(aref hangul-queue 4)
char)))))
(aset hangul-queue 5 char)))
(hangul-insert-character hangul-queue)
(hangul-insert-character hangul-queue
(setq hangul-queue (vector char 0 0 0 0 0)))))