[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Patch: perform autoloading when docs is missing from autoload object
From: |
Stefan Monnier |
Subject: |
Re: Patch: perform autoloading when docs is missing from autoload object |
Date: |
Mon, 20 Sep 2021 13:02:47 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) |
> I tested with package-quickstart. As said, manually opened .elc and
> evaled the buffer.
Hmm... Can't see an obvious reason why it didn't do "the right thing"
for you (tho `M-x eval-buffer` will result in an unusable (FILE . OFFSET)
pair because the `load-file-name` var is not setup; a better test is to
load the file, but that doesn't explain why you ended up with an actual
doc *string*).
> By the way, when I was reading the manual, and testing all this, I could see
> that autoloads from Emacs sources were with offsets in autoload object.
Yes, this a special case: they're offsets into the `etc/DOC` file,
generated by the `lib-src/make-docfile.c` auxiliary tool.
This so as to bring the cost down further: instead of (FILE . OFFSET) we
can use just OFFSET where FILE is known implicitly to be `etc/DOC`.
> But I couldn't see those from installed packages. That is why I have
> finally ditched the entire package-quickstart and Emacs
> autoload generation.
Looking at the code, everything seems to be in place such that
byte-compiling the `package-quickstart.el` file *should* end up with
(FILE . OFFSET)s, but I haven't tested it to confirm yet.
You say it doesn't work, so apparently there's something somewhere that
still gets in the way :-(
>>> So the entire business of docs in autoloads is due to autoload file
>>> generation,
>>> seems to me, if I don't misunderstanding something?
>> I'm afraid I don't know what you mean by "business of docs in autoloads".
> Eh; sorry, that was a goofy expression. I meant that documentation ends up
> in autoload objects, because Emacs code that scrapes for autoloads explicitly
> put
> it there. I am no 100% sure, that is just my assumption, I hoped you would say
> yes or no :).
Ah, well then "yes" ;-)
> Rationale was that it is faster to just parsing with 'read' without loading
> structures in the memory;
Most Elisp files can be loaded fairly quickly (some exceptions are
things like `org.el` that pull in a lot of dependencies) and we'd only do
it once per session an only in some particular cases (not in loops,
etc...), so it's not that terribly important.
Stefan
- Re: Patch: perform autoloading when docs is missing from autoload object, (continued)
- Re: Patch: perform autoloading when docs is missing from autoload object, Stefan Monnier, 2021/09/15
- Re: Patch: perform autoloading when docs is missing from autoload object, Arthur Miller, 2021/09/17
- Re: Patch: perform autoloading when docs is missing from autoload object, Stefan Monnier, 2021/09/18
- Re: Patch: perform autoloading when docs is missing from autoload object, Arthur Miller, 2021/09/18
- Re: Patch: perform autoloading when docs is missing from autoload object,
Stefan Monnier <=
- Re: Patch: perform autoloading when docs is missing from autoload object, Arthur Miller, 2021/09/22
Re: Patch: perform autoloading when docs is missing from autoload object, Lars Ingebrigtsen, 2021/09/16
- Re: Patch: perform autoloading when docs is missing from autoload object, Arthur Miller, 2021/09/17
- Re: Patch: perform autoloading when docs is missing from autoload object, Lars Ingebrigtsen, 2021/09/17
- Re: Patch: perform autoloading when docs is missing from autoload object, Arthur Miller, 2021/09/17
- Re: Patch: perform autoloading when docs is missing from autoload object, Lars Ingebrigtsen, 2021/09/18
- RE: [External] : Re: Patch: perform autoloading when docs is missing from autoload object, Drew Adams, 2021/09/18
- Re: [External] : Re: Patch: perform autoloading when docs is missing from autoload object, Arthur Miller, 2021/09/18
- Re: Patch: perform autoloading when docs is missing from autoload object, Arthur Miller, 2021/09/18
- Re: Patch: perform autoloading when docs is missing from autoload object, Lars Ingebrigtsen, 2021/09/18