GNU bug report logs - #16493
24.3.50; (setq search-invisible t) is useless, let's allow to turn visible-mode temporarily on

Previous Next

Package: emacs;

Reported by: Bastien Guerry <bzg <at> altern.org>

Date: Sun, 19 Jan 2014 14:57:01 UTC

Severity: normal

Found in version 24.3.50

Full log


View this message in rfc822 format

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Noam Postavsky <npostavs <at> gmail.com>
Cc: Bastien <bzg <at> gnu.org>, 16493 <at> debbugs.gnu.org
Subject: bug#16493: 24.3.50; (setq search-invisible t) is useless, let's allow to turn visible-mode temporarily on
Date: Tue, 30 Apr 2019 08:45:54 -0400
>> You can do
>>
>>     (overlay-put OVERLAY 'invisible 'visible)
>>
>> to get the same result without far-reaching changes to the C code.
>
> Um, no, that gives the opposite effect.
>
> (let ((p (point))
>       overlay)
>   (insert "(" (propertize "invisible" 'invisible t) ")")
>   (setq overlay (make-overlay p (point)))
>   ;; All text, including parens, becomes invisible.
>   (overlay-put overlay 'invisible 'visible))

You need to use `add-to-invisibility-spec` before that works.  E.g.: 

    (add-to-invisibility-spec 'dummy)
    
that's because of a quirk of the way we treat `invisible` and the
`buffer-invisibility-spec`.


        Stefan
        

PS: To fix this quirk, we should change buffer-invisibility-spec's
default value to nil (or `(t)`, maybe) instead of t.




This bug report was last modified 6 years and 35 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.