Subject: bug#9496: 24.0.50; Segfault on TAB-only composition

From: Kenichi Handa <[email-masked]>
Date: Wed, 14 Sep 2011 21:57:04 +0900

In article <[email-masked]>, Eli Zaretskii <[email-masked]> writes:

> Anyway, there's some magic about the TAB character and compositions
> that I always wondered about.  Perhaps it's time to find out why
> composition-related code tests characters against the TAB in so many
> places.  Handa-san, can you tell why, please?

The usage of TAB in composition is described in the
docstring of compose-region as this:

----------------------------------------------------------------------
(compose-region START END &optional COMPONENTS MODIFICATION-FUNC)

Compose characters in the current region.
[...]
Optional 3rd argument COMPONENTS, if non-nil, is a character, a string
or a vector or list of integers and rules.
[...]
If it is a string, the elements are alternate characters.  In
this case, TAB element has a special meaning.  If the first
character is TAB, the glyphs are displayed with left padding space
so that no pixel overlaps with the previous column.  If the last
character is TAB, the glyphs are displayed with right padding
space so that no pixel overlaps with the following column.
----------------------------------------------------------------------

This feature is typically used in describe-char to avoid a
single combining character overlapping with the surrounding
characters.

By the way, I'm sorry for not actively working on bug
reports related to codes written by me.  I'm now extremely
overloaded.

---
[email-masked]