Subject: Re: bug#23934: 25.1.50; Incorrect rendering of cyrillic text on OS X

From: Alan Third <[email-masked]>
Date: Sun, 10 Jul 2016 18:09:02 +0100

On Sun, Jul 10, 2016 at 07:52:57PM +0300, Eli Zaretskii wrote:
> > Date: Sun, 10 Jul 2016 17:28:02 +0100
> > From: Alan Third <[email-masked]>
> > Cc: [email-masked]
> > 
> > Yes, Emacs seems to think that the composed character takes up no
> > space. This may be no help whatsoever, but I've attached another image
> > showing a cyrillic a with acute alongside the latin version. The latin
> > one is not, afaik, composed, because I don't know how to do that.
> 
> The Latin character is composed, because Emacs knows how to do that.
> You can verify with "C-u C-x =".
> 
> Can you tell what does window-text-pixel-size return for the а́ part of
> the text, both with Menlo and with Monaco?

Using (window-text-pixel-size nil 3 5):

Menlo: (0 . 14)
Monaco: (7 . 16)

> > I don't know how to check whether the font supports it.
> > Here's what describe-char says:
> > 
> >              position: 148 of 234 (63%), column: 2
> >             character: а (displayed as а) (codepoint 1072, #o2060, #x430)
> >     preferred charset: cyrillic-iso8859-5 (Right-Hand Part of ISO/IEC 8859/5 (Latin/Cyrillic): ISO-IR-144)
> > code point in charset: 0x50
> >                script: cyrillic
> >                syntax: w 	which means: word
> >              category: .:Base, L:Left-to-right (strong), Y:2-byte Cyrillic, c:Chinese, h:Korean, j:Japanese, y:Cyrillic
> >              to input: type "C-x 8 RET 430" or "C-x 8 RET CYRILLIC SMALL LETTER A"
> >           buffer code: #xD0 #xB0
> >             file code: #xD0 #xB0 (encoded by coding system utf-8-unix)
> >               display: composed to form "а́" (see below)
> > 
> > Composed with the following character(s) "́" using this font:
> >   mac-ct:-*-Menlo-normal-normal-normal-*-12-*-*-*-m-0-iso10646-1
>     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> The above line says that Menlo does have the glyph for the accent.
> Emacs will not compose characters from different fonts.
> 
> > by these glyphs:
> >   [0 1 1072 870 7 0 7 7 1 nil]
> >   [0 1 769 646 7 2 6 10 -7 [-8 -1 -8]]
> 
> Can you show the corresponding data when you use the Monaco font?

             position: 3 of 7 (29%), column: 2
            character: а (displayed as а) (codepoint 1072, #o2060, #x430)
    preferred charset: unicode (Unicode (ISO10646))
code point in charset: 0x0430
               script: cyrillic
               syntax: w 	which means: word
             category: .:Base, L:Left-to-right (strong), Y:2-byte Cyrillic, c:Chinese, h:Korean, j:Japanese, y:Cyrillic
             to input: type "C-x 8 RET 430" or "C-x 8 RET CYRILLIC SMALL LETTER A"
          buffer code: #xD0 #xB0
            file code: #xD0 #xB0 (encoded by coding system utf-8-unix)
              display: composed to form "а́" (see below)

Composed with the following character(s) "́" using this font:
  mac-ct:-*-Monaco-normal-normal-normal-*-12-*-*-*-m-0-iso10646-1
by these glyphs:
  [0 1 1072 449 7 0 7 7 1 nil]
  [0 1 769 375 0 -6 -1 10 -7 nil]

Character code properties: customize what to show
  name: CYRILLIC SMALL LETTER A
  general-category: Ll (Letter, Lowercase)
  decomposition: (1072) ('а')

-- 
Alan Third