Function: emoji-list-select
emoji-list-select is an interactive and byte-compiled function defined
in emoji.el.gz.
Signature
(emoji-list-select EVENT)
Documentation
Select the emoji under point.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/international/emoji.el.gz
(defun emoji-list-select (event)
"Select the emoji under point."
(interactive (list last-nonmenu-event) emoji-list-mode)
(mouse-set-point event)
(let ((glyph (get-text-property (point) 'emoji-glyph)))
(unless glyph
(error "No emoji under point"))
(let ((derived (gethash glyph emoji--derived))
(end-func
(lambda ()
(let ((buf emoji--insert-buffer))
(quit-window)
(if (buffer-live-p buf)
(progn
(switch-to-buffer buf)
(barf-if-buffer-read-only))
(error "Buffer disappeared"))))))
(if (not derived)
;; Glyph without derivations.
(progn
(emoji--add-recent glyph)
(funcall end-func)
(insert glyph))
;; Pop up a transient to choose between derivations.
(let ((emoji--done-derived (make-hash-table :test #'equal)))
(setf (gethash glyph emoji--done-derived) t)
(funcall
(emoji--define-transient (cons "Choose Emoji" (cons glyph derived))
nil end-func)))))))