我在"Cannot open load file"
遇到(require 'org-mime)
错误,而加载路径变量似乎没问题:
load-path is a variable defined in `C source code'.
Its value is
("/home/alexey/.emacs.d/elpa/bbdb-20130526.1945" "/home/alexey/.emacs.d/elpa/org-mime-20120112" "/home/alexey/.emacs.d/elpa/smex-20130421.2153" "/usr/share/emacs/24.3/site-lisp" "/usr/share/emacs/site-lisp" "/usr/share/emacs/24.3/lisp
...
奇怪的是,补救措施看起来像这样(.emacs):
(add-to-list 'load-path "~/.emacs.d/elpa/org-mime-20120112")
它不仅仅是丑陋的:它功能失调,因为版本化的路径可能会发生变化。但为什么会出错?
答案 0 :(得分:0)
当您加载需要另一个文件的文件时会发生一个有趣的问题 - 必须在下一个文件之前按时间顺序加载所需的文件。例如,如果B需要A,那么A必须按时间顺序放置得更高,这样当B加载时,A已经被加载。
我对这种类型的设置非常幸运。大多数文件都以el或elc结尾,所以我不确定你为什么要加载一个扩展名不同或没有扩展名的文件,但如果你愿意的话,肯定可以这样做。
(let* ((root.d "~/") (sub-dir (concat root.d ".emacs.d/")))
(load-file (concat sub-dir "init.el"))
(setq load-path
(append `(,root.d ,sub-dir
,(concat sub-dir "elpa/yasnippet")
) load-path)))