[Top][All Lists]

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

Re: When and how to register various font backends

From: Robert Pluim
Subject: Re: When and how to register various font backends
Date: Fri, 14 Jun 2019 11:14:17 +0200

>>>>> On Fri, 07 Jun 2019 22:40:45 +0300, Eli Zaretskii <address@hidden> said:

    Eli> The question is how to implement this preference.  In the code that is
    Eli> currently on master, you will see one way of implementing it in
    Eli> w32fns.c, where the Windows code creates GUI frames (look in
    Eli> x-create-frame).  Basically, after determining whether Uniscribe was
    Eli> explicitly requested, this implementation registers or doesn't
    Eli> register Uniscribe for each new frame.  This means the backends to be
    Eli> available to a frame must be specified at frame creation time, or be
    Eli> known by that time.

    Eli> Yamamoto-san suggested a slightly different way of implementing the
    Eli> same idea; I will let him explain his proposal in more detail.

    Eli> Each implementation produces a slightly different behavior.  Since I
    Eli> believe we should have the same behavior on all platforms, I would
    Eli> like people to express their opinions on the two implementation, so
    Eli> that we could eventually decide with which one to go, and implement it
    Eli> for all platforms.

I haven't seen the other proposal, but this strikes me as overly
conservative, so Iʼm going to propose the radical variant.

Currently under X11 the font backends end up as

(xft xfthb x)

Reordering that to put xfthb first is a matter of reordering the
register_font_driver calls in Fx_create_frame

Since xfthb is strictly better than xft, as far as I can tell, and we
want people to actually use it, we should just prefer it for emacs-27,
and remove the xft and x backends in emacs-28. default-frame-alist and
similar will still be available for people who absolutely want to turn
it off (and as evidenced by bug#36171, HarfBuzz should be preferred by


reply via email to

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