unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#41645: 27.0.91; Combining Grapheme Joiner (#x34f) gui artifacts
@ 2020-06-01 13:45 David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2020-06-01 15:29 ` Eli Zaretskii
  0 siblings, 1 reply; 37+ messages in thread
From: David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2020-06-01 13:45 UTC (permalink / raw)
  To: 41645

[-- Attachment #1: Type: text/plain, Size: 4948 bytes --]

After emacs -Q, open a unicode text file and type a few letters, then
the Combining Grapheme Joiner (C-x 8 RET 34f), then a few more
letters. Press and hold the left arrow key to go back across the CGJ and
here it leaves behind a second box cursor while the actual cursor
continues to move across the text beyond. If you input multiple CGJs
you'll get multiple box cursors scattered wherever you put them,
assuming you don't change to the right arrow and hold that down, which
removes the artifacts as it goes along. (See attached image, with 3
artifacts in a line and the actual cursor off to the left.)

I came upon this while typing Biblical Hebrew in xeLaTeX, where the CGJ
allows the placement of metheg before the vowel. In a RTL paragraph it's
still the left arrow that makes the artifact appear, while the right
arrow still removes it as it passes. Switching to another buffer in the
same frame then back to the text file also removes the extra cursors.

By default, my emacs uses the Tibetan Machine Uni font to display the
CGJ, so I blacklisted that face and it now uses the same DejaVu Sans
face as the rest of the text, with the same results. The state of
blink-cursor-mode doesn't affect it, though when it's on and you time
the use of the left arrow key just right you can get past the CGJ
without leaving a visible artifact.

I tested it on GNU Emacs 26.3, and the result was the same, so it's not
a regression, even assuming it's a bug at all, and not a feature to show
where this invisible character is present (?)

Many thanks,

David.

In GNU Emacs 27.0.91 (build 2, i686-pc-linux-gnu, GTK+ Version 3.18.9)
 of 2020-06-01 built on newfont
Repository revision: 44c0e074f7cb84481785cb49515a4bd7235a074b
Repository branch: emacs-27
Windowing system distributor 'The X.Org Foundation', version 11.0.11803000
System Description: Slackware 14.2

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
Found ‘set-fontset-font’ in Command Index.  (Only match)
Mark set [2 times]
("Tibetan Machine Uni" "Noto Color Emoji")
Type C-x 1 to delete the help window.
Char: ͏ (847, #o1517, #x34f, file ...) point=34 of 74 (45%) column=7

Configured using:
 'configure
 PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/local/share/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig'

Configured features:
XPM JPEG TIFF GIF PNG RSVG SOUND GPM DBUS GSETTINGS GLIB NOTIFY INOTIFY
ACL GNUTLS LIBXML2 FREETYPE HARFBUZZ XFT ZLIB TOOLKIT_SCROLL_BARS GTK3
X11 XDBE XIM MODULES THREADS PDUMPER LCMS2 GMP

Important settings:
  value of $LC_COLLATE: C
  value of $LANG: en_US.ISO8859-1
  locale-coding-system: iso-latin-1-unix

Major mode: Text

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-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
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message rmc puny dired dired-loaddefs
format-spec rfc822 mml mml-sec password-cache epa derived epg epg-config
gnus-util rmail rmail-loaddefs text-property-search time-date subr-x seq
byte-opt gv bytecomp byte-compile cconv mm-decode mm-bodies mm-encode
mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047
rfc2045 ietf-drums mm-util mail-prsvr mail-utils wid-edit descr-text
help-mode cl-loaddefs cl-lib mule-util info easymenu tooltip eldoc
electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/x-win
x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode elisp-mode lisp-mode
prog-mode register page tab-bar menu-bar rfn-eshadow isearch timer
select scroll-bar mouse jit-lock font-lock syntax facemenu font-core
term/tty-colors frame minibuffer cl-generic 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 charscript charprop case-table epa-hook
jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice loaddefs
button faces cus-face macroexp files text-properties overlay sha1 md5
base64 format env code-pages mule custom widget hashtable-print-readable
backquote threads dbusbind inotify lcms2 dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit x
multi-tty make-network-process emacs)

Memory information:
((conses 8 176167 18366)
 (symbols 24 19078 2)
 (strings 16 84935 2635)
 (string-bytes 1 1983984)
 (vectors 8 17687)
 (vector-slots 4 1268552 55708)
 (floats 8 30 62)
 (intervals 28 37417 199)
 (buffers 568 14)
 (heap 1024 18077 2648))

[-- Attachment #2: snapshot3.png --]
[-- Type: image/png, Size: 2760 bytes --]

^ permalink raw reply	[flat|nested] 37+ messages in thread

end of thread, other threads:[~2020-06-05 17:28 UTC | newest]

Thread overview: 37+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-01 13:45 bug#41645: 27.0.91; Combining Grapheme Joiner (#x34f) gui artifacts David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-06-01 15:29 ` Eli Zaretskii
2020-06-01 15:50   ` Pip Cet
2020-06-01 16:06     ` David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-06-01 16:36       ` Eli Zaretskii
2020-06-01 17:44         ` David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-06-01 18:27       ` Pip Cet
2020-06-01 16:14     ` Eli Zaretskii
2020-06-01 18:09       ` Pip Cet
2020-06-01 18:37         ` Eli Zaretskii
2020-06-01 19:35           ` Eli Zaretskii
2020-06-01 20:15             ` Pip Cet
2020-06-01 19:48           ` Pip Cet
2020-06-01 22:37             ` Pip Cet
2020-06-02 13:45               ` David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-06-02 13:57                 ` David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-06-02 14:06                   ` Pip Cet
2020-06-02 14:32                     ` David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-06-02 14:35                 ` Pip Cet
2020-06-02 14:39                   ` David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-06-02 15:51                 ` Eli Zaretskii
2020-06-02 15:59                   ` David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-06-02 16:07             ` Eli Zaretskii
2020-06-02 19:21               ` Pip Cet
2020-06-02 19:49                 ` David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-06-03 14:20                 ` Eli Zaretskii
2020-06-03 14:58                   ` Pip Cet
2020-06-03 15:58                     ` Eli Zaretskii
2020-06-03 20:23                       ` Pip Cet
2020-06-04  2:36                         ` Eli Zaretskii
2020-06-04  6:58                           ` Pip Cet
2020-06-04 13:31                             ` Eli Zaretskii
     [not found]                               ` <874krq4fd8.fsf@gmail.com>
2020-06-05  7:45                                 ` Eli Zaretskii
2020-06-05  8:31                                   ` Pip Cet
2020-06-05 15:54                                     ` David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-06-05 17:28                                       ` Eli Zaretskii
2020-06-02 15:52         ` Eli Zaretskii

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).