我在我的系统上使用 Emacs 23。我从一位同事(他有不同的 Linux 发行版)那里收到了一个要添加到目录中的文件/usr/share/emacs/site-lisp/
。
当我努力做到这一点时,我注意到另一个名称相似的目录: /usr/share/emacs23/site-lisp/
.当查看它们的内容时,我注意到它们并不相同。
这对于所有发行版上的所有 Emacs 配置都是常见的吗?我何时应该将其中一项添加到另一项中,是否有不同的目的?哪一个?我怎么知道?
简而言之,这2个目录有什么区别?
答案1
可以在同一台计算机上安装多个版本的 Emacs。只有 Emacs 23 可以从/usr/share/emacs23/site-lisp/
.所有版本的 Emacs 都会从/usr/share/emacs/site-lisp/
.
通常,您只需使用/usr/share/emacs/site-lisp/
,除非出于某种原因该代码仅适用于特定版本的 Emacs。
要查看 Emacs 从何处加载代码,请输入Control+ h v load-path
Enter。
答案2
除了 cjm 的答案之外,请注意有时/usr/share/emacs/site-lisp/
可能包含以下文件阴影特定 emacs 安装中的文件。我对 Emacs25 找不到该函数的错误很生气ispell-hunspell-add-multi-dic
,直到我运行list-load-path-shadows
并发现该ispell.el
文件被旧且不包含该函数的ispell.el
文件所遮蔽!/usr/share/emacs/site-lisp/