unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Kai Ma <justksqsf@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 55319@debbugs.gnu.org
Subject: bug#55319: 28.1.50; Abugida not rendered correctly (MacOS)
Date: Wed, 11 May 2022 23:43:36 +0800	[thread overview]
Message-ID: <052FC289-9179-4B2D-AE52-2D688410162C@gmail.com> (raw)
In-Reply-To: <83czgnv3ak.fsf@gnu.org>

[-- Attachment #1: Type: text/plain, Size: 1438 bytes --]



> On May 9, 2022, at 10:38, Eli Zaretskii <eliz@gnu.org <mailto:eliz@gnu.org>> wrote:
> 
> Emacs doesn't discover composition rules. The composition rules are
> part of the Emacs code, see the various *.el files in lisp/language/
> directory. Some of these composition rules are derived automatically
> from character properties, see composite.el and characters.el (which
> cannot happen without Emacs knowing up-front about the properties).

Thanks for this. I didn’t know Emacs needed to manually compose characters.

Feel free to close this report, since it is due to my misunderstanding, not a real problem nor a real “wishlist”.

BTW,

I did try to follow language/*.el, and come with up the following code:

(let* ((c "[\uED80-\uED9F]\\|\uEDAA\\|\uEDAB”) ; constant
       (v "[\uEDA0-\uEDA9]”) ; vowel
       (cv (concat v c)))
  (set-char-table-range
   composition-function-table '(#xeda0 . #xeda9)
   (list 
    (vector cv 1 #'zbalermorna-shape-gstring)
    [nil 0 font-shape-gstring])))

(defun zbalermorna-shape-gstring (gstring direction)
  (message "shape %s" gstring) ; debugging
  gstring)

But it doesn’t work as expected. For example, “ka” should be composed, but the behavior here is “a” itself is composed, and when the first rule is matched, only the consonant “k” is sent to font-shape-gstring: only “k” is in the header.

Have you any pointers? Thanks!

[-- Attachment #2: Type: text/html, Size: 6609 bytes --]

  reply	other threads:[~2022-05-11 15:43 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-08 11:45 bug#55319: 28.1.50; Abugida not rendered correctly (MacOS) Kai Ma
2022-05-08 16:57 ` Eli Zaretskii
2022-05-09  1:43   ` Kai Ma
2022-05-09  2:38     ` Eli Zaretskii
2022-05-11 15:43       ` Kai Ma [this message]
2022-05-11 16:12         ` Eli Zaretskii
2022-05-12  8:10         ` Robert Pluim
2022-05-12  8:26           ` Kai Ma
2022-05-12  8:36             ` Robert Pluim
2022-05-12  9:37               ` Eli Zaretskii
2022-05-12  9:42                 ` Robert Pluim
2022-05-12  9:54                   ` 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

  List information: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=052FC289-9179-4B2D-AE52-2D688410162C@gmail.com \
    --to=justksqsf@gmail.com \
    --cc=55319@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    /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 public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).