>>>>> On Mon, 28 Mar 2022 14:51:49 +0300, Eli Zaretskii said: >> From: Robert Pluim >> Cc: Lars Ingebrigtsen , 54562@debbugs.gnu.org, Eli >> Zaretskii >> Date: Mon, 28 Mar 2022 09:47:54 +0200 >> >> OK. So it sounds like we should perhaps look at doing composition for >> the codepoints in that block by doing face lookup based on the >> combining character rather than the base character. Eli> I guess we should try. It should be optional behavior, because Emacs Eli> never did that, and I cannot predict what will that do to all the Eli> different use cases where we compose text, and thus whether users will Eli> like that in all the cases. It could, for example, mean that a Eli> particular Latin character with a diacritic will be displayed with a Eli> font that's different from the rest of the Latin text, which some Eli> users might consider worse than seeing just the base character in the Eli> "expected" font. And that's just the simplest use case. Yes, thatʼs exactly what happens with U+0308 here sometimes, see screenshot below. I had to search a bit to find a font to use as the default that didnʼt have a glyph for U+0308, so Iʼm not sure how important this issue is in practice. Eli> And I think "based on combining character" is not the correct Eli> definition. We should allow selection of the font based on the Eli> character that triggered the composition, i.e. the character whose Eli> slot in composition-function-table stores the rule which we are using Eli> to produce the composition. Like we already do for Emoji. For Eli> combining characters, the default is that the combining character is Eli> that trigger. By contrast, today we use the font for the first Eli> character in the composition sequence (NOT the base character, as I Eli> incorrectly wrote earlier, although in practice it is the same for Eli> Latin). Imprecise wording on my part. It would indeed be the triggering character, as with emoji. >> Eli, should we look at doing that for other combining characters, >> such as Andreas' 0308? Eli> "Look at" in what sense? 'consider' Rough patch attached. It does U+20E3, U+0308, and U+20D0..U+20FF. It works kind of ok, but U+006F U+0308 suffers from the font problem you were worried about. With Bitstream Vera Mono, the composed glyph ends up being from Latin Modern Roman, which looks very different. The composed glyphs for U+20D0..U+20FF look pretty bad in all the fonts Iʼve tried so far: Unifont, FreeSans, Free Mono, Menlo, Bitstream Vera Mono. Does anyone have an idea of a good font for those? Robert --