Subject: bug#51385: 29.0.50; PragmataPro wide word ligatures such as [ERR] having the left side cut off in cairo build

From: Eli Zaretskii <[email-masked]>
Date: Wed, 03 Nov 2021 16:36:18 +0200

> From: "Patrick Lenihan [sc17pl]" <[email-masked]>
> Date: Wed, 3 Nov 2021 12:26:59 +0000
> 
> Note that this issue disappears when Emacs is built without Cairo support.
> 
> ------------------------------------------------------------------------------
> From: Patrick Lenihan [sc17pl] <[email-masked]>
> Sent: 02 November 2021 17:58
> To: Stefan Kangas <[email-masked]>
> Subject: Re: bug#51385: 29.0.50; PragmataPro wide word ligatures such as [ERR] having the left side cut
> off in cairo build 
>  
> 1 run command "emacs -Q"
> 2 M-: 
> 3 (set-frame-font "PragmataPro Mono Liga" nil t)
> 4 C-uC-u<SPC>
> 5 M-x 
> 6 insert-char #Xe2c0
> 7 Repeat 4-6 substituting #Xe2c0 for any of the following: #Xe2b0, #Xe2b1, #Xe2b2, #Xe2b3, #Xe2b4,
>  #Xe2b5, #Xe2b6, #Xe2c0, #Xe2c1, #Xe2c2, #Xe2c3, #Xe2c4, #Xe2c5, #Xe2c6, #Xe2c7, #Xe2c8,
>  #Xe2c9, #Xe2ca, #Xe2cb, #Xe2cc, #Xe2cd, #Xe2ce, #Xe2e0, #Xe2e1, #Xe2e2, #Xe2e3, #Xe2e4,
>  #Xe2e5, #Xe2e6, #Xe2e7, #Xe2e8, #Xe2e9, #Xe2ea, #Xe2eb, #Xe2ec, #Xe2ed, #Xe2e  #Xe2f0, #Xe2f1,
>  #Xe2f2, #Xe2f3, #Xe2f4, #Xe2f5, #Xe2f6, #Xe2f7, #Xe2f8, #Xe2f9, #Xe2fa, #Xe2fb, #Xe2fc, #Xe2fd, #Xe2fe
> 
>  At the moment all are clipped unless Emacs is built without Cairo support.

These characters are from the Private Use Area (PUA) of Unicode.  Why
do you expect Emacs to produce anything sensible for them?  To display
such characters, it is not enough to install a font that has glyphs
for PUA codepoints, you need also to tell Emacs what attributes and
properties those codepoints have, because Unicode doesn't define any
properties for those codepoints.

I don't see a bug in this recipe.  Emacs currently doesn't support
display of arbitrary PUA characters.