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

From: Noam Postavsky <[email-masked]>
Date: Sat, 11 May 2019 11:27:55 -0400

Eli Zaretskii <[email-masked]> writes:

>> >> PS: To fix this quirk, we should change buffer-invisibility-spec's
>> >> default value to nil (or `(t)`, maybe) instead of t.
>> 
>> (t) makes sense, I'd say.
>
> The difference (or lack thereof) between t and (t) is something that's
> confusing, and should be preferably avoided.
>
>> It's not a change to semantics though, just the default value.  And
>> starting from the current default of t, if some code does
>> (add-to-invisibility-spec 'foo) followed by
>> (remove-from-invisibility-spec 'foo) you get (t), so arguably just
>> starting from there in the first place makes things less confusing than
>> they are now.
>
> I'd rather we fixed the remove-from-invisibility-spec result than
> start promoting (t).

Starting from t, (add-to-invisibility-spec 'foo) also has the weird
result that it *reduces* the number of properties which cause
invisibility (from infinity to 2).  It seems unavoidable due to the
semantics of t (hence why we should default to (t) instead).