* defvar and "special-variable-p"-ness
@ 2021-08-14 23:02 Eduardo Ochs
2021-08-14 23:24 ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-08-14 23:37 ` Stefan Monnier via Users list for the GNU Emacs text editor
0 siblings, 2 replies; 6+ messages in thread
From: Eduardo Ochs @ 2021-08-14 23:02 UTC (permalink / raw)
To: help-gnu-emacs
Hi list,
after "defvar"-ing a variable its "special-variable-p"-ness becomes
true. Is there a way to make its "special-variable-p"-ness nil again?
That would be useful for some tests that I am trying to write...
By the way, I thought that "unload-feature" would be able to revert
the "special-variable-p"-ness of a variable back to nil, but it seems
that it doesn't do that. Here's how I tested it. I created a file
"/tmp/myfile.el" with just these three lines,
;; Copy this 3-line block to /tmp/myfile.el
(defvar myvar 99)
(provide 'myfile)
Then I ran the uncommented sexps below one by one with my favorite
variant of `C-x C-e':
(setq myvar 42)
(special-variable-p 'myvar)
;; ^ --> nil
(require 'myfile "/tmp/myfile.el")
(assoc "/tmp/myfile.el" load-history)
;; ^ --> ("/tmp/myfile.el" myvar (provide . myfile))
(special-variable-p 'myvar)
;; ^ --> t
(unload-feature 'myfile)
(assoc "/tmp/myfile.el" load-history)
;; ^ --> nil
(special-variable-p 'myvar)
;; ^ --> t
Thanks in advance!
Eduardo Ochs
http://angg.twu.net/#eev
http://angg.twu.net/eev-intros/find-lexical-intro.html
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: defvar and "special-variable-p"-ness
2021-08-14 23:02 defvar and "special-variable-p"-ness Eduardo Ochs
@ 2021-08-14 23:24 ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-08-14 23:29 ` Eduardo Ochs
2021-08-14 23:37 ` Stefan Monnier via Users list for the GNU Emacs text editor
1 sibling, 1 reply; 6+ messages in thread
From: Emanuel Berg via Users list for the GNU Emacs text editor @ 2021-08-14 23:24 UTC (permalink / raw)
To: help-gnu-emacs
Eduardo Ochs wrote:
> after "defvar"-ing a variable its "special-variable-p"-ness becomes
> true
It does?
--
underground experts united
https://dataswamp.org/~incal
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: defvar and "special-variable-p"-ness
2021-08-14 23:24 ` Emanuel Berg via Users list for the GNU Emacs text editor
@ 2021-08-14 23:29 ` Eduardo Ochs
2021-08-15 0:58 ` Emanuel Berg via Users list for the GNU Emacs text editor
0 siblings, 1 reply; 6+ messages in thread
From: Eduardo Ochs @ 2021-08-14 23:29 UTC (permalink / raw)
To: Emanuel Berg, help-gnu-emacs
On Sat, 14 Aug 2021 at 20:25, Emanuel Berg via Users list for the GNU
Emacs text editor <help-gnu-emacs@gnu.org> wrote:
>
> Eduardo Ochs wrote:
>
> > after "defvar"-ing a variable its "special-variable-p"-ness becomes
> > true
>
> It does?
Hi Emanuel,
please try the tests in my e-mail - this one:
https://lists.gnu.org/archive/html/help-gnu-emacs/2021-08/index.html
Cheers, E.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: defvar and "special-variable-p"-ness
2021-08-14 23:02 defvar and "special-variable-p"-ness Eduardo Ochs
2021-08-14 23:24 ` Emanuel Berg via Users list for the GNU Emacs text editor
@ 2021-08-14 23:37 ` Stefan Monnier via Users list for the GNU Emacs text editor
2021-08-15 0:24 ` Eduardo Ochs
1 sibling, 1 reply; 6+ messages in thread
From: Stefan Monnier via Users list for the GNU Emacs text editor @ 2021-08-14 23:37 UTC (permalink / raw)
To: help-gnu-emacs
> after "defvar"-ing a variable its "special-variable-p"-ness becomes
> true. Is there a way to make its "special-variable-p"-ness nil again?
> That would be useful for some tests that I am trying to write...
There's `internal-make-var-non-special`.
Stefan
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: defvar and "special-variable-p"-ness
2021-08-14 23:37 ` Stefan Monnier via Users list for the GNU Emacs text editor
@ 2021-08-15 0:24 ` Eduardo Ochs
0 siblings, 0 replies; 6+ messages in thread
From: Eduardo Ochs @ 2021-08-15 0:24 UTC (permalink / raw)
To: Stefan Monnier; +Cc: help-gnu-emacs
On Sat, 14 Aug 2021 at 20:38, Stefan Monnier via Users list for the
GNU Emacs text editor <help-gnu-emacs@gnu.org> wrote:
>
> > after "defvar"-ing a variable its "special-variable-p"-ness becomes
> > true. Is there a way to make its "special-variable-p"-ness nil again?
> > That would be useful for some tests that I am trying to write...
>
> There's `internal-make-var-non-special`.
Perfect!
Thanks! =) =) =)
E.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: defvar and "special-variable-p"-ness
2021-08-14 23:29 ` Eduardo Ochs
@ 2021-08-15 0:58 ` Emanuel Berg via Users list for the GNU Emacs text editor
0 siblings, 0 replies; 6+ messages in thread
From: Emanuel Berg via Users list for the GNU Emacs text editor @ 2021-08-15 0:58 UTC (permalink / raw)
To: help-gnu-emacs
Eduardo Ochs wrote:
>>> after "defvar"-ing a variable its
>>> "special-variable-p"-ness becomes true
>>
>> It does?
>
> please try the tests in my e-mail - this one:
> https://lists.gnu.org/archive/html/help-gnu-emacs/2021-08/index.html
Please read this webpage first...
(defvar not-special)
(setq not-special "not special")
(special-variable-p 'not-special) ; nil
(defvar special "soo special")
(special-variable-p 'special) ; t
--
underground experts united
https://dataswamp.org/~incal
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2021-08-15 0:58 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-08-14 23:02 defvar and "special-variable-p"-ness Eduardo Ochs
2021-08-14 23:24 ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-08-14 23:29 ` Eduardo Ochs
2021-08-15 0:58 ` Emanuel Berg via Users list for the GNU Emacs text editor
2021-08-14 23:37 ` Stefan Monnier via Users list for the GNU Emacs text editor
2021-08-15 0:24 ` Eduardo Ochs
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.