From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#44632: 27.1.50; Left-to-right Arabic shaping breaks at property bounds Date: Sat, 14 Nov 2020 16:51:39 +0200 Message-ID: <83k0uouh38.fsf@gnu.org> References: <878sb4p0sk.fsf@brutus.matara> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="10873"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 44632@debbugs.gnu.org To: Thamer Mahmoud Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Nov 14 15:52:09 2020 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 1kdwuP-0002je-1w for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 14 Nov 2020 15:52:09 +0100 Original-Received: from localhost ([::1]:33794 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kdwuO-0001KA-3v for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 14 Nov 2020 09:52:08 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:45158) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kdwuI-0001K0-8N for bug-gnu-emacs@gnu.org; Sat, 14 Nov 2020 09:52:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:38664) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kdwuH-0006dw-Ua for bug-gnu-emacs@gnu.org; Sat, 14 Nov 2020 09:52:01 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kdwuH-0000Lp-TI for bug-gnu-emacs@gnu.org; Sat, 14 Nov 2020 09:52:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 14 Nov 2020 14:52:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 44632 X-GNU-PR-Package: emacs Original-Received: via spool by 44632-submit@debbugs.gnu.org id=B44632.16053655181339 (code B ref 44632); Sat, 14 Nov 2020 14:52:01 +0000 Original-Received: (at 44632) by debbugs.gnu.org; 14 Nov 2020 14:51:58 +0000 Original-Received: from localhost ([127.0.0.1]:50210 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kdwuE-0000LX-JA for submit@debbugs.gnu.org; Sat, 14 Nov 2020 09:51:58 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:45032) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kdwuC-0000LL-U4 for 44632@debbugs.gnu.org; Sat, 14 Nov 2020 09:51:57 -0500 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:55477) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kdwu7-0006af-K4; Sat, 14 Nov 2020 09:51:51 -0500 Original-Received: from [176.228.60.248] (port=3435 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kdwu6-0006SC-Kp; Sat, 14 Nov 2020 09:51:51 -0500 In-Reply-To: <878sb4p0sk.fsf@brutus.matara> (message from Thamer Mahmoud on Sat, 14 Nov 2020 15:42:35 +0300) 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:193283 Archived-At: > From: Thamer Mahmoud > Date: Sat, 14 Nov 2020 15:42:35 +0300 > > (with-current-buffer-window "*shaping testcase*" nil nil > (insert "L2R عربي" "\n\n") > (insert "عربي") > (put-text-property 5 6 'face 'highlight) > (put-text-property 11 12 'face 'highlight)) > > 2. Notice the AIN(ع) in the L2R paragraph has the wrong shape. This is a known limitation of the current Emacs display engine: it cannot shape text across face changes. All the text that needs to be shaped must have the same face. This problem has existed since Emacs 21. Fixing this limitation would require a more or less complete redesign of how the display engine scans the buffer text, or maybe some radical changes in how character composition is handled. Until one of these changes, this problem will remain unsolved, sorry.