[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
emacs-28 3da9fa8 1/2: Make hieroglyphs display correctly with existing f
From: |
Eli Zaretskii |
Subject: |
emacs-28 3da9fa8 1/2: Make hieroglyphs display correctly with existing fonts |
Date: |
Fri, 29 Oct 2021 03:42:26 -0400 (EDT) |
branch: emacs-28
commit 3da9fa875bbfceee41df38d9f97e06013484a791
Author: Gregory Heytings <gregory@heytings.org>
Commit: Eli Zaretskii <eliz@gnu.org>
Make hieroglyphs display correctly with existing fonts
* etc/HELLO: Remove hieroglyph format control characters.
* lisp/language/misc-lang.el: Add a rule to compose Egyptian
hieroglyphs even without Unicode format control characters.
---
etc/HELLO | 2 +-
lisp/language/misc-lang.el | 15 ++++++++++++++-
2 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/etc/HELLO b/etc/HELLO
index 577c282..8bd489f 100644
--- a/etc/HELLO
+++ b/etc/HELLO
@@ -38,7 +38,7 @@ Czech (čeština) Dobrý den
Danish (dansk) Hej / Goddag / Halløj
Dutch (Nederlands) Hallo / Dag
Efik /ˈɛfɪk/ Mɔkɔm
-Egyptian Hieroglyphs (𓂋𓏤𓈖𓆎𓅓𓏏𓊖) 𓅓𓊵𓏏𓊪, 𓇍𓇋𓂻𓍘𓇋
+Egyptian Hieroglyphs (𓂋𓏤𓈖𓆎𓅓𓏏𓊖) 𓅓𓊵𓏏𓊪, 𓇍𓇋𓂻𓍘𓇋
Emacs emacs --no-splash -f view-hello-file
Emoji 👋
English /ˈɪŋɡlɪʃ/ Hello
diff --git a/lisp/language/misc-lang.el b/lisp/language/misc-lang.el
index a2ca678..de4f092 100644
--- a/lisp/language/misc-lang.el
+++ b/lisp/language/misc-lang.el
@@ -192,7 +192,20 @@ thin (i.e. 1-dot width) space."
composition-function-table
#x13437
(list (vector "\U00013437[\U00013000-\U0001343F]+"
- 0 #'egyptian-shape-grouping))))
+ 0 #'egyptian-shape-grouping)))
+ ;; As of late 2021, Egyptian Hieroglyph Format Controls are not yet
+ ;; supported in existing fonts and shaping engines, but some fonts
+ ;; do provide ligatures with which texts in Egyptian Hieroglyphs are
+ ;; correctly displayed. If and when these format controls are
+ ;; supported, the five lines below (which cancel the effect of the
+ ;; above lines) can be removed, and the entry in etc/HELLO can be
+ ;; restored to:
+ ;; Egyptian Hieroglyphs (𓂋𓏤𓈖𓆎𓅓𓏏𓊖) 𓅓𓊵𓏏𓊪, 𓇍𓇋𓂻𓍘𓇋
+ (set-char-table-range
+ composition-function-table
+ '(#x13000 . #x1342E)
+ (list (vector "[\U00013000-\U0001342E]+"
+ 0 #'font-shape-gstring))))
(provide 'misc-lang)