From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Ihor Radchenko Newsgroups: gmane.emacs.bugs Subject: bug#48740: 28.0.50; Composition text property is not always honoured Date: Sun, 20 Jun 2021 19:24:55 +0800 Message-ID: <87v968ok1k.fsf@localhost> References: <87im30ad2g.fsf@localhost> <837djg4gvq.fsf@gnu.org> <87wnrgtlln.fsf@localhost> <8335u449de.fsf@gnu.org> <87pmx8tfub.fsf@localhost> <83y2bw2oyr.fsf@gnu.org> <87eedn12j6.fsf@localhost> <835yyz2ctp.fsf@gnu.org> <878s3tbqvx.fsf@localhost> <83wnrdzjxe.fsf@gnu.org> 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="27604"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 48740@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun Jun 20 13:26:09 2021 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 1luvab-0006ze-7X for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 20 Jun 2021 13:26:09 +0200 Original-Received: from localhost ([::1]:55364 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1luvaa-0000Qu-73 for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 20 Jun 2021 07:26:08 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:53020) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1luvaU-0000QW-Gh for bug-gnu-emacs@gnu.org; Sun, 20 Jun 2021 07:26:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:49860) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1luvaU-0003ho-9E for bug-gnu-emacs@gnu.org; Sun, 20 Jun 2021 07:26:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1luvaT-0007VY-TB for bug-gnu-emacs@gnu.org; Sun, 20 Jun 2021 07:26:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Ihor Radchenko Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 20 Jun 2021 11:26:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 48740 X-GNU-PR-Package: emacs Original-Received: via spool by 48740-submit@debbugs.gnu.org id=B48740.162418830428789 (code B ref 48740); Sun, 20 Jun 2021 11:26:01 +0000 Original-Received: (at 48740) by debbugs.gnu.org; 20 Jun 2021 11:25:04 +0000 Original-Received: from localhost ([127.0.0.1]:33172 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1luvZY-0007UH-Iz for submit@debbugs.gnu.org; Sun, 20 Jun 2021 07:25:04 -0400 Original-Received: from mail-lf1-f51.google.com ([209.85.167.51]:40822) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1luvZW-0007Tl-Vv for 48740@debbugs.gnu.org; Sun, 20 Jun 2021 07:25:03 -0400 Original-Received: by mail-lf1-f51.google.com with SMTP id i13so24984940lfc.7 for <48740@debbugs.gnu.org>; Sun, 20 Jun 2021 04:25:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:in-reply-to:references:cc:date:message-id :mime-version:content-transfer-encoding; bh=5IIhltTCPEcv9UgXF0ZCJ2Yo3jDoxr3WfeFUFXYHy3U=; b=KegrXHk/533hfT9pgtakWrLVHIOUqd5Pjs1tSnKRtdGWG3o5qzE5RIzwNq4mswyPJF y8giLREMH9LsOcaRDqs9UNf/FApjx4QZS26h8VPsRFVE9XMQz7SqXO6LcgBNvzwKIZhx 1vbV0ixmWhVr9DxzYNMq+JbgGJvc8X5OZ/zpGAnNqAwCjFBxtyZqS62tfRTGsBFXC9ua PS4v/GA08XJXaOq7Id0Oa4BC4NgQD/tk/9mr7M6G4ygY5iGgwWr/fWK5SKfXNjqvqCoN bkd/D7brW71bw9Jse1HFuTMItjkwQHflCslpvuqsroYAmg9NHq7+Ng3fJL6B+YFXNfEF rF7w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:in-reply-to:references:cc:date :message-id:mime-version:content-transfer-encoding; bh=5IIhltTCPEcv9UgXF0ZCJ2Yo3jDoxr3WfeFUFXYHy3U=; b=q1cSv4oA2XgOlkvAtLqWzm6VzAMXhyxd2LEx/VZFzZBnHWPFNFWOSp4rrt/Vs/TjOV e2HjQl7zhCoL3BbTdKz1BNOLMhOWt983ztOyxK3aPs4RQ2HrgpqRhJMDxiqr0GY7wL6x Ai5B4U4ugp8FqD9+lFFT2vzzuMxhjFYu+kEoi0z2ogYZhVVV3G4UN7A04HohAyw+KeGo LK33acgOQ/zEyJifCHiWABDKIpce07eljYNbh/4fWeWVl7W2nMn6lTOMbGk5IqS8DmMa OdNcslrbA/WM3hsDAlmvHohCcwjfDA/qkq+z/faj8xun2L+uTjDsdSLkwiPQ2whzYjcl IqKA== X-Gm-Message-State: AOAM532N+wsHs65uAabwbgrOAJAbg80PlIuJ7Zpn2e1zIPqN2KZh6NhP niLvxsdY+f0DoIlG7PHq2zk= X-Google-Smtp-Source: ABdhPJx+RMadx5V30GDGk9UzrKnFtPg5ccV4uNgjZS0W6+wh8ErRV/tB0f64bMJUEraWItUZkDUTeg== X-Received: by 2002:ac2:490f:: with SMTP id n15mr2799323lfi.139.1624188296646; Sun, 20 Jun 2021 04:24:56 -0700 (PDT) Original-Received: from localhost ([158.255.2.9]) by smtp.gmail.com with ESMTPSA id l3sm1640876lfe.230.2021.06.20.04.24.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 20 Jun 2021 04:24:56 -0700 (PDT) In-Reply-To: <83wnrdzjxe.fsf@gnu.org> 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:208788 Archived-At: Eli Zaretskii writes: >> Composition works fine here despite spanning over multiple intervals. >> Again, I feel that I miss something in your explanation. > > We are mis-communicating. You already stated correctly the reason for > the problem: Thanks for the clarification. > I don't know why the values of the 'composition' property become not > 'eq'; perhaps some code does a copy-sequence or something? Presumably > if you take a good look at what happens in org-agenda-redo-all and its > subroutines, you will find that code. In general, when you are > dealing with static compositions, I'd suggest not to break the > composed region into several separate intervals with different > property lists: it's dangerous, as you see. I debugged the agenda code and found the place where the breakage happened: (concat (substring x 0 (match-end 1)) (unless (string-empty-p org-agenda-todo-keyword-format) (format org-agenda-todo-keyword-format (match-string 2 x))) ;; Remove `display' property as the icon could leak ;; on the white space. (org-add-props " " (org-plist-delete (text-properties-at 0 x) 'display)) (substring x (match-end 3))) Magically, replacing concat with format appears to fix the issue. However, I still have no clue what is going on there. I tried to investigate further and examined the text properties of the composed ONGOING keyword in inbox.org buffer. It turned out that the composition is broken in the inbox.org itself: #("* ONGOING" 0 1 (...) 2 5 (... composition (0 7 [128119]) prettify-symbol= s-start 3 prettify-symbols-end 10 face org-todo) 5 9 (... composition (0 7 = [128119]) prettify-symbols-start 3 prettify-symbols-end 10 face org-todo)) Yet, the ONGOING string is correctly replaced by =F0=9F=91=B7 symbol in inb= ox.org. The replacement does not work only in agenda, *and only when concat is used to construct the keyword*. I am completely confused about what is going on. Do you have any ideas about this? Best, Ihor