[Top][All Lists]

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

Re: emacs-27 60c84ad: ; * etc/TODO: Fix last change.

From: Robert Pluim
Subject: Re: emacs-27 60c84ad: ; * etc/TODO: Fix last change.
Date: Thu, 05 Mar 2020 17:08:12 +0100

>>>>> On Thu, 05 Mar 2020 17:24:01 +0200, Eli Zaretskii <address@hidden> said:

    Eli> I don't think it has little to do with the Unicode idea, it just
    Eli> doesn't use the database.  The blocks I was talking about are all
    Eli> Emoji blocks, and Unicode is generally careful to put related
    Eli> characters into the same blocks.

If you look at the list of Emoji codepoints I sent earlier, I think
you'll agree that they're all over the place. But at least this makes
the patch smaller :-)

Note that with this, and Symbola disabled, this does not display a
glyph for U+1F300 on macOS unless I prepend 'Apple Color Emoji' to the
frame's fontset. Is that expected on macOS?


diff --git c/admin/unidata/blocks.awk i/admin/unidata/blocks.awk
index 03acf1e4be..a6844871c5 100755
--- c/admin/unidata/blocks.awk
+++ i/admin/unidata/blocks.awk
@@ -54,7 +54,8 @@ BEGIN {
     alias["enclosed alphanumerics"] = "symbol"
     alias["box drawing"] = "symbol"
     alias["block elements"] = "symbol"
-    alias["miscellaneous symbols"] = "symbol"
+    alias["miscellaneous symbols and pictographs"] = "emoji"
+    alias["emoticons"] = "emoji"
     alias["cjk strokes"] = "cjk-misc"
     alias["cjk symbols and punctuation"] = "cjk-misc"
     alias["halfwidth and fullwidth forms"] = "cjk-misc"
@@ -99,7 +100,8 @@ function name2alias(name   , w, w2) {
     else if (name ~ /cuneiform number/) return 
     else if (name ~ /cuneiform/) return "cuneiform"
     else if (name ~ /mathematical alphanumeric symbol/) return "mathematical"
-    else if (name ~ 
/punctuation|mathematical|arrows|currency|superscript|small form 
return "symbol"
+    else if (name ~ /transport|supplemental symbols/) return "emoji"
+    else if (name ~ 
/punctuation|mathematical|arrows|currency|superscript|small form 
variants|geometric|dingbats|enclosed|alchemical|pictograph/) return "symbol"
     else if (name ~ /canadian aboriginal/) return "canadian-aboriginal"
     else if (name ~ /katakana|hiragana/) return "kana"
     else if (name ~ /myanmar/) return "burmese"
diff --git c/lisp/international/fontset.el i/lisp/international/fontset.el
index 529c7bb88b..e4a34d5f1c 100644
--- c/lisp/international/fontset.el
+++ i/lisp/international/fontset.el
@@ -267,7 +267,8 @@ font-encoding-charset-alist
         (indic-siyaq-number #x1ec71)
         (ottoman-siyaq-number #x1ed01)
        (mahjong-tile #x1F000)
-       (domino-tile #x1F030)))
+       (domino-tile #x1F030)
+        (emoji #x1F300)))
 (defvar otf-script-alist)
@@ -866,6 +867,9 @@ setup-default-fontset
              (#x1FA00 . #x1FA6F)))     ;; Chess Symbols
     (set-fontset-font "fontset-default" symbol-subgroup
                       '("Symbola" . "iso10646-1") nil 'prepend))
+  ;; This sets up the Emoji codepoints to use prettier fonts.
+  (set-fontset-font "fontset-default" 'emoji
+                      "Noto Color Emoji" nil 'prepend)
   ;; Box Drawing and Block Elements
   (set-fontset-font "fontset-default" '(#x2500 . #x259F)
                     '("FreeMono" . "iso10646-1") nil 'prepend)

reply via email to

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