11

emacsパッケージのインストール手順を見ると、それを使用するように常に提案されますがadd-to-list 'load-path、私にはうまくいきません。何らかの理由で、私はを使用する必要がありますload-file。たとえば、これは機能しません。

(add-to-list 'load-path "~/.emacs.d/jade-mode")
(require 'sws-mode)
(require 'jade-mode)    
(add-to-list 'auto-mode-alist '("\\.styl$" . sws-mode))
(add-to-list 'auto-mode-alist '("\\.jade$" . sws-mode))

しかし、これは機能します:

(load-file "~/.emacs.d/jade-mode/sws-mode.el")
(load-file "~/.emacs.d/jade-mode/jade-mode.el")
(require 'sws-mode)
(require 'jade-mode)    

誰でも理由を教えてくれますか?編集:私はMAC OSX10.5でCarbonEmacsを使用しています

4

3 に答える 3

13

おそらく問題は、リストrequire内のエントリを検索するときに先頭のチルダ('〜')が展開されないことです。この関数を使用して、次のユーザーが使用できるようにエントリを準備することをload-path検討してください。expand-file-namerequire

(add-to-list 'load-path (expand-file-name "jademode" "~/.emacs.d"))

また

(add-to-list 'load-path (expand-file-name "~/.emacs.d/jademode"))

どのオペレーティングシステムでどのEmacsを使用しているかを知ることは役に立ちます。

于 2011-08-02T17:39:55.183 に答える
1

100%確信はありませんが、リストがインスタンス化されていないため、ロードパスリストに何も追加できないと思います。リストをインスタンス化するだけです。

    (setq load-path (cons (expand-file-name "~/.emacs.d/lisp")
              load-path))
于 2011-08-02T17:46:07.650 に答える
0

最初の答えは私にはうまくいきませんでした。個々の.elファイルではなく、ディレクトリパスを追加すると、次のようになりました。

(add-to-list 'load-path (expand-file-name "~/.emacs.d"))
于 2014-11-24T20:16:34.090 に答える