From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Robert Pluim Newsgroups: gmane.emacs.bugs Subject: bug#55319: 28.1.50; Abugida not rendered correctly (MacOS) Date: Thu, 12 May 2022 10:10:56 +0200 Message-ID: <87zgjn41db.fsf@gmail.com> References: <83ilqgufm3.fsf@gnu.org> <83czgnv3ak.fsf@gnu.org> <052FC289-9179-4B2D-AE52-2D688410162C@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="18264"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Eli Zaretskii , 55319@debbugs.gnu.org To: Kai Ma Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Thu May 12 10:30:01 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1np4Cu-0004cv-TX for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 12 May 2022 10:30:00 +0200 Original-Received: from localhost ([::1]:37142 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1np4Ct-0007ji-QR for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 12 May 2022 04:29:59 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:51880) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1np3vW-0007Hh-CR for bug-gnu-emacs@gnu.org; Thu, 12 May 2022 04:12:08 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:45594) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1np3vW-0003Hv-3c for bug-gnu-emacs@gnu.org; Thu, 12 May 2022 04:12:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1np3vV-0005WF-VP for bug-gnu-emacs@gnu.org; Thu, 12 May 2022 04:12:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Robert Pluim Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 12 May 2022 08:12:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 55319 X-GNU-PR-Package: emacs Original-Received: via spool by 55319-submit@debbugs.gnu.org id=B55319.165234306621116 (code B ref 55319); Thu, 12 May 2022 08:12:01 +0000 Original-Received: (at 55319) by debbugs.gnu.org; 12 May 2022 08:11:06 +0000 Original-Received: from localhost ([127.0.0.1]:39491 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1np3ub-0005UW-M8 for submit@debbugs.gnu.org; Thu, 12 May 2022 04:11:06 -0400 Original-Received: from mail-wr1-f44.google.com ([209.85.221.44]:38881) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1np3ua-0005To-8l for 55319@debbugs.gnu.org; Thu, 12 May 2022 04:11:04 -0400 Original-Received: by mail-wr1-f44.google.com with SMTP id k2so6104498wrd.5 for <55319@debbugs.gnu.org>; Thu, 12 May 2022 01:11:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:references:date:in-reply-to:message-id :mime-version:content-transfer-encoding; bh=tXGljVK3yrQk3iaDrenfYHrE8MuplqWX1byvVhLmfDY=; b=na5e1Cv7yastD7yq27FPryvbHfptvjvUijWeWznCdSsM3jTFCTRKYY9ANpeuXxKp9q +7TnCRZpNz52SuNQIfolkRDPDoYYRuilAvphqf/wjPPFYNqaJzFpeG24DWwzh2mcKHVn F4zLGPGyaM2BbrjItsMch53iVGquzWtYZqQINAWXPvHRnNLcYR1Cf7jBKoxE3ADOJOLx 1zJuUqJaKPIVlW0txwhQu+i3dQrgW62JH8iGzRRuA4rdIvpnBdHkXRUOSl7p21ta55BH uMXsgfgxVLRyX4/o2gCEJjzlT+g6hKecim2boJXdCsIWl8biWUh6zx1qDWZabMcmkER6 hbsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:mime-version:content-transfer-encoding; bh=tXGljVK3yrQk3iaDrenfYHrE8MuplqWX1byvVhLmfDY=; b=saGk1+StUy6CleEeV6zZ6jHKufUg9EaYQSoM9oFjE/z/AuZAyaroElk5NCeSwGjwhP I0UUYkfsoWUlM5BugJfgnW/rw0SAioQ15jyTiYO6pdu0pHZeEQCafRjBaDv8VB7aG0d+ NytuMr8LmgnLypQNN+GgVOFUh/0ohh8/SOmdbciUhQIViZuy47XQCQUT/UFuZwbQZKB1 9SQVCF2naErqcqpjLLRrf+pQXDQZe/ybaeEQZk1tT3Z+YmQQzzzlJFEU4keiNJBouYP9 Pnn6WI+/Rbe9U7cI8dRU9Uc6DlBE+Ba8KXwGAPTYXweMDHLWBA2/Zylrq3fxN0joIPZ+ VQaA== X-Gm-Message-State: AOAM533zih5aSCLA3M+TOqBYwIRMd+Q2m9GCfn3dBy3eeuNhQUW+ysZX SJjxur0Z9KBbhPQ1uOsqdjbUa+IXkHs= X-Google-Smtp-Source: ABdhPJwCm9q0a0UpLV2GMv22QNhDJdIlgrL/1Zb0RNxU0/Utq3bhILGS48ky+raASylF7BxWrOx/jg== X-Received: by 2002:a05:6000:1ac8:b0:20c:6ed8:403 with SMTP id i8-20020a0560001ac800b0020c6ed80403mr25742595wry.247.1652343058077; Thu, 12 May 2022 01:10:58 -0700 (PDT) Original-Received: from rltb ([2a01:e0a:3f3:fb50:58fa:34f8:3a29:1f3e]) by smtp.gmail.com with ESMTPSA id z12-20020a7bc7cc000000b003942a244f39sm2213340wmk.18.2022.05.12.01.10.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 May 2022 01:10:57 -0700 (PDT) In-Reply-To: <052FC289-9179-4B2D-AE52-2D688410162C@gmail.com> (Kai Ma's message of "Wed, 11 May 2022 23:43:36 +0800") X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:232023 Archived-At: >>>>> On Wed, 11 May 2022 23:43:36 +0800, Kai Ma said: >> On May 9, 2022, at 10:38, Eli Zaretskii > wrote: >>=20 >> 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). Kai> Thanks for this. I didn=E2=80=99t know Emacs needed to manually co= mpose characters. Kai> Feel free to close this report, since it is due to my misunderstan= ding, not a real problem nor a real =E2=80=9Cwishlist=E2=80=9D. Kai> BTW, Kai> I did try to follow language/*.el, and come with up the following = code: Kai> (let* ((c "[\uED80-\uED9F]\\|\uEDAA\\|\uEDAB=E2=80=9D) ; constant ie: "[\uED80-\uED9F\uEDAA\uEDAB]=E2=80=9D Kai> (v "[\uEDA0-\uEDA9]=E2=80=9D) ; vowel Kai> (cv (concat v c))) You've called this 'cv', but it=CA=BCs actually 'vc'. Kai> (set-char-table-range Kai> composition-function-table '(#xeda0 . #xeda9) Kai> (list=20 Kai> (vector cv 1 #'zbalermorna-shape-gstring) Kai> [nil 0 font-shape-gstring]))) You=CA=BCre looking back from vowels, it might be easier to add entries for the consonants and look forward. Kai> (defun zbalermorna-shape-gstring (gstring direction) Kai> (message "shape %s" gstring) ; debugging Kai> gstring) Kai> But it doesn=E2=80=99t work as expected. For example, =E2=80=9Cka= =E2=80=9D should be Kai> composed, but the behavior here is =E2=80=9Ca=E2=80=9D itself is c= omposed, Kai> and when the first rule is matched, only the consonant =E2=80=9Ck= =E2=80=9D is Kai> sent to font-shape-gstring: only =E2=80=9Ck=E2=80=9D is in the hea= der. Kai> Have you any pointers? Thanks! I think if you fix 'cv' this will work. Robert --=20