emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Removing unloaded functions from auto-mode-alist.


From: David Kastrup
Subject: Re: Removing unloaded functions from auto-mode-alist.
Date: Wed, 20 Apr 2005 01:24:55 +0200
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux)

Lute Kamstra <address@hidden> writes:

> Stefan Monnier <address@hidden> writes:
>
> [...]
>
>>> Won't work.  Autoloads corresponding to a different file than the
>>> loaded one don't get restored.
>>
>> That's a bug which we should fix.
>
> unload-feature restores the (autoload ...) form that is present in
> the autoload property of the symbol.  As I understand it, that
> autoload property only gets set by do_autoload.

Ah, that sounds like a more plausible explanation for the effect I
see.  That would mean that (require 'feature) can't be undone with
(unload-feature 'feature) concerning the autoloads.  And also all hook
variables are cleared.  This behavior has some sort of usefulness,
namely "get rid of that package and I don't want to ever see it
again", but I think the normal use pattern without extra options for
unload-feature would probably to restore the stuff to dormant, not
dead.

> do_autoload is called when an autoloaded function is first called by
> the lisp interpreter.  (do_autoload also loads the file that defines
> that function.)  So if something other than do_autoload loads a file
> that defines a function that had an autoload definition before, that
> old autoload definition won't be recorded.
>
> Maybe we can shift recording the old autoload definition from
> do_autoload to Fload?
>
>> In the mean time, you can use an auctex-override-unload-hook to
>> re-install the autoloads.
>
> Don't you mean auctex-unload-hook?

Probably.  I assumed Stefan was talking about a different hook, but I
can't see anything but the normal unload-hook, at least in
loadhist.el.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum




reply via email to

[Prev in Thread] Current Thread [Next in Thread]