From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Pip Cet Newsgroups: gmane.emacs.bugs Subject: bug#33435: 27.0.50; A use case for recursive display specifications Date: Mon, 19 Nov 2018 18:51:37 +0000 Message-ID: NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" X-Trace: blaine.gmane.org 1542653463 19237 195.159.176.226 (19 Nov 2018 18:51:03 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Mon, 19 Nov 2018 18:51:03 +0000 (UTC) To: 33435@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Mon Nov 19 19:50:59 2018 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gOodO-0004sD-Fv for geb-bug-gnu-emacs@m.gmane.org; Mon, 19 Nov 2018 19:50:58 +0100 Original-Received: from localhost ([::1]:58625 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gOofU-0006MP-Tx for geb-bug-gnu-emacs@m.gmane.org; Mon, 19 Nov 2018 13:53:08 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43806) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gOofP-0006LG-A7 for bug-gnu-emacs@gnu.org; Mon, 19 Nov 2018 13:53:03 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gOofO-0002wI-Hp for bug-gnu-emacs@gnu.org; Mon, 19 Nov 2018 13:53:03 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:56973) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gOofO-0002vr-0T for bug-gnu-emacs@gnu.org; Mon, 19 Nov 2018 13:53:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1gOofN-0002uX-RJ for bug-gnu-emacs@gnu.org; Mon, 19 Nov 2018 13:53:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Pip Cet Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 19 Nov 2018 18:53:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 33435 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.154265355011148 (code B ref -1); Mon, 19 Nov 2018 18:53:01 +0000 Original-Received: (at submit) by debbugs.gnu.org; 19 Nov 2018 18:52:30 +0000 Original-Received: from localhost ([127.0.0.1]:32998 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gOoep-0002ti-Py for submit@debbugs.gnu.org; Mon, 19 Nov 2018 13:52:27 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:33938) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gOoen-0002tU-8J for submit@debbugs.gnu.org; Mon, 19 Nov 2018 13:52:26 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gOoeh-00023d-Dp for submit@debbugs.gnu.org; Mon, 19 Nov 2018 13:52:20 -0500 Original-Received: from lists.gnu.org ([2001:4830:134:3::11]:51446) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gOoeh-00023Q-AN for submit@debbugs.gnu.org; Mon, 19 Nov 2018 13:52:19 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43541) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gOoeg-0005bk-Ji for bug-gnu-emacs@gnu.org; Mon, 19 Nov 2018 13:52:19 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gOoef-00020o-PQ for bug-gnu-emacs@gnu.org; Mon, 19 Nov 2018 13:52:18 -0500 Original-Received: from mail-lf1-x12c.google.com ([2a00:1450:4864:20::12c]:41372) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gOoef-0001zr-J4 for bug-gnu-emacs@gnu.org; Mon, 19 Nov 2018 13:52:17 -0500 Original-Received: by mail-lf1-x12c.google.com with SMTP id c16so22098571lfj.8 for ; Mon, 19 Nov 2018 10:52:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=ffVH68zBL54uz7xKwWWVCqHPagFJD2HN/ZyKv0LQxZk=; b=ruQTWIMt92nqYLcYD19k7PR77m8kEh+09cWFMMmZLpyDI0rF2XrCqFVuyEub25ZH+O 0X9rqHP/PPQqbfOaUA8surcOj/ZPijkv83RD2UPudKe5whEwdh5FESYT+9ySpvXPg6Sp wHXqto0Ke2x6SPdNvRDsRZ6k/XMUhyTPX5XdT20PxdR/F1/qwQoI2xONHPVb48etnsk0 mCB+71C9tnMATcSQi75f0WwQaJD4YSxyA5XkI1rvzPxCdyOwuoNQ95L/Vus18ilQmTte hNzOoYKd32Dwjl+7OHaC6AsDk2BK1ec/9NThMt+/JqN3TLb+tmPVm+2CGIx16roFUVmx 5Fug== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=ffVH68zBL54uz7xKwWWVCqHPagFJD2HN/ZyKv0LQxZk=; b=EXeoIi6nR4o5q7/tv6luvyTVjJEswZkFw9KyO33I7s/4SCb9DTS/wnTt4zqairqTw8 o/28hFnmb6+qvbG3T5/Sflby8VQmKA3hCA8iVaz6A3OKB2N9/WnQVIIIGie+8u5y3cBv Qaqv46KoXSJG0FcEWAxcznlW4Yg9F51NjrJBgrQWTVVu3euJPMs95JKPONCUwudyHWwU l8YjCkWN5PxhWVKWq1qYYQVQvzPFrU7RKFoQw8+0DUqP3LA0Q9NPC+/zWQup8mjR3tL0 zmRg6h6CHBYXURxuACyqdQMFobmtudvfC5BcWzgSLY4D3pQzIb9fDCMFwn8ts1B163Nb yz8g== X-Gm-Message-State: AGRZ1gJKO6KfWrncMqiK1we2b4Ys6Jsab/4PGrWv4OBb79H6OmQk9IcR cFxZYdNGqA2HOX/Lv+2kGlm6LcTG3rK4rRVmTTrJcgRv X-Google-Smtp-Source: AJdET5e+oqMyOwW6RtaRsgh9UYaMni64K5E4Ke7/2HfuufWkKYD9Pnsqn50J/pQN1nxGISS5x67DnHzpd47VqcSrZm8= X-Received: by 2002:a19:7306:: with SMTP id o6mr11046666lfc.136.1542653535759; Mon, 19 Nov 2018 10:52:15 -0800 (PST) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 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.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:152541 Archived-At: This is a feature request: I'd like to be able to display an empty line as a non-empty line with images in it. If there's a way to do that with standard display specs, I haven't found it. It's possible I'm merely missing an obvious way to do so. I think there are two almost-equivalent approaches to achieving this: 1. interpret a list of display specifications by displaying the first element of the list, then the second, and so, on, so I could use (put-text-property beg end 'display `(,image1 ,image2 ,image3 "\n")) 2. allow a single level of recursion in display specifications, so I could use (put-text-property beg end 'display (concat (propertize " " 'display image1) (propertize " " 'display image2) (propertize " " 'display image3) "\n")) I've tried simply disabling the checks for recursive display specifications and (2) appears to work, but I don't know the precise rationale for their existence, so it's possible that breaks the display engine somehow. If the problem is merely the possibility of creating an infinite loop by setting a string's display property to the string itself (indeed, in my test build, that crashes emacs), that could be avoided while still allowing a single level of recursion. (I'm using this to highlight syntactic indentation with SVG images, and that's much prettier if empty lines are interpreted as being indented to the minimum of the preceding and following levels of indentation, rather than merely being empty.)