gpt4 book ai didi

emacs - 我什么时候应该使用 `require` 一个包是 `autoload` ?

转载 作者:行者123 更新时间:2023-12-01 08:51:19 25 4
gpt4 key购买 nike

例如,evil is autoload ,

一些博客/线程将使用

(require 'evil)
(evil-mode 1)

启用 evil-mode 。

AFAIK,Elisp 是 lisp2 和 evil-mode也是一个函数,所以不需要 setq .
(defadvice evil-mode (after start-evil activate)
"Enable Evil in Fundamental mode."
(if evil-mode
(progn
(when (eq (default-value 'major-mode) 'fundamental-mode)
;; changed back by `evil-local-mode'
(setq-default major-mode 'turn-on-evil-mode))
(ad-enable-regexp "^evil")
(ad-activate-regexp "^evil")
(with-no-warnings (evil-esc-mode 1)))
(when (eq (default-value 'major-mode) 'turn-on-evil-mode)
(setq-default major-mode 'fundamental-mode))
(ad-disable-regexp "^evil")
(ad-update-regexp "^evil")
(with-no-warnings (evil-esc-mode -1))))

但是,因为 autoload ,
(evil-mode 1)

require ,它也很好用(至少对我来说)

(以下如有不对的地方,请指正,谢谢)

我的问题是我什么时候必须使用 require如果所需的包是自动加载的

最佳答案

你是对的——如果是 autoload evil-mode的声明已经评估过了,那就不用(require 'evil)之前 (evil-mode 1)
个人用户可能需要也可能不需要(require 'evil)尽管。这是一个如何安装库的问题。单独一个 ;;;###autoload cookie 什么都不做;但如果你安装了 evil使用package.el,那么它们将被解析并变成autoload的文件声明,Emacs 将在包初始化时加载这些声明。

如果您在不使用包管理器的情况下安装库,那么您可能需要 require它,或者自己写 autoload您可能正在调用的函数的声明。

关于emacs - 我什么时候应该使用 `require` 一个包是 `autoload` ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51334468/

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