all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* RLM and LRM are composed?
@ 2010-03-29 16:06 Eli Zaretskii
  2010-03-29 16:53 ` Eli Zaretskii
  2010-04-01  6:39 ` Kenichi Handa
  0 siblings, 2 replies; 5+ messages in thread
From: Eli Zaretskii @ 2010-03-29 16:06 UTC (permalink / raw)
  To: Kenichi Handa; +Cc: emacs-devel

Evaluate this form:

  (aset standard-display-table ?‎ (vconcat "->"))

and then visit a file with this single line:

    Hebrew ‏(עברית)	שלום

The character being set up in the standard-display-table is RLM,
RIGHT-TO-LEFT MARK.  If you are reading this in a GUI session, chances
are it will be displayed as whitespace.  The same character is before
the left paren after "Hebrew".  However, Emacs does not display "->"
instead of it, as I'd expect.  It thinks it does (try "C-u C-x =" on
that character), but it doesn't.

If I step with a debugger through produce_glyphs (in the TTY case) or
through x_produce_glyphs (in the GUI case), I see that the glyph we
produce for displaying this character is not IT_CHARACTER, but
IT_COMPOSITION.

Questions:

1. Why do we display this character as composition?  It is not
   supposed to be composed with anything, AFAIK.

2. Is it a bug or a feature that composed characters don't go through
   the display table?  If it's a feature, what is its purpose?

TIA





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

end of thread, other threads:[~2010-04-01 12:55 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-03-29 16:06 RLM and LRM are composed? Eli Zaretskii
2010-03-29 16:53 ` Eli Zaretskii
2010-04-01  6:39 ` Kenichi Handa
2010-04-01  7:56   ` Eli Zaretskii
2010-04-01 12:55     ` Kenichi Handa

Code repositories for project(s) associated with this external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.