From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Paul Rankin Newsgroups: gmane.emacs.bugs Subject: bug#24073: 24.5; outline-on-heading-p sees any invisible text property as outline invisible Date: Tue, 02 Aug 2016 13:27:17 +1000 Message-ID: <1470108437.2199166.683287713.52EC58A4@webmail.messagingengine.com> References: <1469520753.418402.676896009.00AAC0DE@webmail.messagingengine.com> <1469679952.1866840.678960241.470C9887@webmail.messagingengine.com> <1470044267.1052174.682381049.26455152@webmail.messagingengine.com> <87fuqoa82i.fsf@users.sourceforge.net> NNTP-Posting-Host: blaine Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit X-Trace: blaine.gmane.org 1470108502 32303 195.159.176.226 (2 Aug 2016 03:28:22 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 2 Aug 2016 03:28:22 +0000 (UTC) Cc: 24073@debbugs.gnu.org To: npostavs@users.sourceforge.net Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Tue Aug 02 05:28:19 2016 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 1bUQNO-00088a-I1 for geb-bug-gnu-emacs@m.gmane.org; Tue, 02 Aug 2016 05:28:18 +0200 Original-Received: from localhost ([::1]:53794 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUQNL-0002Yz-4f for geb-bug-gnu-emacs@m.gmane.org; Mon, 01 Aug 2016 23:28:15 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:46477) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUQNF-0002Yi-2d for bug-gnu-emacs@gnu.org; Mon, 01 Aug 2016 23:28:10 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bUQNB-00028X-2K for bug-gnu-emacs@gnu.org; Mon, 01 Aug 2016 23:28:09 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:55976) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bUQN8-00028E-JH for bug-gnu-emacs@gnu.org; Mon, 01 Aug 2016 23:28:04 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1bUQN8-0002b7-Ea for bug-gnu-emacs@gnu.org; Mon, 01 Aug 2016 23:28:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Paul Rankin Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 02 Aug 2016 03:28:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 24073 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 24073-submit@debbugs.gnu.org id=B24073.14701084399931 (code B ref 24073); Tue, 02 Aug 2016 03:28:02 +0000 Original-Received: (at 24073) by debbugs.gnu.org; 2 Aug 2016 03:27:19 +0000 Original-Received: from localhost ([127.0.0.1]:53273 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bUQMR-0002a7-AQ for submit@debbugs.gnu.org; Mon, 01 Aug 2016 23:27:19 -0400 Original-Received: from out5-smtp.messagingengine.com ([66.111.4.29]:44752) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bUQMP-0002Zz-OQ for 24073@debbugs.gnu.org; Mon, 01 Aug 2016 23:27:18 -0400 Original-Received: from compute7.internal (compute7.nyi.internal [10.202.2.47]) by mailout.nyi.internal (Postfix) with ESMTP id 5586B20755; Mon, 1 Aug 2016 23:27:17 -0400 (EDT) Original-Received: from web1 ([10.202.2.211]) by compute7.internal (MEProxy); Mon, 01 Aug 2016 23:27:17 -0400 DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=paulwrankin.com; h=cc:content-transfer-encoding:content-type:date:from :in-reply-to:message-id:mime-version:references:subject:to :x-sasl-enc:x-sasl-enc; s=mesmtp; bh=D24AwAoj+vfDCVPQ4uuRBSoQrrI =; b=WOuPNGxMTkxqth9iOGyYSKkpLP7Ykd1KORF5Y752JZP141/+lw5nXTtQn8o iM9UAHbbkWjEjQQXEiRCMHLQDbCdc7PwaQ5noSNvmxQmWUSZUP/PE9JPe5jdvR3r CzbhkBj5lQJXfY62OcBOtfUBLNTGz4EBFhnefjqIl0M2gcts= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-sasl-enc:x-sasl-enc; s=smtpout; bh=D24AwAoj+vfDCVP Q4uuRBSoQrrI=; b=tli4JDm2xctMMtoBpj5KB04+R+V7DSDaMlEcsUOFqaGbTx7 yUhwVrYeDD8r14zFK56B+opDl3LyLWwZ5IOe8c1YzwWfvTLKad1EEnDn7zFiLx1E P08d5b/IoQKxgx5Vs1aTgD8vUpL9BiCiMF35qq1m3kU2bjaG2NV98mBU5koo= Original-Received: by mailuser.nyi.internal (Postfix, from userid 99) id 246F06A4C1; Mon, 1 Aug 2016 23:27:17 -0400 (EDT) X-Sasl-Enc: aagyBHaocggGd4NTApDUMLPN6+yP/5uZJe9ewMy6nCjd 1470108437 X-Mailer: MessagingEngine.com Webmail Interface - ajax-501c3c37 In-Reply-To: <87fuqoa82i.fsf@users.sourceforge.net> 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:121771 Archived-At: npostavs@users.sourceforge.net on Mon, 01 Aug 2016 10:16 -0400: > I don't think it's necessarily a misuse of defsubst, that just happens > to be one of the limitations. Jks ;) > Well, as you saw, re`eval'uating outline-on-heading-p (so that it > becomes uncompiled) seems to work, you could try doing that from lisp: > > (pcase (find-function-noselect 'outline-on-heading-p) > (`(,buffer . ,position) > (with-current-buffer buffer > (goto-char position) > (eval (read (current-buffer))))) > (_ (error "Couldn't find `outline-on-heading-p'"))) Whoa this is terrifying... Would something like the following work? Maybe with a (condition-case ...) ? (let ((source (find-function-noselect 'outline-on-heading-p))) (with-current-buffer (car source) (goto-char (cdr source)) (eval-defun nil))) > Or advise :override outline-on-heading-p instead of outline-invisible-p. But I want to act with a light touch... > By the way, shouldn't that be > > (lambda (return) (or (eq return 'outline) return)) I think this will fail when outline-invisible-p returns foo in the initial example. We want to only return t when outline-invisible-p returns outline, not foo or otherwise.