summaryrefslogtreecommitdiff
path: root/src/composite.c
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2020-10-25 18:05:37 +0200
committerEli Zaretskii <eliz@gnu.org>2020-10-25 18:05:37 +0200
commit8164f3e1ab3ca8d28f782407ab8daf086a624d1a (patch)
tree13b8d57d96b80a9ba3c9ea90098d9dfca4a335d2 /src/composite.c
parent7276723630f93878762d474b0a5adda4251191bd (diff)
downloademacs-8164f3e1ab3ca8d28f782407ab8daf086a624d1a.tar.gz
Improve support for shaping Egyptian Hieroglyphs
* src/composite.c (composition_gstring_lookup_cache): Renamed from gstring_lookup_cache and made external. All callers changed. * src/composite.h (composition_gstring_lookup_cache): Add prototype. * src/font.c (Ffont_shape_gstring): Call composition_gstring_lookup_cache and return the cached composition if it is already in the cache. * lisp/language/misc-lang.el (egyptian-shape-grouping): New function. (composition-function-table): Use egyptian-shape-grouping in setting up compositions for Egyptian Hieroglyphs. Fix the composition setup for horizontal and vertical joiners.
Diffstat (limited to 'src/composite.c')
-rw-r--r--src/composite.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/composite.c b/src/composite.c
index 984e0d9cda8..90f8536b2de 100644
--- a/src/composite.c
+++ b/src/composite.c
@@ -637,10 +637,8 @@ compose_text (ptrdiff_t start, ptrdiff_t end, Lisp_Object components,
static Lisp_Object gstring_hash_table;
-static Lisp_Object gstring_lookup_cache (Lisp_Object);
-
-static Lisp_Object
-gstring_lookup_cache (Lisp_Object header)
+Lisp_Object
+composition_gstring_lookup_cache (Lisp_Object header)
{
struct Lisp_Hash_Table *h = XHASH_TABLE (gstring_hash_table);
ptrdiff_t i = hash_lookup (h, header, NULL);
@@ -1781,7 +1779,7 @@ should be ignored. */)
header = fill_gstring_header (frompos, frombyte,
topos, font_object, string);
- gstring = gstring_lookup_cache (header);
+ gstring = composition_gstring_lookup_cache (header);
if (! NILP (gstring))
return gstring;