我有emacs 24.1.1,它是在emacs / 24.1 / lisp / progmodes中以字节编译形式提供的GNU&#python.el。
我下载了Fabian Gallina的python.el(注意同名)并将其放在emacs / site-lisp,这是emacs'的一部分。负载路径。
当我编辑一个Python文件时,它是加载的Gallina模式,而不是GNU' s。但是,我没有把(要求' python)放在我的.emacs文件中,尽管Gallina的文档表明了这一点。
这是为什么?为什么Gallina的python.el优先于GNU' s?为什么没有(需要' python)才能加载?
答案 0 :(得分:2)
启动Emacs时,未加载大多数在Emacs中使用的库。它们是自动加载的,请参阅manual。
如果查看load-path
变量,您会看到site-lisp来了
在Emacs自己的库之前。所以,当Emacs加载“python.el”时,它找到了
你的版本。
请注意,在运行命令之前执行 C-h f python-mode 时, 你实际上会看到Emacs版本命令的描述。这个 是作者选择相同文件名的不幸副作用。
运行python-mode
一次后,帮助文本将更改为显示您的版本。
答案 1 :(得分:0)
要从新位置加载已加载的库,请在您的Emacs init文件中写入类似
的文件(卸载特征...
(加载FROM-NEW-PLACE ......