Function: robin-input-method

robin-input-method is a byte-compiled function defined in robin.el.gz.

Signature

(robin-input-method KEY)

Documentation

Interpret typed key sequence and insert into buffer.

Source Code

;; Defined in /usr/src/emacs/lisp/international/robin.el.gz
(defun robin-input-method (key)
  "Interpret typed key sequence and insert into buffer."

  (if (or buffer-read-only
	  overriding-terminal-local-map
	  overriding-local-map)
      (list key)

    (let ((echo-keystrokes 0)
	  (input-method-function nil)
	  (start (point))
	  (tree (cddr (assoc robin-current-package-name robin-package-alist)))
	  branch
	  output)

      (while (setq branch (assq key tree))
	(delete-region start (point))
	(insert (setq output (cadr branch)))
	(setq tree (cddr branch))
	(if tree
	    (setq key (read-event))
	  (setq key nil)))

      (if (null output)
	  ;; body of the `while' above was not executed
	  (list key)
	(delete-region start (point))
	(if key
	    (push key unread-command-events))
	(if (stringp output)
	    (string-to-list output)
	  (list output))))))