[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#25216: 26.0.50 [regression]; Curly quotes are not found in some size
From: |
Dmitry Alexandrov |
Subject: |
bug#25216: 26.0.50 [regression]; Curly quotes are not found in some sizes of ‘Terminus’ font |
Date: |
Mon, 19 Dec 2016 07:52:42 +0300 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux) |
>> > It doesn't surprise me. What I don't understand is why this happens.
>> > Emacs explicitly tests the default font for supporting any symbol or
>> > punctuation character it needs to display, before it looks for another
>> > font. See the function face_for_char in fontset.c.
>> >
>> >> Aha! Thanks. The exact problematic commit is ‘2276a19d’ [0].
>> >>
>> >> By the way, how could I prove that without rebuilding the whole Emacs? I
>> >> tried:
>> >>
>> >> $ git show 2276a19^:lisp/international/fontset.el >
>> >> /tmp/lisp/fontset.el
>> >> $ emacs --directory /tmp/lisp --quick --font
>> >> '-*-terminus-medium-r-*-*-20-*-*-*-*-*-*-*'
>> >>
>> >> Despite that:
>> >>
>> >> (locate-library "fontset")
>> >> ⇒ "/tmp/lisp/fontset.el"
>> >>
>> >> I did not see any effect.
>> >
>> > You must rebuild Emacs or manually load fontset.el after changing it.
>> > fontset.el is preloaded when Emacs is built.
>>
>> So I need to use ‘temacs’? Yes, that works, thank you.
>
> If you want to rebuild Emacs, then yes, you will need to run the
> command which dumps it after changing fontset.el.
So there is another way? Mere (load "/tmp/lisp/fontset.el") have no use after
built-in ‘fontset’ is already loaded of course. I’m just curious.
>> >> However, It might be even better if I could erase that rule, as if
>> >> there were no lines about that range in ‘fontsel.el’. Is it
>> >> possible?
>> >
>> > That would adversely affect all the users. We arrived at that rule
>> > after many complaints that symbol and punctuation characters are not
>> > displayed at all, or displayed using variable-pitch fonts, so we made
>> > the default fontset "smarter" about that by using fonts people
>> > generally have installed and which are the default fonts in Emacs.
>>
>> Well, I’m the only user on most my machines, so that’s probably bearable.
>
> No, I meant all the users of Emacs, world wide.
>
>> However, we apparently misunderstood each other — I did not ask how
>> to patch ‘fontsel.el’ machine-wide (I hope, I do understand how to
>> do that). I meant, is it possible to remove elements from the
>> default fontset *user-wide*? ‘Terminus’ is not the only font I use,
>> so that would be cleaner than appending it there.
>
> You don't need (and cannot, AFAIK) to remove that. What you need is
> to prepend your rules, which will override what's there. Like this:
>
> (set-fontset-font "fontset-default" '(#x2000 . #x2067) "Terminus" nil
> 'prepend)
>
> Note the "prepend" part.
Okay, if I can’t, I can’t. As for ‘prepend’ it actually works all three ways
for me: obviously ‘nil’ (for override, not what I want), ‘prepend’ (as
expected) and ‘append’ (no idea why).
- bug#25216: 26.0.50 [regression]; Curly quotes are not found in some sizes of ‘Terminus’ font, Dmitry Alexandrov, 2016/12/16
- bug#25216: 26.0.50 [regression]; Curly quotes are not found in some sizes of ‘Terminus’ font, Dmitry Alexandrov, 2016/12/19
- bug#25216: 26.0.50 [regression]; Curly quotes are not found in some sizes of ‘Terminus’ font, Eli Zaretskii, 2016/12/19
- bug#25216: 26.0.50 [regression]; Curly quotes are not found in some sizes of ‘Terminus’ font, Dmitry Alexandrov, 2016/12/19
- bug#25216: 26.0.50 [regression]; Curly quotes are not found in some sizes of ‘Terminus’ font, Eli Zaretskii, 2016/12/19
- bug#25216: 26.0.50 [regression]; Curly quotes are not found in some sizes of ‘Terminus’ font, Dmitry Alexandrov, 2016/12/31
- bug#25216: 26.0.50 [regression]; Curly quotes are not found in some sizes of ‘Terminus’ font, Eli Zaretskii, 2016/12/31