簡體   English   中英

emacs:加載路徑和要求(無法打開加載文件)

[英]emacs: load-path and require (cannot open load file)

我在(require 'org-mime)遇到"Cannot open load file"錯誤,而加載路徑變量似乎沒問題:

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")

它不僅丑陋,而且功能失調,因為版本化路徑可能會更改。 但是為什么會出錯呢?

當您加載需要另一個文件的文件時,會發生一個有趣的問題-必須按時間順序在下一個文件之前加載所需的文件。 例如,如果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)))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM