emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Ligatures (was: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywh


From: Eli Zaretskii
Subject: Re: Ligatures (was: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY))
Date: Fri, 22 May 2020 09:06:00 +0300

> From: Pip Cet <address@hidden>
> Date: Thu, 21 May 2020 21:06:27 +0000
> Cc: address@hidden, address@hidden, address@hidden
> 
> > But automatic compositions do work by calling the shaper.
> 
> Yes, that observation is correct. What I'm doing is still very
> different from the (semi-)automatic compositions composite.c does.

For ligatures, I don't think I understand why the automatic
compositions are not the way to go.

> > That would prevent Emacs from controlling what is and what isn't
> > composed, leaving the shaper in charge.
> 
> Well, yes and no: the shaper is in charge, and I see absolutely
> nothing wrong with that. You can tell the shaper not to perform
> ligatures (or perform only some of them), or kerning, if you want to.

Tell it how? by introducing new Lisp options and data structures?
What would those new data structures be, and how will they be
different from composition-function-table?

> > We currently allow Lisp to
> > control that via composition-function-table, which provides a regexp
> > that text around a character must match in order for the matching
> > substring to be passed to the shaper.
> 
> And you're suggesting that regexp be set to, say, ".+"? Because that's
> the only way I've found of getting it to do kerning.

I'm not talking about the kerning.  This discussion is about
ligatures, AFAIU.  For ligatures, the regexp should catch the
sequences of characters that should be ligated.  ".+" is definitely
not right for ligatures, since it will significantly slow down
redisplay for no good reason.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]