gpt4 book ai didi

emacs - 确保自动加载emacs中的自动加载功能的机制是什么

转载 作者:行者123 更新时间:2023-12-01 09:55:27 27 4
gpt4 key购买 nike

我了解所有标有“;;;###Autoload”行的函数都是自动加载函数,但问题是执行这个“自动加载函数”的底层机制是什么?还有为什么当你从elpa安装一个包时,会有一个名为XXX-autoload.elc的编译文件?

最佳答案

当您安装 Elpa 包时,Emacs 会扫描包中的所有 .el 文件以查找自动加载 token ,并将这些函数/变量的 stub 添加到 [package]-autoloads.el 文件中。 stub 只是将信息附加到函数/变量符号上,这些符号告诉 Emacs 在哪里可以找到实际定义,以及文档字符串的内容。然后它将所有 .el 文件编译为 .elc 文件,包括自动加载文件。

然后(每次启动 Emacs 时)它会加载并评估 [package]-autoloads.elc 文件,而不是主要的 .elc 文件。这样,加载包的速度要快得多,因为只有在调用自动​​加载的符号之一时才会加载主 .elc 文件。在此之前,Emacs 不知道主 .el 文件中的其他函数/变量。

关于emacs - 确保自动加载emacs中的自动加载功能的机制是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28889446/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com