]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix Arabic composition rules
authorEli Zaretskii <eliz@gnu.org>
Tue, 2 Jun 2020 17:44:59 +0000 (20:44 +0300)
committerEli Zaretskii <eliz@gnu.org>
Tue, 2 Jun 2020 17:44:59 +0000 (20:44 +0300)
* lisp/language/misc-lang.el (composition-function-table): Reorder
Arabic composition rules in descending order of lookback.

* src/composite.c (syms_of_composite): Document the order of rules
in 'composition-function-table'.

lisp/language/misc-lang.el
src/composite.c

index e25e63b4c5c4445dfd08fb060428591c8871a747..e3a24c41536ae474f2ebb910d8b32bd0b1841963 100644 (file)
@@ -136,10 +136,10 @@ thin (i.e. 1-dot width) space."
 (set-char-table-range
  composition-function-table
  '(#x600 . #x74F)
- (list (vector "[\u0600-\u074F\u200C\u200D]+" 0
-               'arabic-shape-gstring)
-       (vector "[\u200C\u200D][\u0600-\u074F\u200C\u200D]+" 1
-               'arabic-shape-gstring)))
+ (list (vector "[\u200C\u200D][\u0600-\u074F\u200C\u200D]+"
+               'arabic-shape-gstring)
+       (vector "[\u0600-\u074F\u200C\u200D]+"
+               'arabic-shape-gstring)))
 
 (provide 'misc-lang)
 
index 518502be49f9216c38800e5dc39a5ff18bee83a6..5c56107fb777665f40d123246aa06c9c7ccc08d0 100644 (file)
@@ -1987,7 +1987,8 @@ preceding and/or following characters, this char-table contains
 a function to call to compose that character.
 
 The element at index C in the table, if non-nil, is a list of
-composition rules of this form: ([PATTERN PREV-CHARS FUNC] ...)
+composition rules of the form ([PATTERN PREV-CHARS FUNC] ...);
+they must be in the descending order of PREV-CHARS values.
 
 PATTERN is a regular expression which C and the surrounding
 characters must match.