]> git.eshelyaron.com Git - emacs.git/commitdiff
Add comments about special meaning of TAB characters in compositions.
authorEli Zaretskii <eliz@gnu.org>
Thu, 15 Sep 2011 16:22:58 +0000 (19:22 +0300)
committerEli Zaretskii <eliz@gnu.org>
Thu, 15 Sep 2011 16:22:58 +0000 (19:22 +0300)
 src/xterm.c (x_draw_composite_glyph_string_foreground):
 src/w32term.c (x_draw_composite_glyph_string_foreground):
 src/term.c (encode_terminal_code):
 src/composite.c (composition_update_it, get_composition_id):
 src/xdisp.c (get_next_display_element)
 (fill_composite_glyph_string): Add comments about special meaning
 of TAB characters in a composition.

src/ChangeLog
src/composite.c
src/term.c
src/w32term.c
src/xterm.c

index 895e3e587b32b47cb4b66763bb89573dbb474204..22f69d4a9bb41e54a8ff6272bfd810a574b4246c 100644 (file)
@@ -1,3 +1,13 @@
+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).
index 2a3fbe295522a72ffff51dafb2d88d8d817bee2c..c8e4dd082aec7ed41932bb71dd53fd7d6345c618 100644 (file)
@@ -345,6 +345,8 @@ get_composition_id (EMACS_INT charpos, EMACS_INT bytepos, EMACS_INT nchars,
        {
          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;
@@ -1384,6 +1386,8 @@ composition_update_it (struct composition_it *cmp_it, EMACS_INT charpos, EMACS_I
       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')
index 10416090b80c974f78f27248d64dd264cd65d2e6..4a671d048c40f006eac4d6432c6e050ef770b0ac 100644 (file)
@@ -574,6 +574,8 @@ encode_terminal_code (struct glyph *src, int src_len, struct coding_system *codi
              {
                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))
index 8d9d8f720296b32fef420782e8e0e50260816254..39f1e245e18722acf85e8b2dc13392d8e178f61d 100644 (file)
@@ -1294,6 +1294,8 @@ x_draw_composite_glyph_string_foreground (struct glyph_string *s)
       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];
index 7c4ee96deabec34028e91b8594837e8c9ded6720..4d3b572ade986ee0e139bf1ac566b056f3790077 100644 (file)
@@ -1306,6 +1306,8 @@ x_draw_composite_glyph_string_foreground (struct glyph_string *s)
       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];