all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Paul Eggert <eggert@cs.ucla.edu>
Cc: v.schneidermann@gmail.com, andrewjmoreton@gmail.com,
	20727@debbugs.gnu.org
Subject: bug#20727: 24.5; Font fallback doesn't work for the Emoji range
Date: Sat, 13 Jun 2015 21:31:32 +0300	[thread overview]
Message-ID: <83oakjpiij.fsf@gnu.org> (raw)
In-Reply-To: <557C63ED.8050005@cs.ucla.edu>

> Date: Sat, 13 Jun 2015 10:10:05 -0700
> From: Paul Eggert <eggert@cs.ucla.edu>
> CC: v.schneidermann@gmail.com, andrewjmoreton@gmail.com, 
>  20727@debbugs.gnu.org
> 
> Eli Zaretskii wrote:
> > Actually, an even better solution might be this: we explicitly specify
> > fixed-medium font with iso10646-1 registry for these popular
> > characters_before_  Symbola.  This is justified, I think, since the
> > standard-fontset-spec on X specifies a fixed-medium font, so fit is
> > iso10646-1 variant supports these commonly-used punctuation
> > characters, it is a better candidate than Symbola, while the latter
> > will still be used as fallback.
> >
> > WDYT?  Could you try this on your system and see if it work?
> 
> I'd be happy to try, but I'm afraid this is an area I don't know well

Neither do I, so please bear with me.

> and I 
> don't see why the existing code doesn't already do what you'r suggesting. 
> setup-default-fontset invokes (set-fontset-font "fontset-default" ... "Symbola" 
> nil 'prepend), and later invokes (set-fontset-font "fontset-default" nil '(nil . 
> "iso10646-1") nil 'prepend), so doesn't that mean that the iso10646-1 fonts are 
> prepended before Symbola and so should take priority over Symbola already?

No, not according to my understanding.  The latter part is fallback
for when nothing is specified as either the script or the character
range, which is not the case we are discussing.

> Anyway, If you can send me a patch along the lines you're thinking, I can try it.

Here's an example of the 1st idea.  If it works well, we can exempt
more ranges from Symbola (if you could tell me where to download the
fixed-medium font, I could look at its coverage to decide which other
ranges to exempt):

diff --git a/lisp/international/fontset.el b/lisp/international/fontset.el
index 696940e..cb32daa 100644
--- a/lisp/international/fontset.el
+++ b/lisp/international/fontset.el
@@ -697,7 +697,11 @@ (defun setup-default-fontset ()
   ;; covered well by Symbola.
   (dolist (symbol-subgroup
            '((#x0250 . #x02AF)	;; IPA Extensions
-             (#x2000 . #x206F)	;; General Punctuation
+             (#x2000 . #x2012)	;; General Punctuation
+             (#x2015 . #x2017)
+             (#x201F . #x202F)
+             (#x2031 . #x2038)
+             (#x203B . #x206F)
              (#x2070 . #x209F)	;; Superscripts and Subscripts
              (#x20A0 . #x20CF)	;; Currency Symbols
              (#x2100 . #x214F)	;; Letterlike Symbols

The second idea is to add

  (set-fontset-font "fontset-default" '(#x2013 . #x2014)
                    "-*-fixed-medium-r-*-*-*-*-*-*-*-*-iso10646-1"
		    nil 'prepend)
  (set-fontset-font "fontset-default" '(#x2018 . #x201E)
                    "-*-fixed-medium-r-*-*-*-*-*-*-*-*-iso10646-1"
		    nil 'prepend)
  (set-fontset-font "fontset-default" '(#x2039 . #x203A)
                    "-*-fixed-medium-r-*-*-*-*-*-*-*-*-iso10646-1"
		    nil 'prepend)

(and similarly for other ranges where that font has coverage) to
setup-default-fontset _after_ the Symbola portion.






  reply	other threads:[~2015-06-13 18:31 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-03 17:22 bug#20727: 24.5; Font fallback doesn't work for the Emoji range Vasilij Schneidermann
2015-06-03 19:20 ` Eli Zaretskii
2015-06-03 20:32   ` Vasilij Schneidermann
2015-06-07 18:09   ` Glenn Morris
2015-06-07 19:22     ` Eli Zaretskii
2015-06-08  0:15       ` Glenn Morris
2015-06-08  2:42         ` Eli Zaretskii
2015-06-08  5:43           ` Vasilij Schneidermann
2015-06-08 14:30             ` Eli Zaretskii
2015-06-08 14:52               ` Andreas Schwab
2015-06-08 18:06                 ` Eli Zaretskii
2015-06-09 11:48                   ` Andy Moreton
2015-06-09 15:17                     ` Eli Zaretskii
2015-06-09 16:29                       ` Andy Moreton
2015-06-09 16:48                         ` Eli Zaretskii
2015-06-12 16:05                           ` Glenn Morris
2015-06-12 19:32                             ` Eli Zaretskii
2015-06-08 15:59               ` Vasilij Schneidermann
2015-06-12 20:57 ` Paul Eggert
2015-06-13  7:04   ` Eli Zaretskii
2015-06-13  7:39   ` Eli Zaretskii
2015-06-13  9:12   ` Eli Zaretskii
2015-06-13 11:54     ` Eli Zaretskii
2015-06-13 16:01       ` Paul Eggert
2015-06-13 16:32         ` Eli Zaretskii
2015-06-13 17:04           ` Eli Zaretskii
2015-06-13 17:10             ` Paul Eggert
2015-06-13 18:31               ` Eli Zaretskii [this message]
2015-06-13 19:02                 ` Paul Eggert
2015-06-13 19:09                   ` Eli Zaretskii
2015-06-13 17:07           ` Paul Eggert
2015-06-13 17:57             ` Eli Zaretskii
2015-06-13 18:47               ` Paul Eggert
2015-06-13 19:03                 ` Eli Zaretskii
2015-06-13 21:19                   ` Paul Eggert
2015-06-14  2:46                     ` Eli Zaretskii
2015-06-14 15:08                       ` Eli Zaretskii
2015-06-14 16:14                       ` Paul Eggert
2015-06-14 17:37                         ` Eli Zaretskii
2015-06-14 20:39                           ` Paul Eggert
2015-06-15 16:14                             ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=83oakjpiij.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=20727@debbugs.gnu.org \
    --cc=andrewjmoreton@gmail.com \
    --cc=eggert@cs.ucla.edu \
    --cc=v.schneidermann@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.