--- Begin Message ---
Subject: |
29.1; request: always echo EMOJI name while emoji-list |
Date: |
Wed, 15 Nov 2023 16:04:21 +0900 |
#'emoji-list creates '*Emoji*' buffer containing EMOJIs.
Typing 'h' shows a name of a EMOJI under the current point.
If the names are always echoed, selection may be easier.
I tried the form below in the '*Emoji*' buffer:
(add-hook #'post-command-hook
(lambda ()
(when-let ((glyph (get-text-property (point) 'emoji-glyph))
(name (emoji--name glyph)))
(message "%s" name)))
nil 'local)
But it is not successfull when moving to/from composed character EMOJI.
In GNU Emacs 29.1 (build 2, x86_64-w64-mingw32) of 2023-08-02 built on
AVALON
Windowing system distributor 'Microsoft Corp.', version 10.0.19045
System Description: Microsoft Windows 10 Pro (v10.0.2009.19045.3570)
Configured using:
'configure --with-modules --without-dbus --with-native-compilation=aot
--without-compress-install --with-tree-sitter CFLAGS=-O2'
Configured features:
ACL GIF GMP GNUTLS HARFBUZZ JPEG JSON LCMS2 LIBXML2 MODULES NATIVE_COMP
NOTIFY W32NOTIFY PDUMPER PNG RSVG SOUND SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XPM ZLIB
(NATIVE_COMP present but libgccjit not available)
Important settings:
value of $LANG: JPN
locale-coding-system: cp932
Major mode: Lisp Interaction
Minor modes in effect:
tooltip-mode: t
global-eldoc-mode: t
eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
line-number-mode: t
indent-tabs-mode: t
transient-mark-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
Load-path shadows:
None found.
Features:
(help-fns radix-tree cl-print debug backtrace find-func gnutls
network-stream nsm mailalias smtpmail textsec uni-scripts url url-proxy
url-privacy url-expand url-methods url-history url-cookie
generate-lisp-file url-domsuf url-util url-parse auth-source cl-seq
eieio eieio-core cl-macs json map byte-opt gv bytecomp byte-compile
url-vars idna-mapping ucs-normalize uni-confusable textsec-check
jka-compr qp misearch multi-isearch help-mode pp shadow sort mail-extr
emacsbug message mailcap yank-media puny dired dired-loaddefs rfc822 mml
mml-sec password-cache epa derived epg rfc6068 epg-config gnus-util
text-property-search time-date subr-x mm-decode mm-bodies mm-encode
mail-parse rfc2231 mailabbrev gmm-utils mailheader cl-loaddefs cl-lib
sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils
term/bobcat japan-util rmc iso-transl tooltip cconv eldoc paren electric
uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel dos-w32
ls-lisp disp-table term/w32-win w32-win w32-vars term/common-win
tool-bar dnd fontset image regexp-opt fringe tabulated-list replace
newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar
rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock
font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq
simple cl-generic indonesian philippine cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms
cp51932 hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese composite emoji-zwj charscript charprop case-table
epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button
loaddefs theme-loaddefs faces cus-face macroexp files window
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget keymap hashtable-print-readable backquote threads
w32notify w32 lcms2 multi-tty make-network-process native-compile emacs)
Memory information:
((conses 16 225947 32909)
(symbols 48 8366 9)
(strings 32 38253 2543)
(string-bytes 1 870992)
(vectors 16 46404)
(vector-slots 8 1526724 109516)
(floats 8 54 289)
(intervals 56 1335 60)
(buffers 984 16))
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#67204: 29.1; request: always echo EMOJI name while emoji-list |
Date: |
Tue, 09 Jan 2024 22:02:19 +0200 |
> Cc: 67204@debbugs.gnu.org, awrhygty@outlook.com
> Date: Sat, 30 Dec 2023 11:20:59 +0200
> From: Eli Zaretskii <eliz@gnu.org>
>
> OK, I see the issue now: it's because C-f/C-b still moves by one
> character in this buffer, and we basically rely on point-adjustment to
> move to the next emoji. The cases where the echo is incorrect, point
> after C-f is still on the same emoji, not on the next one, whereas
> after point adjustment it is on the next emoji.
>
> The solution to that is not to show the emoji name from the
> post-command-hook, but from an idle timer. Like this:
>
> (add-hook #'post-command-hook
> (lambda ()
> (run-with-idle-timer 0.02 nil
> (lambda ()
> (when-let
> ((glyph (get-text-property (point)
>
> 'emoji-glyph))
> (name (emoji--name glyph)))
> (message "%s" name)))))
> nil 'local)
>
> We could have this as an optional feature, or we could leave this
> alone and rely on users who want this to customize their Emacs like
> above.
No further comments, so I'm now closing this bug.
--- End Message ---