+2011-09-15 Eli Zaretskii <eliz@gnu.org>
+
+ * xterm.c (x_draw_composite_glyph_string_foreground):
+ * w32term.c (x_draw_composite_glyph_string_foreground):
+ * term.c (encode_terminal_code):
+ * composite.c (composition_update_it, get_composition_id):
+ * xdisp.c (get_next_display_element)
+ (fill_composite_glyph_string): Add comments about special meaning
+ of TAB characters in a composition.
+
2011-09-15 Paul Eggert <eggert@cs.ucla.edu>
* editfns.c (Fformat): Fix off-by-1 bug for "%%b" (Bug#9514).
{
int this_width;
ch = XINT (key_contents[i]);
+ /* TAB in a composition means display glyphs with padding
+ space on the left or right. */
this_width = (ch == '\t' ? 1 : CHAR_WIDTH (ch));
if (cmp->width < this_width)
cmp->width = this_width;
else
{
for (i = 0; i < cmp->glyph_len; i++)
+ /* TAB in a composition means display glyphs with padding
+ space on the left or right. */
if ((c = COMPOSITION_GLYPH (cmp, i)) != '\t')
break;
if (c == '\t')
{
int c = COMPOSITION_GLYPH (cmp, i);
+ /* TAB in a composition means display glyphs with
+ padding space on the left or right. */
if (c == '\t')
continue;
if (char_charset (c, charset_list, NULL))
old_font = SelectObject (s->hdc, FONT_HANDLE (font));
for (i = 0, j = s->cmp_from; i < s->nchars; i++, j++)
+ /* TAB in a composition means display glyphs with padding
+ space on the left or right. */
if (COMPOSITION_GLYPH (s->cmp, j) != '\t')
{
int xx = x + s->cmp->offsets[j * 2];
int y = s->ybase;
for (i = 0, j = s->cmp_from; i < s->nchars; i++, j++)
+ /* TAB in a composition means display glyphs with padding
+ space on the left or right. */
if (COMPOSITION_GLYPH (s->cmp, j) != '\t')
{
int xx = x + s->cmp->offsets[j * 2];